random error

Describe the bug
Invalid service account specification.
To Reproduce
It's just a random error, when trying to update every 3mins the online count sometimes it works and randomly i get that error "Invalid service account specification."
// Code to reproduce the behavior

Expected behavior
Wanted it to go away :D
Screenshots
If applicable, add screenshots to help explain your problem.

Environment (please complete the following information):

OS: Win10
PHP 7.2.19
"kreait/firebase-php": "4.35"

Additional context
Add any other context about the problem here.

If it sometimes works and sometimes not, it‘s hard to assume what might be wrong, but it‘s most probably an environment issue, meaning, on the machine(s) that your application is running on.
Also, if on Windows, it could be an issue with directory separators. If you‘re specifying a path to the service account file, try replacing forward slashes with the DIRECTORY_SEPARATOR constant.

after doing it manually and not using the .env it is now working and no random errors at all.


Changes to support proper live link with version when no version is present

Changes for this feature have been completed. When the user navigates to a record page, regardless of it being versioned or not, the share dialog will have both a live link and a versioned link. The headings for these links have been changed too.
Other smaller features include:

If you load the record page to a live page then open the share dialog, a check is made to see if you are actually looking at the live content

a notification will be shown if you are viewing out of date content

Functions moved to a utility factory for re-ruse
other changes made in corresponding ermrestJS PR

@RFSH the suggested changes have been made. I went with the optional parameter approach because in one case, the version is being placed in the middle of the url string. In the case that the user is viewing a live catalog, the catalog number is replaced with the <catalogId> + @<version>.
I changed the alert to be contained to the share dialog. It makes more sense based on what you said, mostly this line:

The alert description matches the modal and not the main record display


Add 'duythanhvn' profile

What type of PR is this? (check all applicable)

[x] 🚀 Added Name
[ ] ✨ Feature
[ ] ✅ Joined Community
[ ] 🌟 ed the repo
[ ] 🐛 Grammatical Error
[ ] 📝 Documentation Update
[ ] 🚩 Other

Description
cc @abhisheknaiidu
Add Link of GitHub Profile
https://github.com/duythanhvn

Hello @abhisheknaiidu,
Can you merge this PR for me?

Hi @abhisheknaiidu,
This PR has been too long. Can you do a review and merge it into the repository for me?


do you have any plans to improve this app

I like the fliplo on mac.
fliplo can work on the lock screen, and it look so cool.
do you have any plans to implement this features

Thank you for your feedback. Currently, I am using the project as it is, but I do have plans to improve it in the future. If any specific needs arise, I will certainly address them. However, I do not have any plans to add a lock screen feature, as there are many existing solutions available.

could you share some solutions?

I currently don't use any screensavers. I'm not entirely sure if creating a screensaver with Tauri would be straightforward. However, have you considered using Fliplo? It might be a good alternative.


Thread running at QOS_CLASS_USER_INTERACTIVE waiting on a lower QoS thread running at QOS_CLASS_BACKGROUND. Investigate ways to avoid priority inversions

Checklist

[x] I have read and understood the CONTRIBUTING guide
[x] I have read the Documentation
[x] I have searched for a similar issue in the project and found none

Describe the bug
A clear and concise description of what the bug is.
To Reproduce
Steps to reproduce the behavior:

Create logger '...'
Log message '...'
See error

Expected behavior
A clear and concise description of what you expected to happen.
Screenshots
If applicable, add screenshots to help explain your problem.
Environment info

Info
Value

Platform Name
e.g. ios / macos / tvos / watchos

Platform Version
e.g. 13.0

CocoaLumberjack Version
e.g. 3.7.4

Integration Method
e.g. spm / carthage / cocoapods / manually

Xcode Version
e.g. Xcode 13.4

Repro rate
e.g. all the time (100%) / sometimes x% / only once

Repro project link
e.g. link to a reproduction project that highlights the issue

Additional context
Add any other context about the problem here.
Are you reporting a queue deadlock? If so, please include a complete backtrace of all threads, which you can generate by typing bt all in the debugger after you hit the deadlock. We might not be able to fix deadlock reports without a backtrace!

@neeliakash2696 Can you please fill out the form? How does it affect CocoaLumberjack? What are you trying to do? What exactly is the problem? How does it show?


Offset function attributes

When a function is used as offset parameter, it would be useful to know the clicked element (and potentially target element as well) inside this function. I want to dynamically change the offset based on clicked (actually target would be more appropriate) element and window width. Now the only way would be another instance of smooth scroll, but since there is only single link with that properties, it seems a bit overkill.

Interesting... can you tell me a bit more about this use case? What information do you get from the clicked element (and target) that influence the offset?
Happy to entertain this, but I make every extra bit of code fight for its right to exist.

I guess it would be best with example: https://codepen.io/zipper/pen/LQywLy/
I have a layout similar to this one. There are some areas I want to be able to target. Some of them might have an image inside them and the image might (but not necessarily have to) overflow. When I scroll to that particular area, I want to offset the scroll so the image is fully visible when targeted. To make things harder, the navbar is sticky. And finally, the image negative offset changes through responsive.
If I can access the target element (or clicked, or both), I could handle all of this with just one instance of smooth scroll (using custom made offset function). Now I need to make new instance for every box. Or maybe am I missing something? I'm open for suggestion how to achieve this behaviour easier way. As I said multiple instances seems not ideal in this case. The now deprecated data attributes would be better, but they wouldn't help with responsive, since the offset changes.
One solution I was thinking about is wrapping the gray area and image into another div and target that. But since the areas actually may overlay each other, I don't think I could do that.
Thank you for help, appreciated.

Ah, I see now! Because the images are pulled out of the content section, but only certain sections, the offset will vary.
Makes total sense. I can support this. Give me a little while to get it added, but happy to do so!

Thank you very much, will be looking forward for updated version :)

The latest release (v14.1.0) passes the anchor and toggle elements into the offset() function, allowing you to customize the returned value based on what element was clicked or where you'll be scrolling to.
This should give you the info you need to handle use cases like the one referenced above.


Error message when deploying app with duplicate name refers to "AppInstance.internal.acorn.io"

acorn version - v0.8.0-rc4-29-g6a019fe7+6a019fe7
Steps to reproduce the problem:

Deploy app with name - "test1"
Deploy another app with the same name  "test1"

Error message  refers to "AppInstance.internal.acorn.io":
acorn run -n test1 sangeetha/myfirstacorn:v0.0.1
  ✗  ERROR:  AppInstance.internal.acorn.io "test1" already exists

Expected  Behavior:
Error should refer to  apps.api.acorn.io instead.

looks like its fixed

@sandeep540 In this case we expect error message to referrance apps.api.acorn.io instead of AppInstance.internal.acorn.io


Chore(dev-deps): update babylonjs/inspector to v5.28.0

Self explanatory!
Changelog: https://github.com/BabylonJS/Babylon.js/releases

Codecov Report

Merging #578 (70fae5a) into main (ebb2e3f) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main     #578   +/-   ##
=======================================
  Coverage   96.73%   96.73%
=======================================
  Files          74       74
  Lines         950      950
  Branches      146      146
=======================================
  Hits          919      919
  Misses         29       29
  Partials        2        2

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Implement exponential functions

Exponential functions:

[X] exp
[X] exp2
[X] exp10
[x] expm1

Implemented in #26 and #33.


Segmentation fault (core dumped) when using {0} on a format

General description of bug:
when using {0} on a format fastfetch will fail with segmentation fault
Often helpful questions:

Does the issue occur across multiple shells? Yes

Output of fastfetch --version:
fastfetch 1.7.5

Output of fastfetch --load-config devinfo:

Output of fastfetch --list-features:
libpci
vulkan
wayland
xcb-randr
xcb
xrandr
x11
gio
dconf
dbus
imagemagick7
chafa
zlib
xfconf
egl
glx
osmesa
opencl

Fixed. Thanks for reporting.


whole backpack problem

Implement whole backpack problem with PD paradigm

Hello Vic
I hope you are doing great. I may be having some issues running the code on my computer. Maybe i am not running it right


[Nox.Generators] [Odata] Automate Client API Test for Filtering an Owned entity

depends on #609

CountryLocalNames can be used for that
Odata can be simulated through overriding OnResponse and include owned entity

waits for @AndreyDegtyarev to finish his current task, since it will heavily impact this test implementation


Change bind to compound?

For push-forwards, we have
pushfwd(f, m)

If the f of a pushforward is noisy, it becomes a kernel, and the pushforward becomes a compound measure:
https://en.wikipedia.org/wiki/Compound_probability_distribution
This is currently called bind, because it matches the monadic bind operation from functional programming. But bind is unfamiliar to most users.
Maybe this should instead be
compound(k, m)

where k is a kernel. For functions, we'd have
compound(f::Function, m::AbstractMeasure) = compound(kernel(f), m)

For more discussion, see https://github.com/cscherrer/MeasureTheory.jl/pull/226

I am torn, compound is more familiar to people, but somehow it obscures the compositional nature even more and I wouldn't know how to name the other compositions which are (kf)(x) = ∫ f(y) k(x, dy) and (k₁k₂)(x) = ∫∫ k₁(x,dy) k₂(y, dz)

Based on the Twitter discussion here we could also consider making kernels callable not just on values, but also on measures. Then composition of kernels would just be $\circ$, as usual.


Fix smoketest

Release note:

@yutongz: Adding do-not-merge/release-note-label-needed because the release note process has not been followed.

One of the following labels is required "release-note", "release-note-action-required", or "release-note-none".
Please see: https://github.com/kubernetes/community/blob/master/contributors/devel/pull-requests.md#write-release-notes-if-needed.
Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

@yutongz: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/mixer-e2e-smoketest.sh
2ff11a93168f9abb5666b1f34d785f1693fbde69
link
/test mixer-e2e-smoketest

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.


fix the problem of NoClassDefFoundError of HiveOutputFormat when impo…

for jira SQOOP-2489 @abec

Hey man, this looks good to me. Can you attach a patch to the Jira? The Sqoop project still hasn't setup proper pull request handling yet.

@abec  I've added a patch in jira.


GitHub Actions Tests Status (on master branch)

See CI.md for more information about GitHub Actions CI.

Run Java PreCommit

Run Java PreCommit

Run Java PreCommit

Run Java PreCommit

Run Java PreCommit

Run Java PreCommit

the test failure seems unrelated, but I'd think it may be best if you rebase your change to get a clean run?

merged in master

All green.


Required fields sometimes skipped/empty

In some of the submissions, we sometimes have fields that are empty even though they are required.
Should look into form submission validation to fix this

This has been finished.


deterministic test_transpile_target_with_qubits_without_delays_with_scheduling_8

