ImportError: Could not find 'cudart64_90.dll'.

Installed tensorflow 1.5.0 on windows 10 education (version 1709) using "C:> pip3 install --upgrade tensorflow-gpu"
Installed CUDA 9.0 from https://developer.nvidia.com/cuda-90-download-archive?target_os=Windows&target_arch=x86_64&target_version=10&target_type=exenetwork
Installed cuDNN 7.0.5 for CUDA 9.0 from https://developer.nvidia.com/rdp/cudnn-download
I have python 3.6.3 and nvidia gtx 1060 6GB
Exact command to reproduce: python neural.py
Bazel version: N/A
Describe the problem
Tried creating a simple network but running into the error described in title. I checked the directory where the CUDA_PATH refers to and the file is there.
Source code / logs
from keras.models import Sequential
from keras.layers import Dense
import pandas as pd

def load_mnist(path):
	train = pd.read_csv(path + 'train.csv')
	y = train.ix[:,0]
	train = train.drop('label',1)
	test = pd.read_csv(path + 'test.csv')
	return [train, y, test]

[train, y, test] = load_mnist('data/')
model = Sequential()
model.add(Dense(12, input_dim=8, activation='relu'))
model.add(Dense(8, activation='relu'))
model.add(Dense(1, activation='sigmoid'))
model.compile(loss='binary_crossentropy', optimizer='adam')

model.fit(train, y, epochs=150, batch_size=10)

predictions = model.predict(test)

Thank you for your post. We noticed you have not filled out the following field in the issue template. Could you update them if they are relevant in your case, or leave them as N/A? Thanks.
Have I written custom code
OS Platform and Distribution
TensorFlow installed from
TensorFlow version
Bazel version
CUDA/cuDNN version
GPU model and memory
Exact command to reproduce

@tensorflowbutler updated the post, the code fragment is the content of neural.py

Can you please try to install tensorflow gpu nightly build?

I have the same problem, I used CUDA Toolkit 9.1, I am not sure if this is the problem, going to try 9.0

Figured it out, had forgotten to set the cuDNN path variable.

what cuDNN path variable ?

same message for me Could not find 'cudart64_90.dll
my config
win 10
CUDA 9.0
cuDNN 7.0.5
python 3.6.4 and nvidia gtx 1060 6GB
my error with : import tensorflow

my /bin

my /include

my /lib/x64

my environment variables

I'm having the same issue with CUDA 9.0, CUDNN 7.1.1, Python 3.6.4 (AMD-64) and tensorflow-gpu. I also tried it with tf-nightly-gpu.
The cudart64_90.dll is in the bin folder but the import fails
Error

My Vars

I had same error. The "bin" directory contains "cudart64_91.dll" instead of "cudart64_90.dll".
I found "build_info.py" file contains DLL file name to use import tensorflow on python.
And I fixed DLL file name in "build_info.py".
After that it cause a punch of error that I can not try to handle.

I am having similar issues.
Versions:

pip 9.0.3 from c:\users\leopc\appdata\local\programs\python\python35\lib\site-packages (python 3.5)```

CUDA 9.1
tensorflow-gpu (1.7.0)

Content of folders:

C:\Program Files\NVIDIA GPU Computing Toolkit\cudnn\bin

cudnn64_7.dll

C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.1\bin

cudart64_91.dll
and a bunch other dll

Error:
ImportError: Could not find 'cudart64_90.dll'. TensorFlow requires that this DLL be installed in a directory that is named in your %PATH% environment variable. Download and install CUDA 9.0 from this URL: https://developer.nvidia.com/cuda-toolkit

Any idea what I should do ?

@leobenkel Use CUDA 9.0, found out that the hard way, but now it works.

@21011996 , how do I get CUDA 9.0 ? I tried and I could not find it anywhere on the nvidia website.

@leobenkel here you go [https://developer.nvidia.com/cuda-90-download-archive](CUDA 9.0)

@21011996 , is there any trick to uninstall cuda 9.1 and reinstall cuda 9.0 ? I went in the uninstaller control pannel window on windows 10 to uninstall all cuda 9.1 components. but now the cuda 9.0 installation keep failing even after reboot.

I have the same problem.. Is there any solution now?

I suggest Google :) Installed 9.1 by mistake, but successfully installed
9.0 after, GL m8
On Mon, 2 Apr 2018, 22:36 Leo<EMAIL_ADDRESS>wrote:

@21011996 https://github.com/21011996 , is there any trick to uninstall
cuda 9.1 and reinstall cuda 9.0 ? I went in the uninstaller control pannel
window on windows 10 to uninstall all cuda 9.1 components. but now the cuda
9.0 installation keep failing even after reboot.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/tensorflow/tensorflow/issues/17101#issuecomment-378020114,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AG2_3xQROC7ZpIIXJF5I5K6vnlqDOZFCks5tkn2egaJpZM4SJhYy
.

@kevindjf66 , to pass the installation, I disabled the visual studio support. I dont know what downstream error that will create but it succeed so far.

Switching to CUDA 9.0 and CUDNN7.1 worked for me

same issue and solved by using CUDA 9.0 as described above

Also keep in mind to download the base package of CUDA 9.0. Other packages (Patch1, patch2) didn't seem to include cudart64_90.dll.

installing tf-nightly (pip install tf-nightly) helped

I'm seeing this error as well, unfortunately.
ImportError: Could not find 'cudart64_90.dll'. TensorFlow requires that this DLL be installed in a directory that is named in your %PATH% environment variable. Download and install CUDA 9.0 from this URL: https://developer.nvidia.com/cuda-toolkit
I'm using tensorflow-gpu-1.8.0, but I've tried tf-nightly-gpu as well with no luck. I have CUDA v9.0, cuDNN 7.1, and the DLL is definitely where it's supposed to be (C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0\bin)
My PATH is set correctly (I think!) as well.

I'm not sure what else to try.

Is there a simple solution.  I've tried everything to no avail.

Well, I can now instantiate a TensorFlow!
I get an error that says my cpu supports instructions that the TF was not compiled to use : AVX2.
I’ll ignore like the internet says.
Thanks for your help.
Luke Hamm
806-535-4741
On May 24, 2018, at 12:13 PM, Armaan Puri <notifications<EMAIL_ADDRESS>wrote:
Just download the base package, check if cudart64_90.dll is in the directory (should be in CUDA/v9.0/bin), once you see it there, ensure the directory is added to your PATH. Done. That's about as simple as it gets.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHubhttps://github.com/tensorflow/tensorflow/issues/17101#issuecomment-391790328, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AlraFRaru0yR9Ivdd93mw4fQEpYFeQhYks5t1upEgaJpZM4SJhYy.

@lh47383
https://stackoverflow.com/questions/47068709/your-cpu-supports-instructions-that-this-tensorflow-binary-was-not-compiled-to-u

well still doesn't work with CUDA 9.0 and cudnn 7, I have this file 100% (cudart64_90.dll) and all needed environment variables (paths)
details: https://github.com/EdjeElectronics/TensorFlow-Object-Detection-API-Tutorial-Train-Multiple-Objects-Windows-10/issues/57

Hi,
I am having the same problem when trying to run tensorflow-gpu that returns
ImportError: Could not find 'cudart64_90.dll'
I have installed CUDA 9.0 onto my computer.
Also, copied cuDNN files into my path /NVIDIA GPU Computing Toolkit/CUDA/v9.0/
It still isn't working.
Any idea how this can be fixed?
Thanks

There is a
cudart64_92.dll file in C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.2\bin
But when trying to load TensorFlow the error is that TF is trying to make use of
'cudart64_90.dll'
Tried renaming the file but then I get other errors 😭

if you'll create the new issue, please give us a number, I have same issue, tensorflow doesn't works with cuda 9.2:

ImportError: Could not find 'cudart64_90.dll'. TensorFlow requires that this DLL be installed in a directory that is named in your %PATH% environment variable. Download and install CUDA 9.0 from this URL
I'm have searching for this dll and found only cudart64_92.dll

i installed cuda 9.2 but tensorflow is finding cudart64_92.dll ,
should i reinstall cuda 9.0 ?  are there any answers ?

Yes, you shoud, it helps.

try it:
set PATH=%PATH%;C:\tools\cuda\bin;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0\bin

I was going to comment "why can't they clearly specify which CUDA version is supported in the installation docs", but then I re-checked the installation docs just to be sure and this is what I found:

Lesson learned: Read the docs carefully if you don't want to waste your valuable time.

I also had this problem with cuda 9.0 installed and the cudart64_90.dll file exactly in path.
After I had a look at the PATH in my terminal, I realized that it's because I'm using conda virtual environment and I just add PATH in system environment variable setting after installing cuda and cudnn, but the path in virtual environment is not updated. I solved this by deactivate-activate the environment and restart python.
For those who have similar issues in conda virtual environment, you may try deactivate and activate the virtual environment and restart python.

@UmeanNever was spot on. If you are using a conda environment a simple restart may be all you need to do.

I have GTX1060 wich not compotable with CUDO 9.0. Only with CUDO 9.2. What I must do? O.o

Found a solution, in my case it was related to Windows 10 and Pycharm.
Somehow Pycharm doesn't have access to Program Files in Windows 10 if you don't run it as admin and this is default location of CUDA folder and all dlls .
I closed all my projects and opened Pycharm as admin and suddenly everything works.

Don't forget to restart cmd/terminal after applying changes in path !!

Always check the cuda version in this case you have to install cuda version 9.0 this will create the cudart64_90.dll file in C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0\bin folder.
This will surely work.

找到了一个解决方案，就我而言，它与Windows 10和Pycharm有关。
不知何故，如果不以管理员身份运行，Pycharm无法访问Windows 10中的Program Files，这是CUDA文件夹和所有dll的默认位置。
我关闭了所有项目并以管理员身份打开了Pycharm，突然一切正常。
 DLL”
希望能帮助到你！

Thank you. This is very useful.

I had a similar issue except mine was:
ImportError: Could not find 'cudart64_100.dll'.
My initial tensorflow installation was tensorflow-gpu 2.0 beta which requires CUDA 10.0.
What I did:

uninstall tensorflow via 'pip uninstall tensorflow-gpu==2.0.0-beta1'
uninstall CUDA 9.0
install CUDA 10.0
'pip install tensorflow-gpu' (This will install tensorflow-gpu 1.14)
download the latest cuDNN from
https://developer.nvidia.com/rdp/cudnn-download
copy out cudnn64_7.dll, cudnn.h, cudnn.lib to the relevant folders
further instructions: https://docs.nvidia.com/deeplearning/sdk/cudnn-install/index.html
set the environment variable lastly to:
Variable Name: CUDA_PATH
Variable Value: C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0

I am able to get tensorflow running again through these steps.

Download cudnn version 10.0 not latest one  10.1.
This will work.

PLEASE DO NOT INSTALL CUDA 9.2 FOR TENSORFLOW USAGE. ONLY 9.0 WORKS

What about CUDA 10/10.1/10.1 Update 1/10.1 Update 2 ?
For CUDA 10.1, it now says cudart64_100.dll that is missing.

PLEASE DO NOT INSTALL CUDA 9.2 FOR TENSORFLOW USAGE. ONLY 9.0 WORKS
What about CUDA 10/10.1/10.1 Update 1/10.1 Update 2 ?
For CUDA 10.1, it now says cudart64_100.dll that is missing.

I tried with Cuda 10.1, it looks for cudart64_100.dll, even if I changed the entry in build_info. So I downgrade to Cuda 10.0 and it worked. Actually from the other way round cuda 10.0 is not detecting visual studio

Having a catch 22 situation here, I have CUDA 10.1 which means I have cudart64_101.dll not 100.dll. It's looking for 100. I cannot downgrade to CUDA 10.0 because I'll have to just wipe out my whole computer to redo the whole NVidia driver situation. NVidia is not friendly towards simply uninstalling drivers in Windows 10. The install will definitely fail as it was doing all weekend till I finally gave up and did a full format reload of Windows 10 which is a pain.  I have tensorflow 1.13.1 installed because 1.14 gets errors when trying to use it with imageai. So that's out and besides, I tested it, 1.14.0 still wants the older version of CUDA, 10.0

So naturally I ended up having to blow away my whole Windows 10 installation and start with a clean install, just to go back a version to 10.0. Unfortunately 10.0 doesn't support Visual Studio 2019 like 10.1 does. So go figure. This is an impossible situation and I might as well give up on Machine Learning altogether.

GETTING ERROR..
ImportError: Could not find 'cudart64_100.dll'. TensorFlow requires that this DLL be installed in a directory that is named in your %PATH% environment variable. Download and install CUDA 10.0

from this URL: https://developer.nvidia.com/cuda-90-download-archive

I don't wanna spoil you guys but, recently I've installed Pop OS and the team already compiled all the necessary needs into single cmd line. Either make it dual-boot or, different disk. Both are good.
Once in Linux, open terminal and run,

sudo apt install tensorflow-cuda-latest

which is a package of CUDA Toolkit, cuDNN, and Tensorflow itself. CUDA, TF and cuDNN version is determined by the current stable version, and your GPU version. Still using it up until now.

So naturally I ended up having to blow away my whole Windows 10 installation and start with a clean install, just to go back a version to 10.0. Unfortunately 10.0 doesn't support Visual Studio 2019 like 10.1 does. So go figure. This is an impossible situation and I might as well give up on Machine Learning altogether.

Hi, fortunately 0NE-LINE of code solves this issue. Refer this article

fortunately 0NE-LINE of code solves this issue. Refer this article.

fortunately 0NE-LINE of code solves this issue. Refer this article.

this works thank you!

just rename the file cudart64_XXX.dll to cudart_100.dll.
This is because command is still searching for version 10.0 but u have installed 10.1 or something else.

im having the same problem "Could not find 'cudart64_90.dll'"
my card is GTX 1050Ti 4GB
Can Anyone Help please

Fix for the issue!!!
https://stackoverflow.com/a/59703666/9203336

In my case,the problem solved by deleting tf-nightly and reinstalling tensorflow

https://www.youtube.com/watch?v=O8yye2AHCOk


Function or parameter in cmdlets to escape markup

According to Spectre.Console Best Practices:

Do escape data when outputting any user input or any external data via Markup using the EscapeMarkup method on the data. Any user input containing [ or ] will likely cause a runtime error while rendering otherwise.

There are at least 2 options:

Parameter in each cmdlet:

function Format-SpectrePanel {
    param (
        [Parameter(ValueFromPipeline)]
        [string] $Data,
        [string] $Title,
        [string] $Border = "Rounded",
        [switch] $Expand,
        [switch] $EscapeMarkup,
        [ValidateSpectreColor()]
        [ArgumentCompletionsSpectreColors()]
        [string] $Color = $script:AccentColor.ToString()
    )
    if($EscapeMarkup) {
        $Data = [Spectre.Console.Markup]::Escape($Data)
    }

Use Spectre.Console method to escape data before PwshSpectreConsole cmdlet call:

#Requires -Version 7.0
#Requires -Modules PwshSpectreConsole

$data = "][[][]]][[][][]["
$escapedData = [Spectre.Console.Markup]::Escape($data)
Format-SpectrePanel -Title "Escaped data" -Data $escapedData
Format-SpectrePanel -Title "Unescaped data" -Data $data # Exception

I added a function for escaping Get-SpectreEscapedText. I wonder if that's enough for most cases? It just pipes the text through that escape function you have there so you can use it in a pipeline.
Cases like your one above:

And receiving untrusted input like the best practice doc talks about:

And mixtures of escaped and unescaped data:

I've pushed this and your other PR to psgallery in https://github.com/ShaunLawrie/PwshSpectreConsole/releases/tag/v0.2.3
Thanks for the feedback.

Escaping function is what was needed! Thanks a lot!


Implement iterator with "skipping" API

Currently, it is not possible to iterate over only a range of values.
It should be useful to be able to "jump" to the first integer value larger than some threshold.
Currently, we have a PeekableShortIterator internally that could be a building block for this feature.

Is this the same as an "getIntIterator(offset,length", where it then returns all set indexes in range?

I have in mind something more general that would look like this:
http://static.javadoc.io/org.roaringbitmap/RoaringBitmap/0.6.5/org/roaringbitmap/PeekableShortIterator.html
Implementing getIntIterator(0,length) efficiently on top of our API is already possible and quite easy. Just wrap the iterator, bailing out when the value returned is too high.
The part we do not yet support, but should, is the ability to efficiently skip the first few values to make it to the first value that is at least as large as offset. We have part of the underlying implementation ready (using PeekableShortIterator) but we need to complete it.
It is not a very difficult project...

As a workaround right now i use an intermediate Bitmap, that i set up with add(rangeStart,rangeEnd), AND it with the target bitmap and then use intIterator. That is not the lightest way to do it, but works.

@okrische
Yes. Skippable iterators are motivated by performance considerations, I guess, because if we just cared  about convenience, we could implement them right now as you propose.

@okrische  I wouldn't call what you do a "workaround". It is a fine way to do things, if it is not a performance bottleneck.
I know instances, however, where the lack of a skippable iterator is a performance problem. That's why it is on our todo.

Nono, i totally agree. I want to use this feature as well.

Maybe you can have a look, if that is what you want?
https://github.com/okrische/RoaringBitmap/commit/a67ae0f3a880435bfc67a00c971134fc52b004db

I'll be sure to have a good look.

Ok. I looked at your implement and it is good if one wants to skip the first few values. However, we can offer a more general API:
https://github.com/RoaringBitmap/RoaringBitmap/blob/master/src/main/java/org/roaringbitmap/PeekableIntIterator.java#L11-L16
Implemented as of release 0.6.7 in part thanks to your code.
Closing this issue, reopen if you disagree.

Perfectly happy with it.
(Later i actually realized, that my code was behaving like a cursor. I could jump around within the bitmap as i wished and then iterate forward from that position.)

+1


Configure ls default parameters

What this PR does / why we need it:
https://github.com/hwameistor/hwameistor/issues/1433
Special notes for your reviewer:
NONE
Does this PR introduce a user-facing change?
NONE

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 28.74%. Comparing base (7396ad7) to head (20d9c1c).

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@           Coverage Diff           @@
##             main    #1434   +/-   ##
=======================================
  Coverage   28.74%   28.74%
=======================================
  Files          34       34
  Lines        3079     3079
=======================================
  Hits          885      885
  Misses       2077     2077
  Partials      117      117

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


There's a way to configure SCP, DKIM and DMARC in Mailpit?

I'm trying to configurate the SCP, DKIM and DMARC in mailpit, but I didn't find anything helpful about it on documentation. My goal is to use mailpit as a MTA (relay smtp server) only to relay the messages.

Hi @zJvco . Whilst Mailpit can relay messages via another SMTP server, Mailpit itself does not deliver messages directly to the individual MX servers to whom the emails are addressed. If you are wanting to add SPF/DMARC/DKIM then you will need to add this functionality to the relay SMTP server (which Mailpit is configured to relay through) as that is the server delivering the messages directly to the individual MX servers configured by their domain names.
So if Mailpit is configured to use a specific postfix server to relay messages, then that postfix server will need to be configured.

Hi!
In that case, Mailpit can't send e-mails to mail providers like Gmail or Outlook?
My Scenario is: I have one application (in one AWS EC2) that connects to Mailpit (which is in other AWS EC2) to relay e-mail to providers like Gmail.
relay smtp file:
host:               mail.example.com.br
port:               25
starttls:           true
allow-insecure:     false
auth:               login
username:           test
password:           test
secret:
return-path:
allowed-recipients:
It works?

Mailpit will "resend" (route) your email via mail.example.com.br - and it is mail.example.com.br that then delivers the messages to providers like Gmail & Outlook, not Mailpit. If you need SPF etc, then this needs to be configured on mail.example.com.br. Does that make sense?

So it should be:
My application (EC2) > SMTP Server (Mailpit) > Postfix (SMTP Relay)?
That's right?

Exactly 👍


Allow students to opt out from name list..

Allow students to opt out from the name list of all the students that have given feedback. This setting could be a course-specific option. The list is not shown if any case if the number of students that have opt-in is small.

Sounds very reasonable. We'll discuss it internally but likely to be added.


Add Software Architecture Reactive Microsystems: The Evolution of Mic…

…roservices
What does this PR do?
Add Resource(s)
For resources
Description
Book about cloud.
Why is this valuable (or not)
Industry Leader.
How do we know it's really free?
For book lists, is it a book?
Checklist:

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

Could you switch the order to satisfy the linter? Thanks!

Thanks so much!


Reorganize E2E Tests

Summary
Organize into the following directory structure, rendering the term backstage obsolete in this context and treating channels as an integration and not the frontstage.

cypress/integration (all specs live here)

playbooks/
runs/
channels/

rhs/
slash_command/

(other global tests)

The top level describe of each spec now contains the path (e.g.  channels > rhs > spec_name). There's probably still room for improvement here, both in the organization and naming, but this gets us past the hump as it were.
I'm proposing we do something similar for the webapp component. Open for discussion -- hoping this makes the code easier to navigate.
Ticket Link
N/A
Checklist

[ ] Telemetry updated
[ ] Gated by experimental feature flag
[x] Unit tests updated?

I was confused about the runs/ directory being top level -- shouldn't it be under the playbooks directory?

I was trying to avoid the /playbooks/playbooks problem, and instead assume the global directory was "our product", one of whose features is a channels integration. (I guess I was also implicitly shortcutting playbook_run as run everywhere as previously proposed.)

Wonderful! Shouldn't we be doing same for the code in webapp/componenets?

Yes, that would be ideal. Definitely something to move towards after we get this merged and it continues to "feel good."


add new filter of redirector to do redirect of 301 or 302

Codecov Report
Base: 76.10% // Head: 75.87% // Decreases project coverage by -0.23% :warning:

Coverage data is based on head (8400674) compared to base (4c9b3a1).
Patch coverage: 71.18% of modified lines in pull request are covered.

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #883      +/-   ##
==========================================
- Coverage   76.10%   75.87%   -0.24%
==========================================
  Files         110      115       +5
  Lines       12698    13446     +748
==========================================
+ Hits         9664    10202     +538
- Misses       2490     2667     +177
- Partials      544      577      +33

Impacted Files
Coverage Δ

pkg/filters/redirector/redirector.go
71.18% <71.18%> (ø)

pkg/object/mqttproxy/topic.go
47.05% <0.00%> (-52.95%)
:arrow_down:

pkg/object/mqttproxy/session.go
67.70% <0.00%> (-14.51%)
:arrow_down:

pkg/object/mqttproxy/client.go
77.45% <0.00%> (-4.16%)
:arrow_down:

pkg/filters/validator/basicauth.go
75.38% <0.00%> (-3.42%)
:arrow_down:

pkg/filters/headerlookup/headerlookup.go
84.61% <0.00%> (-1.40%)
:arrow_down:

pkg/cluster/cluster.go
60.10% <0.00%> (-1.06%)
:arrow_down:

pkg/object/mqttproxy/broker.go
74.21% <0.00%> (-0.58%)
:arrow_down:

pkg/object/mqttproxy/spec.go
100.00% <0.00%> (ø)

pkg/object/mqttproxy/mqttproxy.go
46.83% <0.00%> (ø)

... and 9 more

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


AbstractIntegrationTest - lint both expected and input code

ping @gharlan
Actually I was starting it too.
I think we should lint both input and output

I think we should lint both input and output

actually they are both linted. When INPUT != EXPECT, EXPECT part is linted in this recursive call: https://github.com/FriendsOfPHP/PHP-CS-Fixer/blob/1.12/Symfony/CS/Tests/AbstractIntegrationTest.php#L209

Thank you


UP036 auto-fixer breaks code at runtime after #5766

After #5766 the auto-fixer for UP036 has broken some code for us:
from typing import Any

import cachetools

class MyClass:
    def __init__(self) -> None:
        self._cache: "cachetools.LRUCache[Any, Any]" = cachetools.LRUCache(maxsize=100)

ruff --isolated --select UP --fix ruff_up037.py

ruff_up037.py:7:22: UP037 [*] Remove quotes from type annotation

The auto-fixer strips the quotes. However this is semantically not valid, as LRUCache is not Generic at runtime, only for the pyi files.
$ ruff --version
ruff 0.0.280

I would like to add another example of the rule breaking code at runtime:
from typing import TYPE_CHECKING

if TYPE_CHECKING:
    from dependency import MyClass

def my_func():
    result: list["MyClass"] = []
    return result

The quotes around MyClass are removed which breaks at run time.

@clement-escolano -- Hmm, I'm unable to reproduce. This, for example, runs without error for me:
from typing import TYPE_CHECKING

if TYPE_CHECKING:
    from dependency import MyClass

def my_func():
    result: list[MyClass] = []
    return result

my_func()

Running python foo.py completes without error.

@charliermarsh This indeed seems to have been an IDE bug. Very sorry for bothering you with this report, thanks for Ruff!

No worries, I went ahead and reverted any way, it seems like it's going to cause some annoyance for folks.

@mrcljx Which IDE? Did you open an issue there?

PyCharm. That said, it also had that warning earlier (but it became more visually pronounced in ^):


Document E2E tests: AccountBalanceQuery

Document the E2E AccountBalanceQuery tests in test-specifications/.

Closing as a duplicate of #28.


Inherit GUI options for character under cursor

Font attributes (Italic, bold, underlines, etc.) for a character under cursor should be respected even if it's not specified on the cursor highlight itself.
Before:

After:

Looks good to me, thanks for the contribution, merging.


Convert images to obj file

Hi
Can anyone tell me how to convert obj file from image ?

Hi, sorry for the late aswer. About your question, I saw two libraries that helped me to render .obj file in 2D images.
Pytorch3D and Neural Render. Both works similar, it's need faces, vertices and setting the camera view. The result is a image 2D, you can use to get silhouettes o marks too.

How to get that object file from images ?


Set up an auto-release pipeline based on tagging for GH releases

Like this: https://github.com/smol-rs/polling/blob/master/.github/workflows/release.yml

I would like to mention https://github.com/MarcoIeni/release-plz as well

Done as of #197


Mortgage Performance: Design fixes

This PR fixes several design and content bugs for the line chart filtering on the Mortgage Performance project.
Additions

Add missing dynamically appearing helper text below some fields along with working links to the "About the Data" content.

Removals

Remove an empty p and some unneeded CSS styling.

Changes

Correct the entries listed in the non-metro areas dropdown and the dynamic title for its chart.
Correct the spacing between several filtering elements.
Correct the content used in some field labels.

Testing

Pull down this branch and ./setup.sh
Set up the mortgage performance API.
Create a mortgage chart block and page.

Checklist

[x] PR has an informative and human-readable title
[x] Changes are limited to a single goal (no scope creep)
[x] Code can be automatically merged (no conflicts)
[x] Code follows the standards laid out in the development playbook
[x] Passes all existing automated tests
[x] New functions include new tests
[x] New functions are documented (with a description, list of inputs, and expected output)
[x] Placeholder code is flagged
[x] Visually tested in supported browsers and devices
[x] Project documentation has been updated
[x] Reviewers requested with the Assignee tool :arrow_right:

Yep, for a future PR. Those are coming from cfpb-chart-builder. That's part of my work for tomorrow!


Bug with scrobbling

Hello! I've noticed a bug with scrobbling to last.fm. Sometimes player doesn't scrobble at all and can lose several tracks. And after that it began scrobble again, but scrobble a track twice.

oops, I had 4.3.0 and haven't noticed a post about 4.4.0 update. will try it

4.4.0 will fix this 👍


Get-Team is blank or not showing all groups

I have seen something with get-teams similar to my interactions with PowerBI. if the powershell user is NOT a member of the group, they can not see the group when executing get-team or adjusting it, even as a global admin. sort of defeats the purpose of powershell for automating groups. Granted I can use unified group commands to gather members, etc, but if I wanted to troubleshoot, look at settings in the groups or reset select settings due to HR or other reasons, I am sorta of screwed

@kf4ape - thank you for submitting this for the beta cmdlets. It is highly appreciated and I know for a fact @islubin tracks and views this feedback and directly incorporates it into the product so the general release will be the best it has ever been. I am not sure on an answer right now so will leave this issue open and update as I can from product team.

@kf4ape, tank you for your feedback - we appreciate it!.  This is a known limitation of the Beta cmdlets and is something we're working to change in the upcoming releases.

Awesome! thanks guys


TOTP deemed invalid within the interval

Hi. Apologies if I misunderstood something, but I thought that the interval parameter defines how long a TOTP should be valid. However, I'm seeing results that don't conform to this understanding...
Using ROTP v6.1.0 on Ruby 2.7, adapting the example in the README slightly:
totp = ROTP::TOTP.new("base32secret3232", interval: 54)
now = Time.at(1474590600) # 2016-09-23 00:30:00 UTC
code = totp.at(now)
totp.verify(code, at: now + 35) # =><PHONE_NUMBER>
totp.verify(code, at: now + 36) # => nil

Shouldn't the code be valid for 54 seconds?
Another example:
now = Time.now # => 2022-08-23 11:31:57.889218 +0000
totp = ROTP::TOTP.new("base32secret3232", interval: 54)
code = totp.at(now) # => "110562"
totp.verify(code, at: now + 8) # =><PHONE_NUMBER>
totp.verify(code, at: now + 9) # => nil

The issue is visible with the default interval, too:
now = Time.at(1661255058) # => 2022-08-23 11:44:18 +0000
totp = ROTP::TOTP.new("base32secret3232") # => #<ROTP::TOTP:0x00007f7a329784f8 @interval=30, @issuer=nil, @digits=6, @digest="sha1", @secret="base32secret3232">
code = totp.at(now) # => "867977"
(0..31).find_index { |seconds| totp.verify(code, at: now + seconds).nil? } # => 12

Apologies. I've just realised that I had misunderstood how it should work. The interval is not a "period of validity in the future", but rather a set interval. Sorry for the noise.


⚠ ClamAV has degraded performance

In ac1373e, ClamAV (https://spamassassin.apache.org/) experienced degraded performance:

HTTP code: 200
Response time: 77 ms

Resolved: ClamAV performance has improved in b3b3e4c.


A Quick Review section does not work

This section directly contradicts with what's in https://docs.microsoft.com/en-us/visualstudio/extensibility/upgrading-custom-project-and-item-templates-for-visual-studio-2017?view=vs-2017. In there under Template Scanning it says starting Visual Studio "scanning is performed only for the user-level location. The default user-level location is %USERPROFILE%\Documents<Visual Studio version>\Templates. " So please make your documentation consistent.
Furthermore, I tried the steps described in the "A Quick Review" section and it doesn't work. I don't see a new MyProjectNode project type as shown in the picture. The picture is also from an older version of Visual Studio. Please update documentation.

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

ID: c86f6a71-101a-044c-d1bb-f4710bd360bf
Version Independent ID: bbeb5949-b533-c48d-ef2f-87a89689f118
Content: New Project Generation: Under the Hood, Part One - Visual Studio
Content Source: docs/extensibility/internals/new-project-generation-under-the-hood-part-one.md
Product: visual-studio-windows
GitHub Login: @gregvanl
Microsoft Alias: gregvanl

Thanks for submitting your feedback and we apologize for the delayed response. Due to current resourcing and substantial extensibility changes we are currently working on that will result in significant doc changes, we are closing this lower priority issue. We will return to this issue on a later date and address it based on it's relevance after those extensive extensibility updates are made. Feel free to comment here as necessary.


⚠ AGEG website (prod) has degraded performance

In 8d59ed9, AGEG website (prod) (https://www.ageg.ca/) experienced degraded performance:

HTTP code: 200
Response time: 4951 ms

Resolved: AGEG website (prod) performance has improved in 8831693.


No overload for method 'Map' takes 0 arguments

According to the NEST documentation,  you can persist attribute based mapping like this:
var response = this.ConnectedClient.Map<ElasticSearchProject>();

(see: http://nest.azurewebsites.net/nest/indices/put-mapping.html)
However, I'm getting an error saying: No overload for method 'Map' takes 0 arguments

I just think the documentation needs to be updated.

++ Several documentation pages are horribly lacking behind. We are working on a solution for 2.0 where all our code examples are actual code that has to compile or the build will fail.


The samples hello-world/capture/... throw the exception in Win10, and the tools/rs-capture.exe also can't execute normally

Required Info

Camera Model
D415

Firmware Version
<IP_ADDRESS>

Operating System & Version
Win10

Kernel Version (Linux Only)
None

Platform
PC

SDK Version
<IP_ADDRESS>

Language
C

Segment
others

Issue Description
Hi , i have used realsense-viewer.exe with my D415, it can show the depth image and the ir image normally, but when i compile the example hello-word/capture/... myself, the wait_for_frames() function will throw the exception.

I have also tested by the tools/rs-capture.exe, it shows that
C:\Program Files (x86)\Intel RealSense SDK 2.0\tools>rs-capture.exe
RealSense error calling rs2_pipeline_wait_for_frames(pipe:0000023262BE71C0):
Frame didn't arrived within 5000
I want to use the SDK and develop my own program, i want to know how to solve this exception error.

[Realsense Customer Engineering Team Comment]
Ticket being closed due to inactivity for 30+ days


[AQL] lest go create buildin  function GET_BY_ID?

Like this:
 FOR user IN Users
    RETURN GET_BY_ID( user.friendId, Users )

Please describe what this function is supposed to do.
Are you potentially looking for some function such as DOCUMENT?


Project Idea : I want to suggest an intermediate/advanced project of speech to text conversion.

I have already developed this project using whisper and groq ai (llama model) .
I have also used flask to integrate html and js for web app.
Can i add this into the repo?? @florinpop17

I'd like to add this.
Hey @florinpop17, could you please assign this to me with hacktoberfest label and good first issue .


tableschema infer outputs a Python dictionary instead of JSON

I used:
tableschema infer file.csv
It output the inferred data using a Python dictionary format (single double quotes, possibly with None instead of null?) . I expected and I think that it would be more useful a JSON output (and by default with indent=2?)
Tableschema version: 1.18

Please preserve this line to notify @roll (lead of this repository)

Possibly move to frictionless describe --json ~/Baixades/create_datapackage_header.csv for the output that I wanted...


Fix bucket_rule_temporary() docstring

This had been left as copy/pasted from the adjacent function definition.
This is indeed n days after creation (one might guess it could instead be n days after the last access):

The azure.py implementation uses days_after_modification_greater_than, which is unambiguous;
The gcp.py implementation sets gcp.storage.BucketLifecycleRuleConditionArgs(age=days), and age is described as being “measured from the resource's creation time”.

Trivially updated the commit to observe how the actions workflows are doing today…


Improved GUI for training sample collection

The current implementation can be improved by creating all classes beforehand and users can select whatever class to create training samples.
https://user-images.githubusercontent.com/5016453/117547827-b994f380-afff-11eb-8371-144c4a778c54.mp4

Hello Professor,
I was trying of perform supervised classification inside Nepal.

Map = geemap.Map()

ROI = ee.Geometry.Polygon(
  [[[85.27443103361846,27.629026415947422],
    [85.41107348967314,27.629026415947422],
    [85.41107348967314,27.737866221318047],
    [85.27443103361846,27.737866221318047],
    [85.27443103361846,27.629026415947422]]])

image = ee.ImageCollection('LANDSAT/LC08/C01/T1_TOA') \
    .filterBounds(ROI) \
    .filterDate('2020-01-01', '2021-01-31') \
    .sort('CLOUD_COVER') \
    .first() \
    .select('B[1-7]') \
    .clip(ROI)

vis_params = {
    'bands': ['B5', 'B4', 'B3']
}

Map.centerObject(ROI, 12)
Map.addLayer(image, vis_params, "Landsat-8")

Map

Then I started collecting samples as done in this video:  https://www.youtube.com/watch?v=VWh5PxXPZw0
However, those features don't get stored.

But, when I draw casually (when not in collecting sample mode), it stores the object.
Please, do help me.

@iamrajbhattarai You can use Map.user_rois to return the training samples as a feature collection.

Yes, I did that. But, the objects are not returned as feature collection. I think there is problem in the version available on  the website or git hub. Even the polygons are joint when we draw. The polygon drawn during interaction in sample collector does not seem to work as shown in your video. After we draw a polygon, next polygon also starts from the end point of last polygon. But, main problem is those features are not returned as feature collection when using Map.user_rois.getInfo() command.

I encountered this weird issue before. Try downgrading ipyleaflet Ronan earlier version, e.g., pip install -U ipyleaflet==0.13.3

Thank you professor. I made it.


Doesn't support Yeelight20 (YLXD50YL)

[6/6/2020, 12:50:34 PM] [Yeelighter] Initializing Yeelighter platform...
[6/6/2020, 12:50:34 PM] Failed to find plugin to handle accessory ceiling20-xxxxx
[6/6/2020, 12:50:34 PM] Removing orphaned accessory ceiling20-xxxxx

These are the attributes I got from the discover_bulbs of Yeelight python package  if that helps
[{'ip': 'XXXXXX', 'port': 55443, 'capabilities': {'id': '0x00000000XXXXXX', 'model': 'ceiling20', 'fw_ver': '20', 'support': 'get_prop set_default set_power toggle set_bright set_scene cron_add cron_get cron_del start_cf stop_cf set_ct_abx set_name set_adjust adjust_bright adjust_ct bg_set_rgb bg_set_hsv bg_set_ct_abx bg_start_cf bg_stop_cf set_scene_bundle bg_set_default bg_set_power bg_set_bright bg_set_adjust bg_adjust_bright bg_adjust_color bg_adjust_ct bg_toggle dev_toggle', 'power': 'on', 'bright': '100', 'color_mode': '2', 'ct': '6500', 'rgb': '0', 'hue': '0', 'sat': '0', 'name': ''}}]

I have it running with the YLXD50YL and its working here

Looks more like your homebridge has a corrupted device cache. Can you delete the cache directory of your homebridge and try again?

Thanks for your answers. I format Homebridge and installed the image for the Raspberry Pi and now works perfectly. Thanks for your time.


VS code crash and refering to Electron

Does this issue occur when all extensions are disabled?: Yes/No

VS Code Version: 1.91.0
OS Version: macOS 11.7.10

Steps to Reproduce:

Click on VS Code app in Launchpad
VS Code starts opening, asking if it should open recent files, I click yes or no (same behaviour in both cases) and than it crash throwing error referring to electron framework - https://github.com/glebramanchuk/home/blob/main/report

Tried to reinstall VS Code, did not work.
Need help.

Thanks for creating this issue! It looks like you may be using an old version of VS Code, the latest stable release is 1.91.1. Please try upgrading to the latest version and checking whether this issue remains.
Happy Coding!

Issue is addressed in 1.91.1, please reinstall to this version.
/duplicate https://github.com/microsoft/vscode/issues/219893


switch to non-deprecated ts utils package

as noted on https://www.npmjs.com/package/@typescript-eslint/experimental-utils:

This package is purely a re-export of @typescript-eslint/utils. You should switch to importing from that non-experimental package instead.

//cc #142183 @bpasero @mjbvz

cc @sandy081


Clean database of UNKNOWN and validates against it

Currently the database is littered with "UNKNOWN". This "helpfully" comes from distutils who will fill it in for a missing required value. We should strip these from the database and strip it from new incoming data.

The file upload API strips the UNKNOWN values from the request.POST data before doing anything else with it now.

Perhaps we can add a template filter to strip all UNKNOWN fields for now?

Still valid data quality issue.
A data migration job needs to exist that finds UNKNOWN and replaces with either empty strings or nulls - whichever the natural representation is for said column.


Cycling through structures creates new way incorrectly

When changing through the structures using either the menu or S, going back to 'None' from either 'Bridge' or 'Tunnel' creates a new way at the end of the way originally being drawn.
The progression:

iD v3 (f4cc0f5)
Vivaldi 2.8.1664.40, Windows 10 64-bit

@rivermont Oh weird! This must be a new bug. Thanks for reporting.

Any update on this @quincylvania? We're mapping lots of bridges at the moment so we're running into this a lot.

@jeffdefacto The v3 toolbar development has been on hold but I'll be getting back to it soonish as we move the functionality to the main branch 👍


Context is not finalized when using Path Parameter with async

Hello,
First of all congratulations on this delightful web framework, clean, easy, straightforward and most important without dependencies.
I'm confronting an issue and hope that you can help me solve it.
I have a route file tagsRoute.js in a routes folder, the routes folder is at the root of the Node.js application.
When I try the following code in tagsRoute.js
...
import { Hono } from "hono"
import { Eta } from "eta"

const tags = new Hono()
const eta = new Eta({ views: join(process.cwd(), "views") })

export const tagsRoute = tags
	.get("/", async (c) => {
		const res = eta.render("layouts/base.html", {
			...
			data: data,
			tags: await tags(),
			...
		})
		return c.html(res)
	})
	.get("/:tag", async (c) => {
		const tag = c.req.param("tag")
		// List of posts matching the `:tag` request parameter
		const postsByTag = postsByTagList(tag)

		const res = eta.render("layouts/base.html", {
			...
			data: data,
			posts: await postsByTag,
			...
		})
		return c.html(res)
	})

Then in the application entry file index.js I have
...
const app = new Hono()
app.use("/static/*", serveStatic({ root: "./" }))
...
import { tagsRoute } from "./routes/tagsRoute.js"
...
app.route("/tags", tagsRoute)

The /tags route is working as expected but the /tags/:tag route is returning :
Error: Context is not finalized. You may forget returning Response object or await next()
I've tried to modify the problematic route with .get("/:tag", async (c, next) and adding await next() before return c.html(res) but this does not solve the issue.
I've also tried to move it as a standalone route in the application entry file index.js but the problem persists.
Thanks a lot in advance for your time and help.
SYA,
LebCit

Hi @LebCit
I could not reproduce it with minimal code, this works fine:
import { Hono } from 'hono'

const tags = new Hono()

const tagsRoute = tags
  .get('/', async (c) => {
    return c.text('Foo')
  })
  .get('/:tag', async (c) => {
    const tag = c.req.param('tag')
    return c.text(tag)
  })

const app = new Hono()

app.route('/tags', tagsRoute)

export default app

Can you check it?

Hello @yusukebe
Thank you very much for your response.
I've finally managed to debug the problem, it was a grouping order issue.
A route named markdownRoute before the tagsRoute have 2 path parameters that where preceding the :tag parameter in the tagsRoute.
Putting markdownRoute after tagsRoute solved the issue.
Thank you very much for your time and help.

Great! I'll close this issue.


stubs: Default implementations for functions

Currently, most, if not all, the exercises have stub solutions that have the form:
foo :: ...
foo = undefined

This is great, but the are two minor probems:

A beginner student may not see immediately that it needs to implement that function.
The error message returned from the test suite may be a little confusing:

leap
  isLeapYear
    1996 - leap year FAILED [1]

Failures:

  test/Tests.hs:18:
  1) leap.isLeapYear 1996 - leap year
       uncaught exception: ErrorCall (Prelude.undefined
       CallStack (from HasCallStack):
         error, called at libraries/base/GHC/Err.hs:79:14 in base:GHC.Err
         undefined, called at src/LeapYear.hs:4:19 in leap-0.0.0-4uYVmwBGJQhBRFIbJzqiyG:LeapYear)

An alternative would be to use error with a custom message...
foo = error "You need to implement this function."

... which is clearer in the source code and gives a slightly better error message:
leap
  isLeapYear
    1996 - leap year FAILED [1]

Failures:

  test/Tests.hs:18:
  1) leap.isLeapYear 1996 - leap year
       uncaught exception: ErrorCall (You need to implement this function.
       CallStack (from HasCallStack):
         error, called at src/LeapYear.hs:4:19 in leap-0.0.0-4uYVmwBGJQhBRFIbJzqiyG:LeapYear)

Another options would be to use...
foo = errorWithoutStackTrace "You need to implement this function."

... which is not so beautiful in the source code, but gives the best error message:
leap
  isLeapYear
    1996 - leap year FAILED [1]

Failures:

  test/Tests.hs:18:
  1) leap.isLeapYear 1996 - leap year
       uncaught exception: ErrorCall (You need to implement this function.)

So, which of the three solutions is better? What would be the best message to use?

Well the stack trace is still somewhat useful, right? Since the line number shows which function we need to implement. I wouldn't mind keeping it. So my leading option is error "You need to implement this function.".

Another related question!
Should we also provide variable names in the stub implementations?
For example, instead of ...
isLeapYear = error "You need to implement this function."

...we could write...
isLeapYear year = error "You need to implement this function."

I looked for past discussions of "eta" and got:

I expressed naming the arg explicitly, and you agree at https://github.com/exercism/xhaskell/pull/299#issuecomment-247815970
You suggest always eta-abstracting in #404.

I'm basically going to agree with what we thought in the past.

It makes it clear what each argument is.
A student who wishes to eta-reduce is still free to do so.

We don't explicitly say "you're free to eta-reduce", but we also don't say "you can't change the signatures", so there's no explicit permission nor restriction.
Hopefully students do figure out it's allowed.
If they're not, maybe we have to add a note explaining the possibility. I have a hard time figuring out where the note would go...

EBWODP: To be clear, I do support explicitly naming the variables.

With #471, this is now complete, right?

Oh, I suppose explicitly naming the variables?

Oh, I suppose explicitly naming the variables?

Yeah!


Boxplots' whiskers description

Hi all,
Congrats for the great work on MRIQC!
Could you add to the documentation what the whiskers in the boxplots represent? We'd think it'd be 1.5 IQR but when we calculate it doesn't seem to be the case. Visual inspection leaves doubts and we don't find this written anywhere in the docs...
Thanks!
Anderson

Thanks for reporting. Will do asap.


test: Trim trailing newline in ByLines method

It was observed, that sometimes SSHMeta.Exec output includes a trailing newline which might break some test assertions.
For example, ValidateEndpointsAreCorrect retrieves a list of Docker containers attached to the cilium-net network. If the list (a string res) contains a trailing newline, then the last containerID retrieved from res.Bylines() will be empty. It will make the test assertion to fail, as the endpoints does not have an entry with the empty key:
for _, containerID := range res.ByLines() {
    _, exists := endpoints[containerID]
    if !exists {
        // FAIL
    }
}

The assertion from above will fail with the ContainerID  is not present in the endpoint list error.

I didn't set any needs-backport label, as I haven't seen the failure in v1.5 or v1.4 CI runs.

This change is

test-me-please

test-me-please

Coverage increased (+0.02%) to 41.774% when pulling 14ba8f6716073d524903ec00db32fe7935e7f7ab on pr/brb/test-trim-newline into 898022caa9e3b98d8693c101d7b03c7efcee3ceb on master.

Wonderful catch

CI failed:
[2019-05-14T10:46:42.317Z] Cancelling nested steps due to timeout
[2019-05-14T10:46:42.396Z] Sending interrupt signal to process
[2019-05-14T10:46:56.846Z] cleaning up VMs started for k8s tests
[2019-05-14T10:46:56.846Z]
[2019-05-14T10:46:56.846Z] ---------------------------------------------------------
[2019-05-14T10:46:56.846Z] Received interrupt.  Running AfterSuite...
[2019-05-14T10:46:56.846Z] ^C again to terminate immediately

test-me-please

CI failed most likely due to #7995. Rebased.

test-me-please


Avoid over-long strings.  Fix a mem leak.

I'll add the != NULL tests @mattcaswell pointed out, and assume your +1 still sends, @snhenson ...


UnimplementedError, if only a word as the input data

When the input tensor only contain a word, the program will raise the UnimplementedError.
`import numpy as np
import tensorflow as tf
Data settings.
num_examples = 10
num_words = 1
num_features = 100
num_tags = 5
Random features.
x = np.random.rand(num_examples, num_words, num_features).astype(np.float32)
Random tag indices representing the gold sequence.
y = np.random.randint(num_tags, size=[num_examples, num_words]).astype(np.int32)
All sequences in this example have the same length, but they can be variable in a real model.
sequence_lengths = np.full(num_examples, num_words - 1, dtype=np.int32)
Train and evaluate the model.
with tf.Graph().as_default():
with tf.Session() as session:
# Add the data to the TensorFlow graph.
x_t = tf.constant(x)
y_t = tf.constant(y)
sequence_lengths_t = tf.constant(sequence_lengths)
# Compute unary scores from a linear layer.
weights = tf.get_variable("weights", [num_features, num_tags])
matricized_x_t = tf.reshape(x_t, [-1, num_features])
matricized_unary_scores = tf.matmul(matricized_x_t, weights)
unary_scores = tf.reshape(matricized_unary_scores,
                          [num_examples, num_words, num_tags])

