Authentification failed

I'm on windows, when I try to download a stories I get this error, and then when I go on instagram it says that somebody tried to connect to your account, I click on "it was me" but still when I redo the command line I have the same error.
----------------------------------------------------------------------
[I] PYINSTASTORIES (SCRIPT V2.1 - PYTHON V3.5.2) - 04:02:50 PM
----------------------------------------------------------------------
[W] Unable to find auth cookie file: credentials.json (creating a new one...)
[E] Client Error: {"error_type": "checkpoint_challenge_required", "message": "challenge_required", "challenge": {"url": "https://i.inst
agram.com/challenge/xxx/xxxx/", "logout": false, "api_path": "/challenge/xxx/xxx/", "hide_webview_header": t
rue, "lock": true, "native_flow": true}, "status": "fail"}
----------------------------------------------------------------------

See https://github.com/notcammy/PyInstaStories/issues/15

Thanks, will try to create a new account then.

Temporary fix:
Login from web browser and get the sessionid cookie (DO NOT LOG OUT)
Edit the login function as i did (paste the correct cookie)
P.S.
Does the softban go away after a while (how many days?) or is it permanent?
def login(username=username, password=password):
	device_id = None
	try:
		settings_file = "credentials.json"
		if not os.path.isfile(settings_file):
			# settings file does not exist
			print('[W] Unable to find auth cookie file: {0!s} (creating a new one...)'.format(settings_file))

			# login new
			api = Client(
			username, password,
			on_login=lambda x: onlogin_callback(x, settings_file))

			#################	WORKAROUND	#################
			for cookie in api.cookie_jar:
				if cookie.name == "sessionid":
					cookie.value = "XXXXXX%XXXXXXX%XXXXXX"
			#################	WORKAROUND	#################
		else:
			with open(settings_file) as file_data:
				cached_settings = json.load(file_data, object_hook=from_json)

			device_id = cached_settings.get('device_id')
			# reuse auth settings
			api = Client(
				username, password,
				settings=cached_settings)

			#################	WORKAROUND	#################
			for cookie in api.cookie_jar:
				if cookie.name == "sessionid":
					cookie.value = "XXXXXX%XXXXXXX%XXXXXX"
			#################	WORKAROUND	#################

		print('[I] Using cached login cookie for "' + api.authenticated_user_name + '".')

@thelele I'll take a look at your snippet over the weekend, thanks for the info.

Temporary fix:
Login from web browser and get the sessionid cookie (DO NOT LOG OUT)
Edit the login function as i did (paste the correct cookie)
P.S.
Does the softban go away after a while (how many days?) or is it permanent?
def login(username=username, password=password):
	device_id = None
	try:
		settings_file = "credentials.json"
		if not os.path.isfile(settings_file):
			# settings file does not exist
			print('[W] Unable to find auth cookie file: {0!s} (creating a new one...)'.format(settings_file))

			# login new
			api = Client(
			username, password,
			on_login=lambda x: onlogin_callback(x, settings_file))

			#################	WORKAROUND	#################
			for cookie in api.cookie_jar:
				if cookie.name == "sessionid":
					cookie.value = "XXXXXX%XXXXXXX%XXXXXX"
			#################	WORKAROUND	#################
		else:
			with open(settings_file) as file_data:
				cached_settings = json.load(file_data, object_hook=from_json)

			device_id = cached_settings.get('device_id')
			# reuse auth settings
			api = Client(
				username, password,
				settings=cached_settings)

			#################	WORKAROUND	#################
			for cookie in api.cookie_jar:
				if cookie.name == "sessionid":
					cookie.value = "XXXXXX%XXXXXXX%XXXXXX"
			#################	WORKAROUND	#################

		print('[I] Using cached login cookie for "' + api.authenticated_user_name + '".')

Where would I go to edit this ? What is the file with login function and where about do I edit this into? the auth.py?

@beakwood in pyinstastories.py file search for def login and replace the entire code posted here https://github.com/notcammy/PyInstaStories/issues/17#issuecomment-501285963
OTHER FIX
I solved the challenge_required error enabling the 2FA and disabling it

@123aezakmi123 I tried the code and the 2fA solution but both didn't work.

@123aezakmi123 I tried the code and the 2fA solution but both didn't work.

See both https://github.com/dvingerh/PyInstaLive/issues/57#issuecomment-616072063 and https://github.com/dvingerh/PyInstaLive/issues/57#issuecomment-524650248

It worked, it didn't even ask for challenge codes anymore, thanks !


Add venice_parameters option

Currently that's for:
venice_parameters: {
    include_venice_system_prompt: false,
}

to remove the Venice system prompt (adding a system prompt appends it to the default Venice system prompt).

If llm can support extra_body simonw/llm/pull/650, we can keep using llm's Chat class here.


feat: add build the rpm script for dashboard

[x] add build the rpm script for dashboard

close https://github.com/apache/apisix-dashboard/issues/613

