Migrate the demo/test component of keypod into demopod within solidpod

Pull Request Details
What issue does this PR address

[A one line description of this PR]

Link to associated issue: #

Checklist
Complete the check-list below to ensure your branch is ready for PR.
Flutter Style Guide: https://survivor.togaware.com/gnulinux/flutter-style.html

[ ] Screenshots included in linked issue
[x] Changes adhere to the team style and coding guideline
[x] No confidential information
[x] No duplicated content
[x] No lint check errors related to your changes (make prep or flutter analyze lib)
[x] Pre-exisiting lint errors noted: Quite a few need fixing up sometime.
[x] Tested on at least one device

[ ] Android Phone
[ ] Android Emulator
[ ] Chrome on Android
[ ] Chrome
[ ] iOS
[x] Linux
[ ] MacOS
[ ] Windows

[x] Added 2 reviewers (or 1 for private repositories then they add another)

Finalising
Once PR discussion is complete and 2 reviewers have approved:

[ ] Merge dev into the branch
[ ] Resolve any conflicts
[ ] Add one line summary into CHANGELOG.md
[ ] Bump appropriate version number in pubspec.yaml
[ ] Push to git repository and review
[ ] Merge PR into dev

Tested on Windows and everything works as expected


Desktop application

Add scripts and resources for building a desktop version of the game for several operating systems, using Electron. This version could probably have a few more features (see #126 and #124), but all the same functionality from the web version is present so I think it's fine to merge now.
To run the desktop version without building an executable, do:
$ npm run build-electron
$ npm run start-electron

To build executables for various platforms, use npm run build-electron

This PR also replaces all of our bash scripts with JavaScript files that can be run with node, removing the dependency on bash and making our code a little more portable. Now the only thing you need to run it is node and npm.


Swift 3 compatibility

Hello ! I Really appreciate your work guys. Is there any chances to know when you will release swift 3 compatibility ?

Sorry, we've been busy with a rollout, so we'll probably be able to get to it in a week. In the meantime pls feel free to try / debug / fix https://github.com/prolificinteractive/Caishen/pull/79

+1

+1 you said in a week. Its october now

could you please get it updated

I love the work you guys do, by the way. This project is amazing

Hi, I'm very sorry about the delay. We have a PR pending to add Swift 3 compatibility here. Since this introduces a significant amount of changes to the public API that cannot easily be fixed later we'd rather not merge this without some more reviews on it. Please feel free to take a look at those changes and share your feedback.

so i'm confused, will you update the project to swift 3.0
On Fri, Oct 14, 2016 at 11:36 AM, Daniel Vancura<EMAIL_ADDRESS>wrote:

Hi, I'm very sorry about the delay. We have a PR pending to add Swift 3
compatibility here
https://github.com/prolificinteractive/Caishen/pull/85. Since this
introduces a significant amount of changes to the public API that cannot
easily be fixed later we'd rather not merge this without some more reviews
on it. Please feel free to take a look at those changes and share your
feedback.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/prolificinteractive/Caishen/issues/83#issuecomment-253836586,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ARCMmVAKFmGabQGR9_6I_HyVZJlEW6opks5qz6F1gaJpZM4J32NK
.

@prolificInteractive so i'm confused, will you update the project to swift 3.0

When I open the project in xcode 8, swift 3.0, I get numerous errors and that the cocoapods are out of date

I spent hours trying to fix it but was led nowhere

Yes, we will update the project to Swift 3 eventually. Are you working on this PR: #85 ? The one mentioned above (#79) is outdated, since it was created on Xcode 8 beta and Apple made changes to the Swift 3 API since then. Which version of Cocoapods are you using?

the latest version
On Fri, Oct 14, 2016 at 12:10 PM, Daniel Vancura<EMAIL_ADDRESS>wrote:

Yes, we will update the project to Swift 3 eventually. Are you working on
this PR: #85 https://github.com/prolificinteractive/Caishen/pull/85 ?
The one mentioned above (#79
https://github.com/prolificinteractive/Caishen/pull/79) is outdated,
since it was created on Xcode 8 beta and Apple made changes to the Swift 3
API since then. Which version of Cocoapods are you using?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/prolificinteractive/Caishen/issues/83#issuecomment-253847081,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ARCMmRlwW4EjgfoX9TArxCiqtBUKf4Rkks5qz6ljgaJpZM4J32NK
.

do you know when you will update the project. I need a credit card
validation system for my app. And this is the by far the best one ive seen
on github, etc. But I cant use it
On Fri, Oct 14, 2016 at 12:11 PM, jack paster<EMAIL_ADDRESS>wrote:

the latest version
On Fri, Oct 14, 2016 at 12:10 PM, Daniel Vancura<EMAIL_ADDRESS>
wrote:

Yes, we will update the project to Swift 3 eventually. Are you working on
this PR: #85 https://github.com/prolificinteractive/Caishen/pull/85 ?
The one mentioned above (#79
https://github.com/prolificinteractive/Caishen/pull/79) is outdated,
since it was created on Xcode 8 beta and Apple made changes to the Swift 3
API since then. Which version of Cocoapods are you using?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/prolificinteractive/Caishen/issues/83#issuecomment-253847081,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ARCMmRlwW4EjgfoX9TArxCiqtBUKf4Rkks5qz6ljgaJpZM4J32NK
.

@prolificInteractive do you know when you will update the project. I need a credit card
validation system for my app. And this is the by far the best one ive seen
on github, etc. But I cant use it

is there a possibility it can be updated next week.

I think next week does sound realistic. In the meantime you should be able to use the current Swift 3 branch by adding pod 'Caishen', :git => 'git@github.com:prolificinteractive/Caishen.git', :branch => 'swift-3.0' to your Podfile.

ok ill do it and get back to you, but i'm begging you guys to please update
it. All I have left in my app is a creditcard validation system. Thats why
I'm so desperate.
On Fri, Oct 14, 2016 at 12:29 PM, Daniel Vancura<EMAIL_ADDRESS>wrote:

I think next week does sound realistic. In the meantime you should be able
to use the current Swift 3 branch by adding pod 'Caishen', :git =>
'git@github.com:prolificinteractive/Caishen.git', :branch => 'swift-3.0'
to your Podfile.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/prolificinteractive/Caishen/issues/83#issuecomment-253851884,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ARCMmdcnYD0lyJmUmudhwA5L8cp8DRZWks5qz631gaJpZM4J32NK
.

@ProlificInteractive ok ill do it and get back to you, but i'm begging you guys to please update it. All I have left in my app is a creditcard validation system. Thats why I'm so desperate.

Hey guys, how is this going? I tried adding pod 'Caishen', :git => 'git@github.com:prolificinteractive/Caishen.git', :branch => 'swift-3.0' but it didn't work out, as I got an error on pod install.

What is the error you got? My guess is that you may not have ssh keys set up to use the command as posted. If so, this command should work for you: pod 'Caishen', :git => 'https://github.com/prolificinteractive/Caishen.git', :branch => 'swift-3.0'
Or optionally, set up an SSH key for your computer on Github as described here.

I successfully added the pods, but I get a swift binary issue. Now I tried changing swift legacy, but then I got 800+ errors in my project. Heres an image of the error.

Swift Legacy should be set to NO for a Swift 3.0 project. On Cocoapods version 1.0.x you'd have to add the following to the Podfile to set this properly for Cocoapods dependencies:
post_install do |installer|
  installer.pods_project.targets.each do |target|
    target.build_configurations.each do |config|
	config.build_settings['SWIFT_VERSION'] = '3.0'
    end
  end
end

In version 1.1.x (pre-release clients) you'd have to add a file called .swift-version in the same folder as your Podfile that only contains the text 3.0.
The following worked for me in a small example project with Cocoapods version 1.0.1:
# Uncomment this line to define a global platform for your project
# platform :ios, '9.0'

target 'CaishenTest' do
  # Comment this line if you're not using Swift and don't want to use dynamic frameworks
  use_frameworks!

  pod 'Caishen', :git => 'https://github.com/prolificinteractive/Caishen.git', :branch => 'swift-3.0'

  post_install do |installer|
    installer.pods_project.targets.each do |target|
      target.build_configurations.each do |config|
        config.build_settings['SWIFT_VERSION'] = '3.0'
      end
    end
  end

end

i'm confused on what to do, i'm trying it but it keeps telling me to fix all the syntax errors to transfer the code from 2.3 to 3.0

I did what you said and the amount of syntax error I received was well over 100+. I fixed half of them but I've been stuck for three days now. Can you please help

Here are images.

![Uploading Screen Shot 2016-10-21 at 10.34.55 PM.png…]()
![Uploading Screen Shot 2016-10-21 at 10.34.47 PM.png…]()
![Uploading Screen Shot 2016-10-21 at 10.34.43 PM.png…]()

Could you update the project please

I spent three days fixing 400 errors and upgrading the project to swift 3.0. I'm left with 25 that i don't know how to fix and i'm hoping you can help

Ill send you the updated project. I fixed most of the errors, but could you finish the tiny bit left

I'm sorry, but it doesn't look like you are working with branch swift-3.0. If you look at the implementation of isFirstResponder here for example (line 195) you will see the code difference to the screenshot you posted above.

@jackpaster we are working on the Swift 3.0 update, but it's a major change so it won't be out for at least a few weeks. I understand you need it for your project, and there is a working version if you follow @DannyVancura 's instructions carefully, we just will not make an official release until it's stable.

Here is some code how can I fix this. Its a nslocale error.
internal var isRightToLeftLanguage: Bool {
if #available(iOS 9.0, *) {
return UIView.userInterfaceLayoutDirection(for: semanticContentAttribute) == .rightToLeft
} else {
let locale = Locale.current
let isoCode = Locale.autoupdatingCurrent.object(forkey: NSLocaleLanguageCode) as? String ?? ""
return NSLocale.characterDirectionForLanguage(isoCode) == NSLocaleLanguageDirection.RightToLeft
}
}
I get an error at:  let isoCode = Locale.autoupdatingCurrent.object(forkey: NSLocaleLanguageCode) as? String ?? ""
Here is an image

@DannyVancura
@ppatriotis
Do you have a suggestion to fix this

The code on the branch swift-3.0 looks different here:
let isoCode = Locale.autoupdatingCurrent.languageCode ?? ""
return Locale.characterDirection(forLanguage: isoCode) == Locale.LanguageDirection.rightToLeft

To fix this: Running pod install again with the Podfile set up as I mentioned above (meaning: use exactly this line to integrate Caishen: pod 'Caishen', :git => 'https://github.com/prolificinteractive/Caishen.git', :branch => 'swift-3.0') should solve these issues.
Side note: If you are working on this within your project, you should never have to touch the code base of Cocoapods libraries at all. Changes are lost whenever you run pod install and this code is usually not checked into project repositories.

Can you just please help me solve these two last errors.
There this:
public func checkCardNumberPartiallyValid(cardNumber: Number) -> CardValidationResult {
let validationResult = validateNumber(number: cardNumber)
let completeNumberButLuhnTestFailed = !validationResult.isSuperset(of: CardValidationResult.NumberIncomplete) && validationResult.isSuperset(of: CardValidationResult.LuhnTestFailed)
    if completeNumberButLuhnTestFailed {
        return validationResult
    } else {
        return
            self.validateNumber(number: cardNumber)
                .subtract(.NumberIncomplete)
                .subtract(.LuhnTestFailed)
    }
}

And I get an error at: self.validateNumber(number: cardNumber)
Here is an image of the error:

@ppatriotis
@DannyVancura
Could you please fix this error. I'm not touching the cocoa pods. It's outdated swift 2.3 code i'm trying to fix that i will share with you. So that you guys don't have to put in all the work to solve this

I'm almost done and will send you guys an updated project, but I'd like a little help.

I fixed the code in the frameworks

@jackpaster I'm confused, I thought you needed the Swift 3.0 version

Yes i do.

I'm going to send you the updated code

for swift 3.0

@jackpaster the swift-3.0 branch already has the updated code for swift 3.0

There's no need to send

could you please help fix the issue. I'm about to solve my problem. I did that and I got a binary error. Could you please help me find an answer for the question above with the nslocale

@DannyVancura what would be your suggestion

@jackpaster we published the workaround months ago. We do not have the ability to debug forked code. Please use the standard workarounds and fix it if possible. It will be quicker and help us make a more stable product for everyone.

could you tell me your suggestion for the nslocale though. I understand that you have fixes for the problem but what is your suggestion to fix the nslocale problem

The code I posted for this above should work:
let isoCode = Locale.autoupdatingCurrent.languageCode ?? ""
return Locale.characterDirection(forLanguage: isoCode) == Locale.LanguageDirection.rightToLeft

@jackpaster @DannyVancura if you guys would like to hop into a chat, go here: https://gitter.im/prolificinteractive/Caishen

I'm getting an import caishen error. No such module and the frameworks are there


deps<EMAIL_ADDRESS>

Updated as part of this: https://github.com/expressjs/discussions/pull/290
deps<EMAIL_ADDRESS>

Thanks for your contribution @Machinarius! :heart:
The CI is failing as<EMAIL_ADDRESS>does not support ^, so I flagged this PR as a major change that will be included in the next major release of this library.


[Sema] Attempt diagnose generic arg ambiguity if all solutions produce generic arg mismatch

I think It does makes sense to attempt detect conflicting generic argument if all solutions produce GenericArgumentsMismatch as well.

Resolves SR-15843.

@swift-ci Please smoke test

Great! Feel free to merge.


Run gocritic linter

📝 Summary
Run gocritic linter and fix warnings
⛱ Motivation and Context
Improve code quality
📚 References
According to Effective Go switch is more idiomatic than if-else chain
✅ I have run these commands

[x] make lint
[x] make test-race
[x] go mod tidy

Codecov Report

Merging #303 (823e307) into main (cb5d553) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main     #303   +/-   ##
=======================================
  Coverage   82.85%   82.85%
=======================================
  Files           5        5
  Lines         659      659
=======================================
  Hits          546      546
  Misses         86       86
  Partials       27       27

Flag
Coverage Δ

unittests
82.85% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

server/mock_relay.go
86.75% <ø> (ø)

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

would it make sense to add gocritic to make lint?

I plan to add gocritic here

please add it to make lint too

@estensen do you like to get this over the line?

yeah, sorry about forgetting about this one
I think it's sufficient to have golangci-lint run the linters and not run some linters twice, so remove them
also nice to only have to pull down golangci-lint as a dependency

staticcheck has been a reliable, helpful tool. I don't see a need for removing it.

Just tried to confirm this, and saw this on https://golangci-lint.run/usage/linters/:

staticcheck: It's a set of rules from staticcheck. It's not the same thing as the staticcheck binary. The author of staticcheck doesn't support or approve the use of staticcheck as a library inside golangci-lint.

Sorry I didn't catch that. Have now re-added staticcheck

why remove go vet?

Because it was part of golanci-lint until it was removed yesterday in https://github.com/flashbots/mev-boost/pull/367/files

ah, it wasn't removed. But the PR went from explicitly enabling linters to enabling all and explicitly disabling instead

I think it's better to enable explicitly because it's more obvious what linters are run

But feel free to close this at this point since it was kind of overwritten by https://github.com/flashbots/mev-boost/pull/367

i think this cleanup PR is still good to have, if all the tests are done in golangci-lint.
if you are sure that all staticcheck and vet tests are run as part of golangci-lint, then feel free to update this PR with removing both tools from the linting process.

@estensen can you link to documentation that shows that the vet rules in golangci-lint are equivalent to go vet? How about staticcheck? I'm for removing redundant tools and checks, as long as they are actually fully compatible.

By default, the govet check in golangci-lint does not do anything:

https://golangci-lint.run/usage/linters/#govet

You want to add something like this to the .golangci.yml file:
linters-settings:
  govet:
    enable-all: true
    disable:
      - fieldalignment
      - shadow

Currently on main those checks (fieldalignment and shadow) are the only two with findings.

Findings
cmd/test-cli/main.go:60:10: shadow: declaration of "err" shadows declaration at line 44 (govet)
		block, err := getLatestEngineBlock(engineEndpoint)
		       ^
cmd/test-cli/main.go:70:8: shadow: declaration of "err" shadows declaration at line 44 (govet)
	if _, err := server.SendHTTPRequest(context.TODO(), *http.DefaultClient, http.MethodGet, uri, "test-cli", nil, &getHeaderResp); err != nil {
	      ^
cmd/test-cli/requests.go:19:11: fieldalignment: struct with 40 pointer bytes could be 24 (govet)
	Error   *struct {
	         ^
cmd/test-cli/validator.go:13:27: fieldalignment: struct with 64 pointer bytes could be 48 (govet)
type validatorPrivateData struct {
                          ^
server/mock_relay.go:31:16: fieldalignment: struct with 144 pointer bytes could be 136 (govet)
type mockRelay struct {
               ^
server/mock_types_test.go:14:17: fieldalignment: struct with 48 pointer bytes could be 40 (govet)
	testCases := []struct {
	               ^
server/mock_types_test.go:53:17: fieldalignment: struct with 48 pointer bytes could be 32 (govet)
	testCases := []struct {
	               ^
server/mock_types_test.go:100:17: fieldalignment: struct with 48 pointer bytes could be 32 (govet)
	testCases := []struct {
	               ^
server/mock_types_test.go:147:17: fieldalignment: struct with 48 pointer bytes could be 32 (govet)
	testCases := []struct {
	               ^
server/relay_entry.go:11:17: fieldalignment: struct with 56 pointer bytes could be 8 (govet)
type RelayEntry struct {
                ^
server/service.go:39:20: fieldalignment: struct with 16 pointer bytes could be 8 (govet)
type httpErrorResp struct {
                   ^
server/service.go:45:23: fieldalignment: struct with 80 pointer bytes could be 72 (govet)
type BoostServiceOpts struct {
                      ^
server/service.go:59:19: fieldalignment: struct with 280 pointer bytes could be 216 (govet)
type BoostService struct {
                  ^
server/service.go:236:4: shadow: declaration of "log" shadows declaration at line 216 (govet)
			log := log.WithField("url", url)
			^
server/service.go:302:4: shadow: declaration of "log" shadows declaration at line 266 (govet)
			log := log.WithField("url", url)
			^
server/service.go:483:4: shadow: declaration of "log" shadows declaration at line 422 (govet)
			log := log.WithField("url", url)
			^
server/utils.go:129:17: fieldalignment: struct with 16 pointer bytes could be 8 (govet)
type bidRespKey struct {

@jtraglia I was not aware. Thanks for showing me!

thanks!


Purify gracefully handles the situation when there are no particles

Previously it threw an exception if no particles were found.
Adds test cases for no particles, multiple particles and a single
particle in multiple locations.

Purify.java looks good to me. I need to be study ij.ImageStack to better understand what is the test script is doing.

You could start here:
https://imagej.nih.gov/ij/developer/api/ij/ImageStack.html
Source is here:
https://github.com/imagej/imagej1/blob/master/ij/ImageStack.java
Test is adding 2D image slices containing only background (0) to a 3D image stack and then drawing solid cuboid boxes of foreground (255) in the stack, of specified size and location, then Purifying and doing a particle analysis to check that only one particle remains after Purify.


Subdirectories of configdir inherit purge flag

When purging the main directory (/etc/logstash) via the $purge_configdir
the intended behavior would be to purge also every subdirectory, but
puppet does not do that by default.
To obviate this, all the subdirectories should set the 'purge' and
'recurse' parameters to $::logstash::purge_configdir.

Granted I've never setup testing before, having a look at the errors it seems totally unrelated to the changes I made.
Travis complains about repositories setup on debian-based distros.
Example:
      When managing the repository
        should contain Class[logstash::repo] (FAILED - 1)
        should contain Class[apt] (FAILED - 2)
        should contain Apt::Source[logstash] with repos => "main", release => "stable" and location => "http://packages.elasticsearch.org/logstash/1.3/debian" (FAILED - 3)

I've forked the master and I did not change anything related to repos. How does the master branch have no test error?

@elisiano I think the travis testing is fairly broken. Once the ES puppet module is on version 1.0 i will be porting allot of the improvements and fixes to this module so it will be taken care of in one large batch of changes.
Once that's done i will process this PR.
Cheers

Can one of the admins verify this patch?

Jenkins standing by to test this. If you aren't a maintainer, you can ignore this comment. Someone with commit access, please review this and clear it for Jenkins to run; then  say 'jenkins, test it'.

Can one of the admins verify this patch?

For Logstash 5.X, the module has been heavily rewritten. As a result, all outstanding pull requests (some of which are very old) are unfortunately suffering from severe merge conflicts, and many of them are probably no longer needed.
With the release of the new version, the time has come to close out all the pull requests that have, in all honesty, been neglected. Starting with a clean slate will help us focus on new pull requests that come in against the new code base and the much-improved acceptance test suite.
I apologise for the lost work that is represented in this pull request and will strive, as the current maintainer, to not let pull requests get into a state like this in future.


(mybatis + shardingjdbc ) multithreading paging query Incorrect result

environment： spring boot + mybatis +  shatdingjdbc
multithreading paging query,database exists enough data;
thread1 logic SQL: select * from table_name limit 0,2;
thread2 logic SQL: select * from table_name limit 2,2;
....
sometimes thread1 or thread2 return result's size is 0 or less than 2, sometimes thread1 and thread2 return result exist repeated data.

Could you try to execute the same SQL without sharding-jdbc and watch the results? What do you mean repeated data?
Also, please fill in the issue template as follow. Thanks.
Bug Report
For English only, other languages will not accept.
Before report a bug, make sure you have:

Searched open and closed GitHub issues.
Read documentation: ShardingSphere Doc.

Please pay attention on issues you submitted, because we maybe need more details.
If no response more than 7 days and we cannot reproduce it on current information, we will close it.
Please answer these questions before submitting your issue. Thanks!
Which version of ShardingSphere did you use?
Which project did you use? Sharding-JDBC or Sharding-Proxy?
Expected behavior
Actual behavior
Reason analyze (If you can)
Steps to reproduce the behavior, such as: SQL to execute, sharding rule configuration, when exception occur etc.
Example codes for reproduce this issue (such as a github link).

H, I hava met the same situation.
When I use a single thread to perform paging queries,  the result of each query is correct.
But then I use a threadpool to excute  the same queries(Every 'Logic SQL' is as same as above),  I found repeated results of  different threads, or sometimes the result size of some threads is not correct.
Which version of ShardingSphere did you use?
3.1.0 &  4.0.0-RC1-SNAPSHOT
Which project did you use? Sharding-JDBC or Sharding-Proxy?
Sharding-JDBC
Expected behavior
Paging query gets the correct result when single or multi-threaded
Actual behavior
Paging query performance is random when multi-threaded
Reason analyze (If you can)
I found through debugging that the offset after rewrite in each thread is correct, but when the resultsets are merged, skipOff() gets the wrong limit object(in LimitDecoratorMergedResult.java).
Steps to reproduce the behavior, such as: SQL to execute, sharding rule configuration, when exception occur etc.

There are 2 datasources in my test environment, and the sharding rule is:

The original SQL is:
'SELECT l.id from tb_loan l where l.status in( ?,  ?)  and l.ACCOUNT_DATE < ? order by l.id
limit ? , ?; '
the parameters are same except limit value;

(the l.id is PRIMARY KEY and is Globally unique)

Create a threadpool and put some threads to excute query, the limit value of thread-1 is '0, 2'', of thread-2 is '2,2', and so on;
In my test case, there are 15 records in ds_1 and 11 records in ds_2, so there are 13 pages need to be query;
Log the limit value in LimitDecoratorMergedResult,  we can find the same offset of different thread.
But now in ShardingPreparedStatement#getResultSet() method,  the value of ((SelectStatement) routeResult.getSqlStatement()).getLimit().getOffsetValue()  is as expected and has no repeated data.

Thanks to the work done by the open source team,  hope you can fix it. 💯

Thanks for your professional report, I am about to fix it.

@RaigorStonehoof Can you call me on wechat(15810310987)?

@RaigorStonehoof Can you call me on wechat(15810310987)?

OK

The reason is we should not modify SQLStatement after cached.
Should clone a new limit object and save to SQLRouteResult.

Verified, It's OK now, thank you!


Router crash on system_tests_one_router

[New LWP 3207]
[New LWP 3212]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
Core was generated by `skrouterd -c test-router.conf -I /home/runner/work/skupper-router/skupper-route'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0  sys_atomic_get (ref=0x9999999999999ecd) at /home/runner/work/skupper-router/skupper-router/skupper-router/include/qpid/dispatch/atomic.h:58
58	    return atomic_load(ref);
[Current thread is 1 (Thread 0x7ffb232c0700 (LWP 3215))]

Thread 7 (Thread 0x7ffb262c3700 (LWP 3212)):
#0  0x00007ffb306fb45c in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007ffb2fa0b0eb in suspend (ts=0x2b58be0, p=0x27eb8f0) at /home/runner/work/skupper-router/skupper-router/qpid-proton/c/src/proactor/epoll.c:401
#2  next_event_batch (p=0x27eb8f0, can_block=true) at /home/runner/work/skupper-router/skupper-router/qpid-proton/c/src/proactor/epoll.c:2503
#3  0x000000000042ff69 in thread_run (arg=<optimized out>) at /home/runner/work/skupper-router/skupper-router/skupper-router/src/server.c:1117
#4  thread_run (arg=<optimized out>, arg=<optimized out>) at /home/runner/work/skupper-router/skupper-router/skupper-router/src/server.c:1110
#5  0x00007ffb306f51ca in start_thread () from /lib64/libpthread.so.0
#6  0x00007ffb2e7b3e73 in clone () from /lib64/libc.so.6

Thread 6 (Thread 0x7ffb272c4700 (LWP 3207)):
#0  0x00007ffb306fb45c in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x0000000000473b39 in sys_cond_wait (cond=<optimized out>, held_mutex=<optimized out>, cond=<optimized out>, held_mutex=<optimized out>) at /home/runner/work/skupper-router/skupper-router/skupper-router/src/posix/threading.c:81
#2  0x0000000000447f7c in router_core_thread (arg=0x292ec60) at /home/runner/work/skupper-router/skupper-router/skupper-router/src/router_core/router_core_thread.c:228
#3  0x00007ffb306f51ca in start_thread () from /lib64/libpthread.so.0
#4  0x00007ffb2e7b3e73 in clone () from /lib64/libc.so.6

Thread 5 (Thread 0x7ffb282c5700 (LWP 3206)):
#0  0x00007ffb306fb45c in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x0000000000473b39 in sys_cond_wait (cond=<optimized out>, held_mutex=<optimized out>, cond=<optimized out>, held_mutex=<optimized out>) at /home/runner/work/skupper-router/skupper-router/skupper-router/src/posix/threading.c:81
#2  0x000000000046d214 in _vflow_thread_TH (context=0x292ec60) at /home/runner/work/skupper-router/skupper-router/skupper-router/src/vanflow.c:1303
#3  0x00007ffb306f51ca in start_thread () from /lib64/libpthread.so.0
#4  0x00007ffb2e7b3e73 in clone () from /lib64/libc.so.6

Thread 4 (Thread 0x7ffb242c1700 (LWP 3214)):
#0  0x00007ffb2e8a8f37 in epoll_wait () from /lib64/libc.so.6
#1  0x00007ffb2fa0b1f7 in poller_do_epoll (can_block=true, ts=0x2b1a7d0, p=0x27eb8f0) at /home/runner/work/skupper-router/skupper-router/qpid-proton/c/src/proactor/epoll.c:2547
#2  next_event_batch (p=0x27eb8f0, can_block=true) at /home/runner/work/skupper-router/skupper-router/qpid-proton/c/src/proactor/epoll.c:2486
#3  0x000000000042ff69 in thread_run (arg=<optimized out>) at /home/runner/work/skupper-router/skupper-router/skupper-router/src/server.c:1117
#4  thread_run (arg=<optimized out>, arg=<optimized out>) at /home/runner/work/skupper-router/skupper-router/skupper-router/src/server.c:1110
#5  0x00007ffb306f51ca in start_thread () from /lib64/libpthread.so.0
#6  0x00007ffb2e7b3e73 in clone () from /lib64/libc.so.6

Thread 3 (Thread 0x7ffb252c2700 (LWP 3213)):
#0  0x00007ffb306fb45c in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007ffb2fa0b0eb in suspend (ts=0x2b59d60, p=0x27eb8f0) at /home/runner/work/skupper-router/skupper-router/qpid-proton/c/src/proactor/epoll.c:401
#2  next_event_batch (p=0x27eb8f0, can_block=true) at /home/runner/work/skupper-router/skupper-router/qpid-proton/c/src/proactor/epoll.c:2503
#3  0x000000000042ff69 in thread_run (arg=<optimized out>) at /home/runner/work/skupper-router/skupper-router/skupper-router/src/server.c:1117
#4  thread_run (arg=<optimized out>, arg=<optimized out>) at /home/runner/work/skupper-router/skupper-router/skupper-router/src/server.c:1110
#5  0x00007ffb306f51ca in start_thread () from /lib64/libpthread.so.0
#6  0x00007ffb2e7b3e73 in clone () from /lib64/libc.so.6

Thread 2 (Thread 0x7ffb30d26340 (LWP 3193)):
#0  0x00007ffb306f66cd in __pthread_timedjoin_ex () from /lib64/libpthread.so.0
#1  0x000000000042e490 in qd_server_run (qd=<optimized out>) at /home/runner/work/skupper-router/skupper-router/skupper-router/src/server.c:1518
#2  0x00000000004ca150 in main_process (config_path=0x7ffc18edceba "test-router.conf", python_pkgdir=0x7ffc18edcece "/home/runner/work/skupper-router/skupper-router/skupper-router/python", test_hooks=<optimized out>, fd=2) at /home/runner/work/skupper-router/skupper-router/skupper-router/router/src/main.c:111
#3  0x0000000000429e84 in main (argc=5, argv=0x7ffc18edb528) at /home/runner/work/skupper-router/skupper-router/skupper-router/router/src/main.c:365

Thread 1 (Thread 0x7ffb232c0700 (LWP 3215)):
#0  sys_atomic_get (ref=0x9999999999999ecd) at /home/runner/work/skupper-router/skupper-router/skupper-router/include/qpid/dispatch/atomic.h:58
#1  qd_message_send_cut_through (msg=msg@entry=0x6ad9650, content=content@entry=0x9999999999999999, pnl=pnl@entry=0x3e29890, pns=pns@entry=0x60cf790, q3_stalled=q3_stalled@entry=0x7ffb232bf06f) at /home/runner/work/skupper-router/skupper-router/skupper-router/src/message.c:1865
#2  0x0000000000487ab9 in qd_message_send (in_msg=0x6ad9650, link=<optimized out>, ra_flags=0, q3_stalled=0x7ffb232bf06f) at /home/runner/work/skupper-router/skupper-router/skupper-router/src/message.c:1909
#3  0x000000000043542d in AMQP_conn_wake_handler (type_context=type_context@entry=0x290e2b0, conn=conn@entry=0x5697a90, context=context@entry=0x0) at /home/runner/work/skupper-router/skupper-router/skupper-router/src/router_node.c:396
#4  0x0000000000435879 in AMQP_link_flow_handler (context=0x290e2b0, link=0x2c3ed90) at /home/runner/work/skupper-router/skupper-router/skupper-router/src/router_node.c:1195
Undefined command: "py-bt".  Try "help".
#5  0x000000000042f392 in handle (qd_server=qd_server@entry=0x28381b0, e=e@entry=0x2aff6c0, pn_conn=pn_conn@entry=0x6054600, ctx=ctx@entry=0x5697a90) at /home/runner/work/skupper-router/skupper-router/skupper-router/src/server.c:1105
#6  0x000000000042ffc6 in thread_run (arg=<optimized out>) at /home/runner/work/skupper-router/skupper-router/skupper-router/src/server.c:1143
#7  thread_run (arg=<optimized out>, arg=<optimized out>) at /home/runner/work/skupper-router/skupper-router/skupper-router/src/server.c:1110
#8  0x00007ffb306f51ca in start_thread () from /lib64/libpthread.so.0
#9  0x00007ffb2e7b3e73 in clone () from /lib64/libc.so.6

Thread 7 (Thread 0x7ffb262c3700 (LWP 3212)):

https://github.com/ganeshmurthy/skupper-router/actions/runs/6303494328/job/17112845008#step:39:51

This issue has already been fixed by https://github.com/skupperproject/skupper-router/commit/92c5ebd0e0ec8084500837fd3a01455a661bf33b


using k_euler_ancestral

i've found that if editing this line in txt2img.py
samples_ddim = K.sampling.sample_lms(model_wrap_cfg, x, sigmas, extra_args=extra_args, disable=not accelerator.is_main_process)
to this
samples_ddim = K.sampling.sample_euler_ancestral(model_wrap_cfg, x, sigmas, extra_args=extra_args, disable=not accelerator.is_main_process)
it actually works
it appears to work in another iteration i'm using, but i do not believe that it would carry over to dream.py since it does not appear to utilize the txt2img script anymore.
utilizing k_euler_ancestral would be extremely vital for many users since it has a faster sampling rate and is more accurate at lower steps!

There is a PR
https://github.com/lstein/stable-diffusion/pull/52


Change staticSourceKitTibsWorkspace to define the sources in-line with the test instead of in a directory

Having the source of the test cases defined out-of-line in LSPTestSupport/INPUTS makes test cases a lot harder to read. It would be much nicer if we could specify the contents of the source files inside the test case itself.
While doing this, we should also consider if we can simplify staticSourceKitTibsWorkspace further (I’m not sure if we can or, if we can, how).

Tracked in Apple’s issue tracker as rdar://116705679


Vector2 angle inconsistency due to negative zero

Godot version:
3.2.3-stable
OS/device including version:
Windows 10
Issue description:
var zv = Vector2(0,0)
print("Zero vector angle: ", zv.angle())
print("Negated zero vector angle: ", (-zv).angle())

Zero vector angle: 0
Negated zero vector angle: -3.141593

I don't know why Vector2 (and Vector3) are in particular allowing this problematic negative zero value to get into the system when it doesn't happen in scalar arithmetic, as seen here:
var v = 0
var nv = -v
var nnv = (-Vector2(v, v)).x
print("v: ", v)
print("nv: ", nv)
print("nnv: ", nnv)
print("v == nnv: ", (v == nnv))

v: 0
nv: 0
nnv: -0
nv == nnv: True

A different issue caused by Vector2 providing a gateway to negative zero pollution was patched over in a previous pull-request  here: https://github.com/godotengine/godot/pull/6698
Steps to reproduce:
See above
Minimal reproduction project:
N/A

Does this cause any problems in practice?

The problem was discovered because I was dividing a network of points and lines into polygons by sorting the edges from each point according to the angle.  My code broke because I had assumed that if p and q are both type Vector2 then
(p - q).angle() == (-(q - p)).angle()

This obviously true statement is unexpectedly false when p == q.  This took a bit of debugging to find out and now requires some special case code.
Just because it's in the IEEE standard doesn't mean we have to like it.
GDscript seems to have kept negative zeros from showing up in normal calculations (eg you don't get one when you write -0), and when Vector2 is used as a key in a hash-table (see the pull request above), so we could have the following line at:
https://github.com/godotengine/godot/blob/master/core/math/vector2.cpp#L33
real_t Vector2::angle() const {
	return (x != 0 && y != 0 ? Math::atan2(y, x) : 0);
}

This isn't going to add much overhead to the already heavily slow trig function.  If we were after raw speed and efficiency, there is the alternative of the DiamondArg function which has many advantages to it:
https://www.freesteel.co.uk/wpblog/2009/06/05/encoding-2d-angles-without-trigonometry/

Your scalar arithmetic example uses integers, in which there are no signed zeros:
var v = 0
var nv = -v  # this is still 0

Try with floats:
var v = 0.0
var nv = -v  # this is now -0.0

This is a non-issue. Seeking the angle of a zero vector to the x-axis is meaningless; so the correct answer is "undefined". The fact that C++ provides a consistent result (either 0 or ±π depending on the ±0 of the components) doesn't change the fact that the answer is meaningless.

This obviously true statement is unexpectedly false when p == q. This took a bit of debugging to find out and now requires some special case code.

Yes, the same way one needs to check for zero before attempting to divide by zero, one should check for a zero length vector before trying to find its angle.

If that is the case, we should safely assume that any time angle() is applied to a zero vector it is certainly a mistake, and we should therefore print a warning or error message to help people out.
As there was no documentation about this condition I tested the function on Vector2(0,0) and it returned zero, so I assumed everything was fine and that the case was being handled efficiently in the C++ level so I wouldn't need to waste precious cycles in the interpreted code testing for it.  I did not know much about this -0.0 curiosity.  In all other cases the use of 0.0 and -0.0 are totally indistinguishable.  You could only tell the difference between them by examining its bit pattern or printing to ascii and looking for a minus sign.  Until now I did not know there was a single mathematical function that treated them differently.  Now I know one.  It seems the special cases for it have been adopted off-spec from some conventional C++ release for the sake of reproducibility.  But they are also useless.  I'm willing to bet my bottom dollar that no programmer has ever intentionally relied on these cases.  There might be cases where it's accidentally used, which is why consistency is important, but it's never on purpose.
If this function is not going to give an answer that is predictable enough to design against (and these -0.0 case differences are not) then we should get a runtime warning at the minimum.

I disagree, the answer is correct; so no warning is needed.
atan2 has a clear and specific definition. It has discontinuities around y = 0, which is why there is a difference between y = ±0. The problem is that trying to get the angle of a zero vector is meaningless. In the specific example provided, what is attempted is to find the angle between two points. When the two points are on top of each other, any answer is correct. The question is meaningless, but the answer is correct, because any answer would be correct.
So, as I said before, the same way one needs to check for zero before attempting to divide by zero, one should check for a negligible distance between two points, before trying to find the angle between those two points. This is the user's responsibility, not the engine's, because the engine will return the right answer regardless of what the user is trying to do.

I seem to have run into this problem when doing 8 direction input.
The problem is x and y could be less then 1 or greater then 0 aka diagonal and can also have a sign, so I can't use abs and I can't use int
however -0 is treated as less then 0 so it triggers the if statement
func get_input_axis   (id:int)->Vector2:
	id = wrapi(id, 0, 5)
	if id == INPUT_ID_ANY:
		var p1  = get_input_axis(1)
		var p2  = get_input_axis(2)
		var p3  = get_input_axis(3)
		var p4  = get_input_axis(4)
		var any = Vector2.ZERO
		if int(p1.x) < 0 || int(p2.x) < 0 || int(p3.x < 0) || int(p4.x < 0):
			any.x -= 1
		if p1.x > 0 || p2.x > 0 || p3.x > 0 || p4.x > 0:
			any.x += 1
		if p1.y < 0 || p2.y < 0 || p3.y < 0 || p4.y < 0:
			any.y -= 1
		if p1.y > 0 || p2.y > 0 || p3.y > 0 || p4.y > 0:
			any.y += 1
		return to_8dir(any)
	return to_8dir(Input.get_vector("p"+str(id)+"-left", "p"+str(id)+"-right", "p"+str(id)+"-down", "p"+str(id)+"-up"))

I do lerp(velocity, Vector3(0.,0.,0.), delta*MOVE_LERP_SPEED) and get negative velocities (-0) for CharacterBody3D

@ivanvoid how does lerp relate to angles?

@AThousandShips way to reproduce:
var v = Vector3(-3, -3, -3)
func _physics_process(delta):
    v = lerp(v , Vector3(0, 0, 0), delta)
    print(v)

will output
(-0, -0, -0)
why? expected to be positive zeros, no?

Why? It's supposed to be somewhere between -3 and 0, it could only be 0 if delta is exactly 1

@AThousandShips To be honest I don't understand why you can't just recreate error and see, instead of just guessing, so this is the  project that does this just run it in godot and look at debug output.

I've explained to you? And said to open a separate report, why aren't you listening to what I'm explaining and suggesting, this is off topic to this issue which is about `Vector2.angle()~

But I'll explain it again:
lerp(v, Vector3(0, 0, 0), delta) will only become exactly Vector3(0, 0, 0) if delta is 1, but delta is never 1, it's mostly much smaller than one, so it gradually drifts but stays on the side of v, please check if the values are actually exactly -0 and not, as I suggested, -0.000001 or similar


supporting 1 or more values of an enum in a querystring variable

I've tried the following for a GET request parameter where I could 1 or many values from an enum, and neither of the work. I eiether get an error saying that "querystring.product should be equal to one of the allowed values" when I send multiple values or "querystring.product should be an array" when I send a single value:
    product: {
      type: ["string", "array"],
      enum: ["product1", "product2", "product3"],
      default: ["product1", "product2"],
    },

and this
    product: {
      type: "array",
      items: {
        type: "string",
        enum: ["product1", "product2", "product3"],
      },
      default: ["product1", "product2"],
    },

@longmatthewh I think it makes sense as your value cannot be an array and a string at the same time. You should use an anyOf instead !


Update to checkout@v3.

For now, this appears to just switch to node 16, but over time v2 won't get updates.

Preview | Diff

The error there is "License “cc0“ is not allowed for W3C Specifications." and wasn't caused by this change. I'm not sure if you want to use the "w3c-software-doc" license instead or disable the check somehow.


Image blending

This adds a node for blending one image onto another.

Looks good to me, could you also cherry-pick this and make merge requests for jade-devel and kinetic-devel?


Blank screen after using Sugarizer Server Dashboard

The Sugarizer home screen become blank after using Sugarizer Server Dashboard.

Below is a video to explain how to reproduce the issue:

Connect to Sugarizer (new user or login with an existing user)
Connect to Sugarizer Server Dashboard (could be an admin or a teacher)
Open a Journal entry (from any user)
Go back to Sugarizer, the screen is blank

The only way to fix the problem is to clean the browser cache.

Fixed in https://github.com/llaske/sugarizer/commit/1f0ebf90734b555ad321f8dd1e0d547697e8b171


strings: Map produces invalid utf-8 when passed PAD (U+0080)

What version of Go are you using (go version)?
go version go1.10.2 darwin/amd64
Does this issue reproduce with the latest release?
Yes
What operating system and processor architecture are you using (go env)?
GOOS="darwin"
GOARCH="amd64"
What did you do?
Calling strings.ToLower with a PAD (U+0080) character causes the output to be invalid utf-8. It appears this bug is a faulty boundary condition in strings.Map: the comparisons r <= utf8.RuneSelf should perhaps be rewritten as r < utf8.RuneSelf.
https://play.golang.org/p/YVkdm_KyRPT
What did you expect to see?
0x41c280
true
0x61c280
true
What did you see instead?
0x41c280
true
0x6180
false

There may well be a bug here (and I believe you've diagnosed it) but this is the first time I've heard U+0080 called PAD. Where did you get that name?

Best I can tell the name PAD originated in RFC 1345. In addition to the links in the previous reply, the name also appears on the Wikipedia page for C0 and C1 control codes and on Wiktionary. Both sources include a morsel of history. The name PAD ironically appeared in a proposal for C1 control pictures, which was apparently accepted  (because we have them now?) even though the control picture in the standard has the name XXX instead of PAD. I called it by the only unambiguous, if unofficial, name I found.
If you think the name (or lack thereof) is a problem, let's appreciate that we aren't tasked with deciphering what the character means. The answer to that starts with It depends... and ends with a headache.

@gopherbot Please consider this for backport to 1.10, it's a regression.


Decent landing page for legacy Fractal URL

Need a simple "fractal is now decent" landing page design for http://fractalframework.xyz/
New design will replace:

Page is live. Closing this issue


Upped dvm to use a new 1.4.1 boot2docker image

Added TLS support for dvm for usage with the new 1.4.1 b2d image
Changed dvm env to copy certs and set correct env vars if TLS is being used

@fnichol Any chance of seeing this merged?

Would love to skip the patching at Cfgmgmtcamp :+1: hehe


Where should I get the peer node

Next add the mainnet mainchain nodes as peer (bootnode peers):

{
    "Network": {
        "BootNodes": [
            "xxx.xxxx.xxx.xxx:6800",
            "..."
        ],
        "ListeningPort": 6800
    }
}

@EanCuznaivy please help

The mainnet is in the configuration file, and the testnet uses <IP_ADDRESS>: 6801


Put password in quotes to allow more characters in password

@gugu Thanks for the pull request! Much appreciated. The tests on the CI are failing though, can you check please? On the PR itself, it seems the case might be allowing spaces in the password instead of longer ones?

@gugu the tests are not passing still. Can you check again? Also, can you let me know which OS are you testing on? I want to ensure it works across Windows, Linux and MacOS.

Fixed. Still can be an issue if password includes ', but it is better than before

This is definitely a step in the right direction, but we probably should be properly escaping things that we pass to the command line.

yes, no join in "exec" function in util.ts

@PEConn I did the right thing - added execFile function and started to run apksigner and java using this function. Tested on linux, works fine. exec function should not be used to run user-provided input

Thanks for that. This looks good to me.


Fix #7 @Media Issue

Thanks for writing such a good tool! I tried a couple approaches to fix the @media issue and was able to make it work without changing the core code.
The new code is essentially in two parts. First, I identify a '@media ... { ... }' block and for each line in the block, I add a pseudo-class: 'media(###)' (i.e. media003) and save the '@media ...' class. Your code then runs normally and identifies the 'media(###)' as a parent class and sorts the child classes. After what would usually be the last step, the new code replaces all of the 'media(###)' classes with the appropriate '@media ... ' declaration.

Thanks a lot for your lovely PR!

Of course! I'll close this PR and open a new one soon


Bulk insert of failed receipts using query macro

Fixed #273
Added error logs storing to the table
Successfully ran commands:-
cargo clippy --all-targets --all-features
cargo fmt
cargo sqlx prepare --workspace -- --all-targets
please do recheck on your device

Please take a look at the latest commit, hope everything's good

Pull Request Test Coverage Report for Build<PHONE_NUMBER>1
Details

29 of 33 (87.88%)  changed or added relevant lines in 1 file are covered.
1 unchanged line in 1 file lost coverage.
Overall coverage increased (+0.03%) to 68.296%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

tap-agent/src/agent/sender_allocation.rs
29
33
87.88%

Files with Coverage Reduction
New Missed Lines
%

tap-agent/src/agent/sender_allocation.rs
1
89.74%

Totals

Change from base Build<PHONE_NUMBER>6:
0.03%

Covered Lines:
4233

Relevant Lines:
6198

💛  - Coveralls


Homebrew nightly build not updated anymore (since 26)

Last update was on the 26th of October: https://github.com/servo/homebrew-servo
Does ./etc/ci/update_brew.sh still run?

https://github.com/servo/servo/blob/master/etc/ci/buildbot_steps.yml#L29 says it should be.

It seems that the TOKEN variable is unbound: http://build.servo.org/builders/mac-nightly/builds/129/steps/shell__3/logs/stdio, causing the upload to fail.
Will investigate further after class.

Reopening until mac-nightly runs again tonight and I can confirm that this is working again.

@larsbergstrom started a force build and this is working again: https://github.com/servo/homebrew-servo/commit/3ec0ce011547f41f5854177427508c087ea4533a.


table is not defined / userID is not defined

Everytime when i try closing an open support ticket, an error pops up saying userID is not defined and im not sure how to fix this
When replying to an open support ticket with [prefix]reply, there is an error saying table is not defined

dbTable2 is still not defined and the reply feature still doesn't work

Line: 111 and 112

Yes

The log broke now Image

It logs messages which are not in embed, but doesnt log embed messages
Image

Try to put this here
for(var i = 0; i < msg.embeds.length; i++) {
  collection += `${msg.embeds[i].description}\n\n`;
}

It worked!

I have a question

Is it possible to make it like so when a user DMs the Bot, the Bot asks him some questions before creating a channel in the server?
In short: DM Menu

I found another bug

You can do so using a reaction menu or an awaitMessages function.

The Bot creates the ticket channel on top of the server when Admin perms are denied but all other perms are enabled

Here, directly put an ID like channel.setParent('id'); instead of config.ticketCategory

It still creates the channel on top

Image

Do you see any error in the console?

Missing Permission and Missing Access

No line shown

Error

It's an error on your side
Check this and this


Rake import:model throws an BadRequest error

Elasticsearch version 5.1.1
Running this command will throw a BadRequest error
rails new searchapp --skip --skip-bundle --template https://raw.github.com/elasticsearch/elasticsearch-rails/master/elasticsearch-rails/lib/rails/templates/03-expert.rb
rake aborted!
Elasticsearch::Transport::Transport::Errors::BadRequest: [400] {"error":{"root_cause":[{"type":"mapper_parsing_exception","reason":"No handler for type [multi_field] declared on field [user_location]"}],"type":"mapper_parsing_exception","reason":"Failed to parse mapping [article]: No handler for type [multi_field] declared on field [user_location]","caused_by":{"type":"mapper_parsing_exception","reason":"No handler for type [multi_field] declared on field [user_location]"}},"status":400}
Tasks: TOP => elasticsearch:import:model

+1 same issue

As a test I changed "multi_field" to "text", now I have other issues but with a different module.

Correct, the most immediate problem is the type: 'multi_field' setting in the mapping. Simply changing it to "text" isn't enough to make the application run, as @clschalkwyk writes.
I'll have a look into the application templates and make them run on Rails 5 & Elasticsearch 5 in the next days.

I've spent some time with the templates and Rails 4 & 5 and Elasticsearch 5, and all the templates should be now fixed and work for both Rails and Elasticsearch version 5. Importantly, the tests have been fixed as well, so the application templates are again the main entry point for anybody learning the Rails integration for Elasticsearch.
Can you please try the current master and report any issues? Thanks!


Merge makefile

Makefile is functional (and easy to use), ready to be used :)

Keeping branch open in case makefile requires revision.


create preprocessing library

Create a python file that contains several functions for processing the raw images
processing: rescaling, deleting white lower bar, converting color (black & white to RGB and vice versa)
look up how to include comments for help() method in the functions
save the python file in the correct format, so we can import the functions into other files

[ ] deleting white bar
[ ] reshaping
[ ] data augmentation
[ ] ?


BulkSaveChangesAsync, parent / children not working

I have a ScheduledTask class with ParentTask and SubTasks.
If i create a parent and one child, only one task is created.
var task = new ScheduledTask() {
  Subject = "Main",
  SubTasks = [
     new new ScheduledTask() {
        Subject = "Sub task"
     }
  ]
}

repo.AddAsync(task);
repo.BulkSaveChangesAsync();

Only one (Main) is created.
repo.SaveChangesAsync() -- works just fine! :)

Ok, with proper constraint  I'm getting tis error:
(0x80131904): The MERGE statement conflicted with the FOREIGN KEY SAME TABLE constraint "FK_ShippingTasks_ShippingTasks_ParentTaskId". The conflict occurred in database "BulkTest", table "dbo.ShippingTasks", column 'Id'.
The statement has been terminated.

The sample project to reproduce attached in ZIP.
BulkTest.zip
Thanks a advance!!

Unable to reproduce this issue, can you write a test for it or adapt existing one, check RunSaveChangesOnInsertAsync Also what Db are you using?

Did you manage to reproduce it?

Yes, self-referenced is not yet supported is not supported automatically with BulkSaveChanges.
Will put Enhancement tag, and for now you can use BulkOps directly (with SetOutputIdentity) in following way:
var mainTasks = new List<ShippingTask>();
var subTasks = new List<ShippingTask>();
var consignments = new List<Consignment>();

for (var i = 1; i < 1000; i++)
{
	var consignment = new Consignment()
	{
		Name = Guid.NewGuid().ToString(),
	};
	consignments.Add(consignment);

	var mainTask = new ShippingTask()
	{
		Name = "Main Task " + i,
		SubTasks = []
	};
	mainTasks.Add(mainTask);

	var subTask = new ShippingTask()
	{
		Name = "SubTask test " + i,
	};
	subTasks.Add(subTask);

	mainTask.SubTasks.Add(subTask);
	consignment.ShippingTask = subTask;
}

context.BulkInsert(mainTasks, new BulkConfig { SetOutputIdentity = true });

foreach (var mainTask in mainTasks)
{
	foreach (var subStaskItem in mainTask.SubTasks)
	{
		subStaskItem.ParentTask = mainTask;
		subStaskItem.ParentTaskId = mainTask.Id;
	}
}

context.BulkInsert(subTasks, new BulkConfig { SetOutputIdentity = true });

foreach (var consignment in consignments)
{
	consignment.ShippingTaskId = consignment.ShippingTask.Id;
}

context.BulkInsert(consignments);

Thanks. Thats what i did already.


syntax error when using the file stand lone

docker@boot2docker:~$ sh docker-cleanup-volumes.sh
docker-cleanup-volumes.sh: line 10: syntax error: unexpected "("
docker@boot2docker:~$

1
and

cleanup.sh: 3: set: Illegal option -o pipefail

Error HERE
allvolumes+="${vid##*/}"
allvolumes+="${bmv}"

im sure the author would accept a PR ;)

finally I solve my problem using such single command line :P
docker ps -a |  awk -F" " 'NR>1 {print $1}' | xargs docker rm -v

this command clean up your volumes? without removing the active or used volumes?

sweep all volumes, i am afraid that the active ones are removed too. just my special case

you might want this tool, maybe better than the shell script.

Hi, docker-cleanup-volumes.sh is a bash script, boot2docker does not have bash installed by default so you either have to install bash on it or use the docker image for this script.
Also @derek-adair is correct, PR's are welcome :)

boot2docker comes with bash (mingw) but its old...
$ echo $BASH_VERSION
3.1.23(6)-release

not sure if backporting makes sense, but the dockerized version works fine if you ssh into the VM.
run Boot2Docker Start an then:
boot2docker ssh
# wait until connection is established...
docker run -v /var/run/docker.sock:/var/run/docker.sock -v /var/lib/docker:/var/lib/docker --rm martin/docker-cleanup-volumes --dry-run

Btw: to paste the docker run ... line use the mouse/context menu, keyboard shortcuts dont work here.

there is some error when running without --dry-run option:
[vagrant@devenv docker-cleanup-volumes]$ sudo sh docker-cleanup-volumes.sh
docker-cleanup-volumes.sh: line 61: $1: unbound variable
commented # the lines of the --dry-run option and this script works just fine!


some ELF get function jumps wrong (Rhapsody III JPN)

hey.
apparently i came across an game executable (SLPS_200.66) weighing at under 2MB (1,67MB to be exact) in which your extension tries to do out-of-bounds function jumps like these

here are the error messages, from the Bookmarks section

Type
Category
Description
Location
Label
Code Unit
Mem Block

Error
Bad Instruction
Could not follow disassembly flow into non-existing memory at 0020b140 (flow from 00100080)
00100080

jal SUB_0020b140
main

Error
Bad Instruction
Could not follow disassembly flow into non-existing memory at 0029ade0 (flow from 00100098)
00100098

jal SUB_0029ade0
main

Error
Bad Instruction
Could not follow disassembly flow into non-existing memory at 0020a480 (flow from 001000a0)
001000a0

j LAB_0020a480
main

tbh to get the "correct" function jumps you have to divide out-of-bounds offset values for those jumps by 2, like so
0020b140 / 2 = 001058a0
0029ade0 / 2 = 0014d6f0
0020a480 / 2 = 00105240
but even that feels like a workaround at best, so i'm not sure if there's any way to "fix" this issue entirely without breaking stuff with other PS2 ELFs at this point

Looks like this is a duplicate of #53. For now you can disable relocations during import.

oh
alright
disabling relocations then!


Difficulty removing grid-span margins without Omega/Gutter mixins

The loss of the Omega and Gutter mixins has made working with nested grids... Difficult, to say the least. While grid-collapse is essentially the same thing, it can't be used to solve the same problems.
The issue I'm running into is this: I've got a grid container with two grid elements inside. Left element is span 4, right element is span 6 (Working with a 6 col grid). Layout is perfect, except I need to remove the left gutter on the 6 col element, and the right gutter on the 4 col element. Previously I could have just used the Gutter and/or Omega mixins to do this easily. If I try to use grid-collapse on my grid-spans, the margins get removed, but they also take over the whole width of the grid container as well.
Is there something I'm missing in 2.0 to accomplish the same selective margin removal? Or is my only option just reverting to 1.8 and getting all the useful mixins back?
Here's an image to help illustrate my issue.

for this use case, you might need to nest one level deeper
proto-code:
.grid-span-4 {
  @include grid-column(4);
    .nested-container {
      @include grid-collapse {
      .categories, quicklinks {
        @include grid-column(1 of 2)
      }
    }
  }
}
```

Wow thanks for the quick reply!
It worked, I'm not entirely sure how, but that's exactly what I was trying to have happen.
It seems like the new workflow is to grid-collapse the outer grid-container, then add the grid-span elements, and finally wrap those inner grid-span blocks and grid-collapse it. Is that fairly accurate?

grid-collapse is there to consume the gutters of whatever it's parent element is.
In your case, when you instanced a nested grid, that is a new grid object. Because you want to nest it, you need to consume its parent's gutters (in this case, it's parent grid-column)

Nice, thanks for the clarification.
Gonna close this out now.


Pattern synonyms do not show types nor attached haddock descriptions

It seems when I generate haddocks for pattern synonyms I get neither a signature for the synonym nor any attached haddock entry.
I am currently generating about 40,000 of these. It'd be really nice to be able to tell what they meant.
For bonus credit, if the pattern synonym is a simple bidirectional synonym it'd be really nice to be able to see the pattern, too.

Looks like this was fixed in #709.


BLERemoteCharacteristic::writeValue

Hello,
it's me again. ✋
When calling   void BLERemoteCharacteristic::writeValue(uint8_t* data, size_t length, bool response);  the function seems to stuck at m_semaphoreWriteCharEvt.take("writeValue");.
When I remove the semaphore  everything works. (I kown, it's risky)
My environment: Win10 Platformio 1.6 , built-in ESP-IDF; running on ESP Dev Board

Welcome back.
One question, did you check you are trying to write characteristic is exposing write properties, and if it does, is it normal write or write no response?
Also do you send request with response set to true or false.

I have some suspicions. Could you try to add some delay in your code right after write request?
Just for test purpose 1000ms or so. Thanks.

I tested it and it has no effect.
		pCharacteristic->writeValue(str);
		vTaskDelay(1000/portTICK_RATE_MS);


[BEAM-8537] Provide WatermarkEstimator to track watermark

Summary of major API changes:

WatermarkEstimatorProvider: similar to RestrcitionTrackerProvider

WatermarkEstimator: An abstract class which provides APIs that should be called by the framework

Summary of implementation changes:

Provide 3 basic types of WatermarkEstimator: MonotonicWatermarkEstimator, WalltimeWatermarkEstimator and ManualWatermarkEstimator

When there is a watermark_estimator_param in SDF: restirction will be (restriction, estimator_state). Otherwise, stay the same.

Run PythonLint PreCommit

Retest all please

Run Python PreCommit

Run Python2_PVR_Flink PreCommit

Run Portable_Python PreCommit

Run PythonLint PreCommit

Run RAT PreCommit

Hi @robertwb @lukecwik, most comments should be addressed by latest commits, please take another look. Thanks for your help!
I don't put watermark_estimator into OutputProcessor because the OutputProcessor is not created per-element, but per-bundle.

Re: https://github.com/apache/beam/pull/10375#discussion_r379142182
We still need to check whether watermark_estimator is None in the _OutputProcessor.process_output(). because there are other non-sdf dofns calling this.

Run PythonFormatter PreCommit

@robertwb and @lukecwik, the PR is updated based on our discussion yesterday. PTAL : )

Kindly pinging : )
If everything looks fine, I'll squash them into one commit before merging.

Run Portable_Python PreCommit

Having a example/sample code for using it would be excellent :)

Having a example/sample code for using it would be excellent :)

If you are looking for the usage, here is an example of using ManualWatermarkEstimator: https://github.com/apache/beam/blob/master/sdks/python/apache_beam/runners/portability/fn_api_runner/fn_runner_test.py#L536-L560. What kind of examples are you looking for?

Excellent. I've been reading the example. Thank you.
I have a follow on question, but that might be better asked on Stackoverflow instead. Thanks

Excellent. I've been reading the example. Thank you.
I have a follow on question, but that might be better asked on Stackoverflow instead. Thanks

You can also post your questions on our dev mailing list<EMAIL_ADDRESS>


shelf number and custom sorting

I'm used to sort my list by shelfs. So when I go through my favorite supermarket I don't have to scroll up and down. Implementation is quiet easy:

You: Provide another optional field named "shelf number" (or "priority" or what ever) in the item creation dialog. It should be optional or preset with "0" (see more on "0" below).
Me: When I create new items I enter the shelf number, e.g. "1" for the shelf next to the entrance and so on.
You: sort by "shelf number + alphabetically", so all items with shelf number "1" are before any other items with higher shelf number. Within each group they are sorted alphabetically. In addition all items without any shelf number should go to the top.
You: display the shelf number in the list, so its clear which items are sorted by shelfs and which are not. Example:

Shoes
Toys
1 Bred
1 Coffee
1 Marmelade
2 Chips
2 Chocolate
3 Juice
Programatically you could treat shelf-number "0" as "no shelf number". So sorting becomes very easy by "shelf number" starting from 0 + alphabetically. When displaying the list just hide "0" so those items seem to have no shelf number. In the item creation dialog you could preset the field with 0.
Sorting of the favorites list should not take shelf numbers into accounts: so just alphabetically here.

I have been playing with that as well. Also because items marked as important should be on top of the list, regardless of their category.

Wouldn't it be better to use some common categories instead? Groceries, Clothes, Chemistry, etc. I don't think numbers will be easy to adopt for those who shop in different supermarkets. From the app side it would be great to have items falling to categories automagically once they were assigned manually. For example, I add milk to Groceries category, next time I add milk I have the category preselected.
Any sorting feature would be great though, it's quite difficult to scan a plain list once you reach some shelf in a supermarket.

And it would be great to have this feature syncable


Errors encountered on Windows 10

I'm not on windows so I can't test, but I feel it might be on this line here
I'm wondering if it's extraneous to mention the base parameter, if you're willing to troubleshoot a little you can try changing the line (interactive-adventure-game-tool/gulp-tasks/_upload.js):
From:
---return gulp.src('./src/skill/**/*.{js,json}', { base: "." })

To:
+++return gulp.src('./src/skill/**/*.{js,json}')

Sure just wanted to pass it on
On Aug 2, 2016 7:48 PM, "Raj Nigam"<EMAIL_ADDRESS>wrote:

I'm not on windows so I can't test, but I feel it might be on this line
here
https://github.com/alexa/interactive-adventure-game-tool/blob/master/gulp-tasks/_upload.js#L15
I'm wondering if it's extraneous to mention the base parameter, if you're
willing to troubleshoot a little you can try changing the line (
interactive-adventure-game-tool/gulp-tasks/_upload.js):
From:
---return gulp.src('./src/skill/**/*.{js,json}', { base: "." })
To:
+++return gulp.src('./src/skill/**/*.{js,json}')
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/alexa/interactive-adventure-game-tool/issues/1#issuecomment-237119223,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAid3GXHLJbjbxWgy7zZDSFHyQT_D4kEks5qcAFugaJpZM4JbORi
.

I'm guessing you probably got some errors when you ran npm install as well?

no everything was fine
On Tue, Aug 2, 2016 at 9:21 PM, Raj Nigam<EMAIL_ADDRESS>wrote:

I'm guessing you probably got some errors when you ran npm install as
well?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/alexa/interactive-adventure-game-tool/issues/1#issuecomment-237133365,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAid3KqqnSghyX5r354eUA2XSUtY8qXqks5qcBdJgaJpZM4JbORi
.

I tested things out on a Windows box and ran into the same issue.  I tried the fix suggested by @rajington and seemed to clear things up so I've pushed a commit:  edad8d998152bf310b0f5779f1a352aef5fe4110
Let me know if this clears things up for you and I'll close the issue.

Closing since we haven't heard anything.  Feel free to re-open if you're continuing to have issues.


The pipeline metrics in the UI are showing with value as NaN instead of the actual value

After each batch/incremental run the pipeline metrics in the UI are showing with the value as NaN as shown in the screenshot. This has to be fixed.

The above mentioned metrics are captured with the Micrometer Gauges and the Gauge holds a weak reference to the object being observed. So, in the current application whenever the GC happens the pipeline metrics are being erased. This has become more evident after the recent changes of hinting the application to run a GC after the pipeline runs.


Fix help formatting

Just some candidates for a cleanup I noticed while working on the build-index fixes.

Current coverage is 65.85% (diff: 100%)

Merging #1651 into master will not change coverage

@@             master      #1651   diff @@
==========================================
  Files            53         53
  Lines          6001       6001
  Methods           0          0
  Messages          0          0
  Branches       1184       1184
==========================================
  Hits           3952       3952
  Misses         1843       1843
  Partials        206        206

Powered by Codecov. Last update 4399116...e5d75a4


Feature/bittorrent only on vpn desktop

The second part of #166.
Not sure if this is a correct way.

I didn't tested, but it looks reasonable, only because my main reservations are in the core VPNs class.

I'll test now, perhaps the notification component I'm thinking is that StatusLine you found @grzesiekrzaca

Between VPNBitTorrentGuard and the "refresher" I'm starting to feel this a little odd, but still inside the limits

Yeah I'm not entirely happy with that but had no idea where to put it.

testing, not fully functional. (e.g. when Bittorrent is disabled, prior seeds, do not pause, they stay seeding)

I'll try to fix a few things, for instance, the label that says that Bittorrent is disabled lags with respect to the VPN status button, ideally these two should change at the same time, I'll see why this is.

Fixing the issue where the components don't refresh at the same time.
It's architectural.
I'm removing the registration and call to VPNStatusRefresher to refresh from inside these components, since this is a blocking call, one is updated, then the other one calls refresh again, then it gets updated.
I'm going to make a single call from outside, and they just listen to the status change.


[release-1.22] Make socks5 optional, off by default

This is an automated cherry-pick of #943

/test all


lending: cross collateral / cross liquidity support

This PR adds support for multiple collateral deposits and liquidity borrows per obligation (currently set to 10 total). Obligation tokens are retained, specific to each collateral and minted 1:1.
Backwards compatibility was not a design goal. Obligation, reserve, and lending market structs, methods, serialized objects, and errors have been significantly altered.
Serum dex prices are no longer used. solana-flux-aggregator is used instead. We'll need to provide oracles for reserve currencies to the lending market quote currency.
Functional tests are all working except for genesis_accounts. Unit tests have been removed, so please don't review those yet. I'll rewrite them after the implementation is reviewed.
There are only a few @TODO comments left with questions for review. Thank you for your reviews!
Issues

Closes https://github.com/solana-labs/solana-program-library/issues/993: many-to-many collateral / liquidity is supported; obligation tokens are retained for each collateral; fees now come out of liquidity
Closes https://github.com/solana-labs/solana-program-library/issues/1138: liquidations now adjust repay amount based on the value of available collateral
Closes https://github.com/solana-labs/solana-program-library/issues/992, closes https://github.com/solana-labs/solana-program-library/issues/996: using dex market impact price for refreshing market values presents various issues; using a TWAP/VWAP/oracle could be more efficient and accurate; for now an oracle is used
Closes https://github.com/solana-labs/solana-program-library/issues/989: all lending market values are now in quote currency (provided oracle support)
Closes https://github.com/solana-labs/solana-program-library/issues/998: it's possible to deposit, refresh an obligation, and borrow in the same transaction
Affects https://github.com/solana-labs/solana-program-library/issues/988: borrows are now either an exact amount or 100% of available borrowing power; we could apply a minimum amount of liquidity to receive in the latter case; potentially also applies to repay and liquidate instructions

Todo

[ ] Add multiple deposits and borrows to the end-to-end test
[ ] Address remaining TODO comments
[ ] Rewrite unit tests
[ ] Fix oyster UI

@jstarry This is ready for review again. I've updated the PR description @ https://github.com/solana-labs/solana-program-library/pull/1441#issue-591382322
https://github.com/solana-labs/solana-program-library/pull/1441/commits/746f38aab4ed3429c243c4e7d4d3b712db027fed is the initial commit since your previous review. I tried to keep individual commits cleaner if you review that way. Additionally, in the last commit https://github.com/solana-labs/solana-program-library/pull/1441/commits/d371cceda5321b46e7c6cd468d03dd71e4f1930b, I also restored the original order of the instructions, processor functions, structs, and packing as much as possible. This should make it much easier to review in place.

Looking @ https://github.com/solana-labs/solana-program-library/blob/d371cceda5321b46e7c6cd468d03dd71e4f1930b/token-lending/program/tests/obligation_end_to_end.rs, what would prevent someone from using this like a flashloan?

@jordansexton @bartosz-lipinski I'm not really sold on the value of keeping obligation tokens for withdrawing collateral. I think it adds unnecessary complexity. As for composability, in order for a collateral token to be useful, I think other protocols would have to constrain obligation fields and prevent certain operations. These protocols would basically have to take ownership of the obligation to do that, and if that's the case, they could easily tokenize the obligation themselves

@jstarry

I'm not really sold on the value of keeping obligation tokens for withdrawing collateral. I think it adds unnecessary complexity.

I tend to agree. Minting an obligation token for each individual collateral feels janky, and you need the obligation owner as a signer for borrows and deposits now anyway.

I removed obligation tokens in 81a1002be0011d4acc8b22a5eb14428d114bda3c, so unless there are any objections I'll skip review feedback relating to those.

I removed obligation tokens in 81a1002, so unless there are any objections I'll skip review feedback relating to those.

No objection whatsoever 😄


Fixed bug for creating/editing categories as admin

Added 2 cucumber scenarios and 1 rspec test along with fixing admin categories controller bug. Admin users can now successfully edit existing categories and create new categories.

Looks good - ready to close!


Position Postings: Come out with basic table layout for position postings (ASRG-member view)

Goal: come up with a basic area where members can view job opportunities. Something like:https://www.tesla.com/careers/search#/
We can start with a basic table (no need for search). Search would be a nice to have. We then need the ability to insert opportunities.
To start, ASRG-admins can submit the job postings. In the future, we need ASRG members with the role of "Sponsor" to be able to publish job postings.
Consider using something that already exists, like: https://github.com/MicroPyramid/opensource-job-portal, https://djangopackages.org/grids/g/jobboards/

Created a job posting models with the following fields:
    title = models.CharField(max_length=80)
    job_category = models.CharField(max_length=120)
    location = models.CharField(max_length=56, null=False, blank=False)
    date_posted = models.DateTimeField(blank=True, auto_now_add=True)
    job_description = models.TextField(blank=True)

If you would like more fields let me know and I will add them, also added filters for job_category, location, and date_posted.
Created a basic view of the postings with datatable and filters and will update with the details page


How to make google speech API keep listening even if user stop talking

Im using Google Speech API
The system shall work as the following:
1- When the user click "Start" button, the System shall start recording
2- When the user click "Stop" button, the System shall stop recording and display the result
Her is my "Start" button definition
def Recite():
    r = sr.Recognizer()
    with sr.Microphone() as source:
        audio = r.listen(source)
        try:
            global s
            s = r.recognize_google(audio,language ="ar-AR")

        except sr.UnknownValueError:
            print("Google Speech Recognition could not understand audio")
            title4= tk.Label(text ="غير مفهوم ", foreground="red")
            title4.grid(column=0,row=16)
        except sr.RequestError as e:
            print("Could not request results from Google Speech Recognition service; {0}".format(e))
            title5= tk.Label(text ="حدث خطأ ", foreground="red")
            title5.grid(column=0,row=16)

the issue is, my system stops recognition automatically when the user stops talking
how can I stop only if the user does action (Click the "Stop" button)?

As far as i understand you need to set
r.pause_threshold = 0   r.non_speaking_duration = 0
according to the source files
self.pause_threshold = 0.8  # seconds of non-speaking audio before a phrase is considered complete self.non_speaking_duration = 0.5  # seconds of non-speaking audio to keep on both sides of the recording
setting self.pause_threshold >= self.non_speaking_duration >= 0 throws an assertionError exception.

Im using Google Speech API
The system shall work as the following:
1- When the user click "Start" button, the System shall start recording
2- When the user click "Stop" button, the System shall stop recording and display the result
Her is my "Start" button definition
def Recite():
    r = sr.Recognizer()
    with sr.Microphone() as source:
        audio = r.listen(source)
        try:
            global s
            s = r.recognize_google(audio,language ="ar-AR")

        except sr.UnknownValueError:
            print("Google Speech Recognition could not understand audio")
            title4= tk.Label(text ="غير مفهوم ", foreground="red")
            title4.grid(column=0,row=16)
        except sr.RequestError as e:
            print("Could not request results from Google Speech Recognition service; {0}".format(e))
            title5= tk.Label(text ="حدث خطأ ", foreground="red")
            title5.grid(column=0,row=16)

the issue is, my system stops recognition automatically when the user stops talking
how can I stop only if the user does action (Click the "Stop" button)?


Automate CASSANDRA_SEEDS

Due to https://github.com/agalitsyn/yagoda/issues/3 we should config CASSANDRA_SEEDS env variable, it should be list of seed nodes. Our cluster is 1DC, so it should be 3 seeds, but overall amount of nodes can be more in general.

From my point of view it should be external script with jobs:

Pre-deploy checker - check that we have at least 3 nodes labeled as cassandra
Provisioner

create job - push k8s resources, DS file will be generated with filled CASSANDRA_SEEDS
update job - rediscover cluster and update DS in case one of seed nodes is dead

Post-checker - ensure C cluster is operational


combine_homology error

Hello,
I am having a hard time understanding an error in this pipeline on the combine_homology step. The error is as follows:
Error in `mutate()`:
ℹ In argument: `bubble = paste0("bubble_", 1:n())`.
Caused by error:
! `bubble` must be size 0 or 1, not 2.
Backtrace:
     ▆
  1. ├─... %>% ...
  2. ├─dplyr::mutate(...)
  3. ├─tidyr::pivot_longer(...)
  4. ├─dplyr::mutate(., bubble = paste0("bubble_", 1:n()))
  5. ├─dplyr:::mutate.data.frame(., bubble = paste0("bubble_", 1:n()))
  6. │ └─dplyr:::mutate_cols(.data, dplyr_quosures(...), by)
  7. │   ├─base::withCallingHandlers(...)
  8. │   └─dplyr:::mutate_col(dots[[i]], data, mask, new_columns)
  9. │     └─mask$eval_all_mutate(quo)
 10. │       └─dplyr (local) eval()
 11. ├─dplyr:::dplyr_internal_error(...)
 12. │ └─rlang::abort(class = c(class, "dplyr:::internal_error"), dplyr_error_data = data)
 13. │   └─rlang:::signal_abort(cnd, .file)
 14. │     └─base::signalCondition(cnd)
 15. └─dplyr (local) `<fn>`(`<dpl:::__>`)
 16.   └─rlang::abort(message, class = error_class, parent = parent, call = error_call)
Execution halted

Let me know if you need any input files from me and I can publicly list them. Thanks!

Hi, thank for your question.
If you would like write "bubble_" in whole of column why did you do (1:n())?
Maybe you would must do it: bubble = paste0("bubble_", name_of_your_column)

Hi @wharvey31 I am curious as to why the combine homology rule is running for you ~ those rules are "vestigial" in the sense that they haven't been deleted yet from the pipeline, but I believe that I modified the pipeline such that they aren't needed for any of the main outputs of the pipeline, and thus on a default run the homology rules shouldn't run at all. Do you need those files for some other purpose? I can also take a look at the input files, in case that would be helpful to you.

Is it possible that this rule has not be made "vestigial" for the hifiasm segment of the pipeline? I have attached my rulegraph pdf for input with only hifiasm assemblies. It seems like it still contains this step on the way to the yak_count_split_fasta rule.
rulegraph.pdf

I just checked and in the most recent dev branch release (v0.3.1-alpha) the count_haplotype_markers and fudge_haplotype_markers rules no longer take as input the output of combine homology Is that rulegraph based on an older version of the pipeline?

Thanks for confirming this Mir. I was on the older version of the pipeline for sure. Our cluster has been out of commission this week, so I am unable to test the newest version, but will open another ticket if something doesn't work.


Wrap Radix Radio Cards (New Component)

https://www.radix-ui.com/themes/docs/components/radio-cards

I also tried doing a fast one on this component. You can review it before I make a PR:
import reflex as rx
from typing import Literal
from reflex.components.component import ComponentNamespace
from reflex.vars import Var
from reflex.components.radix.themes.base import RadixThemesComponent
from typing import Union

color_literal = Literal["gray", "gold", "bronze", "brown", "yellow", "amber", "orange", "tomato", "red", "ruby", "crimson", "pink", "plum", "purple", "violet", "iris", "indigo", "blue", "cyan", "teal", "jade", "green", "grass", "lime", "mint", "sky"]

class RadioCardsRoot(RadixThemesComponent):
    """Contains all the parts of CheckboxGroup.Root."""

    tag = "RadioCards.Root"

    size: Var[Literal["1", "2", "3"]]

    variant: Var[Literal["surface", "classic"]]

    color: Var[color_literal]

    high_contrast: Var[bool]

    columns: Var[Union[str, Literal["1", "2", "3", "4", "5", "6", "7", "8", "9"]]]

    gap: Var[Union[str, Literal["1", "2", "3", "4", "5", "6", "7", "8", "9"]]]

    default_value: Var[str]

    value: Var[str]

    name:Var[str]

    disabled: Var[bool]

    required: Var[bool]

    orientation: Var[Literal["horizontal", "vertical", "undefined"]]

    dir: Var[Literal["ltr", "rtl"]]

    loop: Var[bool]

    on_value_change: rx.EventHandler[lambda e0: [e0]]

class RadioCardsItem(RadixThemesComponent):
    tag = "RadioCards.Item"

    value:Var[str]

    disabled: Var[bool]

    required: Var[bool]

class RadioCards(ComponentNamespace):
    root = staticmethod(RadioCardsRoot.create)
    item = staticmethod(RadioCardsItem.create)

radiocards = RadioCards()

and this is how to use the component:
def index() -> rx.Component:
    return rx.flex(
        radiocards.root(
            radiocards.item(
                rx.text(
                    "8-core CPU"
                ),
                value="1",
            ),
            size="1",
            loop=True,
            # color="gold"
        ),
        radiocards.root(
            radiocards.item(
                rx.text(
                    "8-core CPU"
                ),
                value="1",
            ),
            size="2",
        ),
        radiocards.root(
            radiocards.item(
                rx.text(
                    "8-core CPU"
                ),
                value="1",
            ),
            size="3",
        ),
        align="center",
        gap="3"
    )


Accordion content.text doesn't render with the right font

Related component
Accordion
I wasn't sure if this is a bug or a feature request!
If you use the content.text option in accordion, the text doesn't look right - it doesn't use the normal gov.uk typography. As such, I'm not sure if content.text is useful? I think you'd have to add your own css to style it.
Maybe content.text could be wrapped in <p class="govuk-body"> by default?

Agree that doesn't seem right. I'm surprised it's not been raised as an issue before now, but maybe a lot of people use the html option instead!

Note: This is also the case if when using text in the tabs component's panels.


Tesla powerwall - controls stopped working tonight , in particular the operation mode

Version of the custom_component

Configuration
Add your logs here.

Describe the bug
A clear and concise description of what the bug is.
Debug log

Add your logs here.

as per title ,

Can confirm that PW controls have stopped working. I've enabled debug logging and this is the result:
2024-01-26 15:08:44.042 DEBUG (MainThread) [teslajsonpy.energy] Sending command: BATTERY_OPERATION_MODE 2024-01-26 15:08:44.042 DEBUG (MainThread) [teslajsonpy.connection] Token expiration in 7:57:54 2024-01-26 15:08:44.043 DEBUG (MainThread) [teslajsonpy.connection] post: https://owner-api.teslamotors.com/api/1/energy_sites/XXXXXXXXXXX/operation {'default_real_mode': 'autonomous'} 2024-01-26 15:08:44.238 DEBUG (MainThread) [teslajsonpy.connection] 401: {"response":null,"error":"https://powergate.prd.sn.tesla.services:443/api/v2/energy_site/operation =\u003e Unauthorized. Please register third-party account at https://developer.tesla.com/docs/","error_description":""} 2024-01-26 15:08:44.238 ERROR (MainThread) [homeassistant.components.websocket_api.http.connection] [140613442824896]  Traceback (most recent call last):   File "/usr/src/homeassistant/homeassistant/components/websocket_api/commands.py", line 238, in handle_call_service     response = await hass.services.async_call(                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^   File "/usr/src/homeassistant/homeassistant/core.py", line 2149, in async_call     response_data = await coro                     ^^^^^^^^^^   File "/usr/src/homeassistant/homeassistant/core.py", line 2186, in _execute_service     return await target(service_call)            ^^^^^^^^^^^^^^^^^^^^^^^^^^   File "/usr/src/homeassistant/homeassistant/helpers/entity_component.py", line 272, in handle_service     return await service.entity_service_call(            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^   File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 882, in entity_service_call     single_response = await _handle_entity_call(                       ^^^^^^^^^^^^^^^^^^^^^^^^^^   File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 952, in _handle_entity_call     result = await task              ^^^^^^^^^^   File "/usr/src/homeassistant/homeassistant/components/select/__init__.py", line 195, in async_handle_select_option     await self.async_select_option(option)   File "/config/custom_components/tesla_custom/select.py", line 338, in async_select_option     await self._energysite.set_operation_mode("autonomous")   File "/usr/local/lib/python3.11/site-packages/teslajsonpy/energy.py", line 202, in set_operation_mode     data = await self._send_command(            ^^^^^^^^^^^^^^^^^^^^^^^^^   File "/usr/local/lib/python3.11/site-packages/teslajsonpy/energy.py", line 61, in _send_command     data = await self._api(            ^^^^^^^^^^^^^^^^   File "/usr/local/lib/python3.11/site-packages/teslajsonpy/controller.py", line 1319, in api     return await self.__post_with_retries_except_unavailable(            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^   File "/usr/local/lib/python3.11/site-packages/tenacity/_asyncio.py", line 88, in async_wrapped     return await fn(*args, **kwargs)            ^^^^^^^^^^^^^^^^^^^^^^^^^   File "/usr/local/lib/python3.11/site-packages/tenacity/_asyncio.py", line 47, in __call__     do = self.iter(retry_state=retry_state)          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^   File "/usr/local/lib/python3.11/site-packages/tenacity/__init__.py", line 314, in iter     return fut.result()            ^^^^^^^^^^^^   File "/usr/local/lib/python3.11/concurrent/futures/_base.py", line 449, in result     return self.__get_result()            ^^^^^^^^^^^^^^^^^^^   File "/usr/local/lib/python3.11/concurrent/futures/_base.py", line 401, in __get_result     raise self._exception   File "/usr/local/lib/python3.11/site-packages/tenacity/_asyncio.py", line 50, in __call__     result = await fn(*args, **kwargs)              ^^^^^^^^^^^^^^^^^^^^^^^^^   File "/usr/local/lib/python3.11/site-packages/teslajsonpy/controller.py", line 1351, in __post_with_retries_except_unavailable     return await self.__connection.post(command, method=method, data=data, url=url)            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^   File "/usr/local/lib/python3.11/site-packages/teslajsonpy/connection.py", line 165, in post     return await self.__open(url, method=method, headers=self.head, data=data)            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^   File "/usr/local/lib/python3.11/site-packages/teslajsonpy/connection.py", line 216, in __open     raise TeslaException(resp.status_code) teslajsonpy.exceptions.TeslaException

Not working here either. Whenever I try to adjust the backup reserve I get this error pop up:
Failed to call service number/set_value. unknown error
Changing the backup mode also doesn't work:
Failed to call service select/select_option. unknown error
Strangely I can still read values like the battery level in HA.

I have the same symptoms - incoming information is fine but I cannot direct operation mode or reserve %

Attempts to change any of the parameters fail with: Failed to call service number/set_value. unknown error

I’ve the same issues. I noticed around 20:00 uk time on 25th Jan.
I played around for a few hours and then gave up and went to bed.  I was hopeful it was a global issue rather than just me.

Same here. Noticed failure at around 10pm UK on 25th January. Unable to change the backup reserve level.

Also same here, reading is fine, just cannot write to the backup reserve any more.

Please refrain from posting "me too" like posts, if you have more details to add or you are able to help then thanks.
Otherwise please use the subscribe button to be updated on any fixes/news around this issue.

So I bumped teslajsonpy version to 3.9.9 in the manifest and control seems to be back

I have no coding expertise and am merely a very contented user of this HAC add on which I use to schedule overnight charging of my PW2 at advantageous electricity rates.
As I understand it to date we have been accessing/controlling our PW2 via a not officially (Tesla) sanctioned method via backdoor analysis/manipulation of their API
Reading around online it would appear that Tesla are now implementing an official method whereby third party developers can register their applications and have official access to their Tesla API.
https://gearmusk.com/2023/10/14/tesla-launches-developer-api/
Looking at part of the debug log pasted earlier in this thread shows
“Unauthorized. Please register third-party account at https://developer.tesla.com/docs/","error_description":""}”
My fear is this is a conscious decision by Tesla to block (unless you have registered your application) access to their API.
Additionally whilst access to their API is apparently currently free and whilst only conjecture on my part, they may commence charging a la twitter …
I sincerely hope I’m wrong as this application is perfect for my current needs ….

So I bumped teslajsonpy version to 3.9.9 in the manifest and control seems to be back

Is this definitely working? If so, can provide instructions?

Has the integration developer maybe registered the latest version, as seems to be required now??

Has the integration developer maybe registered the latest version, as seems to be required now??

There is a large amount of discussion on #743 and #774 in regards to the API being changed over

Its a temp workaround until @alandtse can do a release I think, in the HA custom_components / tesla_custom folder, edit the manifest.jon file and change the line  "requirements": ["teslajsonpy==3.9.9"],

Its a temp workaround until @alandtse can do a release I think, in the HA custom_components / tesla_custom folder, edit the manifest.jon file and change the line "requirements": ["teslajsonpy==3.9.9"], restart HA

@mcc05 you could make a PR with that change here, it's open source so then you'd just need to wait for the Pull Request to be approved

Its a temp workaround until @alandtse can do a release I think, in the HA custom_components / tesla_custom folder, edit the manifest.jon file and change the line "requirements": ["teslajsonpy==3.9.9"], restart HA

@mcc05 you could make a PR with that change here, it's open source so then you'd just need to wait for the Pull Request to be approved

Done

Excuse ignorance, but how / from where is that new 3.9.9 version of teslajsonpy acquired?

Excuse ignorance, but how / from where is that new 3.9.9 version of teslajsonpy acquired?

Its a dependency, that this custom component code instructs HA to pull down from github.

I am having the same issues. I use set_value and select_option services to set number.battery_backup_reserve and select.battery_grid_charging entities. These worked yesterday but today (26 Jan) I am getting 'unknown home assistant' errors.

Its a temp workaround until @alandtse can do a release I think, in the HA custom_components / tesla_custom folder, edit the manifest.jon file and change the line "requirements": ["teslajsonpy==3.9.9"], restart HA

Worked a treat - Basic steps for beginners (like me) ;-)
Find the Terminal app in Settings>Addons and run the app to open  terminal window
Navigate to the folder custom_components/tesla_custom/
Then use nano manifest.json
Edit the file as above then CTRL+X to save it.
Finally restart HA

Its a temp workaround until @alandtse can do a release I think, in the HA custom_components / tesla_custom folder, edit the manifest.jon file and change the line "requirements": ["teslajsonpy==3.9.9"], restart HA

The Hero we all needed.
Thank you.

cd custom_components/tesla_custom
vi manifest.json
Change "teslajsonpy==3.9.8" to "teslajsonpy==3.9.9"
Restart homeassistant
Profit

Done works perfectly, big thanks to @mcc05 for working it out first too.
And the upstream Teslajson.py project.


Add make services and Postgres

Depends on https://github.com/hypothesis/cookiecutters/pull/94

Closing in favour of https://github.com/hypothesis/data-tasks/pull/5
Apologies @marcospri, I forgot I'd sent this PR. I started working on a proper fix-up of the services and DB support in the cookiecutters (https://github.com/hypothesis/cookiecutters/pull/97). Once that's finalised then https://github.com/hypothesis/data-tasks/pull/5 will apply it to this project. It's basically done but not quite ready yet...


gh-pages updates for #84 and updated javadocs

Intentionally presented as two separate commits

@krmahadevan this includes the doc changes for issue #84. Assigned to you since I also asked you to pick up PR #86


Lower CI Java Version to Java 11 for all plugins and run integration tests on 8

We lowered the version of Java to 11 for OpenSearch in https://github.com/opensearch-project/opensearch-build/issues/74. In the documentation we say:

We recommend Java 11 (LTS), but OpenSearch also works with Java 8.

[ ] Lower the Java version for CI to 11 (use LTS)
[ ] Run integration tests on at least Java 8 and 11 (ensure broad compatibility)
[ ] Document that the preferred version of Java for development is 14 (do development on latest and greatest)

@nknize Do you think this is reasonable in terms of asks? Should CI be using 8 instead of 11?