# Compute the log-likelihood of the gold sequences and keep the transition
# params for inference at test time.
log_likelihood, transition_params = tf.contrib.crf.crf_log_likelihood(
    unary_scores, y_t, sequence_lengths_t)

# Add a training op to tune the parameters.
loss = tf.reduce_mean(-log_likelihood)
train_op = tf.train.GradientDescentOptimizer(0.01).minimize(loss)

# Train for a fixed number of iterations.
session.run(tf.global_variables_initializer())
for i in range(1000):
  tf_unary_scores, tf_transition_params, _ = session.run(
      [unary_scores, transition_params, train_op])
  if i % 100 == 0:
    correct_labels = 0
    total_labels = 0
    for tf_unary_scores_, y_, sequence_length_ in zip(tf_unary_scores, y,
                                                      sequence_lengths):
      # Remove padding from the scores and tag sequence.
      tf_unary_scores_ = tf_unary_scores_[:sequence_length_]
      y_ = y_[:sequence_length_]

      # Compute the highest scoring sequence.
      viterbi_sequence, _ = tf.contrib.crf.viterbi_decode(
          tf_unary_scores_, tf_transition_params)

      # Evaluate word-level accuracy.
      correct_labels += np.sum(np.equal(viterbi_sequence, y_))
      total_labels += sequence_length_
    accuracy = 100.0 * correct_labels / float(total_labels)
    print("Accuracy: %.2f%%" % accuracy)`

UnimplementedError (see above for traceback): TensorArray has size zero, but element shape  is not fully defined. Currently only static shapes are supported when packing zero-size TensorArrays.
[[Node: gradients/rnn/TensorArrayUnstack/TensorArrayScatter/TensorArrayScatterV3_grad/TensorArrayGatherV3 = TensorArrayGatherV3[_class=["loc:@rnn/TensorArray_1"], dtype=DT_FLOAT, element_shape=, _device="/job:localhost/replica:0/task:0/cpu:0"](gradients/rnn/TensorArrayUnstack/TensorArrayScatter/TensorArrayScatterV3_grad/TensorArrayGrad/TensorArrayGradV3, rnn/TensorArrayUnstack/range, gradients/rnn/TensorArrayUnstack/TensorArrayScatter/TensorArrayScatterV3_grad/TensorArrayGrad/gradient_flow)]]

This question is better asked on  StackOverflow since it is not a  bug or feature request. There is also a larger community that reads questions there. Thanks!


Add 418 status code

Add "I'm teapot" status code to HTTPResponseStatus. And moved unprocessableEntity from 5XX section to 4XX section
Motivation:
For the sake of pure transparency, this is hilarious, but not the sole reason for this PR. Two users other than myself of the Vapor project which is built atop Apple's excellent Swift NIO implementation are using custom response codes for the 418 status. Our current use case is a unique code that is used to check if the server is up.
Modifications:

Moved unprocessableEntity(which is 422) from 500 section to 400 section.
Added .imaTeapot to the HTTPResponseStatus as the symbolic representation of "I'm a teapot", also added a case to the equality switch and enum to status code statement.

Result:

This modification was just a passing item that stuck out like a sore thumb to me. This should have no effect on the code.
This modification will add .iamTeapot as a first class response status to HTTPResponseStatus instead of requiring a custom implementation of  418 in multiple projects.

@swift-nio-bot test this please

@Lukasa that said I think this is a next-major as someone may have used switch on all cases (without default) right ?

Agreed.

@Lukasa how do you feel about refactor opprotunities.  I see a major one in https://github.com/apple/swift-nio/blob/master/Sources/NIOHTTP1/HTTPTypes.swift
HTTPResponseStatus: Equatable is fairly ripe for refactoring I am pretty confident that  the following will have the same efficacy as the current implementation with a reduction of 100+ lines of code without loss of readability
extension HTTPResponseStatus: Equatable {
    public static func ==(lhs: HTTPResponseStatus, rhs: HTTPResponseStatus) -> Bool {
        switch (lhs, rhs) {
        case (.custom(let lcode, let lreason), .custom(let rcode, let rreason)):
            return lcode == rcode && lreason == rreason
        default:
            return lhs.code == rhs.code
        }
    }
}

Should I fold it into here? Should I open a seperate PR or should I ignore it?

@pedantix new PR please

Shouldn't this be .imATeapot?

so custom(418) is equal to .teapot, but custom(418,”earl gray”) differs to custom(418,”whatever”) 🤔

@normanmaurer will do.

@tanner0101 When I put this change together I came up with many possibilities, .imaTeapot seemed the most natural to me other possibilities were .iMaTeapot, .imATeapot, or .iMATeapot my enum foo is a bit weak, I wasn't sure which way it should go. If we remove conjunctions we get .iAmATeapot. I apologize if I selected wrong if the group things I should change I will.

@Lukasa shall we take this one?

@swift-nio-bot test this please

@tanner0101 want to make a PR? Could also spell it iAmATeapot

@weissi done here: https://github.com/apple/swift-nio/pull/860. Since the status phrase is specifically "I'm a teapot", I think the correct spelling is imATeapot.


Fix error paths in ASN1_TIME_to_generalizedtime

We should not write to |out| in error cases, so we should defer doing this
until the "done" block.

Pushed.


Cranelift meeting agenda 2021-08-23: add item for isel DSL RFC.

Merging without review/CI (meeting notes only).


is there a need for a wombat fuse module

Need to determine if wombatreader|log|info is enough or if i should build a fuse module that will display the 3 files and enable operating on them, but i think the current 3 tools are enough.

working on a fuse module. it is kind of working. just can't read any files yet.

fuse isn't working because it i get transport errors when trying to call the pack_wltg into the filesystem guy, so it doesn't work.


Weird classes thrown

I'm doing static analysis.
Could you help me fix thrown types in code vs. in PHPDoc?
https://github.com/paragonie/sodium_compat/blob/master/lib/sodium_compat.php#L41-L60

There is no Sodium\Error nor Sodium\Exception.

It's \SodiumException, not Sodium\Exception.

If you're curious about the explicit \ prefix: https://github.com/UnderhandedCrypto/entries/blob/master/2014/submissions/ScottArcizewski/email-exerpt.txt

Okay. Thank you.
I remove @throw where it is really catched.


fix: remove typescript

Hi, i'm just curious why you decided to go back to vanilla javascript

Hi, i'm just curious why you decided to go back to vanilla javascript

When I started the project, I wanted to use TypeScript originally, but because I was using Gatsby I decided to do JavaScript first and then decide if wanted to move to TypeScript later. So the typescript dependencies were all there and I decided to remove them for now because they are unused.
Personally, I love TypeScript, but I've been working on more interesting things than converting this site to TypeScript.

Hi, i'm just curious why you decided to go back to vanilla javascript

Hi @jimmywarting 👋  When I started the project, I wanted to use TypeScript originally, but because I was using Gatsby I decided to do JavaScript first and then decide if wanted to move to TypeScript later. So the typescript dependencies were all there and I decided to remove them for now because they are unused.
Personally, I love TypeScript, but I've been working on more interesting things than converting this site to TypeScript.


Building the Merge Sort Algorithm: the steps using if statements do not allow the use of parenthesis to wrap the conditions

Describe the Issue
The if statements in steps 12, 26, and 28 do not allow the use of parenthesis to wrap the conditions of the if statements. This is indeed not needed, but it's valid.
In addition, in these steps, things could be difficult for someone coming from a language that enforces the use of parenthesis to wrap the conditions of a conditional statement (say JavaScript).
Affected Page

https://www.freecodecamp.org/learn/scientific-computing-with-python/learn-data-structures-by-building-the-merge-sort-algorithm/step-12
https://www.freecodecamp.org/learn/scientific-computing-with-python/learn-data-structures-by-building-the-merge-sort-algorithm/step-26
https://www.freecodecamp.org/learn/scientific-computing-with-python/learn-data-structures-by-building-the-merge-sort-algorithm/step-28

Your code
The following code do not pass
Step 12 code:
while left_array_index < len(left_part) and right_array_index < len(right_part):
        if (left_part[left_array_index] < right_part[right_array_index]):
            pass

Step 26 code:
def merge_sort(array):
    if (len(array) <= 1):
        pass

Step 28 code:
if (__name__ == '__main__'):
    pass

Expected behavior
Parenthesis should be allowed to wrap the conditions of the if statements since that's a valid syntax
Screenshots
Step 12:

Step 26:

Step 28:

System

Device: [e.g. iPhone 6, Laptop]
OS: [e.g. iOS 14, Windows 10, Ubuntu 20.04]
Browser: [e.g. Chrome, Safari]
Version: [e.g. 22]

Additional context
No response

There are many cases in which parentheses are not allowed by the test, although the code is valid. In my opinion, the use of parentheses should be discouraged when not required. Anyway, if I understood correctly, re-writing all the tests to use the upcoming ast-based helpers can overcome this inconvenient.

It would be great to have the tests for these steps re-written using the new ast-based helpers.
Here's an example of a test written with those:
https://github.com/freeCodeCamp/freeCodeCamp/blob/fcf577ead157697fadb215409ba05ce1ce211965/curriculum/challenges/english/20-upcoming-python/learn-python-by-building-a-blackjack-game/5daa813381b9e3db6c126b43.md?plain=1#L28


Many things need to be moved to a plugin

Things in core that need to move to plugins:
Indexes:

account_member_index

Objects:

impl_account_transaction_history_object_type
impl_witness_schedule_object_type
impl_budget_record_object_type
remove impl_reserved0_object_type
remove custom_object_type
operation_history_object_type

Fields:

account_object.whitelisted_accounts
account_object.blacklisted_accounts
witness_object.last_aslot
witness_object.url
witness_object.total_missed
witness_object.last_confirmed_block_num
dpo.recent_slots_filled
dpo.last_irreversible_block_num
dpo.recently_missed_count

This issue was moved to bitshares/bitshares-core#116


feat: add custom data attributes for automation purposes

Allowing our automation to become less brittle to updating changing classes/ids. These custom data attributes will be available for QA Engineers to update for automation (integration/E2E) and empower the FE developers to change classes/ids without concern.
See: https://blog.kentcdodds.com/making-your-ui-tests-resilient-to-change-d37a6ee37269
This may not be the last PR regarding data hooks but I wanted to get the pattern passed before peppering it where it makes the most sense (most actionable elements [click, link, nav, et. al]) For this PR, just button and nav were touched.

@shawncothran This was my litmus. Easier to start small with the barebones to get it approved and then unleash the kraken. 👍


fix(semantic): transform checker check reference flags

[!WARNING]
This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
Learn more

#5092  👈
#5091
#5090
#5089
#5088
#5082
main

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

Join @overlookmotel and the rest of your teammates on  Graphite


Blue cell running spinner bar not visible sometimes

Applies To

[X] Notebooks (.ipynb files)
[ ] Interactive Window and/or Cell Scripts (.py files with #%% markers)

What happened?
When you run a cell, a blue moving bar appears at the top of the cell indicating activity.
If you partially scroll the running cell out of view, so that the top of the cell is not visible, only the bottom, the blue moving bar is not shown anymore.
It will be shown at the top of the notebook if the cell is completely out of view, but not if only the top out of view.
https://user-images.githubusercontent.com/3753822/226939177-a848770c-209c-482e-a469-8099badf351d.mp4
VS Code Version
Version: 1.76.2 (user setup) Commit: ee2b180d582a7f601fa6ecfdad8d9fd269ab1884 Date: 2023-03-14T17:55:54.936Z Electron: 19.1.11 Chromium: 102.0.5005.196 Node.js: 16.14.2 V8: <IP_ADDRESS>-electron.0 OS: Windows_NT x64 10.0.19045 Sandboxed: No
Jupyter Extension Version
v2023.2.1200692131
Jupyter logs
No response
Coding Language and Runtime Version
No response
Language Extension Version (if applicable)
No response
Anaconda Version (if applicable)
No response
Running Jupyter locally or remotely?
Local

There is a small dead spot where the cell progress bar is scrolled away but the editor one has not been shown yet. I pushed a change to adjust this, however, your gif seems to show a much larger dead spot than what I see. You can try this in the next VS Code Insiders build and let me know whether that helps, if not, please share all your notebook settings with me.

Here are my notebook settings:
"notebook.globalToolbar": false,
"notebook.consolidatedRunButton": true,
"notebook.consolidatedOutputButton": false,
"notebook.showCellStatusBar": "hidden",
"notebook.showFoldingControls": "always",
"notebook.insertToolbarLocation": "hidden",
"notebook.cellToolbarLocation": { "default": "hidden" },

There is another issue I sometimes encounter - the editor spinner can be shown on the wrong pane. I do not have clear reproduction steps:
https://user-images.githubusercontent.com/3753822/229101471-96d27926-7bde-4cfb-9905-a4ef870897b6.mp4

Good finds - the offset comes from disabling the cell toolbarbar with "notebook.cellToolbarLocation": { "default": "hidden" }, and the progress bar shows in the wrong editor after moving the notebook editor between groups. Both should be fixed in my PR now.


Check and Test the existing API endpoints

Having tested out the initial Peer Reviews NLP API endpoints project description, none of them seem to be working. As a result, as per Dr. Gehringer's instructions, we contacted Yulin Zhang for API endpoints.


kube-vip v0.6.0 and kube-vip-watcher - reelection problems

What changed in version v0.6.0 with service-leader-election? I'm currently in the process in updating my kube-vip-watcher script to work also with the new kube-vip.io/loadbalancerIPs annotation. So far my changes in the code seem to work with v0.5.12 but with v0.6.0 my watcher-script updates the corresponding holderIdentity in the leases and updates the kube-vip.io/vipHost annotation in the corresponding service, but kube-vip immediately does a reelection and moves the VIPs back. Also I have seen that some VIPs sometimes are hosted on multiple nodes - which is not happening with v0.5.12.
In my lab I have a statefulset with 3 replica-pods of Logstash where each pod is running on one node. With v0.6.0 all the VIPs are placed on node dc2-lab-host-005.dc2.

logstash-buffer-0 on dc2-lab-host-005.dc2 with VIP <IP_ADDRESS> - priority node is dc2-lab-host-005.dc2
logstash-buffer-1 on dc2-lab-host-006.dc2 with VIP <IP_ADDRESS> - priority node is dc2-lab-host-006.dc2
logstash-buffer-2 on dc2-lab-host-007.dc2 with VIP <IP_ADDRESS> - priority node is dc2-lab-host-007.dc2

After I start my kube-vip-watcher script <IP_ADDRESS> is handed over to dc2-lab-host-006.dc2 and <IP_ADDRESS> to dc2-lab-host-007.dc2 for a short moment - then they are moved back to dc2-lab-host-005.dc2
Here are the logs of the kube-vip pods running as a daemonset. Also with v0.6.0 I see a lot of those Waited for Xs due to client-side throttling, not priority and fairness messages continuously happening every few seconds even though nothing is going on. With v0.5.12 this only happens from time to time.
[pod/kube-vip-ds-x29v6/kube-vip] I0516 06:10:47.073918       1 request.go:690] Waited for 23.063406953s due to client-side throttling, not priority and fairness, request: GET:https://<IP_ADDRESS>:443/apis/coordination.k8s.io/v1/namespaces/ingress-nginx/leases/kubevip-ingress-nginx-controller-loadbalanced
[pod/kube-vip-ds-nrdpl/kube-vip] I0516 06:10:49.378080       1 request.go:690] Waited for 7.088314819s due to client-side throttling, not priority and fairness, request: GET:https://<IP_ADDRESS>:443/apis/coordination.k8s.io/v1/namespaces/lab-elk/leases/kubevip-lab-elk-kibana
[pod/kube-vip-ds-9ns2d/kube-vip] E0516 06:10:54.475823       1 leaderelection.go:330] error retrieving resource lock lab-elk/kubevip-logstash-buffer-2: client rate limiter Wait returned an error: rate: Wait(n=1) would exceed context deadline
[pod/kube-vip-ds-9ns2d/kube-vip] I0516 06:10:54.476866       1 leaderelection.go:283] failed to renew lease lab-elk/kubevip-logstash-buffer-2: timed out waiting for the condition
[pod/kube-vip-ds-9ns2d/kube-vip] time="2023-05-16T06:10:54Z" level=info msg="[services election] new leader elected: dc2-lab-host-007.dc2"
[pod/kube-vip-ds-9ns2d/kube-vip] time="2023-05-16T06:10:54Z" level=info msg="[services election] service [logstash-buffer-2] leader lost: [dc2-lab-host-005.dc2]"
[pod/kube-vip-ds-9ns2d/kube-vip] time="2023-05-16T06:10:54Z" level=info msg="[LOADBALANCER] Stopping load balancers"
[pod/kube-vip-ds-9ns2d/kube-vip] time="2023-05-16T06:10:54Z" level=info msg="[VIP] Releasing the Virtual IP [<IP_ADDRESS>]"
[pod/kube-vip-ds-9ns2d/kube-vip] time="2023-05-16T06:10:54Z" level=info msg="Removed [919f7826-8292-4b3c-980b-1437b32f8da6] from manager, [3] advertised services remain"
[pod/kube-vip-ds-9ns2d/kube-vip] time="2023-05-16T06:10:54Z" level=info msg="[services election] for service [logstash-buffer-2] stopping"
[pod/kube-vip-ds-9ns2d/kube-vip] time="2023-05-16T06:10:54Z" level=info msg="[services election] for service [logstash-buffer-2], namespace [lab-elk], lock name [kubevip-logstash-buffer-2], host id [dc2-lab-host-005.dc2]"
[pod/kube-vip-ds-9ns2d/kube-vip] I0516 06:10:54.483650       1 leaderelection.go:248] attempting to acquire leader lease lab-elk/kubevip-logstash-buffer-2...
[pod/kube-vip-ds-9ns2d/kube-vip] time="2023-05-16T06:10:55Z" level=info msg="[services election] new leader elected: dc2-lab-host-007.dc2"
[pod/kube-vip-ds-9ns2d/kube-vip] E0516 06:10:55.876709       1 leaderelection.go:330] error retrieving resource lock lab-elk/kubevip-logstash-buffer-1: client rate limiter Wait returned an error: rate: Wait(n=1) would exceed context deadline
[pod/kube-vip-ds-9ns2d/kube-vip] I0516 06:10:56.078095       1 leaderelection.go:283] failed to renew lease lab-elk/kubevip-logstash-buffer-1: timed out waiting for the condition
[pod/kube-vip-ds-9ns2d/kube-vip] time="2023-05-16T06:10:56Z" level=info msg="[services election] service [logstash-buffer-1] leader lost: [dc2-lab-host-005.dc2]"
[pod/kube-vip-ds-9ns2d/kube-vip] time="2023-05-16T06:10:56Z" level=info msg="[LOADBALANCER] Stopping load balancers"
[pod/kube-vip-ds-9ns2d/kube-vip] time="2023-05-16T06:10:56Z" level=info msg="[VIP] Releasing the Virtual IP [<IP_ADDRESS>]"
[pod/kube-vip-ds-9ns2d/kube-vip] time="2023-05-16T06:10:56Z" level=info msg="[services election] new leader elected: dc2-lab-host-006.dc2"
[pod/kube-vip-ds-9ns2d/kube-vip] time="2023-05-16T06:10:56Z" level=info msg="Removed [be837b2c-91fc-4d0c-bd26-54d24863030f] from manager, [2] advertised services remain"
[pod/kube-vip-ds-9ns2d/kube-vip] time="2023-05-16T06:10:56Z" level=info msg="[services election] for service [logstash-buffer-1] stopping"
[pod/kube-vip-ds-9ns2d/kube-vip] time="2023-05-16T06:10:56Z" level=info msg="[services election] for service [logstash-buffer-1], namespace [lab-elk], lock name [kubevip-logstash-buffer-1], host id [dc2-lab-host-005.dc2]"
[pod/kube-vip-ds-9ns2d/kube-vip] I0516 06:10:56.084687       1 leaderelection.go:248] attempting to acquire leader lease lab-elk/kubevip-logstash-buffer-1...
[pod/kube-vip-ds-9ns2d/kube-vip] time="2023-05-16T06:10:56Z" level=info msg="[services election] new leader elected: dc2-lab-host-006.dc2"
[pod/kube-vip-ds-x29v6/kube-vip] I0516 06:10:57.274049       1 request.go:690] Waited for 23.367535102s due to client-side throttling, not priority and fairness, request: GET:https://<IP_ADDRESS>:443/apis/coordination.k8s.io/v1/namespaces/lab-elk/leases/kubevip-lab-elk-elasticsearch
[pod/kube-vip-ds-x29v6/kube-vip] time="2023-05-16T06:10:59Z" level=info msg="[services election] new leader elected: dc2-lab-host-007.dc2"
[pod/kube-vip-ds-nrdpl/kube-vip] I0516 06:10:59.386453       1 leaderelection.go:258] successfully acquired lease lab-elk/kubevip-logstash-buffer-2
[pod/kube-vip-ds-nrdpl/kube-vip] E0516 06:10:59.386556       1 leaderelection.go:330] error retrieving resource lock lab-elk/kubevip-logstash-buffer-2: client rate limiter Wait returned an error: rate: Wait(n=1) would exceed context deadline
[pod/kube-vip-ds-nrdpl/kube-vip] time="2023-05-16T06:10:59Z" level=info msg="[service] adding VIP [<IP_ADDRESS>] for [lab-elk/logstash-buffer-2]"
[pod/kube-vip-ds-nrdpl/kube-vip] time="2023-05-16T06:10:59Z" level=info msg="[service] synchronised in 28ms"
[pod/kube-vip-ds-nrdpl/kube-vip] I0516 06:10:59.577867       1 request.go:690] Waited for 7.592654325s due to client-side throttling, not priority and fairness, request: GET:https://<IP_ADDRESS>:443/apis/coordination.k8s.io/v1/namespaces/lab-elk/leases/kubevip-lab-elk-elasticsearch
[pod/kube-vip-ds-nrdpl/kube-vip] E0516 06:11:00.387668       1 leaderelection.go:330] error retrieving resource lock lab-elk/kubevip-logstash-buffer-2: client rate limiter Wait returned an error: rate: Wait(n=1) would exceed context deadline
[pod/kube-vip-ds-nrdpl/kube-vip] time="2023-05-16T06:11:00Z" level=info msg="[services election] new leader elected: dc2-lab-host-006.dc2"
[pod/kube-vip-ds-nrdpl/kube-vip] E0516 06:11:01.387303       1 leaderelection.go:330] error retrieving resource lock lab-elk/kubevip-logstash-buffer-2: client rate limiter Wait returned an error: rate: Wait(n=1) would exceed context deadline
[pod/kube-vip-ds-nrdpl/kube-vip] E0516 06:11:02.386833       1 leaderelection.go:330] error retrieving resource lock lab-elk/kubevip-logstash-buffer-2: client rate limiter Wait returned an error: context deadline exceeded
[pod/kube-vip-ds-nrdpl/kube-vip] I0516 06:11:02.386858       1 leaderelection.go:283] failed to renew lease lab-elk/kubevip-logstash-buffer-2: timed out waiting for the condition
[pod/kube-vip-ds-9ns2d/kube-vip] I0516 06:11:03.877616       1 leaderelection.go:258] successfully acquired lease lab-elk/kubevip-logstash-buffer-1
[pod/kube-vip-ds-9ns2d/kube-vip] time="2023-05-16T06:11:03Z" level=info msg="[service] adding VIP [<IP_ADDRESS>] for [lab-elk/logstash-buffer-1]"
[pod/kube-vip-ds-9ns2d/kube-vip] time="2023-05-16T06:11:03Z" level=info msg="[service] synchronised in 26ms"
[pod/kube-vip-ds-9ns2d/kube-vip] I0516 06:11:05.072146       1 request.go:690] Waited for 1.090896812s due to client-side throttling, not priority and fairness, request: GET:https://<IP_ADDRESS>:443/apis/coordination.k8s.io/v1/namespaces/lab-elk/leases/kubevip-logstash-buffer-2
[pod/kube-vip-ds-x29v6/kube-vip] I0516 06:11:07.474069       1 request.go:690] Waited for 23.317871457s due to client-side throttling, not priority and fairness, request: GET:https://<IP_ADDRESS>:443/apis/coordination.k8s.io/v1/namespaces/lab-elk/leases/kubevip-lab-elk-elasticsearch
[pod/kube-vip-ds-nrdpl/kube-vip] time="2023-05-16T06:11:08Z" level=info msg="[services election] new leader elected: dc2-lab-host-005.dc2"
[pod/kube-vip-ds-9ns2d/kube-vip] I0516 06:11:08.878540       1 leaderelection.go:258] successfully acquired lease lab-elk/kubevip-logstash-buffer-2
[pod/kube-vip-ds-9ns2d/kube-vip] time="2023-05-16T06:11:08Z" level=info msg="[service] adding VIP [<IP_ADDRESS>] for [lab-elk/logstash-buffer-2]"
[pod/kube-vip-ds-9ns2d/kube-vip] time="2023-05-16T06:11:08Z" level=info msg="[service] synchronised in 20ms"
[pod/kube-vip-ds-nrdpl/kube-vip] E0516 06:11:09.580540       1 leaderelection.go:306] Failed to release lock: Operation cannot be fulfilled on leases.coordination.k8s.io "kubevip-logstash-buffer-2": the object has been modified; please apply your changes to the latest version and try again
[pod/kube-vip-ds-nrdpl/kube-vip] time="2023-05-16T06:11:09Z" level=info msg="[services election] service [logstash-buffer-2] leader lost: [dc2-lab-host-007.dc2]"
[pod/kube-vip-ds-nrdpl/kube-vip] time="2023-05-16T06:11:09Z" level=info msg="[LOADBALANCER] Stopping load balancers"
[pod/kube-vip-ds-nrdpl/kube-vip] time="2023-05-16T06:11:09Z" level=info msg="[VIP] Releasing the Virtual IP [<IP_ADDRESS>]"
[pod/kube-vip-ds-nrdpl/kube-vip] time="2023-05-16T06:11:09Z" level=info msg="Removed [919f7826-8292-4b3c-980b-1437b32f8da6] from manager, [1] advertised services remain"
[pod/kube-vip-ds-nrdpl/kube-vip] time="2023-05-16T06:11:09Z" level=info msg="[services election] for service [logstash-buffer-2] stopping"
[pod/kube-vip-ds-nrdpl/kube-vip] time="2023-05-16T06:11:09Z" level=info msg="[services election] for service [logstash-buffer-2], namespace [lab-elk], lock name [kubevip-logstash-buffer-2], host id [dc2-lab-host-007.dc2]"
[pod/kube-vip-ds-nrdpl/kube-vip] I0516 06:11:09.585984       1 leaderelection.go:248] attempting to acquire leader lease lab-elk/kubevip-logstash-buffer-2...
[pod/kube-vip-ds-nrdpl/kube-vip] I0516 06:11:09.777882       1 request.go:690] Waited for 7.044602713s due to client-side throttling, not priority and fairness, request: GET:https://<IP_ADDRESS>:443/apis/coordination.k8s.io/v1/namespaces/ingress-nginx/leases/kubevip-ingress-nginx-controller-loadbalanced
[pod/kube-vip-ds-nrdpl/kube-vip] time="2023-05-16T06:11:17Z" level=info msg="[services election] new leader elected: dc2-lab-host-005.dc2"
[pod/kube-vip-ds-x29v6/kube-vip] I0516 06:11:17.474306       1 request.go:690] Waited for 22.917568625s due to client-side throttling, not priority and fairness, request: GET:https://<IP_ADDRESS>:443/apis/coordination.k8s.io/v1/namespaces/lab-elk/leases/kubevip-lab-elk-kibana
[pod/kube-vip-ds-nrdpl/kube-vip] I0516 06:11:19.977888       1 request.go:690] Waited for 7.099024355s due to client-side throttling, not priority and fairness, request: GET:https://<IP_ADDRESS>:443/apis/coordination.k8s.io/v1/namespaces/ingress-nginx/leases/kubevip-ingress-nginx-controller-loadbalanced
[pod/kube-vip-ds-x29v6/kube-vip] E0516 06:11:21.077077       1 leaderelection.go:367] Failed to update lock: Operation cannot be fulfilled on leases.coordination.k8s.io "kubevip-logstash-buffer-1": the object has been modified; please apply your changes to the latest version and try again
[pod/kube-vip-ds-x29v6/kube-vip] time="2023-05-16T06:11:24Z" level=info msg="[services election] new leader elected: dc2-lab-host-005.dc2"
[pod/kube-vip-ds-x29v6/kube-vip] I0516 06:11:27.673791       1 request.go:690] Waited for 23.300140792s due to client-side throttling, not priority and fairness, request: GET:https://<IP_ADDRESS>:443/apis/coordination.k8s.io/v1/namespaces/lab-elk/leases/kubevip-lab-elk-elasticsearch
[pod/kube-vip-ds-nrdpl/kube-vip] I0516 06:11:29.978010       1 request.go:690] Waited for 6.837064641s due to client-side throttling, not priority and fairness, request: GET:https://<IP_ADDRESS>:443/apis/coordination.k8s.io/v1/namespaces/ingress-nginx/leases/kubevip-ingress-nginx-controller-loadbalanced
[pod/kube-vip-ds-x29v6/kube-vip] I0516 06:11:37.674286       1 request.go:690] Waited for 23.266075931s due to client-side throttling, not priority and fairness, request: GET:https://<IP_ADDRESS>:443/apis/coordination.k8s.io/v1/namespaces/lab-elk/leases/kubevip-lab-elk-apm
[pod/kube-vip-ds-nrdpl/kube-vip] I0516 06:11:40.177848       1 request.go:690] Waited for 7.414469305s due to client-side throttling, not priority and fairness, request: GET:https://<IP_ADDRESS>:443/apis/coordination.k8s.io/v1/namespaces/lab-elk/leases/kubevip-lab-elk-apm
[pod/kube-vip-ds-x29v6/kube-vip] time="2023-05-16T06:11:45Z" level=info msg="[services election] new leader elected: dc2-lab-host-005.dc2"
[pod/kube-vip-ds-x29v6/kube-vip] I0516 06:11:47.674697       1 request.go:690] Waited for 22.859711896s due to client-side throttling, not priority and fairness, request: GET:https://<IP_ADDRESS>:443/apis/coordination.k8s.io/v1/namespaces/lab-elk/leases/kubevip-lab-elk-kibana
[pod/kube-vip-ds-nrdpl/kube-vip] I0516 06:11:50.377989       1 request.go:690] Waited for 7.505596374s due to client-side throttling, not priority and fairness, request: GET:https://<IP_ADDRESS>:443/apis/coordination.k8s.io/v1/namespaces/ingress-nginx/leases/kubevip-ingress-nginx-controller-loadbalanced
[pod/kube-vip-ds-x29v6/kube-vip] time="2023-05-16T06:11:57Z" level=info msg="[services election] for service [ingress-nginx-controller-loadbalanced], namespace [ingress-nginx], lock name [kubevip-ingress-nginx-controller-loadbalanced], host id [dc2-lab-host-006.dc2]"
[pod/kube-vip-ds-x29v6/kube-vip] I0516 06:11:57.317618       1 leaderelection.go:248] attempting to acquire leader lease ingress-nginx/kubevip-ingress-nginx-controller-loadbalanced...
[pod/kube-vip-ds-x29v6/kube-vip] time="2023-05-16T06:11:57Z" level=info msg="[services election] for service [lab-elk-apm], namespace [lab-elk], lock name [kubevip-lab-elk-apm], host id [dc2-lab-host-006.dc2]"
[pod/kube-vip-ds-x29v6/kube-vip] I0516 06:11:57.318242       1 leaderelection.go:248] attempting to acquire leader lease lab-elk/kubevip-lab-elk-apm...
[pod/kube-vip-ds-x29v6/kube-vip] time="2023-05-16T06:11:57Z" level=info msg="[services election] for service [lab-elk-kibana], namespace [lab-elk], lock name [kubevip-lab-elk-kibana], host id [dc2-lab-host-006.dc2]"
[pod/kube-vip-ds-x29v6/kube-vip] I0516 06:11:57.321197       1 leaderelection.go:248] attempting to acquire leader lease lab-elk/kubevip-lab-elk-kibana...
[pod/kube-vip-ds-x29v6/kube-vip] time="2023-05-16T06:11:57Z" level=info msg="[services election] for service [lab-elk-elasticsearch], namespace [lab-elk], lock name [kubevip-lab-elk-elasticsearch], host id [dc2-lab-host-006.dc2]"
[pod/kube-vip-ds-x29v6/kube-vip] I0516 06:11:57.322933       1 leaderelection.go:248] attempting to acquire leader lease lab-elk/kubevip-lab-elk-elasticsearch...
[pod/kube-vip-ds-x29v6/kube-vip] I0516 06:11:57.873676       1 request.go:690] Waited for 23.388501298s due to client-side throttling, not priority and fairness, request: GET:https://<IP_ADDRESS>:443/apis/coordination.k8s.io/v1/namespaces/lab-elk/leases/kubevip-lab-elk-elasticsearch
[pod/kube-vip-ds-nrdpl/kube-vip] I0516 06:12:00.577119       1 request.go:690] Waited for 7.150527915s due to client-side throttling, not priority and fairness, request: GET:https://<IP_ADDRESS>:443/apis/coordination.k8s.io/v1/namespaces/lab-elk/leases/kubevip-lab-elk-kibana
[pod/kube-vip-ds-x29v6/kube-vip] I0516 06:12:08.074023       1 request.go:690] Waited for 23.244891357s due to client-side throttling, not priority and fairness, request: GET:https://<IP_ADDRESS>:443/apis/coordination.k8s.io/v1/namespaces/lab-elk/leases/kubevip-lab-elk-kibana
[pod/kube-vip-ds-nrdpl/kube-vip] I0516 06:12:10.578588       1 request.go:690] Waited for 7.182617834s due to client-side throttling, not priority and fairness, request: GET:https://<IP_ADDRESS>:443/apis/coordination.k8s.io/v1/namespaces/lab-elk/leases/kubevip-lab-elk-elasticsearch
[pod/kube-vip-ds-x29v6/kube-vip] I0516 06:12:18.273578       1 request.go:690] Waited for 22.925656765s due to client-side throttling, not priority and fairness, request: GET:https://<IP_ADDRESS>:443/apis/coordination.k8s.io/v1/namespaces/lab-elk/leases/kubevip-lab-elk-elasticsearch
[pod/kube-vip-ds-x29v6/kube-vip] time="2023-05-16T06:12:20Z" level=info msg="[services election] new leader elected: dc2-lab-host-005.dc2"
[pod/kube-vip-ds-nrdpl/kube-vip] I0516 06:12:20.777798       1 request.go:690] Waited for 7.064884231s due to client-side throttling, not priority and fairness, request: GET:https://<IP_ADDRESS>:443/apis/coordination.k8s.io/v1/namespaces/lab-elk/leases/kubevip-lab-elk-apm
[pod/kube-vip-ds-x29v6/kube-vip] time="2023-05-16T06:12:20Z" level=info msg="[services election] new leader elected: dc2-lab-host-005.dc2"
[pod/kube-vip-ds-x29v6/kube-vip] time="2023-05-16T06:12:21Z" level=info msg="[services election] new leader elected: dc2-lab-host-005.dc2"
[pod/kube-vip-ds-x29v6/kube-vip] time="2023-05-16T06:12:21Z" level=info msg="[services election] new leader elected: dc2-lab-host-005.dc2"
[pod/kube-vip-ds-x29v6/kube-vip] I0516 06:12:28.274211       1 request.go:690] Waited for 23.915226156s due to client-side throttling, not priority and fairness, request: GET:https://<IP_ADDRESS>:443/apis/coordination.k8s.io/v1/namespaces/lab-elk/leases/kubevip-lab-elk-kibana
[pod/kube-vip-ds-nrdpl/kube-vip] I0516 06:12:30.977508       1 request.go:690] Waited for 7.237587867s due to client-side throttling, not priority and fairness, request: GET:https://<IP_ADDRESS>:443/apis/coordination.k8s.io/v1/namespaces/ingress-nginx/leases/kubevip-ingress-nginx-controller-loadbalanced

I also observed that strange things happen with the VIPs if I only use the new kube-vip.io/loadbalancerIPs annotation and remove the spec.loadBalancerIP in the service. As soon as I apply the service-manifest the spec.loadBalancerIP is added and may be different to the kube-vip.io/loadbalancerIPs resulting in services using the same VIP. If I define both, the annotation and deprecated spec-value, it seems to work - but like mentioned, may end with VIPs assigned to multiple nodes with v0.6.0.
The Kubernetes cluster uses v1.25.7 and I use the cloud-provide image v0.0.5
Edit: merged changes for my kube-vip-watcher script.

Hi @BBQigniter, did you just set kube-vip.io/loadbalancerIPs, not the spec.loadbalancerIP? I just found out the bug that I wrote in 0.0.5. And made a PR for that.

Hi @lubronzhan , I first tried with the annotation only but as described had some issues until I also added spec.loadbalancerIP.

Thanks. I just cut a new release 0.0.7 should have the fix

@lubronzhan thank you. In combination with kube-vip v0.5.12 it works great now if I only use the annotation kube-vip.io/loadbalancerIPs
but with v0.6.0 i see the same problems as described in the first post.

a lot of due to client-side throttling messages
and VIPs shortly popping up and disappearing

Given the throttling, it looks like something is spawning multiple watchers on the same leases.

@thebsdbox Could be related to a change made in this commit: https://github.com/kube-vip/kube-vip/pull/560/commits/1474fcf36988fa8b25aaea6e056ebd47273d184d
The change seems weird as the activeService variable ends up being unused.

Fix incoming, along with a MASSIVE set of end to end testing so this won't happen again.

thank you very much - I will test as soon as possible :)

This is an old conversation, please feel free to re-open or create a new issue if needed.

just for info.
finally had some time to test with the latest available versions - this is fixed. also I fixed some small issue in kube-vip-watcher


VS Code Integrated Terminal does not recognize mapped keys in Linux

Type: Bug
In Linux, install some key mapping tool, e.g. keyd (https://github.com/rvaiya/keyd). Using the key mapping tool, configure upArrow to some key, e.g. capslock+i.
Test that the upArrow works in VS Code editor: using capslock+i you should be able to move the cursor one line up in the VS Code editor area.
Then open VS Code Integrated Terminal. Using mapped upArrow key (e.g. capslock+i) you should get the previous bash command. But nothing happens.

I tried, what happens in the VS Code editor area with "Developer: Toggle Keyboard Shortcuts Troubleshooting", when I use capslock+i (which should be arrowUp)
=>
2023-11-20 18:50:56.513 [info] [KeybindingService]: / Soft dispatching keyboard event
2023-11-20 18:50:56.541 [info] [KeybindingService]: \ Keyboard event cannot be dispatched
2023-11-20 18:50:56.541 [info] [KeybindingService]: / Received  keydown event - modifiers: [], code: AltRight, keyCode: 225, key: AltGraph
2023-11-20 18:50:56.541 [info] [KeybindingService]: | Converted keydown event - modifiers: [], code: AltRight, keyCode: 0 ('unknown')
2023-11-20 18:50:56.541 [info] [KeybindingService]: \ Keyboard event cannot be dispatched in keydown phase.
2023-11-20 18:50:56.679 [info] [KeybindingService]: / Soft dispatching keyboard event
2023-11-20 18:50:56.682 [info] [KeybindingService]: \ Keyboard event cannot be dispatched
2023-11-20 18:50:56.682 [info] [KeybindingService]: / Received  keydown event - modifiers: [ctrl], code: ControlLeft, keyCode: 17, key: Control
2023-11-20 18:50:56.683 [info] [KeybindingService]: | Converted keydown event - modifiers: [ctrl], code: ControlLeft, keyCode: 5 ('Ctrl')
2023-11-20 18:50:56.684 [info] [KeybindingService]: \ Keyboard event cannot be dispatched in keydown phase.
2023-11-20 18:50:56.685 [info] [KeybindingService]: + Ignoring single modifier ctrl due to it being pressed together with other keys.
2023-11-20 18:50:56.686 [info] [KeybindingService]: / Soft dispatching keyboard event
2023-11-20 18:50:56.687 [info] [KeybindingService]: | Resolving UpArrow
2023-11-20 18:50:56.687 [info] [KeybindingService]: \ From 22 keybinding entries, matched emacs.cursorUp, when: editorTextFocus && !suggestWidgetVisible, source: user extension lfs.vscode-emacs-friendly.
2023-11-20 18:50:56.688 [info] [KeybindingService]: / Received  keydown event - modifiers: [], code: ArrowUp, keyCode: 38, key: ArrowUp
2023-11-20 18:50:56.688 [info] [KeybindingService]: | Converted keydown event - modifiers: [], code: ArrowUp, keyCode: 16 ('UpArrow')
2023-11-20 18:50:56.689 [info] [KeybindingService]: | Resolving UpArrow
2023-11-20 18:50:56.689 [info] [KeybindingService]: \ From 22 keybinding entries, matched emacs.cursorUp, when: editorTextFocus && !suggestWidgetVisible, source: user extension lfs.vscode-emacs-friendly.
2023-11-20 18:50:56.689 [info] [KeybindingService]: + Invoking command emacs.cursorUp.
2023-11-20 18:50:56.828 [info] [KeybindingService]: / Soft dispatching keyboard event
2023-11-20 18:50:56.828 [info] [KeybindingService]: \ Keyboard event cannot be dispatched
2023-11-20 18:50:56.829 [info] [KeybindingService]: / Received  keydown event - modifiers: [], code: AltRight, keyCode: 225, key: AltGraph
2023-11-20 18:50:56.829 [info] [KeybindingService]: | Converted keydown event - modifiers: [], code: AltRight, keyCode: 0 ('unknown')
2023-11-20 18:50:56.829 [info] [KeybindingService]: \ Keyboard event cannot be dispatched in keydown phase.
2023-11-20 18:50:56.931 [info] [KeybindingService]: / Soft dispatching keyboard event
2023-11-20 18:50:56.931 [info] [KeybindingService]: \ Keyboard event cannot be dispatched
2023-11-20 18:50:56.932 [info] [KeybindingService]: / Received  keydown event - modifiers: [ctrl], code: ControlLeft, keyCode: 17, key: Control
2023-11-20 18:50:56.932 [info] [KeybindingService]: | Converted keydown event - modifiers: [ctrl], code: ControlLeft, keyCode: 5 ('Ctrl')
2023-11-20 18:50:56.932 [info] [KeybindingService]: \ Keyboard event cannot be dispatched in keydown phase.
2023-11-20 18:50:56.933 [info] [KeybindingService]: + Ignoring single modifier ctrl due to it being pressed together with other keys.

I am sorry to tag along with this Issue.
Within this week my VS-Code suddenly not responding with cmd+shift+k keybinding for delete line.
Upon inspection I found out the message "Ignoring single modifier ctrl due to it being pressed together with other keys".
What i want to know, what is that message about and where does the setup for that ?
Is it related to latest MacOS Upgrade ?
VS Code version: Code 1.84.2 (1a5daa3a0231a0fbba4f14db7ec463cf99d7768e, 2023-11-09T10:52:33.687Z)
OS version: MacOS Sonoma 14.1.1 (23B81)
[info] [KeybindingService]: / Received  keydown event - modifiers: [shift,meta], code: ShiftLeft, keyCode: 16, key: Shift
2023-11-23 15:09:13.254 [info] [KeybindingService]: | Converted keydown event - modifiers: [shift,meta], code: ShiftLeft, keyCode: 4 ('Shift')
2023-11-23 15:09:13.255 [info] [KeybindingService]: \ Keyboard event cannot be dispatched in keydown phase.
2023-11-23 15:09:15.144 [info] [KeybindingService]: + Ignoring single modifier shift due to it being pressed together with other keys.


Support for redisson 3.27+

Hi,
In my project, I must update to Redisson 3.22+ which fixes the critical vulnerability CVE-2023-42809". The issue is that my version of redistimeseries (1.0.5) is not compatible with it, I get the error:
 java.lang.IncompatibleClassChangeError: class io.github.dengliming.redismodule.redistimeseries.client.RedisTimeSeriesClient cannot inherit from final class org.redisson.Redisson

Even the last version 2.0.3 available on mvnrepository is incompatible. I saw though that the master branch probably contains the fix.
Is there a milestone to make it available on mvnrepository?

I plan to release 2.0.4 this weekend.

https://github.com/dengliming/redis-modules-java/releases/tag/2.0.4


GPU arm64 image request

arm64 docker image request
I couldn't find an arm64 gpu version of docker image. Is there any reason that the arm64 gpu docker image is not available? Or any people have already built the image somewhere?
AWS have arm64 gpu machine and cuda also have arm64 docker images.

We don't have aarch64 for GPU docker. The main challenge is we have to prepare native engines for PyTorch, TensorFlow,
Rust engines. We don't have contributor can work on them at the moment.


[WIP] update zenfs, with background zone allocation

Update ZenFS to the latest version, significantly reduce tail latency:

With async metadata rolling
With async zone allocation
Add background worker thread
Tuning AllocationZone even better

We have other PR includes these changes


handle different exception when webdav is on the same hostname

Coverage decreased (-0.06%) to 82.54% when pulling 9c50168276a2c3a190f4c38416803346a182c1d7 on webdav into 714a764894a2011f94a6bc9a0938ccbba3fe1ff5 on master.

Coverage decreased (-0.06%) to 82.54% when pulling 3b45c9d25cc71dd1a2b31fc8c5b7aa667966e010 on webdav into 714a764894a2011f94a6bc9a0938ccbba3fe1ff5 on master.


First save in a fresh Rails application fails

After creating a fresh Rails application saving a model will fail. After the connection object has been called the first time everything works as expected. This should be done by Guacamole itself.
>> u = User.new name: "Pinkie"; UsersCollection.save u
Ashikawa::Core::ResourceNotFound: Status 404: The Resource you requested was not found on the server
        from /Users/dbreuer/.rvm/gems/ruby-2.1.2/gems/ashikawa-core-0.13.1/lib/ashikawa-core/error_response.rb:100:in `resource_not_found'
        from /Users/dbreuer/.rvm/gems/ruby-2.1.2/gems/ashikawa-core-0.13.1/lib/ashikawa-core/error_response.rb:50:in `on_complete'
        from /Users/dbreuer/.rvm/gems/ruby-2.1.2/gems/faraday-0.9.0/lib/faraday/response.rb:9:in `block in call'
        from /Users/dbreuer/.rvm/gems/ruby-2.1.2/gems/faraday-0.9.0/lib/faraday/response.rb:57:in `on_complete'
        from /Users/dbreuer/.rvm/gems/ruby-2.1.2/gems/faraday-0.9.0/lib/faraday/response.rb:8:in `call'
        from /Users/dbreuer/.rvm/gems/ruby-2.1.2/gems/ashikawa-core-0.13.1/lib/ashikawa-core/x_arango_version.rb:20:in `call'
        from /Users/dbreuer/.rvm/gems/ruby-2.1.2/gems/faraday_middleware-0.9.1/lib/faraday_middleware/request/encode_json.rb:23:in `call'
        from /Users/dbreuer/.rvm/gems/ruby-2.1.2/gems/faraday-0.9.0/lib/faraday/rack_builder.rb:139:in `build_response'
        from /Users/dbreuer/.rvm/gems/ruby-2.1.2/gems/faraday-0.9.0/lib/faraday/connection.rb:377:in `run_request'
        from /Users/dbreuer/.rvm/gems/ruby-2.1.2/gems/faraday-0.9.0/lib/faraday/connection.rb:177:in `post'
        from /Users/dbreuer/.rvm/gems/ruby-2.1.2/gems/ashikawa-core-0.13.1/lib/ashikawa-core/connection.rb:103:in `public_send'
        from /Users/dbreuer/.rvm/gems/ruby-2.1.2/gems/ashikawa-core-0.13.1/lib/ashikawa-core/connection.rb:103:in `send_request'
        from /Users/dbreuer/.rvm/gems/ruby-2.1.2/gems/ashikawa-core-0.13.1/lib/ashikawa-core/transaction.rb:94:in `execute'
        from /Users/dbreuer/.rvm/gems/ruby-2.1.2/gems/guacamole-0.4.0/lib/guacamole/transaction.rb:159:in `execute_transaction'
        from /Users/dbreuer/.rvm/gems/ruby-2.1.2/gems/guacamole-0.4.0/lib/guacamole/transaction.rb:95:in `run'
        from /Users/dbreuer/.rvm/gems/ruby-2.1.2/gems/guacamole-0.4.0/lib/guacamole/collection.rb:325:in `with_transaction'
... 15 levels...
        from /Users/dbreuer/.rvm/gems/ruby-2.1.2/gems/railties-4.1.7/lib/rails/commands/console.rb:9:in `start'
        from /Users/dbreuer/.rvm/gems/ruby-2.1.2/gems/railties-4.1.7/lib/rails/commands/commands_tasks.rb:69:in `console'
        from /Users/dbreuer/.rvm/gems/ruby-2.1.2/gems/railties-4.1.7/lib/rails/commands/commands_tasks.rb:40:in `run_command!'
        from /Users/dbreuer/.rvm/gems/ruby-2.1.2/gems/railties-4.1.7/lib/rails/commands.rb:17:in `<top (required)>'
        from /Users/dbreuer/.rvm/gems/ruby-2.1.2/gems/activesupport-4.1.7/lib/active_support/dependencies.rb:247:in `require'
        from /Users/dbreuer/.rvm/gems/ruby-2.1.2/gems/activesupport-4.1.7/lib/active_support/dependencies.rb:247:in `block in require'
        from /Users/dbreuer/.rvm/gems/ruby-2.1.2/gems/activesupport-4.1.7/lib/active_support/dependencies.rb:232:in `load_dependency'
        from /Users/dbreuer/.rvm/gems/ruby-2.1.2/gems/activesupport-4.1.7/lib/active_support/dependencies.rb:247:in `require'
        from /Users/dbreuer/Documents/Work/GalaxyCats/projects/ArangoDB/playground/ml-test-prj/bin/rails:8:in `<top (required)>'
        from /Users/dbreuer/.rvm/gems/ruby-2.1.2/gems/activesupport-4.1.7/lib/active_support/dependencies.rb:241:in `load'
        from /Users/dbreuer/.rvm/gems/ruby-2.1.2/gems/activesupport-4.1.7/lib/active_support/dependencies.rb:241:in `block in load'
        from /Users/dbreuer/.rvm/gems/ruby-2.1.2/gems/activesupport-4.1.7/lib/active_support/dependencies.rb:232:in `load_dependency'
        from /Users/dbreuer/.rvm/gems/ruby-2.1.2/gems/activesupport-4.1.7/lib/active_support/dependencies.rb:241:in `load'
        from /Users/dbreuer/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
        from /Users/dbreuer/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
   UsersCollection
=> UsersCollection
>> UsersCollection.connection
=> #<Ashikawa::Core::VertexCollection id="866601375037" name="users" content_type=:document database=#<Ashikawa::Core::Database host="localhost" port=8529 scheme="http">>
>> u = User.new name: "Pinkie"; UsersCollection.save u
=> #<User:0x000001015db568 @name="Pinkie", @key="866602685757", @rev="866602685757", @created_at=2014-12-19 14:31:36 +0100, @updated_at=2014-12-19 14:31:36 +0100, @validation_context=nil, @errors=#<ActiveModel::Errors:0x000001015d8c78 @base=#<User:0x000001015db568 ...>, @messages={}>>

This has been fixed with #103 and specs have been added in #106.