I have a problem, when the script make the rpm at last, there will be an error
fpm -f -s dir -t rpm -n apisix-dashboard -a x86_64 -v master --description 'Apache APISIX Dashboard is designed to make it as easy as possible for users to operate Apache APISIX through a frontend interface.' -C /tmp/apisix/dashboard/ -p output/ --url https://github.com/apache/apisix-dashboard
Doing `require 'backports'` is deprecated and will not load any backport in the next major release.
Require just the needed backports instead, or 'backports/latest'.
/opt/rh/rh-ruby23/root/usr/share/ruby/fileutils.rb:1394:in `initialize': Is a directory @ rb_sysopen - output/ (Errno::EISDIR)
	from /opt/rh/rh-ruby23/root/usr/share/ruby/fileutils.rb:1394:in `open'
	from /opt/rh/rh-ruby23/root/usr/share/ruby/fileutils.rb:1394:in `block in copy_file'
	from /opt/rh/rh-ruby23/root/usr/share/ruby/fileutils.rb:1393:in `open'
	from /opt/rh/rh-ruby23/root/usr/share/ruby/fileutils.rb:1393:in `copy_file'
	from /opt/rh/rh-ruby23/root/usr/share/ruby/fileutils.rb:487:in `copy_file'
	from /opt/rh/rh-ruby23/root/usr/share/ruby/fileutils.rb:404:in `block in cp'
	from /opt/rh/rh-ruby23/root/usr/share/ruby/fileutils.rb:1572:in `block in fu_each_src_dest'
	from /opt/rh/rh-ruby23/root/usr/share/ruby/fileutils.rb:1588:in `fu_each_src_dest0'
	from /opt/rh/rh-ruby23/root/usr/share/ruby/fileutils.rb:1570:in `fu_each_src_dest'
	from /opt/rh/rh-ruby23/root/usr/share/ruby/fileutils.rb:403:in `cp'
	from /home/azureuser/.gem/ruby/gems/fpm-1.11.0/lib/fpm/package/rpm.rb:539:in `block in output'
	from /home/azureuser/.gem/ruby/gems/fpm-1.11.0/lib/fpm/package/rpm.rb:537:in `each'
	from /home/azureuser/.gem/ruby/gems/fpm-1.11.0/lib/fpm/package/rpm.rb:537:in `output'
	from /home/azureuser/.gem/ruby/gems/fpm-1.11.0/lib/fpm/command.rb:487:in `execute'
	from /home/azureuser/.gem/ruby/gems/clamp-1.0.1/lib/clamp/command.rb:68:in `run'
	from /home/azureuser/.gem/ruby/gems/fpm-1.11.0/lib/fpm/command.rb:574:in `run'
	from /home/azureuser/.gem/ruby/gems/clamp-1.0.1/lib/clamp/command.rb:133:in `run'
	from /home/azureuser/.gem/ruby/gems/fpm-1.11.0/bin/fpm:7:in `<top (required)>'
	from /opt/rh/rh-ruby23/root/usr/local/bin/fpm:22:in `load'
	from /opt/rh/rh-ruby23/root/usr/local/bin/fpm:22:in `<main>'

but when I run this command manually, it will success
$ fpm -f -s dir -t rpm -n apisix-dashboard -a x86_64 -v master --description 'Apache APISIX Dashboard is designed to make it as easy as possible for users to operate Apache APISIX through a frontend interface.' -C /tmp/apisix/dashboard/ -p output/ --url https://github.com/apache/apisix-dashboard
Doing `require 'backports'` is deprecated and will not load any backport in the next major release.
Require just the needed backports instead, or 'backports/latest'.
Created package {:path=>"output/apisix-dashboard-master-1.x86_64.rpm"}

@membphis help out.


Crash on ViewDragHelper.java ArrayIndexOutOfBoundsException index 1, size 1

I have tried to use the library, but the Fabric crashlytics logged this bug occurred many times. In my app, i use DrawerLayout for left side menu, can you help to take a look into this bug.
Fatal Exception: java.lang.ArrayIndexOutOfBoundsException: length=1; index=1
at android.support.v4.widget.ViewDragHelper.saveLastMotion(ViewDragHelper.java:849)
at android.support.v4.widget.ViewDragHelper.shouldInterceptTouchEvent(ViewDragHelper.java:1057)
at android.support.v4.widget.DrawerLayout.onInterceptTouchEvent(DrawerLayout.java:1434)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1908)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2343)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2037)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2343)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2037)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2343)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2037)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2343)

It doesn't seems to be related to the cropper library, why do you think otherwise?

Hi thanks for your reply,
I just used your library recently and, this issue occurred right after I tried to integrate your cropper ImageView, and then I searched for the crash on Stackoverflow, there are some other Zoom Image library got this issue, so I think that somehow your library could cause this.
I just use the CropImageView and set the image bitmap, It's happened almost on Samsung devices

The sample app in the library also uses DrawerLayout, see if it works for you.
I still don't think it is related to the library but if you create a minimum viable project that reproduces this issue I will take a look.

Also seeing this problem as soon as I integrate the project

can you post sample code?

looks like an id clash with "drawer_layout", just changing mine fixed it

but the library doesn't use this id...
also the sample app uses it and there is no collision...
@nguyenvp08 can you check if it fixes your issue too.

hi @ArthurHub : now I am trying to change the drawer layout id, I also used this id for my app, after testing, I will inform you, thank you and @aarnold so much.

did it work?

Hi, I just uploaded the APK 2 days ago, up to now this bug not happened again, I hope the solution works, I will close the issue, thank you all very much!


keeps crashing while restoreing[Bug]:

All of the following criteria must be met

[X] Full Latest.log file included. If no file exists then leave this unchecked and state so.

All of the following are optional to answer

[X] Tried reinstalling the game.
[X] Tried reinstalling LemonLoader.
[X] Tried restarting device.

Describe the issue.
So every time i try to patch a game it says lemon loader not responding.
Did you attach your log file?

[ ] Yes, I attached my log file to the text box above.
[X] No, I could not find a log file at /storage/emulated/0/Android/data/<package name>/files/melonloader/etc/Latest.log

What game are you patching?

No additional information has been given, closing.


GetConsoleOriginalTitle is documented incorrectly

Ported from MSFT:5123924
Read the documentation at https://msdn.microsoft.com/en-us/library/windows/desktop/ms683168(v=vs.85).aspx
Expected: the correct behavior should be documented.
Actual:
If the function succeeds, the return value is the length of the string copied to the buffer, in characters.
If the buffer is not large enough to store the title, the return value is zero and GetLastError returns ERROR_SUCCESS.
If the function fails, the return value is zero and GetLastError returns the error code.
This is not correct. A correct description of the return value, as of Windows 8.1, is:
If nSize is 0, the return value is 0.
Otherwise:
If the function succeeds, the return value is the length of the original console title, in characters.
If the function fails, the return value is zero and GetLastError returns the error code.

If *nSize* is zero, the return value is zero.

If the function succeeds, the return value is the length of the original console title, in characters.

If the function fails, the return value is zero and [**GetLastError**](https://docs.microsoft.com/en-us/windows/win32/api/errhandlingapi/nf-errhandlingapi-getlasterror) returns the error code.


Update stock-not-in-stock.js

Hi,
adding detection strings to file stock-not-in-stock.js

Thanks!


Conflict with SoftwareSerial.h

Compiling .pio\build\uno\src\PinChangeInterrupt_Led.ino.cpp.o
Linking .pio\build\uno\firmware.elf
SoftwareSerial.cpp.o (symbol from plugin): In function SoftwareSerial::read()': (.text+0x0): multiple definition of __vector_3'
.pio\build\uno\src\PinChangeInterrupt0.cpp.o (symbol from plugin):(.text+0x0): first defined here
SoftwareSerial.cpp.o (symbol from plugin): In function SoftwareSerial::read()': (.text+0x0): multiple definition of __vector_4'
.pio\build\uno\src\PinChangeInterrupt1.cpp.o (symbol from plugin):(.text+0x0): first defined here
SoftwareSerial.cpp.o (symbol from plugin): In function SoftwareSerial::read()': (.text+0x0): multiple definition of __vector_5'
.pio\build\uno\src\PinChangeInterrupt2.cpp.o (symbol from plugin):(.text+0x0): first defined here
collect2.exe: error: ld returned 1 exit status
*** [.pio\build\uno\firmware.elf] Error 1

Did you find solution for this?

To update you guys on this, apparently SoftwareSerial uses delays in its interrrupts (which is a pretty bad coding practice), which makes it incompatible with most Interrupt-Based Libraries, like this one. You can read more about it here, but the TL;DR of all this is to stop using SoftwareSerial and try using its counterpart AltSoftSerial if you aren't using all of your Arduino's timers. If you are... I guess you're kinda cooked :p


Print Authors Multiple Pages

For some reason the authors are spread across two pages when printing in Chrome in this example.
https://thomaspark.co/project/pubcss/demo/acm-sig-sample-web-theme.html
Maybe this is the intended behavior but I am not really sure.  Also the abstract appears rather far down the page for some reason.  I am trying to  establish how to change the page break behavior but I am not sure yet.

@thomaspark  Yes Chrome.  So how do I generate a reliable pdf if not using Chrome's print command?

You can use Prince on the command line to generate a PDF from your HTML. It handles a lot of the new CSS features better than the browsers.
https://github.com/thomaspark/pubcss#quick-start
https://www.princexml.com/

hmm I might invest some time into this.  I really really dislike the idea of using a 3rd party software that isn't well incredibly popular for this.  I mean prince must be using webkit(I'm guessing) or something right?  Which means the CSS is somewhere in there.

Understandable, check out #12 for work towards using Puppeteer instead.

So because HTML doesn't support footnotes natively I am throwing html out to probably use markdown or latex.  HTML has no agreed upon syntax unfortunately.


perf: run flamegrill in CI

Flamegrill integration was added in ##2133.
This PR integrates Flamegrill into PR pipeline.

Add yarn command to be able to run flamegrill:

yarn perf:test

Run flamegrill in CircleCI (all builds)
Save flamegrill results to DB (master build only).

Requires #2164.
Microsoft Reviewers: Open in CodeFlow

Warnings

:warning:
There are no updates provided to CHANGELOG. Ensure there are no publicly visible changes introduced by this PR.

  Generated by :no_entry_sign: dangerJS

Can we have Danger also add a comment to PRs in collapsed form with the table result?


fix: Fix measure filters not returning correct results

closes #3980
Toplist query that gets the entries for a measure filter was not getting the correct dimension filters.

@AdityaHegde Issue is not fully resolved. See more details in Slack here: https://rilldata.slack.com/archives/CTZ8XBQ85/p1715096208434779?thread_ts=1714688979.734609&cid=CTZ8XBQ85


Add cloud-init service

This commit adds a new service called cloud-init to the quickstart deployment. The cloud-init service is responsible for delivering cloud-init payloads based on the contents of SMD. It is dependent on the smd service and uses the CLOUD_INIT_ACCESS_TOKEN environment variable for authentication.
There are correspoonding changes to haproxy where I have also made improvements to logging and possible race conditions for starting services.
The README has been updated as well to cover the addition of this container

lgtm, but I'd want to know how we update cloud-init configs in this setup to be sure.


sessionType settings with service update

Hi, I look into issue #171 and #296, and tried sessionType=sticky-server in my configuration.
But the thing is we use docker service update to do CI, and update service docker images. When we do such update, seems current configuration doesn't work.
backend domain-name_web-be80_0
    mode http
    http-request add-header X-Forwarded-Proto https if { ssl_fc }
    http-request redirect scheme https if !{ ssl_fc }
    balance roundrobin
    cookie domain-name_web insert indirect nocache
    server domain-name_web_0 <IP_ADDRESS>:80 check cookie domain-name_web_0
    server domain-name_web_1 <IP_ADDRESS>:80 check cookie domain-name_web_1

Because after service update, the container IP in overlay network will change, then service unavailable
I also checked swarm listener documentation, seems now only got "DF_NOTIFY_CREATE_SERVICE_URL" and "DF_NOTIFY_REMOVE_SERVICE_URL", for service update event, listener can not notify swarm proxy, right?
Any work around or suggestion here
Thanks

You might want to use env. vars. REPEAT_RELOAD and RELOAD_INTERVAL. With REPEAT_RELOAD, DFP will repeat the process periodically and keep the list of service IPs up to date. Both env. vars. are described in http://proxy.dockerflow.com/config/#environment-variables . Can you please try it out and let me know if it fixes your problem?

Can you please let me know if the previous message helped and the issue can be closed?

@vfarcic Hi, I'm on leave for last two weeks, will test on Monday tomorrow, sorry for the delay

Hi @vfarcic I think this work around can not
Even I don't issue a docker service update, I see configuration reloaded with different state
    server domain-name_web_1 <IP_ADDRESS>:80 check cookie domain-name_web_1

    server domain-name_web_1 <IP_ADDRESS>:80 check cookie domain-name_web_1

Although the IP is changed when service update, but the sticky server will be a random state with every reload interval.

Those two configurations are the same (order should not matter). However, I just realized another problem. You cannot have more than one replica of the proxy. Otherwise, there is no guarantee that both will get the same cookie and they might forward to different replicas of the end-service.

Hi @vfarcic My docker flow proxy only got 1 replica, and service backend have multiple replica. But with every reload interval, the service backend will flip with different cookie, I don't know if you get it. My last comment the configuration is from same proxy, only different reload interval.

I got it. I'll see what I can do next week. I'd like to check it out earlier but the rest of this week I'll have too much work to do.

The project moved to https://github.com/docker-flow/docker-flow-proxy. Please recreate the issue there if it's still valid.


Update the README

An initial run through the README so that it has some initial structure.

Thank you @NohaIhab @orfeas-k for the review!


Support Maps.

Cannot proxy a Map.
I get,
Uncaught Error: This object can't be observed.

I don't have plans to support Map or Set at this moment, but I invite you to create your own SignalMap/SignalSet library, and use it inside of other deep signals if you want:
import { SignalMap } from "your-signalmap-library";
import { deepSignal } from "deepsignal";

const state = deepSignal({
  someProp: "...",
  someMap: new SignalMap(),
});


Add column remark support for H2.

See http://forum.liquibase.org/topic/h2-remark-support-for-columns-and-tables

Thanks!


fix: remove redirect master role to align with behaviour of VertexApi and EdgeApi

Purpose of the PR

fix #2355

see the discussion in #2355

Main Changes

Verifying these changes

[x] Trivial rework / code cleanup without any test coverage. (No Need)
[ ] Already covered by existing tests, such as (please modify tests here).
[ ] Need tests and can be verified as follows:

xxx

Does this PR potentially affect the following parts?

[ ]  Nope
[ ]  Dependencies (add/update license info)
[ ]  Modify configurations
[x]  The public API
[ ]  Other affects (typed here)

Documentation Status

[ ]  Doc - TODO
[ ]  Doc - Done
[x]  Doc - No Need

THX, shall we also address the https://github.com/apache/incubator-hugegraph/issues/2355#issuecomment-1818273818 ?

THX, shall we also address the #2355 (comment) ?

I think we need think about it carefully as it may result in more unpredictable concurrency safety issues such as issue if any node can do modifications to vertex label schema.


Don't purge storage pool if mount is root disk

Required information

Distribution: Ubuntu
Distribution version:
The output of "lxc info" or if that fails:

Kernel version: Linux cloud 4.4.0-92-generic #115-Ubuntu SMP Thu Aug 10 09:04:33 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
LXC version: 2.0.8
LXD version: 2.16
Storage backend in use: btrfs

Issue description
Today, I deleted a test storage pool on my new lxd server. There was a mistake on my etc/fstab, so the root disk was wrongly mounted on /var/lib/lxd/storage-pools/
After deleting the pool with lxc storage delete , my root disk was empty :-(
Can you add a detection on this tasks and if the condition is true add a big interactive warning on the screen. Just for the folks.
Steps to reproduce

mount root disk under /var/lib/lxd/storage-pools/
lxc storage create
lxc storage delete

Information to attach
all deleted :/

What exactly did you do? The steps above are incorrect syntax so it's kinda hard to know exactly what happened.

root@vm04:~# mount --bind / /var/lib/lxd/storage-pools/
root@vm04:~# lxc storage create default btrfs
Storage pool default created
root@vm04:~# lxc storage delete default
Storage pool default deleted
root@vm04:~# ls /
bin  boot  dev  etc  home  initrd.img  lib  lib64  lost+found  media  mnt  opt  proc  root  run  sbin  snap  srv  swap.img  sys  tmp  usr  var  vmlinuz
root@vm04:~#

mkdir /var/lib/lxd/storage-pools/raw/
mount /dev/md3 /var/lib/lxd/storage-pools/raw/
lxc storage create raw dir
lxc storage list
+---------+-------------+--------+------------------------------------+---------+
|  NAME   | DESCRIPTION | DRIVER |               SOURCE               | USED BY |
+---------+-------------+--------+------------------------------------+---------+
| default |             | dir    | /var/lib/lxd/storage-pools/default | 1       |
+---------+-------------+--------+------------------------------------+---------+
| raw     |             | dir    | /var/lib/lxd/storage-pools/raw     | 0       |
+---------+-------------+--------+------------------------------------+---------+

lxc storage delete raw

error: remove /var/lib/lxd/storage-pools/raw/dev: device or resource busy

root@hades ~ # ls
-bash: ls: command not found

@brauner can you make it so that all storage backends properly set volatile.pristine on create and then make the wiping conditional on that?
That should improve this kind of situation a bit.

/dev/md3 is the root device.

@stgraber, ha I knew we end up here. Good that we added this property with ceph. :)

@stgraber, this wouldn't have helped here at all would it? The pool would've been marked pristine on creation since it was empty on creation and then he would've overmounted it with some directory and we would've deleted it. So for this scenario there's really nothing we can do. If the pool is empty from a db point of view on delete but get's overmounted with something else you're hosed.

Maybe you purge only files managed by lxd like apt and yum does instead purge everythink

@brauner the reproducing steps from the reporter are:
mkdir /var/lib/lxd/storage-pools/raw/
mount /dev/md3 /var/lib/lxd/storage-pools/raw/
lxc storage create raw dir```