Summary
It seems like test.python.compiler.test_transpiler.TestTranspileMultiChipTarget.test_transpile_target_with_qubits_without_delays_with_scheduling_8 is failing some times. Finding the issue is a task for another day :/
This PR just fix the test
For example: https://dev.azure.com/qiskit-ci/qiskit/_build/results?buildId=54567&view=logs&jobId=9fdc5efe-36bf-5711-5d37-3eac58d1aa55&j=9fdc5efe-36bf-5711-5d37-3eac58d1aa55&t=6f57c701-f471-5194-ae31-9cb1188fbecc

2024-02-13T13:38:04.4129421Z ==============================
2024-02-13T13:38:04.4129911Z Failed 1 tests - output below:
2024-02-13T13:38:04.4130127Z ==============================
2024-02-13T13:38:04.4130242Z
2024-02-13T13:38:04.4130501Z test.python.compiler.test_transpiler.TestTranspileMultiChipTarget.test_transpile_target_with_qubits_without_delays_with_scheduling_8
2024-02-13T13:38:04.4131034Z ------------------------------------------------------------------------------------------------------------------------------------
2024-02-13T13:38:04.4131227Z
2024-02-13T13:38:04.4131386Z Captured traceback:
2024-02-13T13:38:04.4131569Z ~~~~~~~~~~~~~~~~~~~
2024-02-13T13:38:04.4131973Z     Traceback (most recent call last):
2024-02-13T13:38:04.4132092Z
2024-02-13T13:38:04.4132297Z       File "D:\a\1\s\qiskit\transpiler\passmanager.py", line 580, in wrapper
2024-02-13T13:38:04.4132509Z     return meth(*meth_args, **meth_kwargs)
2024-02-13T13:38:04.4132737Z
2024-02-13T13:38:04.4132941Z       File "D:\a\1\s\qiskit\transpiler\passmanager.py", line 308, in run
2024-02-13T13:38:04.4133136Z     return super().run(
2024-02-13T13:38:04.4133263Z
2024-02-13T13:38:04.4133450Z       File "D:\a\1\s\qiskit\passmanager\passmanager.py", line 222, in run
2024-02-13T13:38:04.4133662Z     out_program = _run_workflow(
2024-02-13T13:38:04.4133777Z
2024-02-13T13:38:04.4133967Z       File "D:\a\1\s\qiskit\passmanager\passmanager.py", line 284, in _run_workflow
2024-02-13T13:38:04.4134199Z     passmanager_ir, _ = flow_controller.execute(
2024-02-13T13:38:04.4134321Z
2024-02-13T13:38:04.4134516Z       File "D:\a\1\s\qiskit\passmanager\base_tasks.py", line 218, in execute
2024-02-13T13:38:04.4134733Z     passmanager_ir, state = next_task.execute(
2024-02-13T13:38:04.4134852Z
2024-02-13T13:38:04.4135051Z       File "D:\a\1\s\qiskit\passmanager\base_tasks.py", line 218, in execute
2024-02-13T13:38:04.4135263Z     passmanager_ir, state = next_task.execute(
2024-02-13T13:38:04.4135397Z
2024-02-13T13:38:04.4135581Z       File "D:\a\1\s\qiskit\passmanager\base_tasks.py", line 218, in execute
2024-02-13T13:38:04.4135797Z     passmanager_ir, state = next_task.execute(
2024-02-13T13:38:04.4135918Z
2024-02-13T13:38:04.4136084Z       [Previous line repeated 1 more time]
2024-02-13T13:38:04.4136209Z
2024-02-13T13:38:04.4136391Z       File "D:\a\1\s\qiskit\transpiler\basepasses.py", line 195, in execute
2024-02-13T13:38:04.4136608Z     new_dag, state = super().execute(
2024-02-13T13:38:04.4136723Z
2024-02-13T13:38:04.4136907Z       File "D:\a\1\s\qiskit\passmanager\base_tasks.py", line 98, in execute
2024-02-13T13:38:04.4137120Z     ret = self.run(passmanager_ir)
2024-02-13T13:38:04.4137238Z
2024-02-13T13:38:04.4137442Z       File "D:\a\1\s\qiskit\transpiler\passes\basis\basis_translator.py", line 198, in run
2024-02-13T13:38:04.4137648Z     raise TranspilerError(
2024-02-13T13:38:04.4137757Z
2024-02-13T13:38:04.4138634Z     qiskit.transpiler.exceptions.TranspilerError: "Unable to translate the operations in the circuit: ['h', 'u'] to the backend's (or manually specified) target basis: ['x', 'snapshot', 'barrier', 'h', 'cx', 'delay']. This likely means the target basis is not universal or there are additional equivalence rules needed in the EquivalenceLibrary being used. For more details on this error see: https://docs.quantum-computing.ibm.com/api/qiskit/qiskit.transpiler.passes.BasisTranslator#translation-errors"
2024-02-13T13:38:04.4139067Z
2024-02-13T13:38:04.4139208Z
2024-02-13T13:38:04.4139397Z The above exception was the direct cause of the following exception:
2024-02-13T13:38:04.4139544Z
2024-02-13T13:38:04.4139636Z
2024-02-13T13:38:04.4139797Z     Traceback (most recent call last):
2024-02-13T13:38:04.4139927Z
2024-02-13T13:38:04.4140273Z       File "D:\a\1\s\test-job\lib\site-packages\ddt.py", line 221, in wrapper
2024-02-13T13:38:04.4140492Z     return func(self, *args, **kwargs)
2024-02-13T13:38:04.4140612Z
2024-02-13T13:38:04.4140853Z       File "D:\a\1\s\test\python\compiler\test_transpiler.py", line 3380, in test_transpile_target_with_qubits_without_delays_with_scheduling
2024-02-13T13:38:04.4141098Z     tqc = transpile(
2024-02-13T13:38:04.4141205Z
2024-02-13T13:38:04.4141398Z       File "D:\a\1\s\qiskit\compiler\transpiler.py", line 428, in transpile
2024-02-13T13:38:04.4141612Z     out_circuits = pm.run(circuits, callback=callback)
2024-02-13T13:38:04.4141750Z
2024-02-13T13:38:04.4141933Z       File "D:\a\1\s\qiskit\transpiler\passmanager.py", line 561, in run
2024-02-13T13:38:04.4142155Z     return super().run(circuits, output_name, callback)
2024-02-13T13:38:04.4142282Z
2024-02-13T13:38:04.4142465Z       File "D:\a\1\s\qiskit\transpiler\passmanager.py", line 582, in wrapper
2024-02-13T13:38:04.4142750Z     raise TranspilerError(ex.message) from ex
2024-02-13T13:38:04.4142872Z
2024-02-13T13:38:04.4143609Z     qiskit.transpiler.exceptions.TranspilerError: "Unable to translate the operations in the circuit: ['h', 'u'] to the backend's (or manually specified) target basis: ['x', 'snapshot', 'barrier', 'h', 'cx', 'delay']. This likely means the target basis is not universal or there are additional equivalence rules needed in the EquivalenceLibrary being used. For more details on this error see: https://docs.quantum-computing.ibm.com/api/qiskit/qiskit.transpiler.passes.BasisTranslator#translation-errors"

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

0 of 0   changed or added relevant lines in 0 files are covered.
2 unchanged lines in 1 file lost coverage.
Overall coverage increased (+0.03%) to 89.211%

Files with Coverage Reduction
New Missed Lines
%

crates/qasm2/src/lex.rs
2
92.19%

Totals

Change from base Build<PHONE_NUMBER>:
0.03%

Covered Lines:
58829

Relevant Lines:
65944

💛  - Coveralls


Warn when can't open in app mode

Developing in a normal browser window is a significantly worse UX than developing in a browser app window. I think some kind of warning when they don't get an app window is justified.
It could be an extra INFO log before we open the browser. That shouldn't be too annoying.

I think this should be a general code-server warning instead then.

See cdr/code-server#1599


latest tag first

I'd personally expect the list to be sorted by name, but I don't really have a strong opinion here.
@flavio what do you think ?

I can see why the "latest" tag should be placed on top of the page.
However I would propose something like that:

latest tag is shown on top
remaining tags are sorted by name

What do you think?

@flavio: I was confused by that too, but the proposal is put the newest tags on top, not that the special label "latest" should be put on top :)
I agree with your proposal. Makes sense. @farmerworking what do you think ?

What I said may be a little confusing.
latest means the most recently created tag, not the latest tag itself.
The most recently created tag is most likely to be used so that I would like to see it on top otherwise once a repository has too many tags, the tag I would like to use will be very low in the page or in the last page if pagination is used

Thinking about it, I think that this is a good default. Note that the latest tag is usually the latest pushed :) Therefore, this should give the "right" result most of the times. Moreover, I'd also add the possibility to order by any column on the frontend side. This shouldn't be too hard, and it would already fix any other situations.
@flavio what do you think ?

Yeah, I'm fine with it now. LGTM


Question: will this work with Google Coral USB accelerator?

I see references to the Jetson Nano, but I would like to know if this would use the TPU processor on a normal PC (Intel NUC) with a Google Coral USB accelerator. If that's the case, it would be nice to add a reference to this in the README. Thanks!

Yeah, that should work, feel free to make a pull request from an edit to the read me @juanjux

I'll get one soon and do a PR update the README with the required instructions / configuration. Thanks!

Hello, any updates on using Google Coral USB accelerator with face_recognition? Your project is awesome and I was wondering how to setup up it to use with usb accelerator.

Hello, any updates on using Google Coral USB accelerator with face_recognition? Your project is awesome and I was wondering how to setup up it to use with usb accelerator.

+1

Hello, any updates on using Google Coral USB accelerator with face_recognition? Your project is awesome and I was wondering how to setup up it to use with usb accelerator.

+1


Question about expert implement.

Thanks for your sharing, it's very intelligible.
I have q question about experts implement. In paper, expert are implemented by multi layers(MLP), but I just see only one layer here. Do I have misconceptions about this?
Looking forward to your reply, thank you!

I saw the same question in https://github.com/drawbridge/keras-mmoe/issues/3, thank you.


Not working for cocoapods project.

I am going to use Fastlane for my React Native project.
Everything was working perfectly. But after I update the project to cocoapods project, it's not working.
Here is my log.
Found no similar issues. To create a new issue, please visit:
https://github.com/fastlane/fastlane/issues/new
Run fastlane env to append the fastlane environment to your issue
/Users/admin/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/xcodeproj-1.5.3/lib/xcodeproj/plist.rb:17:in read_from_path': [!] [!] The plist file at path /Volumes/Work/ReactNative/RNApp/ios/RNApp.xcworkspace/project.pbxproj` doesn't exist. (Xcodeproj::Informative)
from /Users/admin/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/xcodeproj-1.5.3/lib/xcodeproj/project.rb:200:in `initialize_from_file'
from /Users/admin/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/xcodeproj-1.5.3/lib/xcodeproj/project.rb:102:in `open'
from /Users/admin/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.70.3/fastlane/lib/fastlane/actions/automatic_code_signing.rb:10:in `run'
from /Users/admin/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.70.3/fastlane/lib/fastlane/runner.rb:253:in `block (2 levels) in execute_action'
from /Users/admin/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.70.3/fastlane/lib/fastlane/actions/actions_helper.rb:50:in `execute_action'
from /Users/admin/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.70.3/fastlane/lib/fastlane/runner.rb:231:in `block in execute_action'
from /Users/admin/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.70.3/fastlane/lib/fastlane/runner.rb:227:in `chdir'
from /Users/admin/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.70.3/fastlane/lib/fastlane/runner.rb:227:in `execute_action'
from /Users/admin/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.70.3/fastlane/lib/fastlane/runner.rb:148:in `trigger_action_by_name'
from /Users/admin/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.70.3/fastlane/lib/fastlane/fast_file.rb:148:in `method_missing'
from Fastfile:11:in `block (2 levels) in parsing_binding'
from /Users/admin/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.70.3/fastlane/lib/fastlane/runner.rb:287:in `call'
from /Users/admin/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.70.3/fastlane/lib/fastlane/runner.rb:287:in `execute_flow_block'
from /Users/admin/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.70.3/fastlane/lib/fastlane/runner.rb:46:in `block in execute'
from /Users/admin/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.70.3/fastlane/lib/fastlane/runner.rb:45:in `chdir'
from /Users/admin/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.70.3/fastlane/lib/fastlane/runner.rb:45:in `execute'
from /Users/admin/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.70.3/fastlane/lib/fastlane/lane_manager.rb:56:in `cruise_lane'
from /Users/admin/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.70.3/fastlane/lib/fastlane/command_line_handler.rb:34:in `handle'
from /Users/admin/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.70.3/fastlane/lib/fastlane/commands_generator.rb:104:in `block (2 levels) in run'
from /Users/admin/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/commander-fastlane-4.4.5/lib/commander/command.rb:178:in `call'
from /Users/admin/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/commander-fastlane-4.4.5/lib/commander/command.rb:178:in `call'
from /Users/admin/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/commander-fastlane-4.4.5/lib/commander/command.rb:153:in `run'
from /Users/admin/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/commander-fastlane-4.4.5/lib/commander/runner.rb:476:in `run_active_command'
from /Users/admin/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.70.3/fastlane_core/lib/fastlane_core/ui/fastlane_runner.rb:66:in `run!'
from /Users/admin/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/commander-fastlane-4.4.5/lib/commander/delegates.rb:15:in `run!'
from /Users/admin/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.70.3/fastlane/lib/fastlane/commands_generator.rb:343:in `run'
from /Users/admin/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.70.3/fastlane/lib/fastlane/commands_generator.rb:42:in `start'
from /Users/admin/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.70.3/fastlane/lib/fastlane/cli_tools_distributor.rb:75:in `take_off'
from /Users/admin/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.70.3/bin/fastlane:20:in `<top (required)>'
from /Users/admin/.fastlane/bin/bundle/bin/fastlane:22:in `load'
from /Users/admin/.fastlane/bin/bundle/bin/fastlane:22:in `<main>'

I'd appreciate any help!

You seem to have forgotten to share your fastlane env output, in particular the Fastfile. It seems like you're using the automatic_code_signing action, and passed no path, or an invalid path.


[Bug]: When I use the python -m vllm.entrypoints.openai.api_server command, cannot use multiple gpus

Your current environment

The output of `python collect_env.py`
PyTorch version: 2.4.0+cu121
Is debug build: False
CUDA used to build PyTorch: 12.1
ROCM used to build PyTorch: N/A

OS: Ubuntu 20.04.6 LTS (x86_64)
GCC version: (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0
Clang version: Could not collect
CMake version: version 3.30.2
Libc version: glibc-2.35

Python version: 3.10.14 (main, May  6 2024, 19:42:50) [GCC 11.2.0] (64-bit runtime)
Python platform: Linux-5.4.0-186-generic-x86_64-with-glibc2.35
Is CUDA available: True
CUDA runtime version: 12.2.91
CUDA_MODULE_LOADING set to: LAZY
GPU models and configuration:
GPU 0: NVIDIA A100-PCIE-40GB
GPU 1: NVIDIA A100-PCIE-40GB
GPU 2: NVIDIA A100-PCIE-40GB
GPU 3: NVIDIA A100-PCIE-40GB

Nvidia driver version: 535.54.03
cuDNN version: Could not collect
HIP runtime version: N/A
MIOpen runtime version: N/A
Is XNNPACK available: True

🐛 Describe the bug
I have 4 A100s on my machine and I want to deploy the llama3.1-70B with them. I used the following command:
CUDA_VISIBLE_DEVICES=0,1,2,3 python -m vllm.entrypoints.openai.api_server  --model /ldata/llms/Meta-Llama-3.1-70B-Instruct  --device auto --dtype auto --api-key CPMAPI
But there is no multi-card execution, It reported an error: torch.OutOfMemoryError: CUDA out of memory.  what should I do？

Try setting the --tensor-parallel-size argument to the desired number of GPUs to use.


Changed roleID from int to byte[]

Changed data ID with backend of roleID with backend team in seminar about Git/GitHub

Looks good


Update text and link for IDE support in vs. JSX chart

Quick update for consideration based on @Princesseuh 's suggestion to have our IDE support link go to our new editor page (instead of to the VS code extension on the marketplace).

LGTM!


Problem in the prediction result

In the prediction process, you use all the pedestrains in the scene to predict their future. Therefore, you may use the same or neighbor pedestrain's future trajectories for the prediction. I think it will invalidate your result. Is it correct?

Besides, the mask use groud truth information.

Hi,
The masks are made to pool neighboring agents together. The masks do use ground-truth observation data (from the past trajectory history) but do not use any future information that can result in ground-truth leakage.


locationSearchOptions don't respect the name defined in the config when reordered

Currently the location search options are defined like below.
"locationSearchOptions": {
"enableMyLocation": true,
"enableSearch": true,
"enableLatLng": true,
"enableUSNG": false,
"enableMGRS": false,
"enableUTM": false
},
If instead the config is defined as below, with the same boolean state but in a different order you get unexpected results in the form. It seems to be honoring the order of the properties not the name. In the example below what you see in the form is that MGRS and UTM are enabled but Search and LatLng are disabled.
"locationSearchOptions": {
"enableMyLocation": true,
"enableUSNG": false,
"enableMGRS": false,
"enableUTM": false
"enableSearch": true,
"enableLatLng": true,
},

thanks @chris-fox !

@driskull, thanks looks good! Only noticed this while i was working on a python script to create new items items and the search options were written in a different order.


jdm-editor: theme.token fix

should fix #50 but I have not tested it
tested it locally and now my colors passed on the token work :D

is it possible to customize these decision table colors?

Hi @CoreyCole, thank you for the pull request.
Yes, it's possible to do so by targeting css variables:
--table-input-color: #5e6476;
--table-output-color: #63546c;

They are declared in .grl-dt class.


Update README.md

it saves files every 100

It writes stats for tensorboard every 100 iterations, but only dumps the audio and alignment every 1000, so I think the original comment is correct.


Add repo-type to zappr.yaml

repository-type is code, reflect that in zappr.yaml

👍

Codecov Report

Merging #124 into master will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master     #124   +/-   ##
=========================================
  Coverage     72.55%   72.55%
  Complexity      245      245
=========================================
  Files            48       48
  Lines           849      849
  Branches         40       40
=========================================
  Hits            616      616
  Misses          209      209
  Partials         24       24

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 88d69df...1b0b9c3. Read the comment docs.

This change is obsolete.


Django 4.0 release has tripped up your demo project (url->path)

Installing your demo project gives me...
ImportError: cannot import name 'url' from 'django.conf.urls'
when I...
python manage.py migrate...
Reason for the error is that url is no longer defined in this way, since 4.0.
As a quick fix, I pinned Django in the requirements.txt under test_project, by adding
Django==3.2.7
The alternative to url, path, has been available since Django 2.0, so it must be safe to switch to using path, so that both 3.x and 4.x will run properly

Thank you for your report, this should be fixed in 3.9.1 release, please reopen otherwise :tophat:


keptn trigger sequence does not accept metadata

Your issue may already be reported! Please search on the issue tracker before creating a new one.
Environment

Keptn Version (keptn version): all

Affected Component

[ ] Approval
[ ] Bridge
[x] CLI
[ ] Datastore
[ ] Docs
[ ] Distributor / Event Broker
[ ] Helm
[ ] Istio
[ ] Jmeter
[ ] Kubernetes Integration
[ ] Openshift Integration
[ ] REST API
[ ] Webhook

Describe the bug
The keptn trigger sequence command does not accept metadata so image, version or any custom metadata cannot be added.

The initial issue was raised more around metadata like adding items into the data block for any sequence (not only evaluation and delivery and not solely labels).
As a concrete example, imagine I have a sequence called doRelease with two tasks: test and evaluation. Now I need to craft and send data.test.strategy == "direct" and data.evaluation.timeframe=5m. I now cannot use the CLI.

This is morphing into a feature request @agardnerIT :)
I will change the labels of the issue to reflect it

I can’t see any drawback with @warber’s approach. In fact it’s an enhancement on my thought which was just the first option :)


Add visitors for unsigned integer types

Adds support for unsigned integer types (ushort, uint, and ulong). Currently if an API exposes a model with an unsigned type, it is not included in the model definition in the OpenAPI spec, despite being returned by the API.
Unsigned types do not provide a format definition beyond stating they are integers, as the OpenAPI spec only supports int32 and int64 for formats, both of which explicitly specify that they are signed integers.
Example swagger UI doc generated on a function return model containing both uint and int values:

Oh, we need to support unsigned integer values, too! As you mentioned, the spec doesn't specify unsigned integers. Therefore, I haven't implemented them.

It would be helpful to support them so they at least show up in the model specification. By not specifying a format and designating it as an integer a consuming client has an idea what to expect. This doesn’t break the OpenAPI contract from what I can tell since only int32 and int64 formats are explicitly signed. The specs also note that any string value can be used in the format specifier, but not all clients might support it. Going with that logic you could also use “uint32” etc as the format

@ssa3512 Thanks for your contribution! I really appreciate it. 👍👍👍👍👍

@ssa3512 It's been released to NuGet. Please have a look and let us know.


auth users before reads and writes

Summary
Test Plan

Please consider the impact of your changes on the other developers.

#21  👈
main

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

Join @Silver-Sword and the rest of your teammates on  Graphite


doc clarification: confusing match behavior for non-existent ASCII character classes

Crate version: 1.11.0
Example code: https://play.rust-lang.org/?version=stable&mode=debug&edition=2021&gist=c4b4cfe18c2e6413444e53315de33b27 (used for snippets below and extra checks)
The behavior of the crate when trying to use the ASCII character class syntax [[:foo:]] with invalid character classes is somewhat confusing. A friend was trying to use [[:XID_Start:]] to check whether _ (underscore/low line) was included in the XID_Start character class (it's not), and was confused when it returned true.
let expr = regex::Regex::new(r"[[:XID_Start:]]").unwrap();
dbg!(expr.is_match("_")); // true

The correct syntax, \p{XID_Start}, does work correctly:
let correct = regex::Regex::new(r"\p{XID_Start}").unwrap();
dbg!(correct.is_match("a")); // true
dbg!(correct.is_match("1")); // false
dbg!(correct.is_match("_")); // false

It seems that when the class is invalid for an ASCII character class (regex § ASCII character classes), it falls back to marking any character present within the brackets as true:
dbg!(expr.is_match(":")); // true
dbg!(expr.is_match("X")); // true
dbg!(expr.is_match("x")); // false
dbg!(expr.is_match("a")); // true
dbg!(expr.is_match("b")); // false
dbg!(expr.is_match("[")); // false
dbg!(expr.is_match("]")); // false

I'm not entirely sure what regex is actually interpreting this sequence as, but, assuming this is intentional behavior, I think that it might be something that is worth documenting in the aforementioned section on ASCII character classes in the docs, as the behavior is not immediately intuitive.

Yes the behavior is unfortunate but intentional for compatibility with how other regex engines work. In retrospect, I would have rathered being a bit more strict here to produce errors for unrecognized classes.
I agree that adding a note to the docs about this would be a good idea.


Hardcoded table names.

Symfony let users customize their ACL table names. These are available via container's parameters.
However, table names are hardcoded in this bundle (here for example).
It should be better to use the previously mentionned parameters instead of hardcoded table names.

Good catch! Do you think you can open a PR?

Yup! I will do it :)


Using ~ for home in e.g. -i=~/... parameter does not work.

FastqIndEx will complain that it won't get a lockfile and abort.

Fixed.


Issues when scrolling down with mouse

Hi, I have an odd issue. When I use the button it works perfectly, but some people may still try to use the scroll down with the mouse, so I try it and when I do it with the mouse it takes me to the top again.
I've seen in the address bar I have https://localhost:3000 and when I'm scrolling down I have https://localhost:300/#section04 but the hashtag disappear automatically and therefore the page scrolls up automatically.
What can I do?

I have this exact issue too, I didn't notice the URL changing briefly on scroll until you mentioned it but that happens to me too.
I am using Gatsby 2.3.25 with react 16.8.6.
I don't think this is being actively maintained anymore so I will probably give up on it. I will try this as an alternative: https://github.com/some-react-components/react-scrollchor

Hey man. Thanks for the suggestion, I will take a look.

For anyone else wondering, that package seems to work well. Includes all the functionality (e.g. adding offset, animation timing) of this one, as well as more (pre/post scroll callbacks etc.)

https://www.npmjs.com/package/react-scroll-to-component
This package will be a good alternative.


[Dashing] Ignore broken curl-config.cmake (#40)

This backports #40 into Dashing to fix builds on Windows.

These are full CI runs but I really just wanted to confirm that the build succeeds with this change on all platforms.

Linux
Linux-aarch64
macOS
Windows


Shortcodes in shortcode doesn't work properly

For example:
{{< alert >}}
{{< keyword >}} Super skill {{< /keyword >}}
{{< /alert >}}

Result:

Hello @kuroyei it's not supposed to work.


sourceFile duplication for TypedRule

Bug Report

TSLint version: master
TypeScript version: 2.1.4 (the one in package.json)
Running TSLint via: ./bin/tslint --test test/rules/my-rule

TypeScript code being linted
export class Rule extends Lint.Rules.TypedRule {
    /* tslint:disable:object-literal-sort-keys */
    public static metadata: Lint.IRuleMetadata = {
        ruleName: "my-rule",
        description: "",
        optionsDescription: "Not configurable.",
        options: null,
        optionExamples: ["true"],
        type: "functionality",
        typescriptOnly: false,
    };
    /* tslint:enable:object-literal-sort-keys */

    public applyWithProgram(sourceFile: ts.SourceFile, langSvc: ts.LanguageService): Lint.RuleFailure[] {
        console.log(sourceFile === langSvc.getProgram().getSourceFile(sourceFile.fileName));
        return [];
    }
}

Actual behavior
Prints false.
Expected behavior
Prints true. The source file used for linting should be the same as the one used for the program.
I want to write a rule that uses the type checker to get information about nodes as I recurse. I can't do that if it uses a different AST.

Is the AST different or are the sourceFile objects different references?

Looks like they're completely separate. Added this to the top of applyWithProgram in noForInArrayRule.ts:
const langSvcSourceFile = langSvc.getProgram().getSourceFile(sourceFile.fileName);
console.log(sourceFile === langSvcSourceFile);
console.log(sourceFile.statements[0] === langSvcSourceFile.statements[0]);
process.exit(0);

Both lines print false.


VK_KHR_ray_tracing not usable on Windows

I can't get the new functions from VK_KHR_ray_tracing to work via volk. While they are actually included in the volk headers, the function pointers are defined in a new and separate vulkan_beta.h header file, which doesn't seem to be included by volk at all on Windows.
The main Vulkan header includes that new beta header via a new define:
#ifdef VK_ENABLE_BETA_EXTENSIONS
#include "vulkan_beta.h"
#endif

But as on Windows, only the Vulkan core headers is explicitly included the beta one isn't included at all.

Oops, GH closed this issue :) Can you double-check that it works for you now?

Yes, works fine with that change. Thanks for the quick response :)


Includes width with card

Card is missing the width from styled-system. This just includes it.

Codecov Report

Merging #424 into master will not change coverage.
The diff coverage is n/a.

@@          Coverage Diff          @@
##           master   #424   +/-   ##
=====================================
  Coverage     100%   100%
=====================================
  Files          63     63
  Lines         228    228
=====================================
  Hits          228    228

Impacted Files
Coverage Δ

src/Card.js
100% <ø> (ø)
:arrow_up:

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 67e406f...ecdb058. Read the comment docs.

Feeling that is necessary, width is an expected prop based on the example:
http://jxnblk.com/rebass/components/Card
The thing that I don't understand why the Card example is working in the docs even the prop is not present, @jxnblk? 🤔

Thanks and sorry for the delay!


Glossary Reviewer inheritance issues

we have one py test that does some patch operations on the reviewers for glossaries and glossary terms that is picking up something strange.
the flow is:

We add a user1 and user2 as reviewers for the Glossary
Then we patch user1 as reviewer for the Glossary Term
The PATCH call result gives us a total of 3 reviewers:

user1 appears twice (same id)
user2

On this PR https://github.com/open-metadata/OpenMetadata/pull/12285 we are commenting out a test that was failing due to this. We should uncomment it in this same fix to validate the results

Another observation is that if I GET the glossary passing the ID, I get the correct reviewers (User1 and User2):

The impact is that on the UI, reviewers are not appearing

@pmbrull, the patch operation should not be adding a new user1 if done correctly? Is the patch being generated by hand or by using JSON patch diff tool?

@pmbrull, the patch operation should not be adding a new user1 if done correctly? Is the patch being generated by hand or by using JSON patch diff tool?

@sureshms we are using the same jsonpatch lib that generates the diff itself

@pmbrull is this still and issue?


BUILD FAILURE

Hola @jbarrasa , I've just tried to compile your interesting code for test but unfortunately I have the following error in Mac OS : Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile (default-compile) on project neosemantics: Fatal error compiling: invalid target release: 1.8. Any hint or am I doing something wrong here? TIA

Hola Ghislain, your problem looks a lot like this: http://stackoverflow.com/questions/28291691/fatal-error-compiling-invalid-target-release-1-8-help-1
I'd suggest you have a look and let me know if that was the issue.
Cheers,
JB.

Hola JB,
Thanks for the pointer. Yes, it seems to work with Java 8.
Now I am having the same error than this closed issue [1]
Do you think it’s worth updating the readme with the following lines?
Note: The semantics procedures have a dependency on APOC which currently only works on 3.0.x so this procedures cannot be used on 3.1.x for now.
Prerequisite for building with Maven

Java 8 - Please check your version installed with java -version on your system

[1] https://github.com/jbarrasa/neosemantics/issues/9
Cheers,
Ghislain

Le 21 janv. 2017 à 23:51, J. Barrasa<EMAIL_ADDRESS>a écrit :
Hola Ghislain, your problem looks a lot like this: http://stackoverflow.com/questions/28291691/fatal-error-compiling-invalid-target-release-1-8-help-1 http://stackoverflow.com/questions/28291691/fatal-error-compiling-invalid-target-release-1-8-help-1
I'd suggest you have a look and let me know if that was the issue.
Cheers,
JB.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub https://github.com/jbarrasa/neosemantics/issues/13#issuecomment-274293574, or mute the thread https://github.com/notifications/unsubscribe-auth/AA4VA61LnK_qYu9LoAyG6xf1dvps4J3Mks5rUowDgaJpZM4Ll3wx.

Ghislain A. Atemezing, Ph.D
Mail<EMAIL_ADDRESS>Web: https://w3id.org/people/gatemezing http://www.atemezing.org/
Twitter: @gatemezing
About Me: https://about.me/ghislain.atemezing https://about.me/ghislain.atemezing


vimPlugins.nvim-treesitter: move grammar generation from fetch to grammar.nix

Description of changes
the previous implementation seems to cause hash mismatches: https://github.com/NixOS/nixpkgs/pull/201216#discussion_r1021947207
This pr moves the tree-sitter generate logic from postFetch to buildGrammar and should be able to fix the issue, tested with nvim-treesitter.withAllGrammars and everything seems to work fine

Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[x] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
22.11 Release Notes (or backporting 22.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[x] Fits CONTRIBUTING.md.

@ofborg build tree-sitter.passthru.tests vimPlugins.nvim-treesitter.passthru.tests


ADD: added get_source_volatge command

Added the command get_source_voltage for the Keithley 2410 sourcemeter.

Not much to review or check, I guess. Does the programming manual also cover other devices? If so, would be cool to add the function to those as well. (No need to do it for all sourcemeters, only if the document at hand is valid for others anyway).


Game window appears behind editor (DisplayServer regression)

Godot version
4.0 dev (804406fcaf49789d4618d9c33f71d16996e95504)
System information
Ubuntu 21.10
Issue description
When running my game from the editor, the game window appears behind the editor window. It happens regardless of whether the editor is in full screen or windowed mode.
The first time running a new project, the game window appears on top of the editor as expected, but running the project after that makes the window appear beneath the editor again.
This issue does not occur with the 3.x branch.
Steps to reproduce
Create new blank project -> save empty Node2D scene (or any scene) -> run -> game window appears above editor -> run again -> appears beneath editor on all subsequent runs.
Minimal reproduction project
No response

Having rebuilt with 578460f7fb7b694f4601e8e6fdc4a5ee67de4067, it looks like something in between the originally-referenced commit and now has fixed this issue.


Set frame_mask and cls_attn_mask if mask is None

frame_mask and cls_attn_mask are used before definition if mask is None. This fixes that.

Oops 🙏 ty ty


crypto: discourage new uses of insecure algorithms

DES, MD5, RC4, and SHA1 are all considered deprecated and discouraged for new uses, but the current Go documentation is strictly factual/unopinionated.  Perhaps they should warn against new usage and/or encourage users to consider newer algorithms (e.g., AES and SHA256/512)?
Also, perhaps cmd/vet could warn about imports of crypto/{des,md5,rc4,sha1}?
/cc @agl

Note that basic detection is a one-liner—pipe go list through grep.

"Strictly factual/unopinionated" sounds right to me. These algorithms exist, there are legitimate legacy reasons to run them. I would not want the mere fact of importing crypto/md5 to trigger commentary from Go, nor would I want us to remove them from the library.
But it's perfectly fine for us to update our own higher-level code not to invoke them without confirmation. For example crypto/x509 today returns an InsecureAlgorithmError for MD2+RSA and MD5+RSA, and I have been expecting that in some future release it will do that for SHA1+X too by default, with a clearly-named insecure way to override the default.

I know little about this stuff.  But in general we have those packages in the tree because they are used by other protocols.  For example, crypto/des is used by crypto/tls and crypto/x509.  So a warning on import is a start, but it's not like it's going to prevent your program from using DES if that is the only option presented by the other side.
In general the first step in preventing an attack is characterizing it.  What kind of attack are we trying to defend against?  A naive user who refuses to read the documentation?

I thought we were defending against a naive user who does read the documentation, not that that's more likely. :-)

@rsc Do you think it would be keeping with the strictly factual tone to, for example, point out in crypto/des's documentation that DES / FIPS 46-3 has been withdrawn by NIST in favor of AES / FIPS 197 (http://www.nist.gov/itl/fips/060205_des.cfm)?

Yes, I think it is fine to add comments pointing to specific authorities like that.

By the same reasoning, we might as well just remove all of crypto/* packages
that provide crypto primitives because it's really hard for developers to
use
them correctly. And we should advise everyone to use high-level crypto APIs
like crypto/x509 or x/crypto/nacl  instead.
No, this reasoning is fundamentally wrong. It's not the programming
language's
job to prevent bad use of libraries. Go is not a crypto toolkit, so it
should not
dictate what people should use.
I‘m against removing of any of the existing packages in crypto/*, nor should
we warn about use of insecure primitives, because, believe it or not, they
are still widely used.
The banking industry still uses 3DES a lot, probably due to extreme backward
compat requirements, and even Google Drive API only provides MD5 and
CRC32 for files.
And remember, system comprised only of secure crypto primitives is not
necessarily secure (and the sad reality is, most of these systems are indeed
not as secure as they should be.)
If you care about the security of Go programs, perhaps we should make
our various crypto primitive implementations resilient against side channel
attacks first.

I just want to point out that the existing documentation is occasionally opinionated.  For example:
"RC4 is in common use but has design weaknesses that make it a poor choice for new protocols."
https://golang.org/pkg/crypto/rc4/
I couldn't find any other packages that provided such advice, although they do sometimes have text  advising developers to "get a good random salt".

There are legitimate non-security uses for some of these algorithms too. Take MD5 for example, its fine as a non-cryptographic hash.

@mdempsky I think adding documentation in a way that doesn't seem bloated would be a good idea. I think it should all be kept factual an unopinionated. I do not think that we should be adding too much unnecessary information to the documentation though as this could distract from the more important aspects.

Also, perhaps cmd/vet could warn about imports of crypto/{des,md5,rc4,sha1}?

+1 from me. That seems like a good place to encode advice.
I'm also strongly in favor of updating the docs with better guidance. In particular, I think the examples should reflect correct use of the strong/modern primitives. Everything else needs a warning or (in the worst cases) to lack an example entirely.
I've had to repair damage done by copy/pasting the unauthenticated CBC example several times in the past year because that comment about crypto/hmac just doesn't convey the problem to a generalist developer.
Even the new GCM example confusingly makes ASCII strings of various lengths seem like viable AES keys.
Sure, a legacy system might still be using DES-HMAC-MD4 for something. That's a fine reason to have the implementations. It's not a good argument for presenting that as an equally acceptable choice to developers who aren't crypto specialists.

Also, perhaps cmd/vet could warn about imports of crypto/{des,md5,rc4,sha1}?

+1 from me. That seems like a good place to encode advice.

:-1:  Go vet failures are treated as blocking failures by my, and may other people's CI systems. Users who are using these algorithms for non-security uses (of which there are plenty), will be very sad if this happens.

@tarndt Can those users configure their CI systems to disable the vet warnings they're not interested in?

I'm OK with adding some warnings to the docs.
But any error/warning from compiler, go vet, or any other static
checking tool is no go for me.
If you don't know crypto, you shouldn't use packages under crypto/*
at all (perhaps with the sole exception of crypto/x509, but even that
is non-trivial to use correctly.) Much better to use higher-level
functionality from x/crypto/nacl in that case.
It's quite easy to design a system with crypto/aes that has fatal
flaws (for example, bad padding algorithm and bad mac/encrypt
ordering), and make the attacker's life much easier than bruteforcing
56-bit key of DES or constructing collisions for MD5.
Good primitive will not make bad programs secure. Unless the
go compiler gains the ability to statically prove that a program is
secure, it shouldn't tell the user it's using insecure primitives.

I agree with Minux. New warning docs are okay, but not tool warnings.


oneChangePerToken option removed?

The Readme displayed on the NPM page details a oneChangePerToken option. I don't see that option when viewing the 5.2.0 branch but also don't see a reference to it in release-notes.md. Has it been removed? It doesn't seem to be working for me.

The Readme displayed on the NPM page details a oneChangePerToken option.

Wait, where? I don't see such a thing; I only see it mentioned on the master branch on GitHub, which is currently pre-release. I think that must also be where you're seeing it?

If you visit that link and search for it you'll see it under "Universal Options"

You will now, yes, because I've released it now! :)


Exiting Edit mode doesn't restore display of original instruction

When in Edit mode and changing a value to get a different instruction and then exiting Edit mode again, the original instruction isn't displayed. After pressing C on it, it is again.
2-6-24 release.


verbatimModuleSyntax and exported const enum

Bug Report
verbatimModuleSyntax will be introduced in<EMAIL_ADDRESS>and importsNotUsedAsValues and preserveValueImports will be deprecated.
But there is a const enum export issue that has not been fixed.
🔎 Search Terms

verbatimModuleSyntax
export const enum
importsNotUsedAsValues
preserveValueImports

🕗 Version & Regression Information
<EMAIL_ADDRESS>⏯ Playground Link
Playground link with relevant code
Playground multi-file mode is broken.
Check this gist
💻 Code

// @filename: foo.ts
export const enum Foo {
  x = 1,
}

// @filename: main.ts
import { Foo } from "./foo.js";
// You cannot write something like the following
// import type { Foo } from "./foo.js";

console.log(Foo.x);

🙁 Actual behavior

SyntaxError: The requested module './foo.js' does not provide an export named 'Foo'
🙂 Expected behavior

TSC Report Error: const enum cannot be exported in verbatimModuleSyntax mode.
🔗 related issue

#52469

I believe this is by-design unless you run with preserveConstEnums.

verbatimModuleSyntax is supposed to be a superset of isolatedModules which is supposed to imply preserveConstEnums, IIRC.

I think it just errors when preserveConstEnums isn't enabled - I don't think it actually enables it.

isolatedModules does imply preserveConstEnum, but there were many places in the codebase where I forgot to replace an options.isolatedModules with a check for isolatedModules or verbatimModuleSyntax.

Would it be possible to mentioned in the documentation that verbatimModuleSyntax: true does influence const enums?
I noticed that const enums are not inlined at use sites with verbatimModuleSyntax: true. Looks like the behaviour is similar to isolatedModules: true, but it can be I missed something.

isolatedModules isn’t deprecated 🤔

Ups.. I got mixed up. Despite of that, it would be useful to mention in documentation how verbatimModuleSyntax works with const enum.

I’m not totally convinced that isolatedModules should actually mess with const enum inlining. It’s supposed to be simply a set of checks that code can be transpiled with only single-file info, but somewhere along the way I think someone got mixed up and decided it should emit as if it lacks whole-program info. But that principle isn’t consistently applied, and I don’t see why it would be desirable anyway.

Are you trying to say that this is possibly a bug? I mean, it felt like const enums should be inlined with verbatimModuleSyntax, but it can be I missed some detail.
Would it make sense to open a separate issue? I can do. Just didn’t want to create unnecessary noise.

I had to add verbatimModuleSyntax to use Svelte, and now my const enums aren't optimised. This is quite unfortunate, and also seemingly undocumented.


GPU memory requirements

Hi @imdanboy thanks for making this (it's better than plain FS2 + Hifigan). I'm trying to train on LibriTTS-100 dataset.
I see you used 4 V100 GPUs to train. I only have a single RTX 3090 24GB and i still get CUDA out of memory with batch_bins: 1000000. Do you have the GPU usage stats?

Hi, batch_bins: 3000000 with 4 V100 32GB seems to use almost all memory.
Thus how about trying 3000000/4 * (24/32) = 562500
Or reducing the value of segment_size which also affect memory usage.


Create Design Standard for Slack Notifications

Users look for certain cues before reading anything. We should make it easy for users to immediately know whether they are looking at a new data requests, a comment, or closing.
Some things we can do to improve improve the user experience with Slack notifications:

Add clear title in message e.g [COMMENT] , [NEW DATAREQUEST] [CLOSED]
Clarity in sender's name
Use emojis for the profile pic, title, description et al. (can also increase the fun in the notifications)
Use Slack color options.

Example I always come back to is New Relic's but for our purposes we should explore how other Slack apps/bots do it that we'd want to emulate.
Ref: #10

@DavidLemayian @shemogumbe I'll be taking this up!


VectorN * VectorN and / doesn't work anymore

Not sure if this is intentional but since vectors are no based on Matrix and only NM * MN matrices can be multiplied that removes the possibility of multiplying for example Vector3 x Vector3  as Vector3::new(a.x * b.x, a.y*b.y, a.z*b.z) which is pretty common in graphics vector math libraries

Yes, componentwise multiplication and division are no longer possible using operator overloading. They have been replaced by the methods .component_mul, .component_mul_mut, .component_div, .component_div_mut.
It seems I forgot to mention this on the changelog, sorry ! (I keep this issue open until I update the changelog).


Use a clock trait in index cache

Describe the issue
Add clock trait to the code and modify CreationTimeBasedIndexCache to use the clock with System time by default. Tests cases under IndexCacheTest should be modified to not use Thread.sleep.
To Reproduce
NA
Expected behavior
CreationTimeBasedIndexCache should be modified to use a clock.
Thread.sleep usage should be removed from index cache test cases.
Environment

Is it still open?

closed by #313


glob method not matching nested subdirectories

Path.glob("/path/**/*.swift") will match

path/Sources/aaa.swift

but does not match

path/Nested/Sources/aaa.swift

Which is a deviation from the glob definition https://stackoverflow.com/questions/32604656/what-is-the-glob-character

I believe it is an inherent limitation https://github.com/realm/SwiftLint/issues/3586#issuecomment-1026861753


Support arbitrary CSS styling via config

Following the pattern from the the Picture Elements Card link.
Add configuration options to allow specifying CSS Styling to each line individually.
This is currently achievable via card-mod, but specifying styling directly makes this card much more convenient to use while lowering the bar for new users.

Unfortunatelly I will not merge this, because in my opinion the styling should by done by css-variables. Some styling is configurable by the theme in home assistant. If this is not enough, you can use card-mod with for example the following config:
type: custom:digital-clock
style: |
  span.first-line
  {
    font-size: 6em;
    margin-bottom:25px;
  }
  span.second-line
  {
    font-size: 2.5em;
    margin-bottom:15px;
  }


Unable to build homepoint on MacOS

Hallo,
Thanks for your Great work, I want to complice the code for my M5Stack, but I am unable to complice the code. I installeer all the tools according to the manualen, but when I run:
cmake -DM5STACK=ON ../
I het the error:
-bash: cmake: command not found
I checked my installation of the tools and all the paths seems to be ok. The file CMakeLists.txt has something to do with it, but it is not being used it seems.
Also running:
idf.py menuconfig
Gives the error:
'cmake' must be available on the PATH to use idf.py
My ~/.bash_profile looks like:
export PATH=$HOME/esp/xtensa-esp32-elf/bin:$PATH export IDF_PATH=~/esp/esp-idf export PATH="$IDF_PATH/tools:$PATH"
Gr. Remco

Hey,
looks like you don't have cmake installed.
The easiest way to go about this on MacOS is to install Homebrew and then run brew install cmake.
Let me know if that works for you :)

Thanks for your fast respons, instelling cake did the trick, But now I run into a new compiling error:
-- Compiling for M5Stack CMake Error at main/CMakeLists.txt:118 (spiffs_create_partition_image):   Unknown CMake command "spiffs_create_partition_image".
Gr. Remco

Compiling the CXX compiler identification source file "CMakeCXXCompilerId.cpp" failed. points towards something gone wrong in your PATHs.
Here are mine as a reference (from zsh.rc):
export IDF_PATH="~/Documents/Development/esp-idf"
export PATH=$PATH:~/Documents/Development/xtensa-esp32-elf/bin

I assume you followed the instructions of running
cd build
cmake -DM5STACK=ON ../
``` ?

Compiling the CXX compiler identification source file "CMakeCXXCompilerId.cpp" failed. points towards something gone wrong in your PATHs.
Here are mine as a reference (from zsh.rc):
export IDF_PATH="~/Documents/Development/esp-idf"
export PATH=$PATH:~/Documents/Development/xtensa-esp32-elf/bin

I assume you followed the instructions of running
cd build
cmake -DM5STACK=ON ../

?

Yep,
My .bash_profile contains:
export PATH=~/esp/xtensa-esp32-elf/bin:$PATH
export IDF_PATH=~/esp/esp-idf
export PATH="$IDF_PATH/tools:$PATH"

And I did
cd ~/home/esp/homepoint/build
cmake -DM5STACK=ON ../

Gr. Remco

Does this error appear when you run make or cmake ?

It appears when I run cmake.
When I do:
MacbookPro:bin remco$ which ld
I get:
/usr/bin/ld
So there is another build environment. Might that be a Problem?

Yeah, could be. I'd put the $PATH variable before the IDF Path in your bash.rc, because OSX will use the first ld it can find.

Putting $PATh in first makes no different....

Which ESP-IDF version are you using?

3.2

Ahhh, I see. I just tried that and had the same error as yours.
The issue is that HomePoint relies on CMake which is pretty new with ESP-IDF. I recommend you checkout the master of esp-idf through github and use that.
That definitely works on my end (although they recently introduced a new warning about using an old GCC version). That situation is not ideal, but thanks for pointing it out.
Let me know if that works on your end?

Thanks,
Now its working. Only the last step:
make -j 8 flash
Gives a lot of errors, but that is probably because it tries to flash the image to the M5stack ? It is not connectie and I havent deinde a serial port anywhere.

Try building without flash at the end

Hmm,
Still no sucess,
make -j 8```

Both give a lot (thousands) of these waring below.
According to the online Manual I downloaded:
[(https://dl.espressif.com/dl/xtensa-esp32-elf-gcc8_2_0-esp32-2019r1-macos.tar.gz)]

Correct, the 8.2.0 is still in the unstable manual and did not work last time I checked, the correct one is specified here:
https://docs.espressif.com/projects/esp-idf/en/stable/get-started/macos-setup.html

Did a new Install of the toolchain version 5.2.0 but Problem remains.....

I still believe there is something off in the toolchain, cause none of the errors mentions Homepoint specifically, but they appear while compiling the ESP-IDF SDK.

Running xtensa-esp32-elf-gcc -v on command line will tell you which version is in use

gcc version 5.2.0 (crosstool-NG crosstool-ng-1.22.0-80-g6c4433a)

I assume you deleted the build directory and reconfigured?

What do you mean by reconfigured?

Running cmake again

Yeah,
After cleaning and erebuilding it works:
[100%] Built target homepoint.elf
[100%] Built target gen_project_binary
[100%] Built target app
Scanning dependencies of target flash
Note: esptool.py will search for a serial port. To specify a port, set the ESPPORT environment variable.
Note: Using default baud rate 460800. To modify, set ESPBAUD environment variable.
esptool.py --chip esp32 -b 460800 write_flash --flash_mode dio --flash_freq 80m --flash_size 4MB 0x8000 partition_table/partition-table.bin 0x10000 homepoint.bin 0x1000 bootloader/bootloader.bin 0x310000 spiffs.bin
esptool.py v2.7-dev
Found 3 serial ports
Serial port /dev/cu.SOC```

Sorry for all your effort, my mistake, I lack Some real software engineering skills ;-)

Maybe you can add the part of the masterbranch of **esp-idf** and the correct version off the toolchain to your **README.md**

Awesome! Glad you got it working 👏
And yeah, I already had that in mind while we were discussing this :D


Improvement: Define recursive function findBasePath explicitly

It doesn’t look like findBasePath is defined. But it works even though I sometimes get a runtime error for that. Yet, I defined the function explicitly.

Ha that's interesting! I changed to used a non private naming convention (starting with an _). Thanks!


perl 5.24.1 fails to build on linux on staging

Issue description
This time its not failing on darwin but linux.
https://nix-cache.s3.amazonaws.com/log/ik0c1jdmzp3nsm6hrf5p6j70wxhbqw3r-perl-5.24.1.drv

Nixpkgs version: staging at 2dd351

cc @vcunat @plumps @Mic92

I saw no relevant error message in the log, and I couldn't reproduce failure locally nor on Hydra: http://hydra.nixos.org/build/52352025#tabs-buildsteps
Feel free to reopen if you find something of concern.

Odd, it indeed builds. Check http://hydra.nixos.org/eval/1356007?filter=perl&compare=1355720, and look at the "Still failing jobstab, and "Still succeeding jobs" tab.perl524.x86_64-linuxis in the failing tab andperl.x86_64-linuxin the succeeding whileperlpoints toperl524`.


cancel_order does not work anymore with Binance in Live Trading mode

Dear Catalyst Maintainers,
Before I tell you about my issue, let me describe my environment:
Environment

Operating System: (Windows Version or $ uname --all) Ubuntu 16
Python Version: python 3.6
Python Bitness: $ python -c 'import math, sys;print(int(math.log(sys.maxsize + 1, 2) + 1))'
How did you install Catalyst: (pip, conda, or other (please explain)) virtualenv

Now that you know a little about me, let me tell you about the issue I am
having:
Description of Issue
I have just upgraded to Catalyst 0.5.18. I am testing cancel_order with Binance in Live trading mode. I have a key error with this version:
1138         if not self.simulate_orders:
-> 1139             exchange_name = self.blotter.orders[order_id].asset.exchange
1140             exchange = self.exchanges[exchange_name]
1141             retry(
KeyError: '67868981'
.  I think order_id type may be integer? or maybe the type issue. Note that the order_id exists in the system. Thanks.

What did you expect to happen?
Order should be cancelled in Binance.

Sincerely,
Henry

Hi, I tried to reproduce this issue, but in all attempts, I was able to cancel the order. with which arguments did you run the method? where did you take the order_id from? can you please elaborate? Thanks!

@cnt285 @AvishaiW i ran into the same / similar issue. When live trading was killed and relaunched while orders are working on Binance, the cancel _order will fail. (catalyst version 0.5.18)
cur_orders = get_open_orders(asset) if is_live else context.blotter.open_orders[context.asset]
for o in cur_orders:
            if asset.exchange == 'binance':
                cancel_order(o, symbol = asset)
            else:
                cancel_order(o)

Output:
line 1139, in cancel_order
exchange_name = self.blotter.orders[order_id].asset.exchange
KeyError: '2129615'
Hope that can help you reproduct the issue @AvishaiW

@FWangTrading , thank you for reporting. If you opened an order and then your algorithm was killed, the order is not saved for the next run. Saving the state of the open orders between runs is not yet supported but an important enhancement, which deserves its own ticket. Could you please open a new issue describing this?
@cnt285 , I'm closing this issue due to low activity, if you still experience this problem please reopen it and add additional information.
Thanks!


really need checkpoint

hello,really inspiring work.
I want to add it to my action recognition model。However I didn‘t find any checkpoints in your git repo.
please help me.Thank you very much.

Hi - thanks for your interest!
Here's a pre-trained checkpoint on Human3.6M for 16-keypoints (trained with a frame gap of 20). This model was trained on Pytorch 1.7.1+cu110: https://drive.google.com/file/d/1ct4xCiLLHuRNkjP7QueasyKNPZfOKov-/view?usp=sharing
Note that our model requires fine-tuning or re-training for new experimental settings. Let us know if there's anything else

thank you very much.


Fiber aware support for ActiveRecord 4

Hello!
I took https://github.com/igrigorik/em-synchrony/pull/179 and added support for ActiveRecord 4.
All ActiveRecord specs are green for stable versions of 3.2, 4.0, 4.1 and 4.2.
Also I reimplemented clear_stale_cached_connections! for 3.2 that could help but not so much. ActiveRecord users should explicitly release connections or ActiveRecord::ConnectionAdapters::ConnectionManagement middleware could do this and there is nothing to do with it. By the way, they should do it in threaded environment too. Anyway.
3.1 is not working and I cannot figure out why. So my opinion: we should drop 3.1 support in favor of better implementation for >= 3.2, < 5.
Currently tests may fail because of broken mysql2. See https://github.com/brianmario/mysql2/pull/580 (with specs) or https://github.com/brianmario/mysql2/pull/509 — with any of these patches everything works great.

@dgutov hi! i merged this branch with master, slightly fixed my additional AR4 specs and now it passes.

@marshall-lee Thanks, the build looks good. I should try running our project specs with this branch sometime.
Speaking of clear_stale_cached_connections!, maybe it could use a spec or two. And how come you needed to add calls to it in existing AR specs? Was that for the Reaper spec to work right?

I added calls to clear_active_connections!, not clear_stale_cached_connections!. This method releases connection acquired by current thread (fiber).
I did this because it's the correct way to use ActiveRecord - release connection when you don't need it. One could never know about  clear_active_connections! because Rails automatically calls it from middleware (please look at the first message in this PR).

I would look at what i could do with clear_stale_cached_connections!.

The second reason why i added call to clear_active_connections! to existing specs is that in the case of 3.2 it would stuck when connection pool is banging very tightly (specs with large FiberIterator). When there is no connection available in the pool ActiveRecord is trying to clear_stale_cached_connections! but it's somehow not as efficient as reap in 4.x. I really don't understand why but okay i'll look at it one more time. But not releasing connections is not correct so we should do it anyway.

I think we should add separate test case for concurrent usage of ActiveRecord with connections becoming stale (without call to clear_active_connections!) and temporarily disable it with skip for 3.2 while we don't understand how to improve it.

I added calls to clear_active_connections!, not clear_stale_cached_connections!.

Right, sorry.

I did this because it's the correct way to use ActiveRecord - release connection when you don't need it. One could never know about clear_active_connections! because Rails automatically calls it from middleware (please look at the first message in this PR).

I'm aware of that, but the specs passed fine before. In general, I think it's better to have fewer moving parts there.

When there is no connection available in the pool ActiveRecord is trying to clear_stale_cached_connections! but it's somehow not as efficient as reap in 4.x. I really don't understand why but okay i'll look at it one more time. But not releasing connections is not correct so we should do it anyway.

Whether we clear the connections in specs or not, has no impact on users. On the other hand, you seem to describe a regression. Are the less careful users (who don't call clear_active_connections! in some places where they maybe should) more likely to have problems with this pull request?

I don't think we should call it a regression. I bet there is the same behaviour with stale connections in multithreaded usage of ActiveRecord. If so we have two choises: keep the behaviour as compatible as possible or try to make it better.
But I should definitely revisit this problem. Maybe it's really regressing.

This is the 'official' behaviour of ActiveRecord.
ActiveRecord 4.1, multithreaded, with Acticonnection_pool.size == 5:
    threads = []
    10.times do
      threads << Thread.new do
        ActiveRecord::Base.connection.execute("select 1")
      end
    end
    threads.each(&:join)

— this one stucks
    threads = []
    10.times do
      threads << Thread.new do
        ActiveRecord::Base.connection.execute("select 1")
        ActiveRecord::Base.clear_active_connections!
      end
    end
    threads.each(&:join)

— this one doesn't, because we release connection acquired by current thread.
    threads = []
    10.times do
      threads << Thread.new do
        ActiveRecord::Base.connection.execute("select 1")
        ActiveRecord::Base.connection.close
      end
    end
    threads.each(&:join)

— this one doesn't stuck too, because after closing and terminating the acquiring thread, connection  became stale so it can be reacquired by other thread.

Also, this is the original clear_stale_cached_connections! from AR 3.2:
      def clear_stale_cached_connections!
        keys = @reserved_connections.keys - Thread.list.find_all { |t|
          t.alive?
        }.map { |thread| thread.object_id }
        keys.each do |key|
          conn = @reserved_connections[key]
          ActiveSupport::Deprecation.warn(<<-eowarn) if conn.in_use?
Database connections will not be closed automatically, please close your
database connection at the end of the thread by calling `close` on your
connection.  For example: ActiveRecord::Base.connection.close
          eowarn
          checkin conn
          @reserved_connections.delete(key)
        end
      end

So I think we shouldn't do anything special with stale connections. We should just add separate test case confirming that we behave similarly to multithreaded AR.

Previous implementation worked well because it acquires connection per query (similar to wrapping every query with ActiveRecord::Base.connection_pool.with_connection(&block)).
But it doesn't work on every version of ActiveRecord (so strange — these versions are 3.2 and 4.2, but on 4.0 and 4.1 it passes). So speaking about existing users is slightly not correct.
But... Existing 3.2 and 4.2 would have a problem, if they doesn't care about stale connections. Maybe try to temporarily wrap every query with_connection and output deprecation warning like in non-patched 3.2?

We should just add separate test case confirming that we behave similarly to multithreaded AR.

We should also have a spec that confirms the improvement stated in #179: multiple concurrent transactions.

Current implementation worked well because it acquires connection per query (similar to wrapping every query with ActiveRecord::Base.connection_pool.with_connection(&block), or similar to Sequel connection pool implementation).

It seems to me like this scheme can break transactions (which can't be shared between connections). Here we started a transaction in the current fiber, made a query, then launched a second fiber, it checked out a connection (the one we've just been using, right?), then if we want to commit the transaction now, we'd have to wait until the first connection is free again. Is that what happens? The "transactions should work properly" spec consistently passes in 4.0 and 4.1.

Also current implementation doesn't fully conform to the official ActiveRecord behavior.

Bug-for-bug conformance isn't that valuable. As long as things that work (no errors, no wrong results) with fibers are a superset of things that work with threads, I'd say we're in good place.
But if I'm right, the tradeoff being offered is being able to use multiple connections automatically (one fiber = one connection), and employ several concurrent transactions, for the price of having to clean up after ourselves.

Bug-for-bug conformance isn't that valuable. As long as things that work (no errors, no wrong results) with fibers are a superset of things that work with threads, I'd say we're in good place.

It's not a bug. In ActiveRecrod, working with connection pool you have an option: acquire connection manually and manually release it, or use with_connection wrapper. Moreover, it is a well documented behavior:

Connections can be obtained and used from a connection pool in several ways:

Simply use ActiveRecord::Base#connection as with Active Record 2.1 and earlier (pre-connection-pooling). Eventually, when you're done with the connection(s) and wish it to be returned to the pool, you call ActiveRecord::Base.clear_active_connections!. This will be the default behavior for Active Record when used in conjunction with Action Pack's request handling cycle.
Manually check out a connection from the pool with ActiveRecord::Base.connection_pool.checkout. You are responsible for returning this connection to the pool when finished by calling ActiveRecord::Base.connection_pool.checkin(connection).
Use ActiveRecord::Base.connection_pool.#with_connection(&block), which obtains a connection, yields it as the sole argument to the block, and returns it to the pool after the block completes.

So on the other hand, current implementation is not a superset — it's a subset. We don't have an option, we just do with_connection every time.
Also it wraps a database connection instance with ``EM::Synchrony::ConnectionPool. It's stupid because Synchrony's connection pool uses convention for methods with name starting with 'a'` — doesn't call release if so (thinks that they're async) — It can be potentially buggy.

It seems to me like this scheme can break transactions

Seems like it doesn't break them. Look at current implementation in lib/em-synchrony/activerecord.rb: it somehow wraps transactions acquiring a connection for them.

But if I'm right, the tradeoff being offered is being able to use multiple connections automatically (one fiber = one connection), and employ several concurrent transactions, for the price of having to clean up after ourselves.

Yep, something like that. Also it's more predictable: if we want so, we will have exactly the same connection during entire request in Rails.
Also i think it's not possible to implement Reaper feature on top of current implementation (because it totally loses its sense) but someone may want exactly this behavior: let the connections become stale but clear it periodically.

Also it seems that current implementation is not actually concurrent. It checks out always the same connection. It is because current_connection_id is not overriden to use Fiber.current.object_id. It uses Thread.current.object_id which is not acceptable. Try to override it right and you'll get failing specs.

Just for recap, why current implementation should be replaced with this one:

It doesn't work on every ActiveRecord version. Actually, it behaves somehow randomly and there is no adequate way to make it compatible.
It doesn't just monkey patch ActiveRecord, it substitutes connection instance with something that is actually not a connection – EM::ConnectionPool instance that has its own method and that is conforming to its own convention for missing methods (do they begin with 'a' or not) which is not acceptable for correctly monkey patching third party stuff.
It doesn't conform to official documented ActiveRecord behavior and there is no way to make it compatible.
It's not actually concurrent. This is the most important. ActiveRecord::Base.connection_pool.connections is not growing as it should — there is exactly one connection in it but in high-concurrent case its size should equal to ActiveRecord::Base.connection_pool.size (see #196)

But what if someone has a working em-synchrony/activerecord and may have a problems after updating? Well, i really doubt that someone was really able to use current implementation without evident bugs. It's either not working at all or creating another problems.
Anyway, i suggest you the following strategy:

Add a temporary option — something like :old_connection_pool_behavior and set it to true by default.
If :old_connection_pool_behavior is set to true that we: 1) wrap every query and every transaction with_connection. 2) output a deprecation message suggesting to care about connection releasing and if already so, manually set old_connection_pool_behavior: false in config allowing to use all the benefits of new behavior.
Cover it with specs. Also add missing specs for transactions, concurrency, etc
Release the em-synchrony to rubygems!
Remove all old_connection_pool_behavior workarounds for the next version.

Or there is a simpler way: just merge it :laughing:
Seriously, current implementation is anyway broken and not well tested.

I mistaken about current pool concurrency in #196. Well, when the pool works — it just works, effectively using a :pool parameter.
But it seems that current implementation won't allow us to manually work with pool: checkin/checkout, with_connection just because it corrupts AR's connection pool making it contain only one connection (see https://github.com/igrigorik/em-synchrony/pull/196#issuecomment-83412650). So it cannot be considered as a full drop-in replacement of multithreaded ActiveRecord for existing code.

Also i think it's not possible to implement Reaper feature on top of current implementation (because it totally loses its sense)

There's less reasons to have it, but still, if the connection pool were fixed to contain more than one connection, and some were checked out manually by temporary fibers and not returned, then Reaper could do its thing.

With this one i just added em-pg-client to Gemfile, reassigned PGconn = PG::EM::Client and everything worked out of the box.

Yes, it is pretty nice.

It's not stable. It doesn't work on every ActiveRecord version. Actually, it behaves somehow randomly and there is no adequate way to make it compatible.

I don't know if it's true. As long as the only problem is that the pool contains only one element, and all fibers somehow manage to use it successfully, the only problem left is the lack of concurrency (that's just speed, right?).

it seems that current implementation won't allow us to manually work with pool: checkin/checkout, with_connection just because it corrupts AR's connection pool making it contain only one connection

So, don't you think it's the main compatibility problem we have?
If we could somehow make each new fiber to inherit the connection from its parent (ideally), or just the first checked out one, but interacting with the connection pool manually allowed to use a different connection, that would be backward-compatible enough, I think.

Or there is a simpler way: just merge it

All right, but just to be clear, I'm not a committer here. :)

@dgutov Hi! Did you tried this branch in your project?

@marshall-lee Sorry, I should have some results in a few days.

Done that now (with AR 4.1 and 4.2), sorry for the delay.
Using 4.1, it seems after the pool is exhausted, most specs start failing in the same way:
     Failure/Error: Unable to find matching line from backtrace
     ActiveRecord::ConnectionTimeoutError:
       could not obtain a database connection within 5.000 seconds (waited 5.001 seconds)
     # ./spec/spec_helper.rb:49:in `block (2 levels) in <module:RollbackExampleGroup>'
     # ./spec/spec_helper.rb:39:in `block (2 levels) in <top (required)>'
     # ./spec/spec_helper.rb:21:in `block (3 levels) in <top (required)>'

Using ActiveRecord::Base.clear_active_connections! helps, but having to call it after every spec is pretty invasive. 4.2 doesn't seem to have that problem; any idea why?

:+1:

I've tried to use it with ActiveRecord 4.2, it also requires to use .clear_active_connections!
ActiveRecord::ConnectionTimeoutError: could not obtain a database connection within 5.000 seconds (waited 5.005 seconds)

      could not obtain a database connection within 5.000 seconds (waited 5.005 seconds)
./vendor/bundle/ruby/2.1.0/gems/activerecord-4.2.5/lib/active_record/connection_adapters/abstract/connection_pool.rb:189:in `block in wait_poll'
./vendor/bundle/ruby/2.1.0/gems/activerecord-4.2.5/lib/active_record/connection_adapters/abstract/connection_pool.rb:180:in `loop'
./vendor/bundle/ruby/2.1.0/gems/activerecord-4.2.5/lib/active_record/connection_adapters/abstract/connection_pool.rb:180:in `wait_poll'
./vendor/bundle/ruby/2.1.0/gems/activerecord-4.2.5/lib/active_record/connection_adapters/abstract/connection_pool.rb:135:in `block in poll'
./vendor/bundle/ruby/2.1.0/bundler/gems/em-synchrony-7b3415a26279/lib/em-synchrony/monitor_mixin.rb:70:in `mon_synchronize'

With this addition all tests in non Rails app pass :wink:

Hey, what do you think about adding .clear_active_connections! at the end of FiberIterator#each after requiring em-synchrony/activerecord? Or maybe wrap everything with with_connection? For example:
def each(foreach=nil, after=nil, &blk)
  ActiveRecord::Base.connection_pool.with_connection do |_conn|
    old_each(foreach, after, &blk)
  end
end

Hey, what do you think about adding .clear_active_connections! at the end of FiberIterator#each after requiring em-synchrony/activerecord? Or maybe wrap everything with with_connection? For example:
def each(foreach=nil, after=nil, &blk)
    wrapped_block = proc do |*args|
      ActiveRecord::Base.connection_pool.with_connection { |_conn| blk.call(*args) }
    end

    old_each(foreach, after, &wrapped_block)
  end
end

@exAspArk  Hello!
What do you mean? Monkey patch FiberIterator#each? But why?

I think it's a bad idea

I've tried to use it with ActiveRecord 4.2, it also requires to use .clear_active_connections!
With this addition all tests in non Rails app pass :wink:

Yes, because it's just how ActiveRecord works. When you use regular (non em-synchrony patched) ActiveRecord outside of Rails or Sidekiq (both have special middleware that calls clear_active_connections!) in multithreaded environment you'll get the same problem.

And I also think that in every application middleware-approach will be fine.

@marshall-lee @dgutov any chance we can rebase this one? What's the status on this -- are we close?


basket.py

Development & completion of Basket Class.

Intermediary stage.

Initial testing complete.

Transitioning on to the Unit Test redesign.

Intermediary commit - will potentially fail.

Unit Test complete assuming there are not any hidden bugs.

Changes made to make_relative_value unit test can be ignored.

Target Positions is nearing completion.

Following discussions / comments - changes are required to target_positions.py

basket.py complete.

target_positions.py complete.
Will require an extensive Unit Test.

Latest version of Basket.py file required for target_positions.

Preferred if the comments in the Unit Test are left preserved - explains the logic of both target_positions and the associated Unit Test.

Believe work is complete.

Final changes to unit_target_positions being made.

Work complete following ToDo assignments.


[FEATURE REQ] Add support to DefaultAzureCredential authentication via Azure.Identity library

Library or service name.
Microsoft.Azure.WebJobs.Extensions.ServiceBus
Is your feature request related to a problem? Please describe.
Right now the connection string supports Managed Identity via:
MyConnectionString__fullyQualifiedNamespace
This is very nice and useful, but the problem is that for local development I would still have to revert to SharedAccessKey and cannot use e.g. Azure CLI or Environment variables authentication that Azure.Identity provides via DefaultAzureCredential.
It would be very nice if we can have the full power of DefaultAzureCredential via some option and not only ManagedIdentity so that we won't need to supply secrets like shared access key for running locally. Ordinary service bus client library already supports it.
P.S. I have already assumed that this was the case and maybe it is, but I did not manage to get it working locally and created the bug here. The bug can be just closed if this is indeed something not supported yet (hopefully there will be no warning if this feature is implemented)

//fyi: @pakrym

Please see the beta version here which supports Azure Identity
https://www.nuget.org/packages/Microsoft.Azure.WebJobs.Extensions.ServiceBus/5.0.0-beta.5
Blog here:
https://devblogs.microsoft.com/azure-sdk/introducing-the-new-azure-function-extension-libraries-beta/
Working code here:
https://github.com/jongio/memealyzer/tree/main/src/net/Services/Functions

I have tried locally with MyConnectionString__fullyQualifiedNamespace and did not quite work for me locally with environment variables. It does work with Managed Identity in Azure.
I know that the environment variables are set correctly since I use them in other places that do work. Perhaps I did something else wrong. Is it enough to just specify this value in local.settings.json?

Do you by any chance have the MyConnectionString__credential set?

When you say it does not work locally, do you mean that you see the warning on startup that you referenced in the linked issue? This is a known issue with the core tools that will be updated.
Apart from that, does the function still work?

No, I got an error that I did not have enough rights to connect the service bus. I did not have MyConnectionString__credential set, only 3 env variables to represent a service principal. Maybe I did something wrong with the access, though I set it on the subscription. If you say that this feature is implemented I can try again on Monday to verify once again. I can report then exactly which error did happen.

Thanks a lot for help!
It seems that it is working indeed as you described. I think I have made a rookie mistake and forgot to update the library, the last time I tried to test this. And then due to the fact that there was a warning and that documentation (unlike the referenced blogpost by @jongio) said it is only supported for Managed Identity I gave up and created this issue instead.
So far everything seems to work as expected, is it possible to get any estimates for the production version of 5.0.0 package or it's not something that you guys can share?

In terms of an estimate for the stable version, I'd recommend we track that in https://github.com/Azure/azure-sdk-for-net/issues/21510


[BUG] - Some UI elements do not render correctly when using yarn

NextUI Version
2.0.10
Describe the bug
When using yarn, some UI elements -- such as buttons -- do not render correctly. I am using the latest version of yarn (4.0.0-rc48).
This is easy to reproduce and confirm using the template:
yarn create next-app -e https://github.com/nextui-org/next-app-template

The following screenshot shows what the resulting page looks like:

As you can see, the button elements ("Documentation" and "GitHub") are not styled appropriately.
I have been able to repro this in my own Next.js project using NextUI 2.0.10, so it is not specific to this template, as far as I can tell.
When you use the template from npm, it renders correctly:
npx create-next-app -e https://github.com/nextui-org/next-app-template

Screenshot:

Your Example Website or App
No response
Steps to Reproduce the Bug or Issue

Run: yarn create next-app -e https://github.com/nextui-org/next-app-template
Follow the prompts to create the app.
cd into the app directory and run yarn && yarn dev
Navigate to http://localhost:3000

Expected behavior
All of the UI elements are rendered according to the same steps performed using npm.
Screenshots or Videos
No response
Operating System Version
MacOS
Browser
Chrome

Hey @mdwelsh thanks for reporting this, could you please open this issue on the template repo? https://github.com/nextui-org/next-app-template/issues
Thanks!

Sure, but this is not a template bug per se -- it happens when I use nextui in my own project, without the template at all.
Let me know what you prefer.

Ok so let's leave it here since it also happens without the template.
I'll take a look as soon as I can
Thanks!

Hey @mdwelsh I tested this again using the latest template and it worked fine, please try again.


Add Image Steganography Android Library

Thanks for the suggestion, but this is better suited for the AndroidArsenal. Thanks.


Adding support for upgrade and rollback operation

As of now helm module only support install and delete operations. Adding support for upgrade and rollback operations also.

This looks good!
Can you add some tests? You can use TestRemoteChartInstall as a template. Or alternatively, you can add an example + integration test pair similar to https://github.com/gruntwork-io/terratest/tree/master/examples/helm-basic-example (maybe helm-upgrade-example?).

I have added

This looks good!
Can you add some tests? You can use TestRemoteChartInstall as a template. Or alternatively, you can add an example + integration test pair similar to https://github.com/gruntwork-io/terratest/tree/master/examples/helm-basic-example (maybe helm-upgrade-example?).

I added a file upgrade_test.go. It has one test case 'TestRemoteChartInstallAndUpgrade' to check for install and upgrade of release.

First I am installing a helm chart 'chartmuseum'
After successful Installation , I am setting repl icaCount to 2. ( https://github.com/Saurabh-16/terratest/blob/features/upgrade-rollback/modules/helm/upgrade_test.go#L70 )
I am upgrading the release again. (https://github.com/Saurabh-16/terratest/blob/features/upgrade-rollback/modules/helm/upgrade_test.go#L74)
Verifying desired no. of pods are created after upgrade. (	https://github.com/Saurabh-16/terratest/blob/features/upgrade-rollback/modules/helm/upgrade_test.go#L88 )
Verifying service is up post upgrade.

This looks good!
Can you add some tests? You can use TestRemoteChartInstall as a template. Or alternatively, you can add an example + integration test pair similar to https://github.com/gruntwork-io/terratest/tree/master/examples/helm-basic-example (maybe helm-upgrade-example?).

I added a file upgrade_test.go. It has one test case 'TestRemoteChartInstallAndUpgrade' to check for install and upgrade of release.
First I am installing a helm chart 'chartmuseum'
After successful Installation , I am setting repl icaCount to 2. ( https://github.com/Saurabh-16/terratest/blob/features/upgrade-rollback/modules/helm/upgrade_test.go#L70 )
I am upgrading the release again. (https://github.com/Saurabh-16/terratest/blob/features/upgrade-rollback/modules/helm/upgrade_test.go#L74)
Verifying desired no. of pods are created after upgrade. (	https://github.com/Saurabh-16/terratest/blob/features/upgrade-rollback/modules/helm/upgrade_test.go#L88 )
Verifying service is up post upgrade.

The new test looks good. Will kick off the build now.

The build failed for an unrelated issue. Since the kubernetes and helm tests passed, I am comfortable merging this. Will merge + cut release now. Thanks for the contribution!