rediscluster.RedisCluster hangs if in the list of startup_nodes first node is non-operational

The list of start_nodes is fetched from a configuration server, which is then fed to RedisCluster. During runtime, any of the redis node can be unreachable due to a number of reasons, and this is not reflected in the config.
If I try to connect to connect to a cluster with startup_nodes say [{'host': <a.host>, 'port': <a.port>}, ....] and for some reason a.host is down, the command conn = RedisCluster(startup_nodes=startup_nodes, decode_responses=True) hangs. It doesn't move over to the next active node in the list. I think this might not be ideal.
Version: redis-py-cluster==2.0.0

@shivam-tripathi I have never seen a case where it would sit and hang inside the client code forever. Can you provide a more detailed example script and cluster setup that would replicate the issue so i can see if i can debug and trace the error down any further?
If for example try to run a client against a cluster that is completely shutdown i get the following error and stacktrace in my client side.
DEBUG:rediscluster.nodemanager:[
  {
    "host": "<IP_ADDRESS>",
    "port": 7000
  },
  {
    "host": "<IP_ADDRESS>",
    "port": 7001
  },
  {
    "host": "<IP_ADDRESS>",
    "port": 7002
  },
  {
    "host": "<IP_ADDRESS>",
    "port": 7003
  },
  {
    "host": "<IP_ADDRESS>",
    "port": 7004
  },
  {
    "host": "<IP_ADDRESS>",
    "port": 7005
  }
]
Traceback (most recent call last):
  File "rediscluster_failover_test.py", line 25, in <module>
    rc = RedisCluster(startup_nodes=startup_nodes, decode_responses=True)
  File "/home/grok/github/redis-py-cluster/rediscluster/client.py", line 371, in __init__
    **kwargs
  File "/home/grok/github/redis-py-cluster/rediscluster/connection.py", line 160, in __init__
    self.nodes.initialize()
  File "/home/grok/github/redis-py-cluster/rediscluster/nodemanager.py", line 270, in initialize
    raise RedisClusterException("Redis Cluster cannot be connected. Please provide at least one reachable node.")
rediscluster.exceptions.RedisClusterException: Redis Cluster cannot be connected. Please provide at least one reachable node.
Exception ignored in: <object repr() failed>
Traceback (most recent call last):
  File "/home/grok/.virtualenvs/redis/lib/python3.6/site-packages/redis/client.py", line 885, in __del__
    self.close()
  File "/home/grok/.virtualenvs/redis/lib/python3.6/site-packages/redis/client.py", line 888, in close
    conn = self.connection
AttributeError: 'RedisCluster' object has no attribute 'connection'

None of the nodes is reachable in any sense and this error is what i am expecting in a situation where no nodes is reachable.
@shivam-tripathi Please post more detail steps to reproduce the problem in order for me to help any further

@Grokzen Hi, the issue I found was when the first node in the list of startup_nodes is down. More details are as follows:

The config.REDIS_CONF looks something like this:

{
  "cluster": {
    "hosts":[
      {"host":"a.a.a.a","port":6379},
      {"host":"b.b.b.b","port":6379},
      {"host":"c.c.c.c","port":6379},
      {"host":"d.d.d.d","port":6379},
      {"host":"e.e.e.e","port":6379},
      {"host":"f.f.f.f","port":6379}
    ]
  }
}

Of this, node a.a.a.a:6379 is down. The node b.b.b.b:6379, c.c.c.c:6379, d.d.d.d:6379 are available. After this node e.e.e.e:6379 is again down.

The wrapper code utilizing rediscluster to connect with the cluster is as follows:

from utils.Config import Config
from rediscluster import RedisCluster
from redis import Redis

class QRedis:
    __config = Config()
    __redis = None
    def __init__(self):
         self.__redis = RedisCluster(startup_nodes=self.__config.REDIS_CONF['cluster']['hosts'], decode_responses=True)

    def hscan_iter(self, hset_name, count=100):
        return self.__redis.hscan_iter(hset_name, count=count)

    def run(self, cmd, *kwargs):
        return self.__redis[cmd](*kwargs)

    def client(self):
        return self.__redis

This for some reason hangs with no additional logs.

If I do:

self.__redis = RedisCluster(startup_nodes=self.__config.REDIS_CONF['cluster']['hosts'][1:], decode_responses=True)

it connects and works as expected. Note that the node b.b.b.b:6379 is available. I am slicing the array so that first node is removed from the startup_nodes.
Similarly, self.__config.REDIS_CONF['cluster']['hosts'][2:]  and self.__config.REDIS_CONF['cluster']['hosts'][3:] work. However, self.__config.REDIS_CONF['cluster']['hosts'][4:] again hangs, which corresponds to next dead node i.e. e.e.e.e:6379.
4. Python version is: Python 3.6.6. The command pip freeze gives redis-py-cluster==2.0.0.
This is everything I could collect which I thought could be of help. Let me know if this is enough, and if anything additional is required.
Thank you so much for your amazing work. 😄

@shivam-tripathi It kinda makes no sense that it should only fail if the first one do not connect O.o i will have to dig deeper into this but i would recommen that you try it with the RC2 release that is on pypi now and see if it behaves the same or not. But i will run a test against a local cluster and see becuase i have not seen that problem myself so far.

@shivam-tripathi I attempted this issue now locally and i am unable to reproduce the error and to me it seems and looks like the code work out as expected and i don't know what your issue is really or why it happens.
I attempted to run the following client code on my local redis cluster with the port 7000 node shutdown
from rediscluster import RedisCluster

startup_nodes = [
    {"host": "<IP_ADDRESS>", "port": "7000"},
    {"host": "<IP_ADDRESS>", "port": "7001"},
    {"host": "<IP_ADDRESS>", "port": "7002"},
    {"host": "<IP_ADDRESS>", "port": "7003"},
    {"host": "<IP_ADDRESS>", "port": "7004"},
    {"host": "<IP_ADDRESS>", "port": "7005"},
]

rc = RedisCluster(
    startup_nodes=startup_nodes,
    decode_responses=True,
)

from pprint import pprint
pprint(rc.cluster_info())
print(rc.set('foobar', 'asd'))
print(rc.get('foobar'))

And that code above works as expected and without any issues at all and it do not block or anything.
The only thing that i can see in your code example above is that if you are using hscan_iter and that is where it hangs and not during the cluster initialization steps?
Also i would recommend that you take down the master branch of this repo or installs 2.0.99RC2 release from pypi and use that code in your example and see if that helps out anything for you.
If that do not help and your problem persist then you have to provide much more detailed and deeper debugging into what part that fails in the code and not so much in the top layer of the client and your code. Please open a new issue with that if the problem still remains in the new client version.


Logo

Not the most pressing of issues, but I felt like giving it the idea a shot.
It's supposed to resemble clustering, but it may have been better in my head :-). Also I would like to mention that it is derived from the original logo. I don't know if that causes issues

Looks like a good start and better than the generic one.

Building on your idea @Evizero:

Actually this is a little cleaner:

Nice.

If anyone's curious how it was made (or if you want to tweak it), here it is: https://github.com/tbreloff/ExamplePlots.jl/blob/master/examples/ml_logo.ipynb

The current one seems nice and appropriate. I'll close this issue for now until some Picasso comes along and convinces us otherwise


Line2D Disappears With Batching ON

Godot version:
Godot 3.2.2beta1 mono
OS/device including version:
Windows 10
Issue description:
I Was using a Line2D as a trail to my character , i downloaded the last version 3.2.2beta1 for testing and i notice the Line2D disappears when GLES Batching is one , i disable it and the Line2D works as it is supposed to .
Steps to reproduce:
Line2D attached to a Player And it is adding points as the players moves , when the points are more than 5 points it starts removing index 0 .

Attached to the player that move only in the y axis .
EDIT
one thing i noticed again , when i exported the game to android , the Line2D trail start appearing again but its behavior has changed it was following the Player Position now it is moving by the player side so quickly.
And when running the game on pc i can't even see the Line2D.
Minimal reproduction project:

Is it possible to have a minimum reproduction project in gdscript? I can't yet reproduce this (it may only occur on certain hardware and I'm not sure if I'm using in the same way).

Batching.zip
Here is an example , you can run it  with and without batching on .
one More Thing i noticed about this , The Line2D disappears only when its fill color set to gradient .

set max_join_items to 0 fixes the problem as you said in #38014