So it very much wouldn't have been empty at creation time.

Ah, missed that.

Well, in that case we will simply refuse to create the pool I'd say. This is a folder under the control of LXD itself.

Also, this was one of the reasons why we didn't let users create dir storage pools somewhere on the system.


add RVC python tests

These test scripts were NOT tested. They were implemented based on the most recent test plan: https://github.com/CHIP-Specifications/chip-test-plans/pull/2880

Duyen's related PR superseded this one.


If first list contains two simillar elements and even though the second list doesnt contain it, 'except' returns only one element of the first list

Before you open an issue
If the issue is:

A simple typo or similar correction, you can submit a PR. See the contributor guide for instructions.
A general support question, consider asking on a support forum site.
A site design concern, create an issue at MicrosoftDocs/feedback.
A problem completing a tutorial, compare your code with the completed sample.
A duplicate of an open or closed issue, leave a comment on that issue.

Issue description
If first list contains two simillar elements and even though the second list doesnt contain it, 'except' returns only one element of the first list
See https://dotnetfiddle.net/tAjsEe
Target framework
Check the .NET target framework(s) being used, and include the version number(s).

[ ] .NET Core
[ ] .NET Framework
[ ] .NET Standard

If using the .NET Core SDK, include dotnet --info output. If using .NET Framework without the .NET Core SDK, include info from Visual Studio's Help > About Microsoft Visual Studio dialog.

dotnet --info output or About VS info
<replace>

@SathishRanjan The documentation stats about the return value (emphasis mine)
"A sequence that contains the set difference of the elements of two sequences.". So only unique elements will be return from the first list as we are working with sets.


feat: add support for a JavaScript config

Changes

Add support for a javascript config rather than a json config
Add tests to verify that support

Why?
Right now the only way to configure some of jsdoc is via the config file, which is fine until you want more dynamic configuration. In my case I am working on a generic build system that will be used across ~30+ projects in the future. I don't want any of them to have to worry about configuration.
Currently I would have to write a temporary json config and clean it up right after build, in order to get dynamic template configuration properties. With this change I can easily make the javascript do that for me before I module.exports the config.
EX:
var pkg = require('./package.json');

module.exports = {templates: {name: pkg.name}};

This is a great idea! Many thanks for implementing this feature, and in particular for providing detailed tests.
There were some merge conflicts due to other recent changes. To save you the trouble of fixing them up, I added this feature in a new commit (2aad297cdc735f6ca7726e73218cda65f5cac1d5).
This feature will be released as part of JSDoc 3.5.0.

Awesome!


Options for smoothing histograms

Python libraries for calculating your own kernel density estimate:
http://stackoverflow.com/questions/33274506/kernel-density-estimation-in-seaborn-for-cyclic-end-points

Here's a nice summary of the Python libraries:
https://jakevdp.github.io/blog/2013/12/01/kernel-density-estimation/
and some other discussions
http://stats.stackexchange.com/questions/5960/how-to-identify-a-bimodal-distribution

A problem with the pre-existing KDE packages is that they don't let you specify weights like the numpy.histogram function does. (This is especially problematic when you need to weight by volume.) This post describes the problem:
http://blog.technariumas.lt/post/111695107866/weighted-kde-in-python
The people who develop these packages seem to be aware of the problem (e.g. see this issue), but at the moment there's a work around that someone has written:
http://nbviewer.jupyter.org/gist/tillahoffmann/f844bce2ec264c1c8cb5
http://stackoverflow.com/questions/27623919/weighted-gaussian-kernel-density-estimation-in-python


Updated IPA for IOS

Hello.
Sorry to bother you directly on the repository, but I can't get any response to this issue in the Discord (as i already made some discussion in the forum about it).
It's since october we didn't get any update of Vendetta for IOS in the IPA thread.
Comparatively, Enmity and Rosicord have already launched the last updated discord (213 for Rosi, more updated than Enmity).
What cause this issue ? Do you drop the support for IOS ?
In many way, I largely prefer to use Vendetta over Enmity, but I don't want to use an old version.
For information, I tried to update the IPA myself, but I'm stuck with the sign step and It seems that the methods I used wasn't good, as i have a lot of issue of my patched version.
I have set as release my IPA here and linked some fix for the GURU MEDITATION error.
If possible, can we (ie User of Vendetta on IOS) an update about the issue ?
Thanks.

Vendetta still supports iOS - it's just an unfortunate situation in which our iPod we used for IPA extraction quite literally blew up - and my own replacement device (second-hand from ebay, with a bad battery) can be temperamental.
Combine that with the fact that IPA releases are a two-person process, in which I must extract the IPA, send it to Fiery, and then he patches and uploads it, and I think the problem becomes clearer.
I apologise for the inconvenience.

Consider making the patcher open source, that way anyone can just patch their own IPAs (including you) and then you can upload the IPA via a webhook for simplicity

i am pretty sure the patcher is open source

so yall just want my developer license to just potentially get this added to the app store or at the bear minimum not have to refresh it every week lol.  all my signed apps are good for a year

I'm sorry for barging in, are they specifically asking you for your developer license? Because like, there's TrollStore, and there's certificate fuckery, as alternatives... But TrollStore is limited to 14.0-16.6 and 17.0, and certificates have always been fucky.
tl;dr im confused

is there an ETA on when iOS will receive updates again?


incorrect file size

Problem encountered on https://dotnet.microsoft.com/download/linux-package-manager/sdk-current?journey=vs-code
Operating System:
Provide details about the problem you are experiencing. Include your operating system version, exact error message, code sample, and anything else that is relevant.
Description:    Ubuntu 19.04
Release:        19.04
Codename:       disco
Err:17 https://packages.microsoft.com/ubuntu/19.04/prod disco/main amd64 Packages
File has unexpected size (20934 != 19614).
E: Some index files failed to download. They have been ignored, or old ones used instead.
E: Unable to locate package dotnet-sdk-3.0
E: Couldn't find any package by glob 'dotnet-sdk-3.0'
E: Couldn't find any package by regex 'dotnet-sdk-3.0'

I'm not able to reproduce the issue, can you try again? It looks like a package was uploaded close to the time you uploaded this, which I believe can cause temporary instability like this. /cc @leecow

Yes, I noticed it as well when I was testing last night. I presume the issue cleared up once the mirror process had completed. Going to close but please re-open if you're still having issues.


Fix asm

:pushpin: Commit 72491cc has been approved by japaric

@homunkulus r+

:hourglass: Testing commit 72491cc with merge 72491cc...

:sunny: Test successful - status-travis
Approved by: japaric
Pushing 72491cc3f73930ecc86f457f808836eb32252378 to master...


Feature/seleclist other all

[Checkboxes] - Added button to select/deselect all values

@Gytjarek Other than my one comment this looks G2G.


getting started with plotly

So, let's get started thinking about how we might implement plotly for interactive figures.
Here, you'll find a zipped html and json file. If you extract those two in the same folder and then open the html file via localhost, you should see the plot of the json file.
This is the simplest possible plot we could see - time series data in plotly. I haven't changed many of the defaults, so this plot could look way better.
The question to start thinking about is: how could this be implemented within the wordpress site?

Get the "plot" div working within a modal, with some nice options set for an appealing look.
Think about what would be needed to be stored on the plugin side to make this work. The first thing you'd need would be a pointer to the relevant json, but you'd also need a list of function arguments. What would be the best way to store these arguments on the plugin side?

Plotly class idea (subject to change):
class Plot {
    constructor() {
        this.actions = {
            plot1: this.doAction1,
            plot2: this.doAction2,
            plot3: this.doAction3,
        };
    }

    doAction1() {
        ....
        console.log("plot1 plotted");
    }

    doAction2() {
        ....
        console.log("plot2 plotted");
    }

    doAction3() {
        ....
        console.log("plot3 plotted");
    }

    execute(action) {
        // Use the mapping to call the function dynamically
        if (this.actions[action]) {
            this.actions[action].call(this); // `call(this)` ensures correct `this` context
        } else {
            console.log("Invalid action");
        }
    }
}

// Usage example
const myClassInstance = new Plot();
myClassInstance.execute('plot1'); // plot1 plotted
myClassInstance.execute('plot2'); // plot2 plotted

where the parameter is pulled directly from WP backend

Plotly workflow:
Backend:

User inputs json file into Wordpress
Json is parsed in the backend, the labels of each series are parsed

ex: given {Year: 2001, Whales: 398582, Fish: 180719}, the labels would be Year, Whales, Fish

User selects plot type

This should be fixed as well, finite amount of options defined that exactly match the class callback dictionary

User has option to select dropdown options for x-axis and y-axis, as well as a slider for how many

Ex: the user is selects Year as the x-axis, Whales and Fish as the y-axis

Other look and feel stuff (name of plot, labels, color) all inputted

Frontend:

Given json input, fetch data for figure (wp meta). Within the figure json, ideally a pointer to actual data json
Create new plot instance initialized with fetch link (the pointer) for the data itself,  other wp meta details (the user inputs)
Given params, call execute member function with type of plot as parameter


Work in progress - continuous optimization

#2454

Build failed because of:
item Densify has project_org set which requires repo_url to be set

Build failed because of:
item Densify has project_org set which requires repo_url to be set

@caniszczyk I only need to find 2 better svg images, beside that it looks fine to me

https://deploy-preview-2495--landscape.netlify.app/

This is great, instead of making it in a separate "box" - can we just put
it under chaos engineering as a separate category in "Observability and
Analysis"
On Tue, Mar 1, 2022 at 6:51 PM Andrey Kozlov @.***>
wrote:

https://deploy-preview-2495--landscape.netlify.app/
—
Reply to this email directly, view it on GitHub
https://github.com/cncf/landscape/pull/2495#issuecomment-1056020005, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AAAPSIJXAQXG6KNIDCW7LBDU523RPANCNFSM5PK7F5JA
.
You are receiving this because you were mentioned.Message ID:
@.***>

--
Cheers,
Chris Aniszczyk
https://aniszczyk.org

Yes, that is how we do with a subcategory! It would be a subcategory of observability and analysis!

Yes thank you
On Wed, Mar 2, 2022 at 9:41 AM Andrey Kozlov @.***>
wrote:

Yes, that is how we do with a subcategory! It would be a subcategory of
observability and analysis!
—
Reply to this email directly, view it on GitHub
https://github.com/cncf/landscape/pull/2495#issuecomment-1057071956, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AAAPSIO747AAPWULI6L32MDU56D2HANCNFSM5PK7F5JA
.
You are receiving this because you were mentioned.Message ID:
@.***>

--
Cheers,
Chris Aniszczyk
https://aniszczyk.org

Does it look fine now?

@AndreyKozlov1984 have conflicts in the branch currently that need to be resolved

fixed
Sent from my iPhone

On 2 Mar 2022, at 19:33, Chris Aniszczyk @.***> wrote:

@AndreyKozlov1984 have conflicts in the branch currently that need to be resolved
—
Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications on the go with GitHub Mobile for iOS or Android.
You are receiving this because you were mentioned.

@AndreyKozlov1984 this is good and will merge in but I see too much whitespace between "logging" and "monitoring"


Unable to play video inside cordova-android

I have setup a test app  to confirm this issue.
I had put a simple call to phaser's video constructor with a video from phaser's example.
It works with cordova-browser but not with android.
There is the content of web console :
deviceready index.js:30
Phaser CE v2.8.1 | Pixi.js | Canvas | HTML Audio     http://phaser.io â™¥â™¥â™¥ phaser.js:34994
Phaser.Frame: Frame "undefined" has a width or height of zero phaser.js:70657
Phaser.Frame: Frame "undefined" has a width or height of zero phaser.js:70657

Edit :
cocoon.io and crosswalk had been tried and give no success for this bug.  The only thing who work is to put a video canvas over phaser canvas.

Have you tried tracing backwards from the Frame "undefined" warning?

No, finally, we created a  tag outside of and moved it over  at the right position with css.

I've got the same problem.

Cordova Android 6.3.0
CrossWalk 2.30
Phaser CE 2.9.3

Video plays with any problems inside  tag, inside Phaser I get a black screen and the following javascript error:
Phaser.Frame: Frame "undefined" has a width or height of zero      phaser-ce-2.9.3.js:71811
Phaser.Frame: Frame "undefined" has a width or height of zero      phaser-ce-2.9.3.js:71811

Phaser.Frame: Frame "undefined" has a width or height of zero phaser-ce-2.9.3.js:71811

Can you trace backwards from there?

Phaser.Frame (phaser-ce-2.9.3.js:71811)
Phaser.Video (phaser-ce-2.9.3.js:106284)
video (phaser-ce-2.9.3.js:48765)
create (home.js:119)
loadComplete (phaser-ce-2.9.3.js:29322)
preUpdate (phaser-ce-2.9.3.js:29097)
updateLogic (phaser-ce-2.9.3.js:36033)
update (phaser-ce-2.9.3.js:35980)
updateRAF (phaser-ce-2.9.3.js:64075)
Phaser.RequestAnimationFrame.start._onLoop (phaser-ce-2.9.3.js:64058)
@home.js:119
this.video = game.add.video('myvideo');
@/build/phaser.js:106284:
this.textureFrame = new Phaser.Frame(0, 0, 0, this.width, this.height, 'video');
this.width and this.height are both 0.
@/build/phaser.js:106251-106252
this.width = this.video.videoWidth;
this.height = this.video.videoHeight;

videoWidth and videoHeight are both 0.
It seems that width and heigth cannot be read from video....

Can you see what is video.video.readyState?

@/build/phaser.js:106251-106252
just before this.width = this.video.videoWidth;
this.video.readyState is 4

It worth mentioning that inside play() method videoWidth and videoHeight have correct values.

It's certainly weird.
You could try overwriting Phaser.Video() with a modified version that lets you pass width and height properties.


Bring RNG into alignment with Glulxe

It used to match Glulxe (for the non-zero-seed case) but Glulxe got improved. Get it to match again.
See: https://github.com/erkyrath/glulxe/issues/33

Done.


Create crossdomain.xml