Thanks for the minimum reproduction project, I have tested and can confirm it is caused by the same bug as #38014, and is now fixed and merged! :grin:
It should be working fine in the next beta. Until then if you run into this problem, setting max_join_items to 0 will work (although you won't get as much performance boost). :+1:

Thank you for the good work 👍 , i will wait for the beta2 so we can test .

Fixed by #38019.


Duplicate Files Uploaded to Wrong Path

When I upload files to NetSuite, I go into the file cabinet and see where multiple times several files are uploaded to the root directory instead of the main directory. It seems random, so I'm not sure how to reproduce it. I just know it happens very often.

What does root directory refer to here vs main directory? Do you have multiple directories with the same name? If you set the "root" of your project, anything uploaded is relative to that root (/SuiteScripts/Godrules500 for example so nothing should be uploaded outside of that directory only within). Can you try re-setting up your project and see if you still get this issue? With being random like you say, it is difficult to reproduce it without any further information.


Feature Request： delete key in MutableHashTable

A 'delete' method in contrib.lookup.MutableHashTable would be useful when there are too many <key, value> pairs and we can only handle the recent ones!
Is there any possibility that the delete method will be implemented? Thanks. @vrv @ebrevdo

add delete(key) in MutableHashTable? need to add API in LookupInterface and implement in MutableHashTableOfTensors and register the OP.

@joshua-xia So delete(key) is possible in MutableHashTable?  What I do now for expediency  is to close the session and then restart. Very time-consuming when the hash table is large.

This requires some updates in the API and it's in the works right now.

@ysuematsu That's great!

It has been 14 days with no activity and this issue has an assignee.Please update the label and/or status accordingly.


fix category sorting in BaseSortListService

Currently the baseSortListService sorts motions by categories after motion.category.toString(), whereas we rather want to sort it like in the #4275 sortViewCategoriesByConfig function.
This wasn't directly achieved and is hereby left for later.

Still happening?

Categories are now sorted by their "weight". The sorting can be adjusted at runtime
https://github.com/OpenSlides/OpenSlides/blob/1d718dcb740066a5b8474033352c1bbd69a49102/client/src/app/core/repositories/motions/category-repository.service.ts#L87-L88


Fix flaky test for DiskThresholdDeciderIT

Signed-off-by: Rishav Sagar<EMAIL_ADDRESS>
Description
Fixing flaky test for DiskThresholdDeciderIT. This commit fixes the race condition between indexing data on the nodes and the available space reflected by the file system inside DiskThresholdDeciderIT. This is done by removing the indexing call and explicitly setting free and total space as done inside MockDiskUsagesIT.
Issues Resolved
https://github.com/opensearch-project/OpenSearch/issues/5956
Check List

[x] New functionality includes testing.

[x] All tests pass

[x] New functionality has been documented.

[x] New functionality has javadoc added

[x] Commits are signed per the DCO using --signoff
[x] Commit changes are listed out in CHANGELOG.md file (See: Changelog)

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

This change already got merged in this pr and will no longer be required (Sorry I forgot to close this). Is these test cases flaky even now?

@RS146BIJAY @andrross Per this comment, is the PR safe to be closed or will it need further review?

Superceded by #6277


Fix merkle tree alpha6

This PR fixes and enables the merkle tree implementation in quaireaux.
This PR is rebased on top of master, supersedes  #76
Pull Request type

Please check the type of change your PR introduces:

[x] Bugfix
[ ] Feature
[ ] Code style update (formatting, renaming)
[ ] Refactoring (no functional changes, no API changes)
[ ] Build-related changes
[ ] Documentation content changes
[ ] Other (please describe):

What is the current behavior?
Merkle tree implementation is not working nor ready because the core of it is commented out. This was previously because of a bug in Cairo, but that bug is fixed now.
What is the new behavior?
Merkle tree is now usable and has working tests.
Does this introduce a breaking change?

[ ] Yes
[x] No

Oh sorry, didn't realize alpha.7 is merged already. Will fix


[DO NOT MERGE] Cosmos : Direct TCP : Add support for recording important events in the lifetime of a request

TODO

/azp run java - cosmos - tests

/azp run java - cosmos - tests


Category Pages for the Blog

I would like to have category pages implemented to improve the navigation and organization of the content. Currently, it is difficult to browse through specific topics or find related articles. Adding category pages (as in Astros) would enhance user experience and make it easier for our readers to discover content that is relevant to their interests.
Expected Behavior:
When a user clicks on a category link or selects a category from the navigation menu, they should be directed to a dedicated page that displays all the articles related to that specific category. The category page should provide a clear overview of the available articles and allow users to easily navigate between them.

I tried to implement this myself, but strugle with the translation filter. I will try to fix this and add a pr when I have more time.

Hi, Actually on astros there should have been the category page, ex. https://astros.zank.studio/blog/category/tutorials/ but looks like there has been a regression and now they are not working, I will take a look.


AsyncContext.Run not propagating exceptions properly in debugger?

Hi Stephen,
Ok, so I'm trying to replicate the answer given here : https://stackoverflow.com/a/7350534
When debugging, debugger pauses and I get this error : An exception of type 'System.Exception' occurred in ***.exe but was not handled in user code.
However, if I resume the debugger, the program continues as intended and the exception is handled in my try/catch.
Code below :
try
{
   AsyncContext.Run(() => test());
}
catch (Exception e)
{
   Console.Write(e.Message);
}

private static async void test()
{
   throw new Exception("test");
}

Any ideas what might be causing this issue? Note that I tried un-checking the Common Language Runtime Exceptions in the Debug's Exception Settings. Also note that it works perfectly fine when running outside the debugger.
I'm using the Nito.AsyncEx NuGet Package (4.0.1)
The project is a Universal Windows App.
Thanks.

Unfortunately, this is just a quirk of how the debugger sees exceptions in async code.


Linux: Ubuntu 16.04 installs GStreamer 1.0 series, not 0.10 series, by default

In Ubuntu 16.04 ("xenial"), the core desktop applications depend on libgstreamer1.0-0, rather than libgstreamer0.10-0. The latter is not automatically installed, leading to the following error when running TogglDesktop.sh:
/home/khaeru/toggldesktop/./TogglDesktop: error while loading shared libraries: libgstapp-0.10.so.0: cannot open shared object file: No such file or directory

I was able to work around this by manually installing libgstreamer-plugins-base0.10-0, which contains the required library.

Hello Khaeru,
Where did you find libgstreamer-plugins-base0.10-0 to make work Toggl ?
Thx

Also, the deb install is not responding. I think for the same reason, failing silently in the backend. I have to download the tar ball package run ./TogglDesktop to get into the problem above.

This workaround worked for me.
sudo apt-get install libgstreamer0.10-dev libgstreamer-plugins-base0.10-dev

On Debian, there is no libgstreamer0.10 anymore.

libgstreamer0.10 is a dependency of Qt 5.5 that we are currently using for the app. To make i work with newer gstreamer we need to probably update Qt and convert our app to work with the newer version.

Ubuntu 16.10 no longer provides libgstreamer0.10 packages

Guess it the right time to update the app to use latest QT.

And a quick workaround, tested on my machine with Ubuntu 16.10:
wget http://fr.archive.ubuntu.com/ubuntu/pool/main/g/gst-plugins-base0.10/libgstreamer-plugins-base0.10-0_0.10.36-1_amd64.deb
wget http://fr.archive.ubuntu.com/ubuntu/pool/universe/g/gstreamer0.10/libgstreamer0.10-0_0.10.36-1.5ubuntu1_amd64.deb
sudo dpkg -i libgstreamer*.deb

Debian also has removed libgstreamer0.10 from testing, thus TogglDesktop fails to run.
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=802812
The workaround above works, if I call TogglDesktop from the shell script.

Same issue here trying to run Scrivener:
$ scrivener
/usr/share/scrivener/bin/Scrivener: error while loading shared libraries: libgstapp-0.10.so.0: cannot open shared object file: No such file or directory
Your work around @Spurlos did not work for me :( unfortunately. Curiously if I look for the libraries:
$ ldconfig -p | grep libgstapp
libgstapp-1.0.so.0 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libgstapp-1.0.so.0
libgstapp-1.0.so.0 (libc6) => /usr/lib/i386-linux-gnu/libgstapp-1.0.so.0
libgstapp-0.10.so.0 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libgstapp-0.10.so.0
libgstapp-0.10.so (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libgstapp-0.10.so
Aparently they are installed.....
No idea what to do.
Thanks.

If you just installed the dependency then try to restart the terminal. It seems that app is looking in the wrong place.
For me the output is same but Toggl Desktop has no problem starting up.
$ ldconfig -p | grep libgstapp
	libgstapp-1.0.so.0 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libgstapp-1.0.so.0
	libgstapp-0.10.so.0 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libgstapp-0.10.so.0

Probably some issue with paths in Scrievener. Please contact their support to get solution.
If it fails

The workaround doesn't work for me on Ubuntu 16.10.
$ sudo dpkg -i libgstreamer-plugins-base0.10-0_0.10.36-1_amd64.deb
Selecting previously unselected package libgstreamer-plugins-base0.10-0:amd64.
(Reading database ... 483495 files and directories currently installed.)
Preparing to unpack libgstreamer-plugins-base0.10-0_0.10.36-1_amd64.deb ...
De-configuring libgstreamer-plugins-base0.10-0:i386 (0.10.36-2) ...
Unpacking libgstreamer-plugins-base0.10-0:amd64 (0.10.36-1) ...
dpkg: error processing package libgstreamer-plugins-base0.10-0:amd64 (--install):
 package libgstreamer-plugins-base0.10-0:amd64 0.10.36-1 cannot be configured because libgstreamer-plugins-base0.10-0:i386 is at a different version (0.10.36-2)
dpkg: error processing package libgstreamer-plugins-base0.10-0:i386 (--install):
 package libgstreamer-plugins-base0.10-0:i386 0.10.36-2 cannot be configured because libgstreamer-plugins-base0.10-0:amd64 is at a different version (0.10.36-1)
Errors were encountered while processing:
 libgstreamer-plugins-base0.10-0:amd64
 libgstreamer-plugins-base0.10-0:i386

Look like something is off with version mismatch. Are you using Ubuntu 64bit version?

@Spurlos Yup.
$ uname -a
Linux laurens 4.8.0-34-generic #36-Ubuntu SMP Wed Dec 21 17:24:18 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

@romanlevin
The error suggests that you already have a version of libgstreamer installed and the version suggested in the workaround cannot be configured. Maybe try to remove the installed version and then try to install the version suggested in the workaround.

@IndrekV That's embarrassing. I was sure I did that.
Turns out I didn't! Both packages install fine now.

What is the process of this?
Do we linux users without the packages libgstreamer0.10 & libgstreamer-plugins-base0.10 have to figure out how to install those packages (downloading and installing as @joshfleming suggest is probably the most solid way of doing it). Or is there a bugfix on the way?

@Fleuv The fix will not come in near future. To fix this we would have to upgrade the application framework and this means that rewrite some parts of the application to use the newer functions. I suggest using the workaround.

Also having this issue.
FWIW, installing packages outside the canonical repositories seems like a super dirty fix. The problem is those packages by nature aren't going to receive security or stability updates, and will progressively conflict with more stuff over time (what happens when someone needs 1.0.0 for something else?)
Debian stretch is hitting stable, and doesn't package 0.10.0 (only 1.0.0) -- I think it's worth thinking about fixing this issue.

Please fix this. It seems all major Linux distributions are facing that issue.
This issue was opened 1 and 1/2 years ago... And your answer to this is basically something like  "this is too much work to fix because we have to change parts of the code..."  Even worse it looks like toggl doesn't work anymore with any (major) Linux distribution out of the box.
I try to get started with toggl and I am also thinking about purchasing at least the starter plan however such things scare me off. How can you wake up in the morning knowing you leave a lot of your user base behind and don't care about them? Doesn't that worry you?

@mkurz Thank you for your feedback. We have plans for a bigger upgrade of the Linux app in the first quarter of 2018 and this issue will be dealt with during this development.

@IndrekV
first quarter is almost at the end - what's the status of the Linux app so far? Running on arch and having the same problem, currently converting my not-able-to-sync client (from AUR ) Database with sqlite to csv and sort my projects manually - really not the "HELPS YOU FOCUS" experience I imagine...
Hope your solving it soon, would appreciate an update!

Hey @chris-aeviator
Sorry for the delay with this. I already started the upgrade that would fix the old libgstreamer dependency issue but some plans shifted and I was forced to stop working on it. I'll try to pick it up again. Thank you for your active participation and feedback on this.

Hey @IndrekV do you have any updates for us?

Yes I do. We have successfully updated the app to use the newer Qt version and this fixes this dependency problem. Depending on how the testing process goes new beta version will be out sometime next week.

Yay, count me in. Will be happy to test the app in day you day usage.
On Sun, Jul 29, 2018, 18:41 Indrek V<EMAIL_ADDRESS>wrote:

Yes I do. We have successfully updated the app to use the newer Qt version
and this fixes this dependency problem. Depending on how the testing
process goes new beta version will be out sometime next week.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/toggl/toggldesktop/issues/1894#issuecomment-408686173,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAovjZFZKuw9EEFyH3mLQG0qeX-dZBU9ks5uLdetgaJpZM4IWXSh
.

I assume that beta release date have been postponed. Any new timeline on that?

Yeah, any new timeline?

We decided to go on and put new improved autocomplete to the new version also and it seems that this might have been a bit too bold goal. We're still working out some issues with the new autocomplete and hope to get the new version out as soon as we are pleased with the new autocomplete.

If you are willing to test the latest version we have here is the link (this version has the update to fix this issue but does not have new autocomplete) https://github.com/toggl/toggldesktop/releases/download/v7.4.271/toggldesktop_linux_x86_64-7_4_271.tar.gz

Agreed. The old autocomplete seemed serviceable to me, but the GStreamer issue is a showstopper.

Thanks @IndrekV
Btw is there an est. release date?

Echoing what @lee-tts said, what's the ETA on this?

Beta version posted in September didn't work due to some files not being marked executable. Latest update in the "beta" channel is here and works out of the box for me on a fresh 18.10 install: https://github.com/toggl/toggldesktop/releases/download/v7.4.272/toggldesktop_linux_x86_64-7_4_272.tar.gz . Not sure why it's not marked as released but seems to work fine so far.

Hi,
It looks like the dependencies are not featured on Debian 'Buster' anymore. To be able to use them, you'll need to add an older apt repository belonging to the Jessie release:

append deb http://ftp.de.debian.org/debian jessie main to your /etc/apt/sources.list
apt update && apt upgrade
dpkg -i toggl...deb
apt --fix-broken install
you should be good to go!

Reference: https://packages.debian.org/jessie/amd64/libgstreamer0.10-0/download

I was able to install toggl through snap on Ubuntu 19.10:
sudo snap install --edge toggldesktop

This will be properly fixed with next release. Version 7.4.274 or later.

This issue still persists and I don't have the feeling anybody is working on this.
I think it should be reopened. The current Linux client is not usable on most modern distributions.

@Fensterbank considering you opened an issue about a Snap package a while ago, let me point you to the fact that Snapcraft packages are still in the edge channel and we do not promote them anywhere officially.
We also have a new beta release of both the tarball and Debian packages (this time for Ubuntu 18.04) which should work alright on Ubuntu derived distributions.
I am, of course, working on making it work on as many computers as possible, but there is a TON of distros and if nobody opens bugs, I can't know of any issues you can experience in, say, Budgie. So please let me know if you have any other issues, thanks.

I'd also like to suggest you to consider trying the Flatpak package from https://flathub.org as I have much better experience (and results) with that. Compared to Snaps, Flatpaks actually are usable cross-distro.

@Fensterbank considering you opened an issue about a Snap package a while ago, let me point you to the fact that Snapcraft packages are still in the edge channel and we do not promote them anywhere officially.

Okay. I did not know that, just tried to find a way to get the app running somehow and the appearance in Gnome Software made it look officially released.

We also have a new beta release of both the tarball and Debian packages (this time for Ubuntu 18.04) which should work alright on Ubuntu derived distributions.

Thanks for this hint. I downloaded the beta (7.4.528) and can confirm it works out of the box in Ubuntu 19.04.
Ehm... I realized, I did not saw the important comments mentioning the beta releases and tried it with a stable v7.4.122. Sorry for that. 😶

No harm done. :) But seriously, if you hit any issues, please go ahead and either contact our support (slower) or open just open a bug here on Github (usually pretty fast), we are working on all three platforms and we're trying to make our app work as smooth as possible for everyone.

And yeah, I know Ubuntu does present the app in the Software center in this way, even though we've never done anything but edge channel releases. It's annoying to say the least.


CIF-1129 - Option 'Show main categories' is broken

provide property type in catalog page properties

Related Issue
CIF-1129
How Has This Been Tested?
Manually.
Types of changes

[X] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

[ ] I have signed the Adobe Open Source CLA.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[X] I have read the CONTRIBUTING document.
[ ] I have added tests to cover my changes and the overall coverage did not decrease.
[X] All unit tests pass on CircleCi.
[X] I ran all tests locally and they pass.

Tried to verify, does not work, see comments in ticket

I'll open a new PR for new review which includes this PR's changes and new changes.


Allow passing a metadata folder to IcebergTableProviderFactory

Currently when using the TableProviderFactory mechanism from DataFusion one needs to specify the full exact path to the metadata file as the location, e.g.
create external table inventory
stored as iceberg
location 's3://iceberg/public/inventory/metadata/00001-97ea515a-2d2f-465d-8c74-8daec5ab0023.metadata.json

I think it would be nice if IcebergTableProviderFactory also supported being pointed to a metadata directory as well
create external table inventory
stored as iceberg
location 's3://iceberg/public/inventory/metadata

This would then imply listing and parsing the latest metadata file in that directory (e.g. from V in filenames like <V>-<random-uuid>.metadata.json and maybe the legacy v<V>.metadata.json), as that is likely the overwhelming use case, and using that to build the table. That would improve the flexibility and ergonomics of the integration (e.g. by making quick prototyping much simpler).

Hi, I have a strong feeling that we need to add catalog support for datafusion. Any ideas?

we need to add catalog support for datafusion

Hmm, I think that is adequately supported already, no?
https://github.com/apache/iceberg-rust/blob/5400bbee9697189bb95646f5e3c0eb9a84d4b376/crates/integrations/datafusion/src/catalog.rs#L86
https://github.com/apache/iceberg-rust/blob/5400bbee9697189bb95646f5e3c0eb9a84d4b376/crates/integrations/datafusion/src/schema.rs#L86
To be clear, i think the DF CREATE EXTERNAL TABLE construct (formalized via TableProviderFactory) is at most loosely coupled to a catalog. In fact the use case is typically just registering a pre-existing table in an ad-hoc manner for some read-only queries. To me this is analogous to FDWs in Postgres.
While it is possible to wire-up the write path for those, it would require implementing TableProvider::insert_into in https://github.com/apache/iceberg-rust/blob/5400bbee9697189bb95646f5e3c0eb9a84d4b376/crates/integrations/datafusion/src/table/mod.rs#L113 (but I also think this is orthogonal to the ask here).
Contrast that to a regular CREATE TABLE construct which would correspond to a full coupling with a catalog, targeting tables native to the given system. Thus a full life-cycle of the table would need to be tracked, but that is also beyond the scope of this issue.
At least that is how we perceive/use them, would be curious to hear other interpretations.


Refactor master trait to use camel-quarkus-kubernetes

The functionality of camel-k-master  is present in camel-quarkus-kubernetes.
We should refactor camel-k master trait to use the camel-quarkus-kubernetes.

While I was refactoring the code, I experienced a breaking change.
The resourceType master trait can be ConfigMap or Lease, but in camel-quarkus, because of the hyphenate enum converter, we have to use config-map instead of ConfigMap. So for this refactoring I plan to deprecate the ConfigMap and introduce config-map, this way any integration code that uses ConfigMap will work, but with a warning in the log.

@squakez @christophd wdyt ?

Subtask of #4166

@claudio4j I understand this is something we're not planning to release in the first version of Camel K 2, right?

You are correct, not planned to release for 2.0.

The new implementation is available in https://github.com/squakez/camel-k/tree/feat/4048 - however it misses the support for build properties which conflicts with maven properties. The actual required property quarkus.camel.cluster.kubernetes.labels."camel.apache.org/integration"=xyz cannot be used into xml properties. As soon as we solve that problem we can use it.


Provisioning Site Fails: SiteStatus 3

Meant to post under starter kit issues.

Let's close this here as there's an issue in the sp-starter-kit for this. Thanks for clarifying the situation.


Publish changes from GitHub README to npm to show that this is deprecated

https://www.npmjs.com/package/serverless-babel-plugin

@nikgraf FYI. Thanks!


added required changes in all the files (#7)

Added contact section in the portfolio for that modified index.html, css , and js file.
Use swiper for displaying contact info.

I have reviewed the code @kambleaishwarya everything in code is fine but the commit does not match with conventional commit format please refer the link. commit properly.


Is there out-of-the-box possibility to work with another Ethereum network?

Hello,
I'm trying to use this SDK against a product (a fork of Uniswap V2) working with a custom network.
I extended this enum:
const ChainIdPlus = {   ...ChainId,   NETWORKONE: 101,   NETWORKTWO: 102 };
Despite these changes, code is failing in further calls, and so on.
So, the question is there any extensibility out of the box like plugins to be able to work with other networks (a private blockchain, for example) or I have to fork this project and change it appropriately?

Hi @apetrovskiy and anyone else trying to use this sdk for forks,
For exact copies of Uniswap V2, this SDK works, but you still have to change the factory address and init code hash in the constants file of the SDK. Usually, the creators of the forks create forks of the sdk that already have these changes, otherwise you can fork this repository and just make the amendments yourself.
So to answer your question, no, this functionality is not provided out of the box, but it should be very easy to make the necessary changes yourself.
Be cautious when using "forks" of Uniswap as the creators often change some details.


Sending ganglia metric to logstash results in a ganglia udp listener died

Hi All,
I having been working on sending my ganglia metrics to logstash. This is my configuration
input{
ganglia {
host => "<IP_ADDRESS>"
type => "ganglia"
}
}
output {
stdout {
codec => rubydebug
}
}
This configuration results in a the following exception in the file logstash.log
{:timestamp=>"2016-02-03T20:05:25.706000+0000", :message=>"ganglia udp listener died", :address=>"<IP_ADDRESS>:8649", :exception=>#<SocketError: bind: name or service not known>, :backtrace=>["org/jruby/ext/socket/RubyUDPSocket.java:160:in `bind'", "/opt/logstash/vendor/bundle/jruby/1.9/gems/logstash-input-ganglia-2.0.4/lib/logstash/inputs/ganglia.rb:55:in`udp_listener'", "/opt/logstash/vendor/bundle/jruby/1.9/gems/logstash-input-ganglia-2.0.4/lib/logstash/inputs/ganglia.rb:36:in `run'", "/opt/logstash/vendor/bundle/jruby/1.9/gems/logstash-core-2.0.0-java/lib/logstash/pipeline.rb:180:in`inputworker'", "/opt/logstash/vendor/bundle/jruby/1.9/gems/logstash-core-2.0.0-java/lib/logstash/pipeline.rb:174:in `start_input'"], :level=>:warn}
It seem to me that I'm missing something but doesn't know where to search. Please can somebody help me in this task. It is very URGENT please.
Thanks.

@berrytchaks is this still happening?

@suyograo  thanks for the concern but this issue is fixed.

@berrytchaks This is still happening to me... there is any workaround to fix it?

https://gist.github.com/Hammond95/0248a1ee6d5e04d9f8598bf4f97bcd08


upsert and insert ignore end to end support

Issues #3012 #2951
Description
This feature is for supporting INSERT IGNORE and INSERT...ON DUPLICATE KEY constructs. This is a 'best-effort' implementation and is not 100% backward compatible with MySQL.
The behavior is as follows: If an upsert is encountered, vitess will try to create new routes as needed. In cases where routes already exist, it will verify that they are valid and use them Once the routes have been validated, the statement will be split and forwarded to the respective vttablets.
If a verification fails, the upsert will drop the row and no action will be taken for it. This part differs from MySQL that may still succeed at changing a row. This is equivalent to trying to trying to migrate a row from one shard to another, which is not practical.
This change also introduces the possibility of inconsistencies in an owned Vindex: If an entry already exists for an owned Vindex, then the statement will get forwarded to that shard. However, the statement may end up creating a new row in that shard instead of updating an existing one. If so, there will be two rows owning a single vindex entry, which can cause problems for deletes.
VTTablet

If a table has only one unique key, then upsert is just passed through, and multi-row inputs are allowed.
If a table has more than one unique key, then it's the old insert-update behavior, and multiple rows are not allowed.
Support for VALUES(col) construct has also been added. The previous hack of patching the AST has been undone. The new behavior uses a custom formater to generate the correct SQL.
In all the above cases the _stream comments have been fixed to report possible pk updates, and this works for multi-row upserts that use the VALUES(col) construct also.

VTGate

Lookup vindexes have been cleaned up to be more readable. lookuip_internal had a conditional isHash which was confusing to read. That part has been pulled out into the individual lookup types.
Vindex APIs have been extended to support Create with ignore mode and a Verify that now returns what matched and what didn't (instead of just failing).
The planbuilder adds an InsertShardedIgnore opcode which gets used for INSERT IGNORE and upsert statements.
If the upsert attempts to change a column vindex, the statement is failed, just like we do for updates.
Some end to end tests have been added to vtgatev3 because this is a multi-component change.

All LGTM now. 👍


Error on config value timeout_seconds on string values

Issue: When setting the timeout_seconds either from the .env file or within the GitHub workflow, an error message is returned: Invalid configuration values: The timeout seconds field must be a string.
Suggestion: It would be beneficial to allow the class property to accept both string and int types. Subsequently, we can validate the value to ensure it's an integer starting from minimum 0 for safety.

@mgkimsal FYI there was a small bug I faced today while provisioning by using the default integer value for the timeout_seconds 🏋♀⚡ Hope it works correctly for you as well

@mehrancodes does the validator coerce in to integer?  I would agree, would be better as integer, but coming in from env var, it's likely a string, and I couldn't see a way to coerce it simply without messing with more of the assignment block.
If this works, great.
Thanks.

It seems .env sets it as a string, even though we expect an integer. To support both the config file and .env, I had to accept both types and ensure the value is numeric (either it is string or integer) while validating it. 🤓


url.intended saves POST request url and thows 404 after login

If a guest tries to POST to a authenticated page, url.inteded is saved to that POST url. After login when attempting to redirect, it makes a GET request to that POST-only url and throw a NotFoundHttpException. IMHO, if current request is GET then use $this->generator->full() and if non-GET then it should be $session->previousUrl()

I guess we need to only flash it for a "safe" request. That's defined as 'GET' or 'HEAD'.


nefi crashing during pipeline processing

Is nefi2 running without errors for you?
I am having some issues, for example.

run nefi2 from source
open an image and run the pipeline
click "Run" button again
I received:

Failed to process pipeline
Traceback (most recent call last):
  File "/home/tastyminerals/dev/nefi/nefi2/view/main_controller.py", line 1883, in run
    self.pipeline.process()
  File "/home/tastyminerals/dev/nefi/nefi2/model/pipeline.py", line 318, in process
    self.save_pipeline_json(pip_name, os.path.join(out_path, pip_name))
  File "/home/tastyminerals/dev/nefi/nefi2/model/pipeline.py", line 689, in save_pipeline_json
    with open(url + ".json", "wb+") as outfile:
FileNotFoundError: [Errno 2] No such file or directory: '/home/tastyminerals/dev/nefi/output/polycephalum_high_poly_#2_17h17m11s/polycephalum_high.json'

Another example:

run nefi2 from source
open an image and run the pipeline
open another image and choose another pipeline
click "Run"
I received:

Current cat <preprocessing.CatBody object at 0x7f8843071f98>
Segmentation fault (core dumped)

Can you reproduce the following?

Is there a reason why you have closed this one?

this is a duplicate due to github database issues.


Reminder for ES6 branch reports

We need to report code for the issues

[x] #624 (#626)

[ ] #644

[ ] #650

[x] #649 (#656)

[ ] #658

[ ] #619

Closed to avoid pollution in open issues ;)

Great plan. Can I reopen? Want to keep this in mind.

@jccazeaux What do we need to do regarding https://github.com/mikeric/rivets/issues/658?

Actually nothing, i listed the issues in 0.9.2 without analysis. I check it 😉

hey @jccazeaux - both #644 and #650 seem to be done
also #619 @Leeds-eBooks ?

also found #574 signatured as ES6

@Namek thanks – I have a very bad memory, got links for the es6 PRs that fix these issues?

heh, I was more asking than telling

@Namek No they are not done. I just looked at the ES6 branch, the bugs are still there. To be sure we must report the tests first. I will do it when i have some time

@jccazeaux that would be brilliant, thanks!

@Leeds-eBooks  it took more time than I expected but it's done !

@jccazeaux Great work, thanks!


[proposal] Add support for django-configurations

Context
django-configurations is a nifty tool that requires a minor tweak to work with Zappa.
Possible Solution
Change:
def get_django_wsgi(settings_module):
    from django.core.wsgi import get_wsgi_application
...

to:
def get_django_wsgi(settings_module):
    try:
        # in case the user is using django-configurations
        from configurations.wsgi import get_wsgi_application
    except ImportError:
        from django.core.wsgi import get_wsgi_application
...

If there is interest for this tweak, I would be happy to submit a PR.

We use this in our deployments and it works well!

Switched to serverless


Adhere to cgo pointer passing rules in GetApproximateSizes.

Go 1.6 introduced stricter rules for passing pointers between Go and C, and these changes cause the functions GetApproximateSizes and GetApproximateSizesCF to panic.


orientDB corrupting very often

OrientDB Version: <1.4.1>
Java Version: <java 1.8>
OS:
Expected behavior

Actual behavior

Steps to reproduce
<It happens anytime don't know exact steps to reproduce>
OrientDB is very often failing in Production environment and we are unable to identify the root cause. Could you help me to find the root cause for failing and if possible can we get fix for this. Regards, Manish

@Manish-Aman do you use 1.4.1 version? That is super old and quite fragile version. Please make export/import of data from/to JSON and use 2.2.32 version instead.

Hi thanks a lot. Is there any other option instead of upgrade?

@Manish-Aman sorry no other options.

Be careful using EXPORT and IMPORT, all of my record IDs are wiped out whenever I do that. It is very baffling to me that basic database functionality like EXPORT and IMPORT doesn't preserve IDs (even with "preserveClusterIds") but here we are.


Implement parcelable to model

Issue/Task Number: 324-implement-parcelable-to-model
Overview
This PR adds @Parcelize to supports parcelable. This enables the ability to pass the object between android fragments or activities.
Changes

Add plugin kotlin-android-extensions and enable experimental features to use @Parcelize
Implement @Parcelize on the model.

Implementation Details
N/A
Usage
val bundle = Bundle().apply{
    putParcelable("transactionConsumption", transactionConsumption)
}

val transactionConsumption = bundle.getParcelable<TransactionConsumption>("transactionConsumption")

Impact
N/A

It can be done manually, but because we use Kotlin and it supports this since v1.1.4, so I think we can just use
Kotlin plugins to handle this.


feat(mobile): 📱 Refactor all layouts to be mobile first

I want the app to be responsive and work as well as it can on mobile.
Chakra is built around "mobile first", so let's embrace that and redo all layouts to be first and foremost mobile.

In the current state, it should work great on mobile and desktop. Should aim to reproduce the fancy form we had on desktop.

📝Changed routes:

/about/api
/

(view full size)
(view full size)

Commit 4a494d39080b6b5cdbe398c27f5d7f35f3986421 (https://npm-diff-b7ix9ty44-obusk.vercel.app).


listvaulthistory command not working

In the example of the listvaulthistory "vaultID"    command
it states listburnhistory... on desktop wallet version 2.8.4 further the result states:
listvaulthistory {"vaultID":"xxxxxxxxxx"}
-vaultindex required for vault history
What is the vaultindex how to find it with only the vaultID?

Would be great to get a history of the interest rate and loan. Esp. needed to payback loans and for tax reasons!

Hi @salomonkarsten, will move this to https://github.com/DeFiCh/ain for discussion


Delete sheet breaks AutoFilter

Description
When using autoFilter, removing Sheet1 seems to be breaking the entire file.
This is tested with LibreOffice on ubuntu.
When uploaded to Office365, it says the file has been repaired.
Steps to reproduce the issue:
Code:
        f := excelize.NewFile()

	f.NewSheet("sheet_test")
	for i := 0; i < 5; i++ {
		idx, _ := excelize.CoordinatesToCellName(i+1, 1)
		f.SetCellValue("sheet_test", idx, fmt.Sprintf("Header %d", i))
	}

	row := 2

	for j := 0; j < 10; j++ {

		for i := 0; i < 5; i++ {
			idx, _ := excelize.CoordinatesToCellName(i+1, row)
			f.SetCellValue("sheet_test", idx, fmt.Sprintf("Value %d", i))
		}

		row++
	}

	f.AutoFilter("sheet_test", "A1", "E11", "")

	f.DeleteSheet("Sheet1")
	f.SetActiveSheet(0)

	filename := "/tmp/test4.xlsx"

	f.SaveAs(filename)

Describe the results you received:
When opening the file, Libre office reports:
General input/output error

Describe the results you expected:
A 1 sheet xlsx file, containing the Autofilter.
Output of go version:
go version go1.13.10 linux/amd64

Excelize version or commit ID:
github.com/360EntSecGroup-Skylar/excelize/v2 v2.3.2

Environment details (OS, Microsoft Excel™ version, physical, etc.):
Ubuntu 18.04
LibreOffice  (LibreOffice <IP_ADDRESS> 00m0(Build:3)

Thanks for your issue. As the docs of the DeleteSheet noticed, this issue caused by some references not removed after deleting the worksheet which has the auto filter, I'll consider resolving it.

Oh that makes sense. I am sorry, I hadn't read the docs on DeleteSheet!
A question, is there a "safe" way to create a new spreadsheet without the first Sheet? I resolved to removing it because I had no idea how to get rid off it :)

If you needn't the default worksheet named Sheet1, you can rename it by SetSheetName("Sheet1", "sheet_test") before coming up with operations.

I have fixed it, please try to use the master branch code, and this patch will be released in the next version.


[FEATURE] Consider [[no_unique_address]] on members for better EBO

Considering MSVC bad support for this, we're not gonna do that.


Error after resizing window

Check that this is really a bug

[X] I confirm

Reproduction link
https://codesandbox.io/s/eager-meadow-jb96oy
Bug description
After resizing the window from desktop to mobile, the swiper library throws an error with the following message:
Cannot read properties of undefined (reading 'split')
This seems to happen in the navigation module according to the stacktrace. This might be a general problem and not just related to React, but I´m not 100% sure about this.

Expected Behavior
No response
Actual Behavior
No response
Swiper version
9.1.1
Platform/Target and Browser Versions
Chrome 111.0.5563.147
Validations

[X] Follow our Code of Conduct
[X] Read the docs.
[X] Check that there isn't already an issue that request the same feature to avoid creating a duplicate.
[X] Make sure this is a Swiper issue and not a framework-specific issue

Would you like to open a PR for this bug?

[ ] I'm willing to open a PR

I can not see such error on the demo you provided

Closing due to inactivity and/or no responses from issue author


[Rancher2] Add more info on how to use Fleet in Rancher docs

The examples and use cases should defer to Fleet docs

Addressed via https://github.com/rancher/docs/pull/3716


Remove duplicate job models from Django admin

The Django jobs cleanup in #2603 left behind two models that were displayed in both the Django admin and the Wagtail admin, jobmanager.JobCategory (division) and jobmanager.ApplicantType. To avoid confusion, this PR removes these models from the Django admin, where they currently appear like this:

and instead leave them only in the Wagtail admin, where they appear like this:

Removals

Remove duplicate display of jobmanager.ApplicantType and jobmanager.JobCategory in the Django admin.

Changes

Modified jobmanager.wagtail_hooks.JobCategoryModelAdmin to use the TinyMCE library to maintain HTML editability of JobCategory blurbs.

Testing

Run a local server, and using the main Wagtail menu, select Job Listings, Divisions to create or edit a division. Note ability to enter rich text content. Similarly, selected Job Listings, Applicant types to create or edit an applicant type.

Screenshots

Notes

The complexity of changes in jobmanager.wagtail_hooks is because Wagtail doesn't provide a simple way to override a single form widget in a model's admin view.
I didn't update the CHANGELOG here because the general "Removed deprecated Django careers-related models, views, and templates." is already in there from #2603.

Checklist

[X] Changes are limited to a single goal (no scope creep)
[X] Code can be automatically merged (no conflicts)
[X] Passes all existing automated tests
[ ] Project documentation has been updated (including the "Unreleased" section of the CHANGELOG)
[X] Reviewers requested with the Assignee tool :arrow_right:

Could you elaborate on the need for this: Modified jobmanager.wagtail_hooks.JobCategoryModelAdmin to use the TinyMCE library to maintain HTML editability of JobCategory blurbs.
(Mostly my own curiosity -- I'm not sure how these pages were being managed before, but I guess I'm surprised the default Wagtail functionality does not provide sufficient editing capabilities).

@richaagarwal the blurb field can contain HTML, and TinyMCE is just a library for doing simple HTML editing. That functionality has been around for a while so I just migrated it over to the Wagtail admin component. I'm not sure how easy it would be to, say, use a RichTextBlock instead.


Many fixes

those evolutions are needed to make working postgresql Unit file on centos:7.

Very nice, but this fork it's only to keep a copy.
Could you make the PR on the upstream repo https://github.com/kvaps/fake-systemd ?
Sorry about that, will close contribs.


Dropdown click inisde elements closes

Dropdown click inisde elements closes,  stopPropagation not working

use this on your datetime-dropdown container:
(click)="$event.stopPropagation()"
it's a temporal solution, but still working


chore: move to COPR package for fastfetch configuration and MOTD cleanup

Gotta rebuild the copr, this build will fail right now

I FORGOT THE CONFIG - just a sec


feature: An option to execute vscode-neovim.send synchronously in normal mode

Did you check the docs?

[X] I have read all the vscode-neovim docs
[X] I understand the fundamental limitations of the plugin and believe this request to be reasonable

Is your feature request related to a problem? Please describe.
For details, see this discussion https://github.com/vscode-neovim/vscode-neovim/discussions/2289.
The doc says   "command": "vscode-neovim.send"  "title": "Neovim: send key to neovim, syncing if in insert mode". Therefore, I think in normal mode, this command is executed asynchronously, and I tested, it is.
Describe the solution you'd like
Could you give an option to execute vscode-neovim.send synchronously?
Describe alternatives you've considered
Placing a sleep before executing the next command is an inelegant solution.
Additional context
No response

This currently isn't possible (in a 100% reliable way), see https://github.com/neovim/neovim/issues/10826 https://github.com/neovim/neovim/issues/30760

This currently isn't possible (in a 100% reliable way), see neovim/neovim#10826 / neovim/neovim#30760

For details, see this discussion #2289.

Provide a small (3 lines of code), concrete example here, don't link to a long discussion.
What keys do you need to send, why can't you use :normal or other commands?

For example, I want to map <a-p> to paste yanked lines and autoindent them.  I tried
keyset("n", "<A-p>", function()
    --  paste yanked text below the current line
    vim.api.nvim_exec2(vim.api.nvim_replace_termcodes("normal o<Esc>p", true, false, true), {output=false})
    -- select pasted text
    vim.cmd.normal("`[v`]")
   -- reindent select lines. This command doesn't work
    vscode.call('editor.action.reindentselectedlines')
    vim.cmd.normal(vim.api.nvim_replace_termcodes('<Esc>', true, true, true))
end, {silent=true, desc= "粘贴到下一行"})

It doesn't work. It seems that buffer state of nvim isn't synchronized to vscode before all commands in this map are executed, therefore,  duiring the line vscode.call('editor.action.reindentselectedlines'), vscode is unaware of the section.  I searched the doc and find no solution.  Therefore, I turned to the vscode side to solve this problem.  In keybindings.json, I map <alt-p> to two commands:  vscode-neovim.send '<a-p>',  which paste text and select them, and editor.action.reindentselectedlines. However, vscode-neovim.send is executed asynchronously, and I have to put a sleep before executing reindenting.
Could me give me some hits?

during the line vscode.call('editor.action.reindentselectedlines'), vscode is unaware of the section

It should be. You can try adding a small delay to give the visual selection time to sync to nvim (by default, debounced by 50ms). Alternatively, you can passing range to the call function to explicitly tell vscode which range to indent, without needing a visual selection. This is the canonical approach.

I turned to the vscode side to solve this problem

Hacks like multiCommand is a terrible approach and will never be supported by this extension. vscode-neovim.send is intended simply to passthrough keybindings, and should not be used in automations. Besides, making it "synchronous" makes no sense, as that implies having some functionality, through the nvim api, to synchronously block nvim_input until whatever binding gets triggered by the keystrokes is finished processing. nvim_input simply adds the keystrokes to the event buffer.

that implies having some functionality, through the nvim api, to synchronously block nvim_input until whatever binding gets triggered by the keystrokes is finished processing. nvim_input simply adds the keystrokes to the event buffer.

Nvim support for that is planned:

https://github.com/neovim/neovim/issues/10826
https://github.com/neovim/neovim/issues/30760


Support parameters in Project<>()

It would be nice i can paste parameters to the Project<>() Methode like in AutoMapper (https://github.com/AutoMapper/AutoMapper/wiki/Queryable-Extensions#parameterization)¨
Mapping
int languageId = 0; .ForMember(dto => dto.Description,  expr => expr.MapFrom(data => data.Language.FirstOrDefault(itm => itm.SpracheId == languageId).Name ?? data.Language.FirstOrDefault().Name))
Projection
query.Project<from, to>(new { languageId = 1 });
I use this for Language Fallbacks in MultiLanguage Applications

Dear @philippjenni,
Thanks a lot for for your valuable input!
It's added to the backlog.


Optimization of BITFIELD args generation

Feature Request

Is your feature request related to a problem? Please describe
When measuring code that uses BITFIELD intensively in profiler, I saw that a non-trivial amount of time was spent creating Redis commands (more so than actually dispatching).
I replaced String.format w/ String concatenation and profiled the app under high load and it basically became insignificant
Describe the solution you'd like
I replaced my usage of lettuce 5.1.7.RELEASE with my 6.0 snapshot with these changes
https://github.com/ianpojman/lettuce-core/pull/1
and per the profiler I saw I reasonable improvement in time spent in AbstractRedisAsyncCommands.bitfield() runtime.
Describe alternatives you've considered
Teachability, Documentation, Adoption, Migration Strategy

Thanks a lot for having a look. Do you want to submit a pull request to fix that issue?

https://github.com/lettuce-io/lettuce-core/pull/1178


Add a command to suppress outstanding hints.

Thanks for the pull request!

If you care, my PR preferences are at https://github.com/ndmitchell/neil#contributions, but they're all guidelines, and I'm not too fussy - you don't have to read them.

All good, I've read them.

For #1374. This adds a --willful-ignorance command that is the subset of --default but also shows the number of occurrences of each hint suppressed. Example output:
liquid-fixpoint on develop > hlint --willful-ignorance src/ tests/ win/ unix/
Warning: unknown directive ##
in src/Language/Fixpoint/SortCheck.hs  at line 779 col 1
Warning: unknown directive ##
in src/Language/Fixpoint/SortCheck.hs  at line 792 col 1
Warning: unknown directive ##
in src/Language/Fixpoint/SortCheck.hs  at line 830 col 1
# Warnings currently triggered by your code
- ignore: {name: "Avoid lambda"} # 4 hints
- ignore: {name: "Eta reduce"} # 30 hints
- ignore: {name: "Evaluate"} # 1 hint
- ignore: {name: "Fix pragma markup"} # 38 hints
- ignore: {name: "Functor law"} # 3 hints
- ignore: {name: "Move brackets to avoid $"} # 8 hints
- ignore: {name: "Redundant $"} # 20 hints
- ignore: {name: "Redundant <$>"} # 29 hints
- ignore: {name: "Redundant bang pattern"} # 33 hints
- ignore: {name: "Redundant bracket"} # 198 hints
- ignore: {name: "Redundant flip"} # 1 hint
- ignore: {name: "Redundant guard"} # 2 hints
- ignore: {name: "Redundant if"} # 1 hint
- ignore: {name: "Redundant lambda"} # 3 hints
- ignore: {name: "Redundant return"} # 1 hint
- ignore: {name: "Unused LANGUAGE pragma"} # 29 hints
- ignore: {name: "Use $>"} # 7 hints
- ignore: {name: "Use ++"} # 1 hint
- ignore: {name: "Use /="} # 1 hint
- ignore: {name: "Use <$"} # 2 hints
- ignore: {name: "Use <$>"} # 10 hints
- ignore: {name: "Use all"} # 2 hints
- ignore: {name: "Use camelCase"} # 2 hints
- ignore: {name: "Use concatMap"} # 3 hints
- ignore: {name: "Use const"} # 1 hint
- ignore: {name: "Use elem"} # 1 hint
- ignore: {name: "Use first"} # 1 hint
- ignore: {name: "Use fold"} # 1 hint
- ignore: {name: "Use gets"} # 9 hints
- ignore: {name: "Use guards"} # 3 hints
- ignore: {name: "Use if"} # 1 hint
- ignore: {name: "Use infix"} # 3 hints
- ignore: {name: "Use map"} # 2 hints
- ignore: {name: "Use map once"} # 1 hint
- ignore: {name: "Use mapM_"} # 1 hint
- ignore: {name: "Use mapMaybe"} # 4 hints
- ignore: {name: "Use maybe"} # 7 hints
- ignore: {name: "Use newtype instead of data"} # 3 hints
- ignore: {name: "Use notElem"} # 2 hints
- ignore: {name: "Use record patterns"} # 5 hints
- ignore: {name: "Use second"} # 1 hint
- ignore: {name: "Use section"} # 3 hints
- ignore: {name: "Use tuple-section"} # 1 hint
- ignore: {name: "Use void"} # 2 hints

The help:
> hlint --help
HLint v3.3.5, (C) Neil Mitchell 2006-2022

hlint [OPTIONS] [FILE/DIR]

Common flags:

  -d --default                             Print a default file to stdout
     --willful-ignorance                   Suppress outstanding hints

Thanks for the request! So the difference between this and --default is that it shows the number of hints that were ignored? Any reason that we couldn't do that for --default and stick with the single flag? Also, if we're showing the numbers, it seems to make sense to put the most/least at the top and sort them?

As to other options to make this more discoverable, we could try:

Adding another command line option as an alias for it.
Improving the description.
Suggesting that if the user doesn't have a .yaml file, and they have warnings, then print a warning they might want to generate one (and mentioning --default)

So the difference between this and --default is that it shows the number of hints that were ignored? Any reason that we couldn't do that for --default and stick with the single flag?

I had considered that but --default generates way more than just the list of ignores with about 60 lines of comments following the ignores. These are really useful as documentation for first time use of hlint but something I'd be editing away if only interested in maintaining an .hlint.yaml file and whittling away the number of ignores by following the hints in the code being linted.

Also, if we're showing the numbers, it seems to make sense to put the most/least at the top and sort them?

I like how the list comes sorted alphabetically. I find it easy to scan the list to see the big numbers.

@ndmitchell I've had another crack at this and added updated the readme. From the options you suggest, I did 1 & 2 but not 3.

Here's the rendered readme:
Customizing the hints
To customize the hints given by HLint, create a file .hlint.yaml in the root of your project. For a suitable configuration use either hlint --suppress > .hlint.yaml or hlint --default > .hlint.yaml.

--suppress prints settings for ignoring all the hints currently outstanding.
# Warnings currently triggered by your code
- ignore: {name: "Redundant $"} # 20 hints
- ignore: {name: "Unused LANGUAGE pragma"} # 29 hints

--default implies --suppress and shows examples (as comments) of how to:

Add command line arguments to all runs, e.g. --color or -XNoMagicHash.
Ignore certain hints, perhaps within certain modules/functions.
Restrict the use of GHC flags/extensions/functions, e.g. banning Arrows and unsafePerformIO.
Add additional project-specific hints.

You can see the output of --default here.
If you wish to use the Dhall configuration language to customize HLint, there is an example and type definition.

Here's the rendered help:
> hlint --help
HLint v3.3.5, (C) Neil Mitchell 2006-2022

hlint [OPTIONS] [FILE/DIR]

Common flags:
...
  -d --default                             Print default to stdout
     --suppress                            Suppress ideas with ignore

Are the extra notes added to --default harmful? It still seems like compressing these into one piece of functionality, but retaining both flag aliases, might be easier in the long run? I think the idea of generating a lot of documentation that usually gets edited away by experienced users is quite standard, e.g. tools like cargo new do it as just one example I ran into in the last day or two.

This could be a good time to pause and compare to other tools. A common enough set of commands are init followed by update or outdated but then tools like this write directly to their config file.
One thing that surprises me is that hlint --default > .hlint.yaml is not the same as having no .hlint.yaml configuration at all and so for the unwary hides hints.

I'm closing this PR in favour of #1380.


Adding maximum FD

What would you like to see added in this software?
A maximum FD IQM that could then be examined in summaries — sometimes when working with very young kids, you want to examine maximum FD. Sometimes you'll get a young kid with a very large head isolated head motion (for example, > 10 mm), that you'd want to exclude especially if you're not using a censoring pipeline, that might not get flagged by an exclusion on average FD if the majority of the frames have low motion.
Do you have any interest in helping implement the feature?
Yes
Additional information / screenshots
I always wanted to do a PR for this while I was in grad school and I was too busy! Happy to do it myself as it seems straightforwards (I may or may not need guidance, it's been a while since I worked in nipreps land), I just want to ensure that it's actually something that might be useful to people and get community input first.

Related to #1138.


Token sizing issue after completing

I am a bit unsure how to describe it, however I will provide pictures with each step, and attach the artwork I am using.
Step one:
Upload the avatar and the layers needed, create an alpha for the elements that need to be on top:

Step two:
Apply changes, and drop the token on the canvas, and it displays correctly on the canvas, if I reopen tokenizer, it looks @75% in size:

I am submitting a bug request, as under the regular circumstances this wouldn't had affected me, however, after a while, the already modified token for both the avatar and the token do change. The transparent background disperses and the token keeps shrinking, and this does happens on the canvas too
No edits:

Picture used:

This is the "Default Token Offset" option, which defaults to -35. Change this to 0 and your image won't be shrunk on opening Tokenizer. You can also remove the default colour layers and token layer if you need to here as well.


No longer able to compile .sp with 6.0.3 on macOS

Basic informations

OS: [macOS 14 Sonoma (aarch64)]
VSCode version: Latest
Extension version: 6.0.3
SourceMod version: 1.11 build 6863

Further Information
I'm no longer able to compile any .sp file after auto updating to 6.0.3, and have to rollback to 6.0.2 in order to work, the compile button on the top right corner disappears on 6.0.3:

While in 6.0.2:

To Reproduce
Update the extension from 6.0.2 to 6.0.3
Code to reproduce the behaviour

Expected behaviour
Should be able to compile via clicking the green play button at the top right corner.
Error messages
I also tried manually run the compile command by F5 on 6.0.3:

Does the linter work at all? It should try to call rosetta, just like the compile option.
I will try to repro in a few hours 👍

I also tried manually run the compile command by F5 on 6.0.3:

By the way, F5 is for debugging, you should use CMD+SHIFT+D 👍


Get favorites from the server

It would be nice if favorite project list was synchronized with the server:
https://plugins.jenkins.io/favorite/

Yes nice enhancement
thanks for that. Will be scheduled

asks for API method to retrieve list: https://issues.jenkins.io/browse/JENKINS-71748


Adds procs to call to gather extra log data for a controller

Allows a controller to inject additional summary data to the completion of a controller action.
I didn't add any tests for this as I didn't see any in the project. Let me know if they are needed.

Using the example, would you like the user id added to every log entry for the rails request?
I.e. Something similar to the Rails 'config.log_tags'

Rails provides a way to add extra information to the payload (via append_info_to_payload)
Perhaps my example in the code comments isn't the best. Really I'm looking for a way to add custom data we'd like to associate to the controller request itself. This avoids having to post-process associate the data based on some correlating data field (uuid, etc.)
Also log_tags seems to only have reference to the request object.
This is similar to custom_options feature in lograge which also uses the ability to add arbitrary data to the payload and then extract that into the log message.

Using the example:
class ThingController
  private

  def append_info_to_payload(payload)
    super
    payload[:user_id] = 42 # or whatever fetches your user_id
  end
end

config.rails_semantic_logger.action_controller_extra_log_procs << proc do |payload, log|
  log[:user_id] = payload[:user_id] if payload[:user_id]
end

I changed the code to switch from a whitelist approach to rather use a blacklist approach so that any data added in append_info_to_payload is automatically picked up. Per this new commit https://github.com/rocketjob/rails_semantic_logger/commit/73398314c2fd83bfe42239b49bb7869527f87091
So to get the above to work, we now only need:
class ThingController
  private

  def append_info_to_payload(payload)
    super
    payload[:user_id] = 42 # or whatever fetches your user_id
  end
end

It will now log the user_id automatically without having to register a Proc.
If procs are still useful for other reasons, we can still add them.

BTW, I would love to have tests for the Railtie. I have not found any examples on how to test railties. For now I manually have to test it before every release.

Closing this since 73398314c2fd83bfe42239b49bb7869527f87091 resolves it by adding all the payload elements.
Also I think most tests for things like this are done by adding a dummy app to the test suite. Then you invoke requests to it and inspect the side effects or results.


warp: add check for epsg code input images?

Would be nice to check the epsg of the input images: if not 28992 or 7415 give a warning/error, user must add -c option to warp. Or the tool must use the epsg code of the input images automatically (if there is an epsg code).
questions:

from which image? first one?
how to get the epsg code? grep gdalsrsinfo?
what to do when the input doesn't have epsg code? continue?

proposal for s_srs:
if -c is not set

{

- when no epsg code detected in input images: give warning, suppose epsg:7415 (suppose it's on the geoid in NL)

- epsg code 28992 detected -> use epsg:7415 (suppose it's on the geoid in NL)

- when other epsg code detected: use that one

}

otherwise use -c as s_srs

``


CB-20036 Fix: deserialization of SdxBackupStatusResponse

Cause
Missing default constructor
Test:

Manual:
-- created backup via cdp-cli
-- verified new fields are presented in HTTP request for backup status
-- restored backup via cdp-cli
-- verified status on CDP UI

E2E SdxBackupRestoreTests locally:

export DATALAKE_NAME=aws-test-09654d49f8
http --json --headers --body GET localhost:8086/dl/api/sdx/$DATALAKE_NAME/getBackupDatalakeStatus x-cdp-actor-crn:$ACTOR_ID x-cdp-request-id:`uuidgen`

{
    "includedData": [
        "RANGER_AUDITS",
        "RANGER_PERMISSIONS",
        "HMS_METADATA",
        "ATLAS_METADATA",
        "ATLAS_INDEXES"
    ],
    "operationId": "debcb773-3a6f-429b-904b-4af0d437be60",
    "reason": "No failure messages found",
    "status": "SUCCESSFUL",
    "timestamp": "2022-12-13T13:29:55.000189+00:00"
}

Please wait for the forward merge of the revert:
https://github.com/hortonworks/cloudbreak/pull/13963


Replace addContentLengthHeader with ContentLength Middleware

This feature isn't needed in core and is better as optional middleware.

Coverage decreased (-0.03%) to 93.379% when pulling 3520c44b2830c3322bb710323e8f4c7244fd58ae on akrabat:content-length-middleware into 4556842f9c4d4fddc4b617d0bbbbcade7c79e3b1 on slimphp:4.x.

Coverage decreased (-0.03%) to 93.379% when pulling b86ef64a1aeb718fc45054813de579ad34a68cbc on akrabat:content-length-middleware into 4556842f9c4d4fddc4b617d0bbbbcade7c79e3b1 on slimphp:4.x.

@akrabat
As discussed on Slack for the AppTest:
public function testAddSettings()
{
    $app = new App();
    $app->addSettings(['foo' => 'bar']);
    $this->assertAttributeContains('bar', 'settings', $app);
}

public function testAddSetting()
{
    $app = new App();
    $app->addSetting('foo', 'bar');
    $this->assertAttributeContains('bar', 'settings', $app);
}

with this it works 😄

Coverage decreased (-0.04%) to 93.371% when pulling 54db772afbb34179cbae2c3c866449697186eb9b on akrabat:content-length-middleware into 4556842f9c4d4fddc4b617d0bbbbcade7c79e3b1 on slimphp:4.x.

Or even better:
public function testAddSettings()
{
    $app = new App();
    $reflection = new ReflectionProperty(App::class, 'settings');
    $reflection->setAccessible(true);
    $reflection->setValue($app, []);
    $app->addSettings(['foo' => 'bar']);
    $this->assertSame(['foo' => 'bar'], $reflection->getValue($app));
}

public function testAddSetting()
{
    $app = new App();
    $reflection = new ReflectionProperty(App::class, 'settings');
    $reflection->setAccessible(true);
    $reflection->setValue($app, []);
    $app->addSetting('foo', 'bar');
    $this->assertSame(['foo' => 'bar'], $reflection->getValue($app));
}

Ping @geggleto

Renamed to ContentLengthMiddleware as per https://github.com/slimphp/Slim/pull/2288#discussion_r133005546

Coverage decreased (-0.4%) to 93.008% when pulling dce758ec0b2264063f2ab805c95e638d9e8b5769 on akrabat:content-length-middleware into 4556842f9c4d4fddc4b617d0bbbbcade7c79e3b1 on slimphp:4.x.

Coverage decreased (-0.4%) to 93.008% when pulling 6a716f22cd7931923885ffa14099ef1eb430029c on akrabat:content-length-middleware into 4556842f9c4d4fddc4b617d0bbbbcade7c79e3b1 on slimphp:4.x.

Rebased to fix conflicts

Coverage decreased (-0.02%) to 93.008% when pulling 00c31cfb1815a8d91d9b8829b88c98870e06ac70 on akrabat:content-length-middleware into a60a7121a908d5c7233fc404519886f07c0a55ed on slimphp:4.x.


Force linux builds off of base toolchain

UBI9 installs the gcc-12 aligned toolchain as a dependency for clang. Clang picks up the gcc-12 aligned toolchain and symbols and adds a call to glibcxx::__assert_fail, which is not in the gcc-11 aligned libstdc++. To work with this when dynamically linking, the gcc-12 toolset contains a libstdc++_noshared.a static archive, which gets linked into the shared libraries and executables much like our compatibility libraries, and provides the missing symbols on top of the gcc-11 runtime that is already on UBI9 systems.
Of course, folks want to be able to statically link the stdlib into their binaries, and we avoid overlinking and symbol collisions by not linking the libstdc++_noshared.a static archive into the libswiftCore.a. Of course, this means that there is no definition for the symbol when it comes time to link the static stdlib on a base UBI9 image.
I've decided to just build the library against what is installed on the base system, so that we don't need to install anything additional to build and copy the binary to other systems running the same OS.
This should fix the linking issue in https://github.com/apple/swift/issues/65097
In theory, this should actually work for all of the Linux images and ensure that we're actually building the Linux toolchains based on what is actually available on the base system and not what is installed with the toolchain-build-dependencies.

CC: @FranzBusch

@swift-ci please test

@swift-ci please build linux toolchain

Linux failure:
    clang: error: unknown argument '-gcc-toolchain=/usr'; did you mean '--gcc-toolchain=/usr'?
    clang: error: unknown argument '-gcc-toolchain=/usr'; did you mean '--gcc-toolchain=/usr'?
    <unknown>:0: error: link command failed with exit code 1 (use -v to see invocation)
    ninja: build stopped: subcommand failed.

@swift-ci please test

Windows failure:
FAILED: dispatch_timer.exe
cmd.exe /C "cd . && "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\Common7\IDE\CommonExtensions\Microsoft\CMake\CMake\bin\cmake.exe" -E vs_link_exe --intdir=tests\CMakeFiles\dispatch_timer.dir --rc=C:\PROGRA~2\WI3CF2~1\10\bin\100177~1.0\x64\rc.exe --mt=C:\PROGRA~2\WI3CF2~1\10\bin\100177~1.0\x64\mt.exe --manifests  -- T:\1\bin\lld-link.exe /nologo tests\CMakeFiles\dispatch_timer.dir\dispatch_timer.c.obj  /out:dispatch_timer.exe /implib:tests\dispatch_timer.lib /pdb:dispatch_timer.pdb /version:0.0 /INCREMENTAL:NO /INCREMENTAL:NO /subsystem:console -LIBPATH:C:\PROGRA~2\MICROS~1\2019\COMMUN~1\VC\Tools\MSVC\1429~1.300\Lib\x64   -LIBPATH:C:\PROGRA~2\WI3CF2~1\10\Lib\100177~1.0\ucrt\x64   -LIBPATH:C:\PROGRA~2\WI3CF2~1\10\Lib\100177~1.0\um\x64 src\dispatch.lib  src\BlocksRuntime\BlocksRuntime.lib  tests\bsdtests.lib  bcrypt.lib  kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib && cd ."
MT: command "C:\PROGRA~2\WI3CF2~1\10\bin\100177~1.0\x64\mt.exe /nologo /manifest dispatch_timer.exe.manifest /outputresource:dispatch_timer.exe;#1" failed (exit code 0x1f) with the following output:

mt.exe : general error c101008d: Failed to write the updated manifest to the resource of file "dispatch_timer.exe". Access is denied.

Amazing investigation @etcwilde! Thanks for doing this. I agree with your sentiment that we should be doing this for all Linux platforms to make sure we are not picking up any gcc that is installed after the fact and might break on the base images.

Alright, on a fresh ubi9 with the binutils (for the linker) and gcc-c++, we can statically link with this change in place;
[root@9892eb36d904 devtools]# ./usr/bin/swiftc -static-stdlib test.swift
[root@9892eb36d904 devtools]# ./test
Hello World
[root@9892eb36d904 devtools]# ldd test
        linux-vdso.so.1 (0x00007ffe355af000)
        libstdc++.so.6 => /lib64/libstdc++.so.6 (0x00007f0f3f8b7000)
        libm.so.6 => /lib64/libm.so.6 (0x00007f0f3f7dc000)
        libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007f0f3f7c1000)
        libc.so.6 => /lib64/libc.so.6 (0x00007f0f3f5b8000)
        /lib64/ld-linux-x86-64.so.2 (0x00007f0f400ab000)
[root@9892eb36d904 devtools]# nm -a test | grep 'glibcxx'

@swift-ci build toolchain linux

@swift-ci build toolchain ubi9

@swift-ci build toolchain CentOS 7

@swift-ci build toolchain Ubuntu 18.04

@swift-ci build toolchain Ubuntu 22.04

@swift-ci build toolchain Amazon Linux 2

CentOS 7 failure:
CMake Error at cmake/modules/CheckCompilerVersion.cmake:88 (message):
  libstdc++ version must be at least 7.1.

So yes, it looks like we'll need different configurations to handle building the different distros. The C++ stdlib on centOS 7 is too old.

We definitely need to line up the installed dependencies for the toolchains here with the installed dependencies in the docker images then. @shahmishal can we come up with a way so this doesn’t get out of sync

Do we know why it's out of sync? Is it because CentOS does not support new version? @FranzBusch

@etcwilde pointed out that we need to install newer gcc versions for some toolchain builds. We also need these to be installed in the respective docker images right?
We should probably wait how the other toolchains turn out since CentOS7 is also nearing EOL.

Just saw everything works except CentOS7 and UBI9. Need to check why UBI9 failed

Just saw everything works except CentOS7 and UBI9. Need to check why UBI9 failed

You can ignore the check of Swift Build Toolchain UBI9 Platform and check the results of Swift Build Toolchain UBI9 (x86_64)
Swift Build Toolchain UBI9 Platform was when I was testing the PR setup.

All of the platforms passed except for CentOS 7.

I think it would be ok to merge this as is and deal with the CentOS 7 failure separately.
I'm waiting for discussions on https://github.com/apple/swift-docker/pull/341 to be resolved. CentOS 7 is a little odd since the base is so old, so it will need its own configuration and will need to build against the special devtoolset. In that case we'll want to ensure that the build images have the extra toolset as well, but I want to make sure that the clang that we're installing from our toolchain actually behaves correctly too.

Checked static linking with 5.9.2 and 5.10.1, and bot are working. Closing this.


Final version of Handouts and Scripts

I am wasn't sure how to structure the directory in "docs". Hence, I am currently following the schema followed at: https://github.com/BiAPoL/PoL-BioImage-Analysis-TS-Early-Career-Track/tree/main/docs

Awesome, thank you @apurvkulkarni7 !


Added  kouroshD in the list of seniors

As per the title. This was missing and I noticed it because I could not CC him in the purchase

Congrats @kouroshD for being promoted 😄

Thanks @DanielePucci @pattacini


Correct height adjustment for multiline inputs with input-group-lg and Bootstrap 3.2.0

When using Bootstrap 3.2.0 and input-group-lg, tokenfield height remains fixed and multiline content is drawn outside of the input field.
There's no such problem with Bootstrap 3.0.0 though.
This fix works with both Bootstrap versions - 3.2.0 and 3.0.0.

You know, after careful consideration, I think it will do without !important. I'm using it with Meteor, which takes care of proper loading order.
Any chances to get this PR merged?
Thanks for the great widget by the way! Coolest token field I've seen so far!

Thanks man, you're awesome!


fix: Hardcode SQLAlchemy max_identifier_length=128 for Oracle connections

I'm not happy about resorting to this "fix" because it is not really a fix.
Explanation of the problem this PR works around. This is a real edge case based on a number of colliding factors:

Oracle version <= 12.1 (i.e. max identifier length 30). Oracle versions <= 12.1 are not exactly rare but not current and will become rarer over time
Primary key column name >= 24 characters. Primary key names tend not to be very wordy
Primary key defined as NUMBER(). Primary key columns tend to be defined as integers of some kind and not the scale unknown NUMBER()
For fractional columns we use a CASE expression when casting to string to cater for an Oracle issue that omits the zero for numbers less than ABS(1), e.g. .123 instead of 0.123. We don't know the scale for a loosely defined NUMBER(*) column so have to check it with the CASE expression.
SQLAlchemy has a weird behaviour of renaming (by alias) columns with a name within 6 characters of the limit. For the Oracle version in play that is a 24 character limit.
Primary key columns with a greater precision than bigint/double are lossy in Pandas and therefore need to be cast to string. Again a loosely defined NUMBER(*) column does not tell us the precision and we therefore have to assume it is large.
The cast to string fails because SQLAlchemy renamed the column because of the long(ish) name
If the column was correctly defined as NUMBER(p,0) then we would no end up in this edge case.

I've invested many hours trying to find an elegant solution and cannot really justify spending more time on it for such an edge case, especially one that will become less likely as we move further away from Oracle versions <= 12.1.

/gcbrun


Fastnlight: Watch rollinghillsrecoverycenter.com

Fastnlight requests the watch of the watch_keyword rollinghillsrecoverycenter\.com. See the MS search here and the Stack Exchange search in text, in URLs, and in code.

rollinghillsrecoverycenter\.com has been seen in 1 true positive, 0 false positives, and 0 NAAs.

Approved by Dragonrage in Charcoal HQ


Pigeonhole Sorting Algorithm In Java

💥 Proposal
Implementing Pigeonhole Sorting Algorithm In Java
Have you read the Contributing Guidelines on Pull Requests?
Yes

/assign


Change API response on secrets, attempts and schedules.

Add more information to response body.

Looks good to me. After the CI is passed, i will merge it.

need to check the CI failure before merging.
https://travis-ci.org/treasure-data/digdag/jobs/533598572

I started working this on https://github.com/treasure-data/digdag/pull/1114.


sklearn random forest classifier hb model throws mismatch inputs

AssertionError: number of inputs or number of columns in the dataframe do not match with the expected number of inputs ['input']
sklearn model works correctly:
Load from sklean model file
with open('sklearn_model.pkg', 'rb') as file:
RF_model = pickle.load(file)
predicted_proba = RF_model.predict_proba(sample_input) # this works correctly
HB_model = convert(RF_model, 'pytorch')
HB_predicted_proba = HB_model.predict_proba(sample_input) # this throws the AssertionError
------------------ Stack ----------------
File "xxxx/.virtualenvs/HBTest/lib/python3.8/site-packages/hummingbird/ml/containers/_sklearn_api_containers.py", line 114, in predict
return self._run(self._predict, *inputs)
File "xxxx/.virtualenvs/HBTest/lib/python3.8/site-packages/hummingbird/ml/containers/_sklearn_api_containers.py", line 62, in _run
return function(*inputs)
File "xxxx/.virtualenvs/HBTest/lib/python3.8/site-packages/hummingbird/ml/containers/sklearn/pytorch_containers.py", line 171, in _predict
return self.model.forward(*inputs)[0].cpu().numpy().ravel()
File "xxxx/.virtualenvs/HBTest/lib/python3.8/site-packages/hummingbird/ml/_executor.py", line 67, in forward
assert len(self._input_names) == len(inputs) or (
AssertionError: number of inputs or number of columns in the dataframe do not match with the expected number of inputs ['input']

Is sample input a numpy array or a pandas dataframe? If it's the latter, can you try with sample_input.values? (By default if no test input is passed to the convert model, Hummingbird expects a numpy array at prediction time).

Thanks for your comment.  Your assumption was correct, sample_input is a pandas dataframe.  I figured out that I need to pass in numpy array but when I pass in sample_input as numpy array (sample_input.to_numpy()), I get the following when predict_proba is called:
TypeError: can't convert np.ndarray of type numpy.object_. The only supported types are: float64, float32, float16, complex64, complex128, int64, int32, int16, int8, uint8, and bool.

Ok, this worked based on https://github.com/yassouali/pytorch_segmentation/issues/31#issuecomment-562510155
sample_input.to_numpy(dtype=np.float32)
Thanks.

Closing the issue, please see the above comment.


Matrix & Measurements of top ideas to test against HMW pt I

What
We need to create a unit of measurement with which we can measure the effectiveness of our selected idea(s) as well as prioritising each one in terms of how impact they might have and how much effort it might take
Why
This will help us to determine the order in which we proceed to build the hypothesis and how we can determine if it succeeds or fails.
Related
#685

Summary

The team gathered on Wednesday 17-Feb-2020 for session where we decided on our units and methods of measuring our top hypotheses 📐
We also plotted each hypotheses on an impact/effort scale to decide the order in which we might choose to tackle these issues ⚖

What next:

Each hypothesis will be made into a GitHub ticket with an epic to monitor them all :ticket:
Begin plan for prototyping & implementation of some of the ideas :art:
Begin planning for the six HMW on the ‘do it next’ column of our priority matrix 🤔


feature: Paint comments only

Did you check the docs?

[X] I have read all the paint.nvim docs

Is your feature request related to a problem? Please describe.
Paint changes highlight everywhere.
Instead it should work for comments only.
Describe the solution you'd like
Apply highlights only in comments.
Describe alternatives you've considered
Nothing
Additional context
    opts = {
        highlights = {
            {
                filter = { filetype = 'python' },
                pattern = '%a+: ',
                hl = 'Constant'
            }
        }
    }

I used above config to highight the param names in python docstring. But it chnaged highlight in other parts too.

This is not the goal of paint. Paint is to highlight patterns anywhere.
An alternative plugin is https://github.com/echasnovski/mini.hipatterns


Script not working on Cloud Hosted Router

Error when importing script: "input does not match any value of value-name"
Host does not appear in Unknown Hosts.

Email me access credentials for ssh and winbox referencing this issue at @.***
Thank You,
Andrew Hodel

On Jul 8, 2021, at 9:54 AM, Sundial Communications, Inc. @.***> wrote:

Error when importing script: "input does not match any value of value-name"
Host does not appear in Unknown Hosts.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or unsubscribe.

Is this the same wan ip problem? @sundialcommunications

You didn't allow the collectors script to run before the cmd script, you didn't download the raw file and edit it or something it works fine.


gitea push should restart api when diff exists

I don't know if gitea push exit code is enough, but I assume it exits with 0 if there was anything to push, or another exit code when it has nothing to push. If that is enough to determine an api restart, use it. Otherwise do a diff before and use that output.


Logo Proposal

Hello...
I came across your fantastic project and i wanted to help contribute to your project by using my Skills in Logo Design to contribute and help create a logo for your project...
I am already working on an idea... i will update what i have done here so you can give your feedback and possibly any change or tweek you may want...
you can also give your own idea...
Regards.

Hello...
Here is my idea design that i created... please do let me know if you want any tweak or color change....
You can share your own idea also...
if you like any of the design style... please do let me know and i will send you all the files and vector files for your use...

OK... VERY COOL... @mukeshsolanki
You can share with me if you got any other project you want me to contribute with my logo design and graphics skills...

@chimzycash can u send me an email at<EMAIL_ADDRESS>and we can discuss further there.

@mukeshsolanki
OK...


Modernize build

Updated build files to fix deprecations and use current best practices. Also added GitHub action to build the app on pull requests and pushes to main. Haven't updated versions of Gradle and AGP but can do it in this/separate pr

Tried it out and things seem to work fine still!


added learn card to home page

Added a card for azure cli learn modules to the home page

Docs Build status updates of commit dde1fce:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs-ref-conceptual/index.yml
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel

Docs Build status updates of commit ed6d9de:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs-ref-conceptual/index.yml
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel

@dbradish-microsoft
Hi Delora! I've updated the links on the learn cards based on the ideas from our previous meeting and made sure the most popular articles are all on the home page. I've also double checked all the links and they're all working so I think this PR is good to go. Thank you!


TerminalPaneContent.cpp - TerminalPaneContent::TerminalPaneContent never knows the profile settings updated with the wt.exe cmdline arguments

Windows Terminal version
#16497 (which is in sync with main) - PR-Commit: 756d7b3e7860d1082ed87833521ed65638688abc
Windows build number
10.0.19045.4529
Other Software
No response
Steps to reproduce
Try to access the profile configuration used by the current terminal pane content in a version that is updated based on the command line parameter used to start wt.exe .
Expected Behavior
The _profile variable contains the current profile settings from settings file.
And the _cache contains the settings updated based on the wt.exe command line arguments.
Actual Behavior
The _profile variable contains the current profile settings from settings file.
And the _cache contains the current profile settings from settings file too.
Debug information
You can use my PR #16497 and check the value of const auto closeMode in TerminalPaneContent::_controlConnectionStateChangedHandler. It is always the one from settings and the same as the one from _profile.
If you compare the value against the value returned in AppCommandlineArgs::_getNewTerminalArgs you will see that the command line parsing works.

This is because it only checks the profile, and there is no feature that override the profile's value for CloseOnExit here. I would somewhat expect a PR that adds --keepOpen support to plumb through overriding the CloseOnExit value in an appropriate way.

Expected Behavior
And the _cache contains the settings updated based on the wt.exe command line arguments.

FWIW: _cache is supposed to be a cache; it is NOT supposed to store novel and important values.

I did the exact same as done for other commandline arguments.
Today I tried to implement a new profile property that is not a setting for holding the override value, but I failed because I wasn't able to access it in the command line parser logic. The point is that implementing a setting makes no sense to me as it would be written to/read from json.

I would somewhat expect a PR that adds --keepOpen support to plumb through overriding the CloseOnExit value in an appropriate way.

@DHowett
Wher in the code would you override it? The place wher I override it (AppCommandlineArgs::_getNewTerminalArgs) doesn't work as I can't acces the overridden value in TerminalPaneContent::_controlConnectionStateChangedHandler.

@zadjii-msft
I know you have many things to do. But it would be great if you can take a look. (I have not enough c++ knowledge to find the cause of my problem.)


label.opacity error

if alpha != self.color[4]:
IndexError: tuple index out of range
4 should be changed to 3.

Thank you,
this is now fixed in the 1.5-maintenance branch, and will be in the next point release.
In the mean time, the .color property can also be used for setting opacity.


docs: link from README to docs?

There's a GHP docs site in https://docs.iterative.ai/dvc-task/ with an auto-generated API ref. but I don't think there's a way for users to find these docs.
Maybe add a basic index page and link from the README?

The API ref isn't empty. I'm assuming it's because of the mobile stylesheet, but the API reference should be viewable if you use the nav bar

I see. You need a pretty large screen for the nav to display all the objects. Otherwise they're hidden in the menu.
In any case does the site have any users? The main point of this issue is to link it from the README or from somewhere so people can find it.

In any case does the site have any users?

No. The autogenerated docs still are still experimental, questions regarding the docs UI (we are basically just using default templates afaik) should go in the template repo: https://github.com/iterative/py-template/issues/19
There's still ongoing discussion as to whether or not we should be using the autogeneration tool that is currently configured (mkdocs) or something else (sphinx)


[FEATURE] Delete files older than configured amount

Is your feature request related to a problem? Please describe.
Currently we store images, log events and other data infinitely. This may lead to filling up the disk of an edge device and causing it to stop functioning correctly.
Describe the solution you'd like
We can run a cron job to automatically remove data files older than a configurable time period.
Example:
https://stackoverflow.com/questions/41416628/cron-job-to-auto-delete-folder-older-than-7-days-linux
Describe alternatives you've considered
An alternative would be to implement data retention policy for each service that stores data on the local edge device.

duplicate of https://github.com/ambianic/ambianic-edge/issues/70


perf: update deps, migrate to mjs modules

BREAKING CHANGE: repack as mjs, require Node.js >= 14

:tada: This PR is included in version 2.0.0 :tada:
The release is available on:

v2.0.0
npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Add missing imports of _RegexParser

While experimenting with adopting the MemberImportVisibility experimental feature (SE-0444) in the standard library build, I found that the _StringProcessing module was relying on transitive imports of _RegexParser in many source files.

@swift-ci please smoke test

@swift-ci please test

@swift-ci please test


Update yarn to 4.0.0.rc51 since it's works on s390x

Update yarn to 4.0.0.rc51 since it's works on s390x

Backported to quinteros in commit 6dc40b11505186552a5a558194b625d9db341f97.
commit 6dc40b11505186552a5a558194b625d9db341f97
Author: Brandon Dunne<EMAIL_ADDRESS>Date:   Tue Sep 19 09:56:49 2023 -0400

    Merge pull request #96 from Fryguy/yarn4

    Update yarn to 4.0.0.rc51 since it's works on s390x

    (cherry picked from commit 309ff13173e1ef83d2d0ea99cf4c776df598f3a2)


feat(execute-operation): refactor codebase to isolate operation execution

The gist of this change is that we were duplicating code all over the codebase related to determining whether a callback or Promise was being used for most public facing API.  This PR addresses that, but also gains us the benefit of isolating the execution to a single point such that we can now introduce operation-wide changes very easily - most importantly the requirement set forth in the Driver Sessions spec that we use an implicit session if none is provided for all public operations.
NOTE: This is rebased upon the bulk-write-error branch, so you might see some cross-pollination with the commits until that branch is merged (hopefully tomorrow).

man I can't believe how much copy paste "// Execute using callback... // Return a Promise" there was before. this is much nicer

ok done commenting


Update translation.py

Hello @Ansijck! Thanks for opening this PR. We checked the lines you've touched for PEP 8 issues, and found:

In the file bot/translation.py:

Line 33:80: E501 line too long (87 > 79 characters)