A crossdomain.xml with wildcard * (or if it's not present itself) can result in SOP bypass and extracting Anti CSRF.

Seems awesome, can you please explain how exactly this works?


Added Codename One books

Codename One is an Open Source Java platform for mobile devices (iOS, Android, Windows etc.). The developer guide is created in the open as part of the Codename One wiki. The Uber Clone book isn't free but the first 2 chapters which are about 100 pages are free to download without an email address or anything. I hope the latter is considered free enough for this list
What does this PR do?
Add Resource(s) | Remove Resource(s) | Add info | Improve Repo
For resources
Description
Why is this valuable (or not)
How do we know it's really free?
For book lists, is it a book?
Checklist:

[x] Not a duplicate
[x] Included author(s) if appropriate
[x] Lists are in alphabetical order
[x] Needed indications added (PDF, access notes, under construction)

Thanks!
So are there additional changes required?


[mesheryctl] Muilti word support for filter delete command

See mesheryctl Command Tracker for current status of commands.

Here it takes "Untitled" as filter name and starts searching for it.
Desired Behavior
We should be able to pass the multiword argument in quotes and if passed without quotes it should give an error requesting to pass multi word filter name in quotes. And if it is not a multi word argument we can pass it without quotes as well.

Contributor Resources

⌨ mesheryctl Contributing Guide
Beginner's guide to contributing to Meshery and mesheryctl
mesheryctl Command Tracker
Meshery CLI Commands and Documentation
🙋🏾🙋🏼 Questions: Discussion Forum and Community Slack

I assume the following changes should be done to
Path:meshery/mesheryctl/internal/cli/root/filter/delete.go
var filterNameOrID string
if len(args) == 1 {
    // Single argument case (single word or quoted multi-word)
    filterNameOrID = args[0]
} else {
    // Multiple arguments case (unquoted multi-word)
    return errors.New(utils.FilterDeleteError("multi-word filter names must be enclosed in quotes. Example: mesheryctl filter delete \"My Filter Name\""))
}
if len(args) > 1 {
    return errors.New(utils.FilterDeleteError("multi-word filter names must be enclosed in quotes. Example: mesheryctl filter delete \"My Filter Name\""))
}

filterNameOrID = strings.Trim(filterNameOrID, "\"")

I assume the following changes should be done to Path:meshery/mesheryctl/internal/cli/root/filter/delete.go
var filterNameOrID string
if len(args) == 1 {
    // Single argument case (single word or quoted multi-word)
    filterNameOrID = args[0]
} else {
    // Multiple arguments case (unquoted multi-word)
    return errors.New(utils.FilterDeleteError("multi-word filter names must be enclosed in quotes. Example: mesheryctl filter delete \"My Filter Name\""))
}
if len(args) > 1 {
    return errors.New(utils.FilterDeleteError("multi-word filter names must be enclosed in quotes. Example: mesheryctl filter delete \"My Filter Name\""))
}

filterNameOrID = strings.Trim(filterNameOrID, "\"")

Last if statement is already handled above so no need of it.

got it. I will review the docs then I will push the PR.


Mqtt commands

Hy all. Im new at esp rfid. I flash my esp with this new version. I managed to connect esp with cloudmqtt...but I dont know how to send messages to add user, delete user, activate relay 1,2,3,4....get door status and if there is some other commands. Please can someon send me commands and tell me how to do it?
Originally posted by @wizznet1 in https://github.com/esprfid/esp-rfid/issues/343#issuecomment-577403614

+1

+1
please!!!

I wrote down some notes about that in my wiki:
https://github.com/ingeninge/esp-rfid/wiki


updated weather app ionic 2 for released Ionic

The Ionic 2 framework went GA last week (or so), so I updated the project for the released version dependencies and tested it.

Hi @johnwargo, I'm your friendly neighborhood Microsoft Pull Request Bot (You can call me MSBOT). Thanks for your contribution!

It looks like you're a Microsoft contributor (John Wargo). If you're full-time, we DON'T require a Contribution License Agreement. If you are a vendor, please DO sign the electronic Contribution License Agreement. It will take 2 minutes and there's no faxing! https://cla.microsoft.com.

TTYL, MSBOT;


CFFL

CFFL

Linter check found the following problems:
The following problems have been found:
ERROR: /tmp/abs_9d8j9nonkl/clone/recipe/meta.yaml:25: pip_install_args: pip install should be run with --no-deps.
ERROR: /tmp/abs_9d8j9nonkl/clone/recipe/meta.yaml:32: patch_must_be_in_build: patch must be in build when source/patches is set.
ERROR: /tmp/abs_9d8j9nonkl/clone/recipe/meta.yaml:32: patch_must_be_in_build: patch must be in build when source/patches is set.
ERROR: /tmp/abs_9d8j9nonkl/clone/recipe/meta.yaml:38: host_section_needs_exact_pinnings: Packages in host must have exact version pinnings, except python build tools.
ERROR: /tmp/abs_9d8j9nonkl/clone/recipe/meta.yaml:38: missing_wheel: For pypi packages, wheel should be present in the host section
ERROR: /tmp/abs_9d8j9nonkl/clone/recipe/meta.yaml:61: missing_license_family: The recipe is missing the about/license_family key.
WARNING: /tmp/abs_9d8j9nonkl/clone/recipe/meta.yaml:61: missing_description: The recipe is missing a description
ERROR: /tmp/abs_9d8j9nonkl/clone/recipe/meta.yaml:61: missing_dev_url: The recipe is missing a dev_url
ERROR: /tmp/abs_9d8j9nonkl/clone/recipe/meta.yaml:61: missing_documentation: The recipe is missing a doc_url or doc_source_url
Errors were found


.clasp.json not created if file exists in a parent directory

Expected Behavior
clasp clone <scriptId>

generates a .clasp.json file, even I already have a file like this in a parent directory.
Actual Behavior
If there is already a .clasp.json file in a parent directory, the file is not created by
clasp clone <scriptId>

Steps to Reproduce the Problem

Clone script into a folder and view contents. Should see .clasp.json

# clone script into repo
mkdir dummy-script
cd dummy-script
clasp clone 1hhHbd8iXq8fWdZAdL6zLU_93JhCFKRLFqSax5NByXJzWHN1m7WZaYjVi
ls -a

Move the script file into the parent repo, clear, clone again. Should see no .clasp.json

# clone script into repo
mv .clasp.json ..
rm -rf *
clasp clone 1hhHbd8iXq8fWdZAdL6zLU_93JhCFKRLFqSax5NByXJzWHN1m7WZaYjVi
ls -a

Specifications

Node version (node -v): v8.11.4
Version (clasp -v): 1.6.3
OS (Mac/Linux/Windows): Windows 10, cmder (conEmu) console.

It using https://github.com/grant/dotf/ to edit .clasp.json.
I think it is a bug caused by https://github.com/grant/dotf/ .

I'm sorry, I made a mistake.
find-parent-dir checks if the dotfile exists in the parent directory.
https://github.com/google/clasp/blob/c1d1a6c5a679f47679d20b8dacf9cfad2d5834c9/src/dotfile.ts#L79
This is useful when you run the command in a subdirectory.
In this case, it seems that the current directory is recognized as a subdirectory of the project.

Gotcha. Is that an important use case? Running clasp clone <scriptId> in a sub-directory, and wanting to push that project to the parent directory? I don't really see why you would do that.

No, I think that clasp is not supposed to use that way.
For example of merit , you can run clasp pull , clasp push and more in anywhere of project directory.
git and npm also behave similarly this.
( I am sorry that my English is not good. )


Terminal Should Retain Focus When Switching Out/In VSCode Window

I'm not sure sure if this is a bug or a feature request.  In any event, I'll side with feature request.
When switching windows and views, in MacOS, and then returning to VSCode, the Editor panel always gets focus, regardless of where focus was before switching out of VSCode.  I often work in the Terminal panel when testing my server and browser code, and often find myself typing bash commands into my code, rather than the Terminal panel that I was in only moments before (and then I must carefully remove what I just typed).  I really think that VSCode should preserve the focus of the panel until the user explicitly changes it.

Hi @donCarlosOne, how are you switching your windows and views? Are you clicking the editor part of the window to switch back to VS Code?
I cannot reproduce this issue on Windows.

I cannot repro on mac either, you are probably after this setting:
"window.clickThroughInactive": false


Publish 0.1.24 to npm

Hi,
Sorry to bother you with this.  I hope I've come to the right place.
This package here states that it has a release for 0.1.24, but when I attempted to download it from npm I discovered that the latest version listed there is 0.1.23.
Please could you republish 0.1.24 to npm?
Many thanks!
David

released 0.1.25


Fix unintentional file globbing during wildcard lookup

Matching globs are common because the script runs in the certs
directory.
The test uses a suffix match as the test domains don't include
subdomains, although such cases should probably be considered.
Fix the le3.wtf test. The existing add_location_configuration modifies
"default"; a second add is not necessary.
Fixes #763

Apologies for the re-pushes to trigger tests. It seems they can be a bit flaky with respect to timeouts?
(Everything passes locally.)

Apologies for the re-pushes to trigger tests. It seems they can be a bit flaky with respect to timeouts?

Actually there's only one test that is super flaky, the default certificate test : https://github.com/nginx-proxy/docker-letsencrypt-nginx-proxy-companion/blob/master/test/tests/default_cert/run.sh
I haven't found why yet, I'm not sure it's just a timeout issue as I saw it happen locally too.
Thanks for the fast PR, could you use / do what Shellcheck suggests before we merge it ?

So it turns it was really fortunate you pushed back: the test cleanup was incomplete so subdomain.example.com was only passing because I had executed the tests with the broken build. I'm not sure how the GitHub actions were passing before; either they also don't clean up, or I'm getting tired and missing something.
In any case, worth a complete re-review as that triggered a small number of related changes.

Thanks for the fast PR, could you use / do what Shellcheck suggests before we merge it ?

Done.

You might have gone a bit too complex with the test, I think it should be way easier and probably sufficient to just test the enumerating function with a file that could glob in the current working dir.

Something like
# check the wildcard location enumeration function
docker exec "$le_container_name" bash -c \
    'source /app/functions.sh; \
    touch wrong.baz.example.com foo.bar.wrong; \
    enumerate_wildcard_locations foo.bar.baz.example.com; \
    rm wrong.baz.example.com foo.bar.wrong'

wrong.baz.example.com and foo.bar.wrong existing in the current working dir shouldn't be lead to them being matched by enumerate_wildcard_locations().

Interesting comment. Two rebuttals:

enumerate_wildcard_locations is insufficient because it doesn't actually create files or expose the globbing issue. add_location_configuration is necessary unless we want to completely refactor.
I didn't add any new tests cases, only fixed two that were already there.

I would argue that the only new complexity was verifying the absence (false_config_path) which also triggered validating the file existence. This was only because the test cases aren't hermetic, and I wanted to make sure that the redirect wasn't left over.
For subdomain.example.com, I can:

Do the above checks
Ensure "*.example.com" is empty before calling add_location_configuration. (Similar to other tests.)
Do nothing. It's crazy to think that *.example.com would be modified by the three tests above it.

It sounds like your preference is the third point, which I can prep easily enough.

Option 3 pushed. I think it might be the fewest number of changes to properly test this case.

Okay I think I might have issues wrapping my head around this.
So yeah using a while read loop instead of a for loop actually fix the issue without using set -o noglob / set +o noglob, I did not initially understand that.

enumerate_wildcard_locations is insufficient because it doesn't actually create files or expose the globbing issue. add_location_configuration is necessary unless we want to completely refactor.

Got that too.

I would argue that the only new complexity was verifying the absence (false_config_path) which also triggered validating the file existence. This was only because the test cases aren't hermetic, and I wanted to make sure that the redirect wasn't left over.

Make sense now that I'm not under the false impression that testing enumerate_wildcard_locations would be enough.
Do you wish to roll back the change made to test/tests/location_config/run.sh to 1a74cdc ?
Don't bother force pushing to re trigger the test, I'll do it manually until they pass.

So yeah using a while read loop instead of a for loop actually fix the issue without using set -o noglob / set +o noglob, I did not initially understand that.

Yeah, using set and restore was pretty obnoxious. read accepts one line of data very neatly ... at the cost of the input being at the end of the loop (which is extra weird).
(I did try to pipe to the read, but it wasn't working and here-string works so well...

Do you wish to roll back the change made to test/tests/location_config/run.sh to 1a74cdc ?

I am around to your way of thinking, now: it's somewhat overkill to check both that it was added to the correct file and not added to the incorrect file. It would make the tests more robust when bad files are left around between test runs (what I originally ran into), but the automated tests and --teardown / --setup both work correctly. In other words, the extra tests work around issues with the current test setup but do not add significant value.
Happy to re-push if you ask again, but I'm pretty happy with this minimal set of changes.

Don't bother force pushing to re trigger the test, I'll do it manually until they pass.

Special powers are nice.

Merged, thanks @LoganK !


fetch_data('iris) returns an error

pmlb version 1.0.2a0 and 1.0.1.post3 (fails on both)
Issue exists on both macos big sur and WSL ubuntu, both from within a miniconda environment
python version 3.9.2
Code to recreate:

 >>> from pmlb import fetch_data
>>> z = fetch_data('iris')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/yashs97/miniconda3/envs/EGADS/lib/python3.9/site-packages/pmlb/pmlb.py", line 80, in fetch_data
    dataset = pd.read_csv(dataset_url, sep='\t', compression='gzip')
  File "/home/yashs97/miniconda3/envs/EGADS/lib/python3.9/site-packages/pandas/io/parsers.py", line 610, in read_csv
    return _read(filepath_or_buffer, kwds)
  File "/home/yashs97/miniconda3/envs/EGADS/lib/python3.9/site-packages/pandas/io/parsers.py", line 462, in _read
    parser = TextFileReader(filepath_or_buffer, **kwds)
  File "/home/yashs97/miniconda3/envs/EGADS/lib/python3.9/site-packages/pandas/io/parsers.py", line 819, in __init__
    self._engine = self._make_engine(self.engine)
  File "/home/yashs97/miniconda3/envs/EGADS/lib/python3.9/site-packages/pandas/io/parsers.py", line 1050, in _make_engine
    return mapping[engine](self.f, **self.options)  # type: ignore[call-arg]
  File "/home/yashs97/miniconda3/envs/EGADS/lib/python3.9/site-packages/pandas/io/parsers.py", line 1898, in __init__
    self._reader = parsers.TextReader(self.handles.handle, **kwds)
  File "pandas/_libs/parsers.pyx", line 518, in pandas._libs.parsers.TextReader.__cinit__
  File "pandas/_libs/parsers.pyx", line 620, in pandas._libs.parsers.TextReader._get_header
  File "pandas/_libs/parsers.pyx", line 814, in pandas._libs.parsers.TextReader._tokenize_rows
  File "pandas/_libs/parsers.pyx", line 1943, in pandas._libs.parsers.raise_parser_error
  File "/home/yashs97/miniconda3/envs/EGADS/lib/python3.9/_compression.py", line 68, in readinto
    data = self.read(len(byte_view))
  File "/home/yashs97/miniconda3/envs/EGADS/lib/python3.9/gzip.py", line 487, in read
    if not self._read_gzip_header():
  File "/home/yashs97/miniconda3/envs/EGADS/lib/python3.9/gzip.py", line 435, in _read_gzip_header
    raise BadGzipFile('Not a gzipped file (%r)' % magic)
gzip.BadGzipFile: Not a gzipped file (b've')

@lacava Is this something you can please help out with? Thanks!

i'm getting the same error on a fresh install. may have to do with going over our LFS bandwidth quota for the month. https://github.com/EpistasisLab/pmlb/runs/2392306391?check_suite_focus=true#step:5:4

@yashs97  can you try now?

Its working for me as well, thanks so much @lacava


docs: Signaling Proposal: Upgrade the chain for introducing a min-commission-rate parameter and setting it to 3%

This is a signaling proposal for informing validators/delegators before posting the real SoftwareUpgrade proposal.

@tjyoon0324
Thank you so much for your help. I just committed all of your suggestions. You can see the diff here:<PHONE_NUMBER>6df1f91363a6360a1d9a67d206ccf3.


src, utils: add TideState alias

This replaces State: Clone + Send + Sync + 'static uses with
State: TideState, a trait alias for the same thing.
The goal is to make it so that any future changes to these bounds
needn't be directly modified in every instance of the State generic,
both in Tide and also for external middleware.
I suppose this maybe could be called ThreadSafeClone but that isn't as flexible for the future.
I do wonder if a ThreadSafe wouldn't be nice for all the other internal Send + Sync + 'static though.

It seems this PR proposed trading off ease of refactoring for readability. Seeing "TideState" as a trait bound by itself is pretty hard to follow, and I know it would certainly confuse me.
Instead I think if we want to make changes to the trade bounds we can either use refactor tools (which I believe are underway in rust-analyzer), or manually run a replacement query for all instances of State: <traits>.
In the further future the lang team is working to address this problem by making it so when a set of traits is declared as a bound on a struct, those traits don't need to be repeated in the impl blocks params. In our case that would remove most of the roughness.


Add a requirements.txt to facilitate installation

Would you mind adding the following to a requirements.txt?
# tensorflow-gpu
tensorflow
keras
opencv-python
beautifulsoup4
imageio
matplotlib
scikit-learn
tqdm
jupyter

or
# tensorflow-gpu==1.13.1
tensorflow==1.13.1
keras==2.2.4
opencv-python==<IP_ADDRESS>
beautifulsoup4==4.7.1
imageio==2.5.0
matplotlib==3.0.3
scikit-learn==0.20.3
tqdm==4.31.1
jupyter==1.0.0

Thanks for your work :wink:

@pierluigiferrari :kissing_heart:

Good point @aurelien-clu, will do soon (on vacation right now). Should have done this a long time ago.


does it support real time playing encrypted media?

I have encrypted audio service that will decrypt every 131071 byte and push it into audio buffer, if in web i can use AudioContext, is this thing supported using this library?

No, not at the moment.

Really need this feature. I got to play and decrypt on the fly an audio too.
Have you got any solution @Guichaguri

@VicoErv  @Guichaguri  @idjitjohn
Do you have any updated solution for this?


Add feed_disabled boolean for Finders

For some Finder that don't have results order by when they were last
updated, a feed doesn't really make sense. This commit adds a
feed_disabled boolean to the Finder schema to allow this to be set.

Closing this as we won't be defining this in the schemas.


Clean up command perms

About the PR

revival of #20236

adds new Moderator perm for moderation actions
adds new adminwho perm for using adminwho
adds new namecolor perm for changing ooc name color
moves a lot of previous ADMIN flagged commands to MODERATOR and FUN.

Media

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

Breaking changes

Changelog

:cl: ShadowCommander, EmoGarbage
ADMIN:

add: Added new permissions: moderator, adminwho, and namecolor
tweak: Changed various command perms from admin to moderator & fun.

does this have admin team approval

does this have admin team approval

this is based off of chief engineer's comment from shadowcommander's original pr.

does this have admin team approval

as far as I can tell, assuming game admins are given moderator, adminwho, and namecolor after it's merged, nothing changes in terms of admin capabilities. I don't really remember the specifics of why some maintainers wanted the ADMIN perm in-game, but I'm assuming this is related to that

+ADMIN gates a lot of basic functionality like aghost and adminchat, making coordination for debugging/etc impossible without it.

We should just code a DB migration to add new flags automatically.


[REACT] Can we get a 'onload' event?

Hey guys it would be great to get an onload prop on the react component (similar to the load promise on normal tsparticles) - doesnt look like there is a way to set this up otherwise.
Which version are you using?
react-tsparticles 1.18.11
Is the latest version affected?

[x] Yes
[ ] No

Which library are you using?

[ ] Vanilla JS (tsparticles)
[x] React (react-tsparticles)
[ ] Vue.js 2.x (particles.vue)
[ ] Vue.js 3.x (particles.vue3)
[ ] Angular (ng-particles)
[ ] Svelte (svelte-particles)
[ ] Preact (preact-particles)
[ ] Inferno (inferno-particles)
[ ] jQuery (jquery-particles)

Hi @tomswork, the upcoming 2.0.0 release will have this feature.
This will also permit the loading of any preset or plugin in all components, actually, it's possible only in the core version.

Hi @tomswork, the upcoming 2.0.0 release will have this feature.
This will also permit the loading of any preset or plugin in all components, actually, it's possible only in the core version.

Ok great @matteobruni looking forward to it 👍

Ok great @matteobruni looking forward to it 👍

The loaded property will accept a (container) => void function, and it will be called when the assigned container will be initialized. This will be introduced starting from 2.0.0-alpha.2 for React, Preact and Inferno

The loaded property will accept a (container) => void function, and it will be called when the assigned container will be initialized. This will be introduced starting from 2.0.0-alpha.2 for React, Preact and Inferno


[EngSys][Core] remove audit NPM script

Remove audit NPM scripts from core packages' package.json.
We are relying on Component Governance and GitHub Security nowadays. This script is no longer used.

API change check
API changes are not detected in this pull request.


Haskell-ghc-mod: ghc-mod interactive command lint failed with error code 1

[Enter steps to reproduce below:]

...
...

Atom Version: 1.4.0
System: Mac OS X 10.11.2
Thrown From: haskell-ghc-mod package, v1.6.4
Stack Trace
Haskell-ghc-mod: ghc-mod interactive command lint failed with error code 1
At caps: {"version":[5,4,0,0],"legacyInteractive":true,"fileMap":true,"rootExec":true,"quoteArgs":false}
URI: /Users/dima/Documents/projects/learning/haskell/servant/servant-examples/tutorial/T1.hs
Args:
message: ghc-mod: Cannot expand #if directive in file /Users/dima/Documents/projects/learning/haskell/servant/servant-examples/tutorial/T1.hs  at line 21 col 1:

    MIN_VERSION_aeson(a,b,c) is not a defined macro

log:
-0.77s: Trying to run ghc-modi in /Users/dima/Documents/projects/learning/haskell/servant/servant-examples
-0.77s: Failed. Falling back to ghc-mod
-0.77s: running ghc-mod lint,/Users/dima/Documents/projects/learning/haskell/servant/servant-examples/tutorial/T1.hs with options.cwd = /Users/dima/Documents/projects/learning/haskell/servant/servant-examples,options.env = [object Object],options.encoding = utf-8
-0.005s: ghc-mod said: ghc-mod: Cannot expand #if directive in file /Users/dima/Documents/projects/learning/haskell/servant/servant-examples/tutorial/T1.hs  at line 21 col 1:
-0.005s: ghc-mod said:     MIN_VERSION_aeson(a,b,c) is not a defined macro
-0.001s: ghc-mod ended with code 1
0s: code 1: ghc-mod: Cannot expand #if directive in file /Users/dima/Documents/projects/learning/haskell/servant/servant-examples/tutorial/T1.hs  at line 21 col 1:

    MIN_VERSION_aeson(a,b,c) is not a defined macro

code 1: ghc-mod: Cannot expand #if directive in file /Users/dima/Documents/projects/learning/haskell/servant/servant-examples/tutorial/T1.hs  at line 21 col 1:

    MIN_VERSION_aeson(a,b,c) is not a defined macro

    at module.exports.Util.mkError (/Users/dima/.atom/packages/haskell-ghc-mod/lib/util.coffee:154:15)
    at BufferedProcess.exit (/Users/dima/.atom/packages/haskell-ghc-mod/lib/ghc-mod/ghc-modi-process-real.coffee:117:20)
    at triggerExitCallback (/Applications/Atom.app/Contents/Resources/app.asar/src/buffered-process.js:213:47)
    at /Applications/Atom.app/Contents/Resources/app.asar/src/buffered-process.js:220:18
    at Socket.<anonymous> (/Applications/Atom.app/Contents/Resources/app.asar/src/buffered-process.js:98:18)
    at emitOne (events.js:82:20)
    at Socket.emit (events.js:169:7)
    at Pipe._onclose (net.js:469:12)

Commands
     -4:31.5.0 custom:toggle-comment-down (atom-text-editor.editor.is-focused)
     -4:20.9.0 core:move-up (atom-text-editor.editor.is-focused)
     -4:20.1.0 custom:toggle-comment-down (atom-text-editor.editor.is-focused)
     -4:19 core:save (atom-text-editor.editor.is-focused)
     -1:35 haskell-ghc-mod:show-info (atom-text-editor.editor.is-focused)
     -1:23 haskell-ghc-mod:show-type (atom-text-editor.editor.is-focused)

Config
{
  "core": {
    "packagesWithKeymapsDisabled": [
      "markdown-preview"
    ],
    "themes": [
      "atom-dark-ui",
      "base16-tomorrow-dark-theme"
    ]
  },
  "haskell-ghc-mod": {
    "additionalPathDirectories": [
      "/Users/dima/.local/bin"
    ],
    "debug": true,
    "enableGhcModi": false,
    "onChangeCheck": true,
    "onChangeLint": true,
    "useLinter": true
  }
}

Installed Packages
# User
atom-typescript, v8.1.0
autocomplete-haskell, v0.6.2
haskell-ghc-mod, v1.6.4
haskell-pointfree, v0.1.3
ide-haskell, v1.3.9
language-haskell, v1.5.2
linter, v1.11.3
pretty-json, v0.4.1

# Dev
No dev packages

It would seem that you did not install all dependencies, or cabal fails to configure your project for some other reason.
Try running cabal configure for your project and fix stuff Cabal complains about, then try again.

Closing due to age


healthz endpoint is not relative to HTTP base

I deployed a test app using a spin.toml which set a non-root HTTP base:
spin_version = "1"
name = "deploytest15"
### note the base ###
trigger = { type = "http", base = "/b" }
version = "0.15.0"

[[component]]
id = "deploytest"
source = "target/wasm32-wasi/release/deploytest2.wasm"
[component.trigger]
route = "/r"

After spin up, I tried to curl the health check endpoint:
# content is correctly based at /b
$ curl -i http://<IP_ADDRESS>:3000/b/r
HTTP/1.1 200 OK
content-length: 16
date: Mon, 03 Oct 2022 23:47:47 GMT

# ...output omitted...

# healthz based at root...
$ curl -i http://<IP_ADDRESS>:3000/healthz
HTTP/1.1 200 OK
content-length: 2
date: Mon, 03 Oct 2022 23:47:58 GMT

OK

# ...but not at /b
$ curl -i http://<IP_ADDRESS>:3000/b/healthz
HTTP/1.1 404 Not Found
content-length: 0
date: Mon, 03 Oct 2022 23:48:04 GMT

Not sure if this is expected?  We can't currently have two applications on the same port so maybe it's not an issue for now...?

/healthz is a Spin health check, not an application health check. I would be in favor of moving it to a better namespaced path, like /.spin/health.


Expose compliance objects to automate

Purpose or Intent
This PR exposes the Compliance and ComplianceDetail models to the Automation Engine. This allows for a number of use cases where it is beneficial to programmatically access the most recent compliance status for a resource, and list the details of each condition tested.
Links

http://talk.manageiq.org/t/programmatically-access-vm-compliance-results/1569/

Steps for Testing/QA
The latest compliance status/ compliance details can be accessed via $evm:
vm = $evm.vmdb(:vm).first
compliance = $evm.vmdb(:compliance).find_by_resource_id(vm.id)
details = compliance.compliance_details

Thanks for the PR!

Overall this is good but I think you would also want to include associations defined in app/models/mixins/compliance_mixin.rb which are exposed in ContainerImage, Host and VmOrTemplate.
    has_many :compliances, :as => :resource, :dependent => :destroy
    virtual_has_one :last_compliance, :class_name => "Compliance"

Then once you have the VM object your call would be:
details = v.last_compliance.compliance_details

Thanks @gmcculloug, really appreciate your feedback. I've just updated the MiqAeServiceComplianceDetail model to remove the condition association; for the use cases I've come across so far, I could just access the condition description using the condition_desc attribute.
Do you want me to update the other models in this PR?

@jockey10 Yes, since that would be the preferred way to access the compliance data from the models I would like to see it be part of the PR.  Thanks.

@gmcculloug I've updated the ContainerImage, Host and VmOrTemplate models, and exposed associations in the miq_ae_service_host and miq_ae_service_vm_or_template. I couldn't find an Automate service model associated with the ContainerImage.

@jockey10 Sorry if it was unclear but the Rails models in app/model already have these relationships defined because they include app/models/mixins/compliance_mixin.rb which defines compliances and last_compliance.
There is no need to modify the app/models files, only the service models.

Ah, ok, thanks :). I'll revert the commit with the app/model changes.

@jockey10 Thanks for the update.  In the future you can also use git's interactive rebase to drop the commit instead of adding another commit to revert it.
For example: https://git-scm.com/book/en/v2/Git-Tools-Rewriting-History#Reordering-Commits

Awesome, thanks @gmcculloug, I'll give that a crack next time


Implementation of Self-Attention with Relative Position Representations

Could you please implement the Self-Attention with Relative Position Representations
It was done in tensor2tensor.
Relative position  representations outperforms the origin Transformer by about 1 BLEU.
Thanks

This is currently not on our roadmap. We welcome any contributions by pull request! Note that we have some models trained in fairseq that have quite strong BLEU results. For example, this paper: https://openreview.net/pdf?id=SkVhlh09tX
models linked here: https://github.com/pytorch/fairseq/tree/master/examples/pay_less_attention_paper

FWIW, we actually experimented internally with relative positional embeddings in fairseq and found them to be only marginally better and quite a bit slower, so we never pushed it public. cc @alexeib: any interest in pushing your branch public?

Thanks for your reply :)
I've implemented the relative positional embeddings roughly just as a mimic of what T2T did but got no better performance. In T2T it actually performed better by about 0.5 BLEU scores in my own dataset. The training speed was slower too but I think it's normal as additional computation will happen.
I think the relative positional embeddings may be just an additional part in transformer not a new architecture, since it only changes the dot product function to plus an additional embedding and sets no absolute positional embeddings. Maybe can we set flags to control whether to use it or not?

@myleott @gxzks care to share the implementations of the relative positional embeddings? I may be useful for other scenarios, even if they have not been thoroughly tested in the last fairseq version.

MPNet has published their implementation of relative positional embeddings. Will get a 30% slowdown if you use it.
https://github.com/microsoft/MPNet/blob/master/pretraining/fairseq/modules/rel_multihead_attention.py

you can also copy from transformer xl pytorch implementation. it works but its slower. good for something like a conformer reimplementation. if i have time i will clean up my impl where i have a few different approaches implemented, or PR welcome :)

Also this one implemented:
https://github.com/labmlai/annotated_deep_learning_paper_implementations/blob/master/labml_nn/transformers/xl/relative_mha.py


[Relay] Expand type unification and generalization

This change adds greater support for type unification to Relay. In particular, it allows for handling cases that require recursing down the type ASTs. E.g., Unify(Tuple(?a, ?b), Tuple(Tensor(s, bt), Tensor(s, bt))) should be able to conclude that the unified type is Tuple(Tensor(s, bt), Tensor(s, bt)) and that Unify(Tuple(?a, ?b), Tuple(?c, ?d)) implies ?a = ?c and ?b = ?d.
The main concern is ensuring that if we have a type variable nested inside another type, then an update to that type variable should result in re-running all relations where that type variable appears, including those where that type variable is nested inside another type. That was the main source of complexity in these changes.
(Note to reviewers: It would be very good to ensure that this unifier does not unnecessarily add relations to the queue and thus make the solver do unnecessary work. I do not believe that it does, though.)
Please review as to whether this is the direction we want to take, @jroesch, @tqchen, and others

Appears that some case is causing an infinite loop when typechecking the LSTM example; I will investigate

Had the below case fail when I tried it. This appears to be happening because the identity relations between t4 and tup1, t5 and tup2, and t4 and t5are marked as "resolved" in the queue (because the identity relation function always returns true) even thoughtup1andtup2` contain nested incomplete types.
There are two ways I can think of right now to fix this bug:

During unification, have a child node mark the parent's relations as unresolved and enqueue them again (probably will lead to unnecessarily running relations more than once, so hopefully there's a way to be smarter about it).
Change the identity relation to return false if there are nested incomplete types (not sure this is correct)

def test_backward_solving_after_child_update():
    solver = make_solver()

    tensor1 = relay.ty.TensorType((10, 20), "float32")
    tensor2 = relay.ty.TensorType((10, 1, 1), "float32")

    t1 = relay.ty.IncompleteType()
    t2 = relay.ty.IncompleteType()
    t3 = relay.ty.IncompleteType()

    tup1 = relay.ty.TupleType([t1, t2])
    tup2 = relay.ty.TupleType([t1, t3])

    tup_concrete = relay.ty.TupleType([tensor1, tensor2])

    t4 = solver.gen_type("Identity", [tup1])
    t5 = solver.gen_type("Identity", [tup2])

    solver.gen_type("Identity", [t4], out=t5)
    assert solver.Solve()
    assert solver.Resolve(t5) == tup1 or solver.Resolve(t5) == tup2

    # updating the variables *inside* tup1 and tup2 should update t4 and t5
    solver.gen_type("Identity", [t1], out=tensor1)
    solver.gen_type("Identity", [t2], out=tensor2)
    assert solver.Solve()
    assert solver.Resolve(t3) == tensor2
    assert solver.Resolve(t5) == tup_concrete

Introducing a visitor for resolving solved the problems I had in https://github.com/dmlc/tvm/pull/2189#issuecomment-443124928 without needing to implement any of the other measures, but I would appreciate discussion on whether that's a good approach to resolution or if there need to be larger rewrites of TypeSolver to accommodate nested type vars.

@slyubomirsky you definitely need to recursively resolve, the boolean should only indicate if progress has been made on the relation not whether it is fully resolved. The main places that should have been changed are (1) add recursive unifier, (2) make resolver recursive, and (3) update solver to handle new relations.

@jroesch could you clarify what (3) means in your last comment? I'm not sure what specifically is missing from here; an example test case (even a sketch) could also be helpful

I think I understand now what might be missing (please correct me if I'm wrong, @jroesch): Adding a relation to the solver via AddConstraint should similarly propagate down to nested types, which requires another visitor. I'll add that soon.
I don't know of a non-unification test case where this applies, however; any suggestions?

My most recent commit should propagate recursively, as described, as well as resolve before running a relation (potentially filling in solved nested type vars). Please review @jroesch, @MarisaKirisame. I think we might do well to have more complex test cases, so if any has been giving you problems, I would appreciate a suggestion.

I think this looks like it solves the appropriate cases, @MarisaKirisame can you send Steven the broken tests we had committed?

@jroesch done privatedly

@jroesch @MarisaKirisame I think the cases you showed me will require changes to type inference, rather than the solver. I will handle them in this PR.

@jroesch, @MarisaKirisame I believe type inference should be able to handle the cases you were worried about before, with generalization.
However, I think unification handles type vars incorrectly and will need to spend some time engineering a better solution for that (some of the new test cases alerted me to that). I will try to have that done soon.

Unification for function types should instantiate away all type vars. I will incorporate this change, which should fix most remaining problems.

Think most problems have been solved, but I will spend time adding more tests for all the new functionality and getting rid of certain test cases that are invalid (unbound type vars should not be allowed).

Remaining issue: keeping track of type environment in type infer (this is important for correctly handling let nodes: we have to generalize those functions immediately or else a case like the one I added in test_proper_inner_function_generalization() can't work).
Currently, this would overgeneralize the type: the generalizer does not keep track of what type vars have been bound in an outer scope, so the inner function would be generalized over all type vars that appear in it, including those that should be considered bound. I will have to think about how to adequately keep track of that, but suggestions would also be appreciated.

(A change I still want to work on that I think might fix the over-generalization issue is keeping track of a type environment in the type inference visitor instead of in the unifier, which I think should not have any state of its own beyond the solver's state. I have had trouble working out how it should work exactly, however.)

@jroesch and I have decided that we will hold off on merging generalization for now, pending some thinking about its design, and instead prioritize merging the other features in this PR. Hence, I have removed generalization for now.

Thanks, @slyubomirsky @jroesch . I will need a bit more time to take an in-depth review.
Given that type solving is quite important and I hope to make as many people understand it as possible, can you write a quick comment(in markdown in the issue) on the algorithm outline and the complexity of the algorithm per iteration. The goal would make more people understand what is the algorithm.
Maybe an example, with states of the classes would be helpful in this case

@tqchen Do you mean have that description in this PR, or open an issue for it?

Re: hiding the unifier, I would like to be able to do that but it's keeping state for instantiating type vars as it encounters them so we have to keep the object around. I will see if I can move that logic entirely into type inference

It's an ugly hack, but I've moved the instantiation logic from the unifier to type_infer, so now the unifier is no longer exposed. I think there will be no need for that logic once we have generalization worked out.

One example is the code emitted by AD, I can follow up with more examples tomorrow. I believe we are blocked on having better unification on the AD PR.

I've added the description; I hope it is what you had in mind. We may, down the road, want to have some good answers (perhaps proofs) about the explicit type relations to guarantee that we won't have circular relations, etc., which I cannot (I think) reject out of hand for now.

Gotcha, I'll add details on that mechanism

Added a couple of paragraphs on the trigger lists in the subsection on explicit type relations.

Sorry for a bit delay in reviewing the code. I take a serious look, and there are still some problems that need to be resolved.
The key improvement this PR introduces is the ability to do unification on recursive data types, so when we Unify((?a, t1), (t2, ?b)), ?awill be resolved to t2 and?b``` will be resolved in t1. The current lazy update algorithm maintains a list of touched relations to types. See the following example
R1(?a, t1)
R2((?a, ?b), ?c)
R3(t2, ?c)

Then the desirable relations(stored in TypeNode) are:

?a : [R1, R2]
?b : [R2]
?c : [R2, R3]

The lazy update algorithm will add the relations to the update queue list when certain type get unified to another one. In our case, if we unify ?a to t0, then R1, R2 will be added to the queue.
The key problem now becomes how do we keep the relation list up to date. More importantly, how to do so when one incomplete type get unified to another one.
The previous logic of such update is done in https://github.com/dmlc/tvm/blob/master/src/relay/pass/type_solver.h#L177. In particular, when we call
MergeFromTo(?c, ?a), we will add all the un-resolved relations in ?c, in this case, R2, R3 to ?a. This logic was fine previously because MergeFromTo only happens either between concrete and incomplete, or two incomplete types.
Because this PR introduces a recursive type, then it is possible to call
MergeFromTo((?c1, ?c2), ?a), in such case, we will need to also recursively add ?a's pending relation to ?c1 and ?c2, instead of relying on the original logic of update, which tries to add to tx = (?c1, ?c2), and tx is not tracked.

I thought the above problem was addressed by the addition of the propagator, which ensures that all nested types list the relations from their parent types. I will see if there is a need to have further recursive merging and if I can add more test cases for such recursive updates.

Another option would be calling the propagator in every call to Unify, but that seems unnecessary so long as AddConstraint() is called whenever a type relation is encountered.

The current propagator logic only solves the problem when the initial relation contains recursive ones, like R1((?c1, ?c2), ?a), but did not resolve the problem when an existing IncompleteType get unified to a tuple which also contains IncompleteType.
For example. initial condition: R2(?d, ?a), then we call MergeFromTo((?c1, ?c2), ?d)

Ah, I see the issue now, very good catch. I'll work on a solution over the next day.

I took a pass at making MergeFromTo recursive. However,  I am still not sure that this change is necessary because the unifier itself handles merging nested incomplete types and thus would still ensure that any updated relations are put back on the queue. I am not sure when we should ever have the case of merging a complex, nested type on the LHS and an incomplete type on the RHS since the unifier makes sure we always have the incomplete type on the LHS.
I also could not come up with a test case (using actual relations we have and the actual interface to the solver) where the old logic has an incorrect result but the new one does the right thing.


trunk_has_vacancy assertion failure

Describe the bug
I'm seeing this assertion failure on a bulk insert of keys in YCSB test runs
Assertion failed at src/trunk.c:3333:trunk_memtable_incorporate(): "trunk_has_vacancy(spl, root, 1)".

Reproduction steps
I've got a minimal reproducer in the branch gabe/issue-443-crash-repro
git fetch --all
git checkout gabe/issue-443-crash-repro
make clean
make BUILD_MODE=debug

# download the test data
curl -o test-keys.txt --compressed https://splinterdb-test-data.s3.us-west-1.amazonaws.com/gabe-crash-test-keys.txt

build/debug/bin/unit/splinterdb_key_size_test

Expected behavior
test should pass
Additional context
The crash is sensitive to several things, including the exact keys used, the max_key_size option in the splinterdb_config and the size of the values being inserted.
For example, when I used the built in random.h to create the keys, I couldn't reproduce the problem.
You can play with the environment variables MAX_KEY_SIZE and VALUE_SIZE to see how it changes.
For example,
VALUE_SIZE=100 build/debug/bin/unit/splinterdb_key_size_test

passes OK.

I played with this a bit more today.  Some more observations:

With this current branch, MAX_KEY_SIZE=103 build/debug/bin/unit/splinterdb_key_size_test will pass
But if I double up the key filecat test-keys.txt test-keys.txt > test-keys-2.txt

and thenKEY_FILE=test-keys-2.txt MAX_KEY_SIZE=103 build/debug/bin/unit/splinterdb_key_size_test

It will fail again with the same assertion after 900000 inserts.
This is unchanged on main (i.e. recent commits haven't changed behavior)


Delete rooms

This PR adds functionality for deleting rooms from the settings menu. Once you click on settings and scroll down, you should see a red button. Clicking this button will delete the room and refresh the window for every client. These changes will also be reflected in the room history panel on the home page.
To improve the user experience, maybe instead of refreshing the page it could redirect to the home page? Also, asking if they meant to delete the page would be nice.

I think that clicking the same button twice is still a bit too easy, so I changed it so that when you first click delete, a confirm button appears that you need to click.
This still might be too easy tbh so in the future it might be good to add an input that appears where the user needs to type the name of the room before being able to confirm the delete (like how GitHub does it with repositories). I started doing this (added the match checking functionality to SingleInputForm) but stopped because of an annoying styling issue with bootstrap. The form focus outline is blue which looks weird with the red delete button and there's no simple, clean way to change that to use our custom red color afaik. For now I think what we have is fine unless you want to take a stab at it.
I also added a new custom outline button style and changed the delete button to that style, which I think looks cleaner.
Finally, I moved the line that removes the room from the local history to the delete response callback, so it isn't executed if the delete event fails on the server for some reason, and I also added a line that redirects the user who deleted the room to the homepage.

I can take a look at doing the Github-style confirmation that you suggested, I was thinking about that as well but wasn't sure if it was really necessary. I can take another look at it and try to address those styling issues, but I like what we have at the moment so its not too high up on the priority list.

I didn't put the redirect in the response since I thought that it might be better if it didn't redirect anyone else connected to the room who didn't click the delete button, since otherwise it would just put them back to the home screen, remove the room from the history and they might not have any idea what happened.
But honestly just showing the "Connection failed screen" or whatever instead isn't any better, so it's fine the way you have it.
In the future it might be good to show a "Room has been deleted" message or something when a user tried to access a deleted room.

I understand why it would make sense to show the 'disconnected' screen, but also I feel like having a room deleted page or whatever would be included in a more robust error system on the client (I think there is a TODO for that in one of the files..?) Either way, I think they're both gonna have some ambiguity until a better system is implemented. The only reason I feel like this one makes more "sense" is because you have that visual feedback of your room being deleted as opposed to seeing an error screen, since there technically isn't an error. Again, both ways don't make a lot of sense to the user without that more robust error system.

I think this feature is fine for now (I can't find any issues and some of the problems that we had will be addressed with the improved error system) so I'll merge into main.


[Enhancement] Support Defining Params for Scripts

Feature summary
Support the ability to define params in the script recorder.
Why is this feature important?
Currently there is no way to leverage params within the recorder. It would be nice to have the ability to define params within the recorder that could be used during the recording. These parameter values would just exist at the recorder level, and wouldn't be passed to the exported config.
If I want to log into a website, currently the recorder would capture my password in plaintext. This is less than ideal. Ideally, I should be able to specify a param for the password in the record (params.password), then the recorder would set the value of the password field to the param. Then for the actual deployment of the script, I could have the password value exposed as an environment variable in the container (MY_PASSWORD=password123), and then pass that environment variable to the param:
params:
  password: ${MY_PASSWORD}

Linked resources
No response
Additional information
No response

Hi @BenB196 - thanks for the feedback. I agree that this (along with a number of your other suggestions) would be very useful. These capabilities are at the top of our backlog. Right now our 1.0 feature set is locked so these will be added in post 1.0.

@drewpost Customer has the following feedback:

User already download 1.1.0 from github relases for synthetic recorder and issue havent solved.
The version installed for synthetics recorder is 1.1.0 which referred by elastic, shows the password in the uploaded node js script.

Right now our 1.0 feature set is locked so these will be added in post 1.0.

Do we know (rough estimate) in which version release would this feature land?


"Gheorghe Doja" is listed in the drop-down menu

Description:
When user writes "Gheorghe Doja" the location appears in the drop-down menu next to the comune and the county witch is a part according to the law
Precondition:
The website is up an running.

Step 1
Write in the search bar "Gheorghe Doja"
Expected results
The location appears in the drop-down menu as "Comuna Gheorghe Doja, ** IALOMIȚA**"


[feature] DHCP server is required to provide gateway ip address besides the allocated ip address.

Current DHCP service can only provide the allocated IP address for a VM when the VM boots up.
The DHCP sever is actually required to provide gateway IP address corresponding to the the allocated IP address for the VM.

I have finished the code. I'm test the feature.


ValueError: row index exceeds matrix dimensions

Hi all,
I am trying to run HiNT on the example dataset, but it keeps failing. I installed hint from Conda, using the following steps:

conda create -p $(pwd)/hint-env
conda activate ./hint-env
conda install -c su hint

It installs without error, and when I run hint --version, I get back hint 2.2.8. I am running on a RHEL8 cluster.
However, I am trying to run this script:
#!/bin/bash
#

hint tl \
  -m ${HINT_DIR}/db/testData/test.hic \
  -f juicer --refdir ${HINT_DIR}/db/refData/hg38/ \
  --backdir ${HINT_DIR}/db/backgroundMatrices/hg38 \
  -g hg38 \
  -n 4DNFICSTCJQZ \
  -c 0.05 \
  --ppath pairix \
  -o HiNTtransl_juicerOUTPUTXX

Whenever I run it, I am faced with the following error:
noderome106 >> ~ # bash run_hint.sh
[09:43:31] Argument List:
[09:43:31] Hi-C contact matrix = ${HINT_ENV}/db/testData/test.hic
[09:43:31] Hi-C contact matrix format = juicer
[09:43:31] Genome = hg38
[09:43:31] Name = 4DNFICSTCJQZ
[09:43:31] Output directory = HiNTtransl_juicerOUTPUTXX
[09:43:31] Prepare Matrices!
HiC version:  8
Traceback (most recent call last):
  File "${HINT_ENV}/bin/hint", line 203, in <module>
    main()
  File "${HINT_ENV}/bin/hint", line 199, in main
    translrun(argparser)
  File "${HINT_ENV}/lib/python3.6/site-packages/HiNT/runhint.py", line 112, in translrun
    matrix1MbInfo = hicToMatrix(opts.matrixfile, 1000, chromlengthf, opts.outdir, opts.name)
  File "${HINT_ENV}/lib/python3.6/site-packages/HiNT/hicToMatrix.py", line 44, in hicToMatrix
    dumpMatrix(chrom1, chrom2, resolution, hicfile, chromInfo,outputname)
  File "${HINT_ENV}/lib/python3.6/site-packages/HiNT/hicToMatrix.py", line 29, in dumpMatrix
    res = coo_matrix((data, (row, col)), shape=(binnumber1, binnumber2)).toarray()
  File "${HINT_ENV}/lib/python3.6/site-packages/scipy/sparse/coo.py", line 196, in __init__
    self._check()
  File "${HINT_ENV}/lib/python3.6/site-packages/scipy/sparse/coo.py", line 283, in _check
    raise ValueError('row index exceeds matrix dimensions')
ValueError: row index exceeds matrix dimensions

This feels like a bug in the software, as I have installed it multiple times, in many different ways, and cannot get past this. I also saw that I user reported this issue a while back, but did not get a response.
FYI: I did not use the env var ${HINT_ENV}. I used full, absolute paths while running the example. I replaced the absolute paths in this comment for security purposes.
Any and all help would be appreciated. Thanks! :)

This command works:
hint tl -m /path/to/data_1Mb.cool,/path/to/data_100kb.cool --chimeric /path/to/test_chimeric.sorted.pairsam.gz --refdir /path/to/refDir/hg19 --backdir /path/to/backgroundMatrices/hg19 --ppath /path/to/pairix -f cooler -g hg19 -n test -o /path/to/outputDir

This command fails with ValueError: row index exceeds matrix dimensions:
hint tl -m /path/to/4DNFICSTCJQZ.hic -f juicer --refdir /path/to/refData/hg38 --backdir /path/to/backgroundMatrices/hg38 -g hg38 -n 4DNFICSTCJQZ -c 0.05 --ppath /path/to/pairix -p 12 -o HiNTtransl_juicerOUTPUT


WC REST API not have access to all WP REST API

Hi,
I create new custom filed and tried to get it with WC API without success.
When i use the WP API i got the values
Thanks,
Elad

You can use this library to access any endpoint, but WooCommerce REST API authentication maybe only work under wc- prefix.


Have a test directive to import symbols to a module

It could be as simple as
// include-file: foo.inc
Or maybe a flag to the command line.
Based on the comment in: https://github.com/solana-labs/move/pull/185#discussion_r1219936683

Noted. I’ll see what I can do.

Closing, see #196.


controller/client: Log deployment stream errors

This is to assist in tracking down why issues like #1689 occur.

@titanous fmt.Errorf is much nicer. :)

LGTM


Clarify that multiple R_RISCV_LO12_I/R_RISCV_LO12_S can share one single R_RISCV_HI20

This is most common on rv32 when loading a 8-byte aligned global variable, e.g.
double NaturallyAlignedScalar = 5.;
double accessNaturallyAlignedScalar() { return NaturallyAlignedScalar; }
//      lui     a1, %hi(NaturallyAlignedScalar)
//      lw      a0, %lo(NaturallyAlignedScalar)(a1)
//      lw      a1, %lo(NaturallyAlignedScalar+4)(a1)

double NaturallyAlignedArray[4] = { 3., 4., 5., 6. };
double accessNaturallyAlignedArray() {
  return NaturallyAlignedArray[0] + NaturallyAlignedArray[3];
}
//      lui     a2, %hi(NaturallyAlignedArray)
//      lw      a0, %lo(NaturallyAlignedArray)(a2)
//      lw      a1, %lo(NaturallyAlignedArray+4)(a2)
//      addi    a3, a2, %lo(NaturallyAlignedArray)
//      lw      a2, 24(a3)
//      lw      a3, 28(a3)

The HI20 values for the multiple fragments must be identical and all the relaxed global-pointer offsets must be in range.

The examples in this change raise the question of whether the example code is actually valid, and to address that question, we need to mention the alignment issue and its resolution, as pointed out by @kito-cheng. This discussion seems a bit derailed from the primary purpose of the psABI. Maybe just saying that there may be more than one R_RISCV_LO12_I/R_RISCV_LO12_S for a R_RISCV_HI20 is enough?


Add Promise to Message so authors can verify messages arrived.

 So we can add a Promise to the created Message and keep it when the API sees the message come back.
We would need to know how Discord munge messages so we can recognise that it was the "same" one. Maybe we're given a message ID on POST?

Also events!


Message Box Crashes

After some time, the message box stops working. Usually, right before it stops, a strange message about a multiline message will appear

Fixed in version 0.1.2


ADC state files support integration with HashiCorp Vault

The $secret:// syntax is supported by ADC.
Close it.


Consider using ArrayPool for large byte buffers

There are some circumstances where we may accidentally be allocating huge byte buffers on the stack using stackalloc. For very large buffer sizes, using ArrayPool would probably be preferred.
First example that comes to mind is StreamUtils.NodeData.PopulateNodeData, which currently uses a stack allocated buffer of up to 500KB!

Would having a dedicated ArrayPool be better than using the default?


statically compile

Turned some debugger stuff off because I'm not sure anyone in the history of golang has ever tried to attach a debugger more than once.
going to want it for plugins.

I use the debugger all the time now that I am using goland. Will this break that workflow?

@MHBauer @n3wscott have you agreed on what to do with this PR?

@n3wscott: you mentioned gogland & debugging, do you use it on a running server vs just the tests?  If yes then a huge  +1 to @MHBauer's suggestion to show it off at a meeting.  I poked at gogland 6 months ago but haven't looked again.

We can leave the debugging in. I'll write up a little table on the results wrt binary sizes and junk.

A different reason to statically compile is to move to using a scratch or other small image and solve some of the quay vulns from the vuln scanner.

If all you care about is being able to run on a scratch container this is what you need:
CGO_ENABLED=0 go build -tags netgo

The other LDFLAGS in this pull request, AFAIK, only affect the size of the final binary (and your ability to debug it).

I don't attach to running instances, so I am ok with this.
LGTM

@carolynvs I think this was before we had merged and used hyperkube, so the savings was more than it is now. I think moving to scratch is definitely a goal, but I'm not sure how much that interfaces with multi-arch.

@carolynvs what's going on here? Does windows not support static building?

-d isn't available on Windows. Yes, it is still statically compiled though.
Per the doc that flag doesn't change much, I never bother with it:

Disable generation of dynamic executables.
The emitted code is the same in either case; the option
controls only whether a dynamic header is included.
The dynamic header is on by default, even without any
references to dynamic libraries, because many common
system tools now assume the presence of the header.

I'll give it a shot.

🍿

Adding a LGTM label on behalf of @n3wscott since I think it was just forgotten.


Add Quality option to naming

I'm not sure which tool would be needed to determine or if it would be performant, but I like having 720p, 1080p, HDTV.. etc in the name.

wanted to vote for this issue 7 years later, a newer tool mediainfo would be better than ffparser

I vote for this also, would be a cool option