Updated and complete installation instructions?

Hi everyone,
Now that the module moved from AirBnb to the community repo, could anybody make an updated and complete installation manual that would work 100%, with and without google maps and so on ?
It's very frustrating to make this module work, and most of the time of it works in simulator it won't work on device or won't work when uploaded to Testflight and so on and it's more a matter of luck instead of a clear way on how to make it work.
I can help with any testing or what's needed for this to become a reality, because I simply cannot make it work reliably.
Sorry for the "rant" but I believe this is a real problem for many devs, just look at how many issues are there with "won't compile, duplicated symbols, missing symbols" and so on.
Thank you 🤗

As far as I can see the most problems are with GoogleMaps and pods.
Following first part (clean install and react-native link) of the readme I could reproduce without problems.
It will be very helpful if you followed instructions for GoogleMaps and Pods and pointed out specific problems.

Look, I've done the 2nd part (Pods first option with GoogleMaps) https://github.com/alvelig/react-native-maps-pods-example and did not face any issues yet.

@alvelig thanks a lot for helping with this.
I'll have a look at your example and try to use it in more situations to see if I can make it work (develop mode, release mode, testflight) and let you know
If all goes fine maybe we should remove from the installation instructions what's extra.
I'll let you know
Thanks 🤗

I went through installation guide yesterday for Google Maps on iOS. I used example Podfile. Few points I noticed:

It looks like you should not add AirGoogleMaps folder to your project. It introduces duplicate symbols. Also you have to remove direct reference to AirMaps project as well as libAirMaps from project settings, since you have this in pods already. It all specified in here and linked from installation guide, but I don't see a reason why installation steps are not updated with that in mind.
I had to use reference to master branch instead of last release tag, because of obsolete version of Google Maps referenced from one of the podspecs. It was fixed in master already, but not in last release.

@satori-ytolstoguzov yep if you use pods like here https://github.com/alvelig/react-native-maps-pods-example, you should not copy anything.

@satori-ytolstoguzov #1884 😉

@alvelig, I have followed the new installation docs and have have "Module 'GoogleMaps' not found" error. Any ideas?

@tonygriv ios/android ?

ios

@tonygriv new or old project?

old

@tonygriv try to install the git version of the module, not the npm one.

@rborn I had to use "react-native-maps": "git+https://github.com/react-community/react-native-maps.git", but other than that it worked!
Few minor style inconsistencies in guide:

In Podfile: We use react-native path as variable: rn_path = '../node_modules/react-native', but react-native-map path as string literal;
In Podfile: wrong indentation after 5th line;
"Get a map developer key" header really should be "Get a Google map developer key" or should specify that in content of the following paragraph.

@satori-ytolstoguzov good to hear it worked for you, will push to npm soon.
Would you mind a PR for the changes you suggest? :)

@rborn Sure, will open it today, if I will have a spare time.

@rborn, 0.19.0 and same error "Module 'GoogleMaps' not found"((

Maybe this will help to understand the issue:
After pod install I have warning message:

The carrier_mobile_app [Debug] target overrides the FRAMEWORK_SEARCH_PATHS build setting defined in Pods/Target Support Files/Pods-carrier_mobile_app/Pods-carrier_mobile_app.debug.xcconfig'. This can lead to problems with the CocoaPods installation     - Use the $(inherited)` flag, or
- Remove the build settings from the target.

When I added $(inherited) in Framework Search Paths in my target, I for the duplicate symbols error and Module 'GoogleMaps' not found error disappeared.
Maybe I should add some correct path to Framework Search Paths?

@tonygriv did you try to do react-native link the project first ? If yes, please see the troubleshooting section of the docs.
You might also have to clean the search path from any map reference.
If you don't manage maybe you cans hare the project with me?

Yes, at first I did react-native link, and then I made git revert of my project to the state where was no react-native-maps, than I try again to install it, but it failed. Than I found a troubleshooting guide and follow each step. The result is the same.

please check you project not to have left libraries in it even after git reset.

A don't see any Map Libraries

@tonygriv can you show me your podfile and your appledelegate.m file?

Podfile
# Uncomment the next line to define a global platform for your project
# platform :ios, '9.0'

target 'carrier_mobile_app' do
  rn_path = '../node_modules/react-native'

    pod 'yoga', path: "#{rn_path}/ReactCommon/yoga/yoga.podspec"
    pod 'React', path: rn_path, subspecs: [
      'Core',
      'RCTActionSheet',
      'RCTAnimation',
      'RCTGeolocation',
      'RCTImage',
      'RCTLinkingIOS',
      'RCTNetwork',
      'RCTSettings',
      'RCTText',
      'RCTVibration',
      'RCTWebSocket',
      'BatchedBridge'
    ]

    pod 'RSKImageCropper'
    pod 'QBImagePickerController'
    pod 'BugsnagReactNative', :path => '../node_modules/bugsnag-react-native'
    pod 'react-native-google-analytics-bridge', :path => '../node_modules/react-native-google-analytics-bridge'
    pod 'GoogleMaps'
    pod 'react-native-maps', path: '../node_modules/react-native-maps'
    pod 'react-native-google-maps', path: '../node_modules/react-native-maps'
end

post_install do |installer|
  installer.pods_project.targets.each do |target|
    if target.name == 'react-native-google-maps'
      target.build_configurations.each do |config|
        config.build_settings['CLANG_ENABLE_MODULES'] = 'No'
      end
    end
    if target.name == "React"
      target.remove_from_project
    end
  end
end

AppDelegate.m
#import "AppDelegate.h"
#import <CodePush/CodePush.h>
#import <React/RCTPushNotificationManager.h>

#import <React/RCTBundleURLProvider.h>
#import <React/RCTRootView.h>
#import <BugsnagReactNative/BugsnagReactNative.h>

@import GoogleMaps;

@implementation AppDelegate

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
  [BugsnagReactNative start];
  [GMSServices provideAPIKey:@"my_api_key"];

  NSURL *jsCodeLocation;

    #ifdef DEBUG
        jsCodeLocation = [[RCTBundleURLProvider sharedSettings] jsBundleURLForBundleRoot:@"index" fallbackResource:nil];
    #else
        jsCodeLocation = [CodePush bundleURL];
    #endif

  RCTRootView *rootView = [[RCTRootView alloc] initWithBundleURL:jsCodeLocation
                                                      moduleName:@"carrier_mobile_app"
                                               initialProperties:nil
                                                   launchOptions:launchOptions];
  rootView.backgroundColor = [[UIColor alloc] initWithRed:1.0f green:1.0f blue:1.0f alpha:1];

  self.window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds];
  UIViewController *rootViewController = [UIViewController new];
  rootViewController.view = rootView;
  self.window.rootViewController = rootViewController;
  [self.window makeKeyAndVisible];
  return YES;
}

// Required to register for notifications
  - (void)application:(UIApplication *)application didRegisterUserNotificationSettings:(UIUserNotificationSettings *)notificationSettings
{
  [RCTPushNotificationManager didRegisterUserNotificationSettings:notificationSettings];
}

// Required for the register event.
  - (void)application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken
{
  [RCTPushNotificationManager didRegisterForRemoteNotificationsWithDeviceToken:deviceToken];
}

// Required for the notification event. You must call the completion handler after handling the remote notification.
  - (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo
fetchCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler
{
  NSLog(@"push-notification received: %@", userInfo);
  [RCTPushNotificationManager didReceiveRemoteNotification:userInfo fetchCompletionHandler:completionHandler];
}

// Required for the registrationError event.
  - (void)application:(UIApplication *)application didFailToRegisterForRemoteNotificationsWithError:(NSError *)error
{
  [RCTPushNotificationManager didFailToRegisterForRemoteNotificationsWithError:error];
}

// Required for the localNotification event.
  - (void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification
{
  [RCTPushNotificationManager didReceiveLocalNotification:notification];
}

@end

looks legit, let's try this:

backup the project 😊

open with Xcode ios/your_app.xcworkspace ->Product -> Clean (menu)

kill Xcode

delete ios/Pods folder

delete ios/Podfile.lock file

delete ios/build folder

delete node_modules folder

be sure your package.json has react-native 0.51 and react 16

be sure you have a recent cocoapods (1.3.1)

npm install

cd ios

pod install

cd ../

react-native run-ios

let me know

8:9: fatal error: module 'GoogleMaps' not found
@import GoogleMaps;
 ~~~~~~~^~~~~~~~~~
1 error generated.

@tonygriv Does cloning https://github.com/alvelig/react-native-maps-pods-example work for you?

@tonygriv I'm out of ideas 😔

I've started from expo.io (doc), which already have this library ready to be used without any installation. Could be worth mentioning it in the doc, (but also specifying that if we need to include other libraries not included in expo.io, we will need to detach from it, and warn them about other cons)

@markmssd I think expo is out of the scope to be honest. It's an amazing tool but we'll get newcomers confused.
But that's only my 2c, so maybe @alvelig and @christopherdro wanna jump in 🤗

Yeah maybe, we'll see what they say. If yes I can PR instructions, and specify in bold that problems with expo should be issued to the expo project, and no support can be given for it, since they are unrelated to this one.

@alvelig, yes, example builded successfully

@markmssd that's expo's responsibility. But I would state the following in the docs: "this assumes you are started your application with react-native init, if using create-react-native-app or expo you should eject and/or refer to their documentation."

@tonygriv Maybe would be easier to rebuild your project around the example? 😕

Ok, I have solved my problem. Steps:

Add $(inherited) in framework search path
After pt 1, I have duplicate symbol error, but I have noticed that this error refers to another lib. After solving this issue for another lib, all errors has gone away

@alvelig I followed your installation instructions but the build failed. So I cloned your example and ran npm install. But I got the same error message there :(

The following build commands failed:
CompileC /Users/Timo/Entwicklung/Meldoo_React/Test2/react-native-maps-pods-example/ios/build/Build/Intermediates/Pods.build/Debug-iphonesimulator/react-native-maps.build/Objects-normal/x86_64/RCTConvert+AirMap.o /Users/Timo/Entwicklung/Meldoo_React/Test2/react-native-maps-pods-example/node_modules/react-native-maps/lib/ios/AirMaps/RCTConvert+AirMap.m normal x86_64 objective-c com.apple.compilers.llvm.clang.1_0.compiler
(1 failure)
Installing build/Build/Products/Debug-iphonesimulator/ReactNativeMapsPodsExample.app
An error was encountered processing the command (domain=NSPOSIXErrorDomain, code=2):
Failed to install the requested application
An application bundle was not found at the provided path.
Provide a valid path to the desired application bundle.
Print: Entry, ":CFBundleIdentifier", Does Not Exist
Command failed: /usr/libexec/PlistBuddy -c Print:CFBundleIdentifier build/Build/Products/Debug-iphonesimulator/ReactNativeMapsPodsExample.app/Info.plist
Print: Entry, ":CFBundleIdentifier", Does Not Exist

Is there anything your can do for me?

@timo-leanact Check this please (added recently to the installation docs, so you may have missed that):

If you use Xcode with version less than 9 you may get use of undeclared identifier 'MKMapTypeMutedStandard' or Entry, ":CFBundleIdentifier", Does Not Exist errors. In this case you have to update your Xcode.

Thanks, yeah I missed that. So I will try this and take another shot.

Worked like magic :)

Nothing about Android in this discussion?

@MarkOSullivan94 we would be very grateful for your help in developing a better documentation.

react-native link is such a common command and going through all these steps https://github.com/react-community/react-native-maps/blob/master/docs/installation.md#on-ios after running it, is really bad.

you should NEVER run react-native link without specifying the package you want  to link

@alvelig still having issues getting AIRMaps working within a React Native component within our Android project, going to do a separate individual React Native project and see if I'm still having issues getting it working with the Android device.
For now I've made some changes to the react native website which is showing old / incorrect information: https://github.com/facebook/react-native-website/pull/189
I'm currently running Android 8.1.0
@rborn is it possible to run react-native link without specifying the package? If so, why?

@MarkOSullivan94 you can run this to link all your packages, but in this case will break the module if using google maps

@rborn so in this case react-native link should never be used when trying to setup react-native-maps?

yes

@rborn I will use some library,so i have to add 'use_frameworks!' in my Podfile, but when i add this, i   get the error '<React/RCTView> not found'. How can i solve this? Thanks

@lpb006 sadly I don't have a solution for this :(

wasted 6hours.. I simply upgrade my mac to 10.12.6 and Xcode to 9.2. Now it's working fine.
Hope this will help someone. I think there is an issue with xcode 8.x

still issues with the documentation doesn't work out of the box.  :(
get the error
Requiring unknown module "undefined".
I already did a yarn install and pod install.
Also the @import from google maps doesnt work without changing the module config in ios.

I've been holding back from updating react-native-maps to the community version because I saw it had moved to CocoaPods. It would be helpful to have a note in the installation instructions saying you can still use react-native-link react-native-maps if you don't need Google Maps (assuming that's still the case).

@tss101 in theory it should work if you don't use google maps so make  a new branch and give it a shot 😊

@rborn Thanks I'll give it a shot, and report back!

I've just started using react-native & react-native-apps for the first time and have struggled a bit with getting going by trying to use the Installation page. The default place to start for new users is now with Expo so I'd recommend including some info about it on that page.
In particular, you don't need to eject to use Google Maps in iOS or mess around with any Pods or the ios directory. You just need to use their version of MapView.
The following is all you need to do in order to get a Google Map on iOS:
import { MapView } from "expo";

<MapView  provider="google"  initialRegion={this.state.latlng} / >

I recently managed to upgrade existing react-native-maps from 0.17 to 0.21 with react-native 0.51 (xCode 9.4) - these are the instructions:
https://gist.github.com/heron2014/e60fa003e9b117ce80d56bb1d5bfe9e0#upgrade-existing-react-native-maps-from-017-to-021-with-react-native-0510
Hope that helps anyone.

Closing. We should be up-to-date now. Please open a new issue if you find anything wrong.


fix: no error is returned when the index creation process fails

What problem does this PR solve?
no error is returned when the index creation process fails
Issue Number: close #xxx
What is changed and how it works?
iRow should be a point that could be changed in the error item.
How Has This Been Tested?

[x] test existed

Checklist:

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[x] I have commented on my code, particularly in hard-to-understand areas
[x] I have made corresponding changes to the documentation
[x] My changes generate no new warnings
[x] I have added tests that prove my fix is effective or that my feature works
[x] New and existing unit tests pass locally with my changes
[x] Any dependent changes have been merged and published in downstream modules

Codecov Report

:exclamation: No coverage uploaded for pull request base (main@fb87762). Click here to learn what that means.
The diff coverage is n/a.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
@@           Coverage Diff           @@
##             main     #116   +/-   ##
=======================================
  Coverage        ?   62.87%
=======================================
  Files           ?      311
  Lines           ?    71982
  Branches        ?        0
=======================================
  Hits            ?    45261
  Misses          ?    23494
  Partials        ?     3227

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


update grpc load to use grpc proto loader

Description
GRPC versions < 5.0.3 are susceptible to ReDoS attacks (regex denial of service), we need to update grpc.

Update grpc to latest version
Use grpc proto loader instead of grpc.load which is now deprecated

Related PRs
List related PRs if applicable
Todos

[x] Tests
[x] Documentation
[x] Link to Trello

 Update grpc on broker


Chrome slow start

I try Safari and Firefox and both perform well but Chrome is slow it takes around 8 second to start. you can see it on video.
https://www.youtube.com/watch?v=AAQK2J0WoZ4
Is there any solution?

can you share the link that you are trying  to play.

Here is an example of a live video that starts late in the Chrome browser
http://<IP_ADDRESS>:1935/redirect/edge3/smil:englishclub?type=m3u8
http://<IP_ADDRESS>:1935/redirect/edge2/smil:euronewsen?type=m3u8

I don't know what changed, seems that now it works as on other browsers, Thanks


Progressbar Overlaps images in Explore

Summary:
In explore activity Progressbar overlaps the images.  It should be displayed at the bottom when scrolling down the images
Steps to reproduce:

Go to explore
Scroll down to the bottom

Screen-shots:

Would you like to work on the issue?
Yes

@4D17Y4 now we don't face such issue in our app so we can close this issue now


Documentation links to CAS protocol broken

The following section of the documentation contains links to a third-party detailing the protocol:
http://django-mama-cas.readthedocs.io/en/latest/protocol.html
However, none of these appear to work. Additionally, there's no link to the CAS 3.0 protocol, so it would be nice if that could be added.

@godlike64, please see PR #61, do you have links for CAS 1/2/3 protocols?

@manelclos I think it would maybe be https://apereo.github.io/cas/5.2.x/protocol/CAS-Protocol-Specification.html ? Full specification for all versions 1, 2 and 3.

Ok, I'll use the parent page which talks about the protocol and its specifications. CAS-Protocol-Specification.html includes CAS 2.0, but in the parent page they have a link dedicated to version 2.0.
https://apereo.github.io/cas/5.2.x/protocol/CAS-Protocol.html
Thanks!

PR https://github.com/jbittel/django-mama-cas/pull/61 has been merged.


new patch 9.2.5 is bugged

New pach I don't see the addon.

There's a LUA error in the addon's init() function which is causing it not to load:
LFGSpamFilter\modules/main.lua:7: hooksecurefunc(): ReportSearchResult is not a function
[string "=[C]"]: in function `hooksecurefunc'
[string "@LFGSpamFilter\modules/main.lua"]:7: in function `init'
[string "@LFGSpamFilter\LFGSpamFilter-1.0.0.lua"]:29: in function <LFGSpamFilter\LFGSpamFilter.lua:23>

Looks like the function C_LFGList.ReportSearchResult(resultID, complaintType) of the WoW API has been changed.
Blizzard updated the 'report tool' to include other types of reports, this might have changed something.
source:
https://us.forums.blizzard.com/en/wow/t/an-eye-on-player-behavior-and-reporting-improvements/1249578/1

Also C_ReportSystem.SendReport() is protected, so this addon can no longer report groups by itself. Will release an update soon.

Should be fixed in e9f29452dc1


Cannot find module 'bourbon'

do → npm start
above is npm-debug.log
0 info it worked if it ends with ok
1 verbose cli [ '/usr/local/bin/node', '/usr/local/bin/npm', 'start' ]
2 info using<EMAIL_ADDRESS>3 info using<EMAIL_ADDRESS>4 verbose run-script [ 'prestart', 'start', 'poststart' ]
5 info prestart<EMAIL_ADDRESS>6 info start<EMAIL_ADDRESS>7 verbose unsafe-perm in lifecycle true
8 info<EMAIL_ADDRESS>Failed to exec start script
9 verbose stack Error<EMAIL_ADDRESS>start: gulp server
9 verbose stack Exit status 1
9 verbose stack     at EventEmitter. (/usr/local/lib/node_modules/npm/lib/utils/lifecycle.js:217:16)
9 verbose stack     at emitTwo (events.js:87:13)
9 verbose stack     at EventEmitter.emit (events.js:172:7)
9 verbose stack     at ChildProcess. (/usr/local/lib/node_modules/npm/lib/utils/spawn.js:24:14)
9 verbose stack     at emitTwo (events.js:87:13)
9 verbose stack     at ChildProcess.emit (events.js:172:7)
9 verbose stack     at maybeClose (internal/child_process.js:827:16)
9 verbose stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:211:5)
10 verbose pkgid<EMAIL_ADDRESS>11 verbose cwd /Users/tianhuiting/front_end/regexper-static
12 error Darwin 15.6.0
13 error argv "/usr/local/bin/node" "/usr/local/bin/npm" "start"
14 error node v4.4.7
15 error npm  v2.15.8
16 error code ELIFECYCLE
17 error<EMAIL_ADDRESS>start: gulp server
17 error Exit status 1
18 error Failed at the<EMAIL_ADDRESS>start script 'gulp server'.
18 error This is most likely a problem with the regexper package,
18 error not with npm itself.
18 error Tell the author that this fails on your system:
18 error     gulp server
18 error You can get information on how to open an issue for this project with:
18 error     npm bugs regexper
18 error Or if that isn't available, you can get their info via:
18 error
18 error     npm owner ls regexper
18 error There is likely additional logging output above.
19 verbose exit [ 1, true ]

and i had do → npm install

o, bourbon = require('node-bourbon');


[Bug] Example notebook finding no input files in ededup

Search before asking

[X] I searched the issues and found no similar issues.

Component
Other
What happened + What you expected to happen
Getting error messages during ededup section saying there are no input files.
Reproduction script
Download zip from data-prep-kit repo into /Users/dawood/Downloads/data-prep-kit-dev.zip
mkdir /tmp/example
cp data-prep-kit-dev.zip /tmp/example
git clone ...
cd data-prep-kit/examples
make venv
make jupyter

Edit notebook
zip_input_folder = "/tmp/example"

Run notebook through ededup section and get logged messages say no input files
3:26:29 INFO - Running locally
13:26:29 INFO - exact dedup params are {'hash_cpu': 0.5, 'num_hashes': 2, 'doc_column': 'contents'}
13:26:29 INFO - data factory data_ is using local data access: input_folder - test-data/parquet_input output_folder - test-data/ededup_out
13:26:29 INFO - data factory data_ max_files -1, n_sample -1
13:26:29 INFO - data factory data_ Not using data sets, checkpointing False, max files -1, random samples -1, files to use ['.parquet']
13:26:29 INFO - number of workers 3 worker options {'num_cpus': 0.8}
13:26:29 INFO - pipeline id pipeline_id; number workers 3
13:26:29 INFO - job details {'job category': 'preprocessing', 'job name': 'ededup', 'job type': 'ray', 'job id': 'job_id'}
13:26:29 INFO - code location None
13:26:29 INFO - actor creation delay 0
2024-05-14 13:26:31,387	INFO worker.py:1715 -- Started a local Ray instance. View the dashboard at <IP_ADDRESS>:8265
(orchestrate pid=24207) 13:26:32 INFO - orchestrator started at 2024-05-14 13:26:32
(orchestrate pid=24207) 13:26:32 ERROR - No input files to process - exiting
13:26:42 INFO - Completed execution in 0.21104646523793538 min, execution result 0

### Anything else

_No response_

### OS

MacOS (limited support)

### Python

3.10.x

### Are you willing to submit a PR?

- [ ] Yes I am willing to submit a PR!

I do not think it is a bug. Input folder in this case is not configured correctly. Execution thinks that:
data factory data_ is using local data access: input_folder - test-data/parquet_input output_folder - test-data/ededup_out

where your input folder should be /tmp/example

@blublinsky agreed. user error.  however, we need to expect the user to make this sort of mistake and help them fix it.

@daw3rd. Agreed, but this is not a bug. We can ask for enhancement for better error handling, but do not qualify it as a bug

@shivdeep-singh-ibm Has this been done?

closing this one since notebooks have been redesigned/tested.


Updated from 0.14 to 0.16 sometimes stops responding without error

Recently upgraded from 0.14 to 0.16
Every few days in the middle of the night the bot goes offline in slack but there's no event of interest in the program. Had been stable for few months on 0.14 so I'm suspicious
Technically I was using a fork which had some fixes i put into 0.15 but close enough to 0.14 :D
not sure what it could be...

it's still running (in release)
gdb back trace shows
#1  0x00007f4df072a601 in _$LT$std..net..tcp..TcpStream$u20$as$u20$std..io..Read$GT$::read::hd0999dd43dde479f ()
#2  0x00007f4df0595bf1 in openssl::ssl::bio::bread::h5b49a281d2fa1666 ()
#3  0x00007f4defc23f29 in BIO_read () from /lib/x86_64-linux-gnu/libcrypto.so.1.0.0
#4  0x00007f4deff400f1 in ?? () from /lib/x86_64-linux-gnu/libssl.so.1.0.0
#5  0x00007f4deff4129d in ?? () from /lib/x86_64-linux-gnu/libssl.so.1.0.0
#6  0x00007f4deff3e4f0 in ?? () from /lib/x86_64-linux-gnu/libssl.so.1.0.0
#7  0x00007f4df067f394 in _$LT$websocket..stream..WebSocketStream$u20$as$u20$std..io..Read$GT$::read::h1e7b295c47719f53 ()
#8  0x00007f4df0467091 in _$LT$hyper..buffer..BufReader$LT$R$GT$$u20$as$u20$std..io..Read$GT$::read::hd2db9dc1852142ce ()
#9  0x00007f4df045248b in std::io::Read::read_exact::h4ce0ac77e2d5022f ()
#10 0x00007f4df044f395 in _$LT$websocket..receiver..Receiver$LT$R$GT$$u20$as$u20$websocket..ws..receiver..Receiver$LT$websocket..dataframe..DataFrame$GT$$GT$::recv_dataframe::he506c29e17246564 ()
#11 0x00007f4df0462d53 in slack::RtmClient::run::h5244f3adb2012f2b ()
#12 0x00007f4df04f9302 in sirbotalot::main::h51bc594f0b4ac765 ()
#13 0x00007f4df073c3a7 in __rust_maybe_catch_panic ()
#14 0x00007f4df0733283 in std::rt::lang_start::hca48e539ce72a288 ()
#15 0x00007f4def16f7ed in __libc_start_main () from /lib/x86_64-linux-gnu/libc.so.6
#16 0x00007f4df044eb39 in _start ()```

I added some logging to the WouldBlock loop
https://github.com/dten/slack-rs/blob/patch-6/src/lib.rs#L475
and the first time i've seen it print anything it was this
IoError(Error { repr: Os { code: 11, message: "Resource temporarily unavailable" } })
I think we briefly lost connection to slack, not sure if it was our fault or slack
If this happens for long enough won't they stop talking to us and we're sat waiting forever as I'm getting? Not sure why the websocket does't error out though

I've been dealing with the same issue for a while but haven't put much time into fixing it. I believe when I looked into NoDataAvailable from the web socket library that it was actually getting an EOF which meant the socket was closed. slack-rs should just reconnect in that case. Admittedly it would be nice if websockets lib exposed better errors.

@dten we do set a readtimeout (70 seconds) on the socket which should handle when the connection hangs https://github.com/slack-rs/slack-rs/blob/master/src/lib.rs#L451, I'm not sure why that isn't the case. We may need to improve the error handling there. The timeout itself is also pretty arbitrary.
@jwilm, That does seem to be the case for NoDataAvailable:
https://github.com/cyderize/rust-websocket/blob/105d8b80b56f516ab98c50d9ccdd3c923b44cdff/src/result.rs#L82
For handling reconnect though, I think maybe the client should do that with another call to login_and_run since sometimes slack requires a new url when reconnecting anyhow. In that case we could should probably better expose the NoDataAvailable error.

The read timeout probably explains the EAGAIN issue.
Having login_and_run return a disconnect error would be great. The main issue now is that it doesn't return at all.

not convinced websocket handles dead websockets very well
the timeout was only in because disconnecting the internet did not make the websocket error and it just waited forever. reconnecting would resulting in slack ignoring us though just like in this error.
https://github.com/slack-rs/slack-rs/issues/31
I'm thinking EAGAIN and dead websocket are related and the loop (which is the major difference for me between 0.14 and 0.16) is making it just listen to the ether again.

I can reproduce what I'm seeing now when running on ubuntu faily simply (windows just disconnects the client)
Connect the client then turn off wifi for roughly 10 minutes. Turn it back on and it never comes back.
If I only disconnect for a couple of minutes it does come back and then I get Internal("NoDataAvailable") it disconnects and reconnects.

have left it for 11 hours now it never connected again EAGAIN does not always seem recoverable so I don't think we should be looping for it unconditionally

@dten do you still get EAGAIN without the read timeout?

No I get nothing as per #31 it's just read forever

Seems like there ought to be some sort of connection error when entering airplane mode; the timeout is a hack. Is this just something the websocket library isn't handling properly?

I think it should handle it but it doesn't.
@bentheeleder has previously commented on a rust websockets issue regarding forever open websockets https://github.com/cyderize/rust-websocket/issues/66
Until it does though I think the EAGAIN loop should go.

It's been a while since I've come across it but I'm fairly certain OSX/macOS at least will let naive network clients hang without any error (if you say, sleep the laptop for a bit and come back mid connection) and the solution was using a timeout. I seem to remember having a minimal client I wrote in go with the same issue.

I don't think we should need the EAGAIN loop anyhow since the slack pings should be regular enough to ensure that a live connection has data before the timeout.

been running my fork without the eagain loop for a week now and no problems

Sorry I missed this. We should probably make that change in the next release, would you please open a pull request with your changes?

I'm a bit confused why the EAGAIN loop needs to go. Looking at the system calls involved, the only way for EAGAIN to occur is when the 70 second timeout is reached. If that timeout never occurred, it would be impossible to get stuck in that loop. Removing that loop will result in the slack client being disconnected when that timeout occurs.

But the timeout is happening and I am getting stuck in the loop. Slack seems to have dropped the websocket for one reason or another. What I'm seeing on Ubuntu is that it ends up in the EAGAIN loop. Without the EAGAIN loop the client exits and I can reconnect. On Windows when Slack drops the websocket it says a different error and the client exits and I can reconnect.

I'm not convinced that slack the web socket lib handles this correctly,
we're setting the timeout on the socket ourselves because it isn't
supported within the web socket library. In theory we should be trying
again on EAGAIN but this seems to be misbehaving and slack clients need to
handle reconnect anyhow as slack will do EG server switches. For the moment
removing it seems acceptable.
On Nov 28, 2016 15:03, "Joe Wilm"<EMAIL_ADDRESS>wrote:

I'm a bit confused why the EAGAIN loop needs to go. Looking at the system
calls involved, the only way for EAGAIN to occur is when the 70 second
timeout is reached. If that timeout never occurred, it would be impossible
to get stuck in that loop. Removing that loop will result in the slack
client being disconnected when that timeout occurs.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/slack-rs/slack-rs/issues/68#issuecomment-263378181,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AA4BqwV2r7CCu67aBDNCeS71LCzgTA9Fks5rCzN0gaJpZM4Km_sW
.

I guess my point is that this isn't a complete solution. I've had better luck with the loop personally (heck I added it I think), but I'm happy to run on a fork. Seems like we should look into fixing the websocket lib. Or maybe this would be a good time to go async.

I agree that this is incomplete, but looping infinitely with no error seems
far worse than having to reconnect spuriously.
On Nov 28, 2016 15:19, "Joe Wilm"<EMAIL_ADDRESS>wrote:

I guess my point is that this isn't a complete solution. I've had better
luck with the loop personally (heck I added it I think), but I'm happy to
run on a fork. Seems like we should look into fixing the websocket lib. Or
maybe this would be a good time to go async.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/slack-rs/slack-rs/issues/68#issuecomment-263382306,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AA4Bqz1kfLBO_PKRt3bnrBD_7HVef-Ehks5rCzc3gaJpZM4Km_sW
.

@jwilm, what system are you having good results on?
I'm not using slack much personally at the moment so I no longer have a bot running myself.

I've run into this problem also (bot going offline every few days while running) and successfully tried @dten's fork. I'd vote for merging #69 and creating a release (...I also need #67, which is not in 0.16 either).

Closing this, #69 and #76 should take care of it.
If anyone has similar problems after the impending next release, please open a new issue and reference this one.


fix: Fixed HF EF test issue where API key wasn't being set

#64  👈
main

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

Join @tazarov and the rest of your teammates on  Graphite


include ember addons components & helpers

this adds autocompletion for components and helpers that are coming from ember addons (in node modules)
it has only been working if the addon also published with .ember-cli file, but thats not always the case nor required.
this change checks the package.json of the module for the keyword "ember-addon" like its done by the ember-cli and then continues to include the components and helpers from that addon into the index.
since the check is done for every file in the addon, i added a cache for improved performance

sorry, I'm having a hard time understanding what this PR is trying to fix. can you explain the issue in a few more words so that it's easier to understand what you're doing here? 🙏

updated description


[prosiebensat1] Download from prosieben.de not possible (caused by KeyError('sources',))

[x] I've verified and I assure that I'm running youtube-dl 2018.04.25
[x] At least skimmed through the README, most notably the FAQ and BUGS sections
[x] Searched the bugtracker for similar issues including closed ones
[x] Checked that provided video/audio/playlist URLs (if any) are alive and playable in a browser

What is the purpose of your issue?

[x] Bug report (encountered problems with youtube-dl)

Log
^C:\Users\username\Downloads>youtube-dl.exe -v https://www.prosieben.de/tv/beste-show-der-welt/videos/episode-05
[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: ['-v', 'https://www.prosieben.de/tv/beste-show-der-welt/videos/episode-05']
[debug] Encodings: locale cp1252, fs mbcs, out cp850, pref cp1252
[debug] youtube-dl version 2018.04.25
[debug] Python version 3.4.4 (CPython) - Windows-10-10.0.16299
[debug] exe versions: none
[debug] Proxy map: {}
[prosiebensat1] tv/beste-show-der-welt/videos/episode-05: Downloading webpage
[prosiebensat1] 5450626: Downloading videos JSON
ERROR: An extractor error has occurred. (caused by KeyError('sources',)); please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
Traceback (most recent call last):
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\rg3\tmpad1hmn8r\build\youtube_dl\extractor\common.py", line 440, in extract
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\rg3\tmpad1hmn8r\build\youtube_dl\extractor\prosiebensat1.py", line 450, in _real_extract
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\rg3\tmpad1hmn8r\build\youtube_dl\extractor\prosiebensat1.py", line 399, in _extract_clip
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\rg3\tmpad1hmn8r\build\youtube_dl\extractor\prosiebensat1.py", line 35, in _extract_video_info
KeyError: 'sources'
Traceback (most recent call last):
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\rg3\tmpad1hmn8r\build\youtube_dl\extractor\common.py", line 440, in extract
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\rg3\tmpad1hmn8r\build\youtube_dl\extractor\prosiebensat1.py", line 450, in _real_extract
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\rg3\tmpad1hmn8r\build\youtube_dl\extractor\prosiebensat1.py", line 399, in _extract_clip
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\rg3\tmpad1hmn8r\build\youtube_dl\extractor\prosiebensat1.py", line 35, in _extract_video_info
KeyError: 'sources'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\rg3\tmpad1hmn8r\build\youtube_dl\YoutubeDL.py", line 789, in extract_info
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\rg3\tmpad1hmn8r\build\youtube_dl\extractor\common.py", line 453, in extract
youtube_dl.utils.ExtractorError: An extractor error has occurred. (caused by KeyError('sources',)); please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.

Description of your issue
The download of the video is not possible, I tried different other episodes of this show, but it's always the same error "KeyError('sources',)". There were no other issues with this error or other helpful issues for this extractor.

Any idea how to fix this?

there is no video on this page the actual video URL is:
https://www.prosieben.de/tv/beste-show-der-welt/videos/31-folge-5-ganze-folge


Question on inter-worker message passing

Doing so gives me a compilation error (which is expected)
public function main() {
    worker w1 {
        1 -> function;
        2 -> function;
    }

    int value1 = <- w1;
}

but not
public function main() {
    worker w1 {
        foreach int i in 1 ..< 3 {
            i -> function;
        }
    }

    int value1 = <- w1;
}

Is that the expected behavior ?

At the moment we only support worker send from the toplevel (this is a spec deviation) of the worker-decl, but seems like we have not considered the foreach construct.

Second sample now emit  worker send statement position not supported yet, must be a top level statement in a worker.

Let's keep this open as we do need to support this worker send position as it's allowed in the spec.


DBZ-4148 Reconfigure for connect extension

Rework the docker-compose configuration for connect extension

now using connect nightly image
remove previously added artifacts which are no longer necessary

Merged. Thx @mdrillin!


Fix banner close button hover state

Fixes

Fixes #2203 by @fcoveram
Description

This PR updates the VCloseButton's "black" variant to use transparent background, white icon, and white background with opacity-10 on hover. This button is used in the pages menu modal on the mobile screen and the black notification banner on the yellow home page.
The banner close button's size changed from "tiny" to "small" as in the mockups.
Testing Instructions

Open the app in an incognito mode to make sure that the privacy banner shows up. Check that the close button is visible, and it changes background color on hover.
Narrow the screen and click on the "menu" button to open the pages menu modal. The close button should look the same as the banner button.
Checklist

[x] My pull request has a descriptive title (not a vague title likeUpdate index.md).
[x] My pull request targets the default branch of the repository (main) or a parent feature branch.
[x] My commit messages follow best practices.
[x] My code follows the established code style of the repository.
[x] I added or updated tests for the changes I made (if applicable).
[ ] I added or updated documentation (if applicable).
[x] I tried running the project locally and verified that there are no visible errors.
[ ] I ran the DAG documentation generator (if applicable).

Developer Certificate of Origin

Developer Certificate of Origin
Developer Certificate of Origin
Version 1.1

Copyright (C) 2004, 2006 The Linux Foundation and its contributors.
1 Letterman Drive
Suite D4700
San Francisco, CA, 94129

Everyone is permitted to copy and distribute verbatim copies of this
license document, but changing it is not allowed.

Developer's Certificate of Origin 1.1

By making a contribution to this project, I certify that:

(a) The contribution was created in whole or in part by me and I
    have the right to submit it under the open source license
    indicated in the file; or

(b) The contribution is based upon previous work that, to the best
    of my knowledge, is covered under an appropriate open source
    license and I have the right under that license to submit that
    work with modifications, whether created in whole or in part
    by me, under the same open source license (unless I am
    permitted to submit under a different license), as indicated
    in the file; or

(c) The contribution was provided directly to me by some other
    person who certified (a), (b) or (c) and I have not modified
    it.

(d) I understand and agree that this project and the contribution
    are public and that a record of the contribution (including all
    personal information I submit with it, including my sign-off) is
    maintained indefinitely and may be redistributed consistent with
    this project or the open source license(s) involved.

@fcoveram , I've updated the paddings to match the i2 from Figma file: https://www.figma.com/file/nxkoGOzG5vnTpZgYpi4LsQ/Alert-banner?type=design&node-id=933%3A7003&t=pFK8ogpSQ1t5eBuX-1 (p-2 for banners on below lg and p-3 for banners lg and above)


Process hangs at "Processing File ..."

I'm testing out the conversion using manual.py and it's not going any further than:
Manual processor started.
/usr/bin/python
Audio bitrate was invalid, defaulting to 256 per channel.
32bit Python.
Processing file ...
Is there any logs somewhere that I can check to see why it's not going any further?

Can't say I've seen this error before
Does it fail on every file?
You can maybe enabled debug level logging in logging.ini and then check info.log for some more information.


How to disable section numbering?

Hi. I haven't used the extension for a while and when I inserted a TOC with it today, I noticed that it automatically prefixes each section header with a number.
Is there a way to disable such behavior? I tried orderedList:false but that doesn't work.

sorry about that. Please view my answer in #16

Thanks! That works.


Secondary devices

Problem description
The current API definition only returns a single IMEI for the physical device associated with the device identifier (MSISDN, etc.). But for some scenarios, there may be a secondary device associated with the primary device (e.g. a smartwatch), and the device identifier for that secondary device may not be known (even to the end user).
Is there value in returning a second IMEI when there is a smartwatch associated with the primary device?
Possible evolution
The 200Response object could easily be extended to be an array. The first item would be the primary (i.e. device associated with the device identifier passed by the API caller) and the second item would be the associated device (e.g. smartwatch). Being an array, this solution would automatically work for scenarios where there is more than one secondary device.
Alternative solution
The 200Response could be extended to have explicit primaryDevice and secondaryDevice properties. primaryDevice would be required, but secondaryDevice would not.
Additional context
None

An update on determining "secondary" devices. This information is stored in the HSS, and can be queried using the Sh interface. The rules are generally:

Any number of secondary devices can be accommodated (though there will be CSP limits)
Secondary devices can be classified as MSISDN or IMSPublicIdentity

MSISDN is clearly another mobile subscription
IMSPublicIdentity can be a telephone number, and that number can be a MSISDN. But it can also be something else.

The secondary MSISDNs do not necessarily have to be "owned" by the primary MSISDN owner

The procedure to determine associated devices is as follows:

Determine primary MSISDN for which the request is being made
Send User-Data-Request message to HSS on Sh with User-Identity = MSISDN and Identity-Set = “IMPLICIT_IDENTITIES”
Find Sh-User-Data AVP in User-Data-Answer

Find Sh-Data -> PublicIdentifiers XML list in that AVP

For each MSISDN type in list, add the MSISDN to list of associated MSISDNs
For each IMSPublicIdentity type in list

If value begins “tel:”, determine if number is a MSISDN (usually a simple pattern match)

If number is a MSISDN, add to list of associated MSISDNs

Once a list of MSISDNs is obtained, then a list of associated IMEIs can be constructed.
Open issues are:

If there is only a single secondary MSISDN, how do we know that is a smart watch or other device under control of the primary MSISDN user?
If there are multiple secondary MSISDNs, how do we know which is the smart watch?

Closing as no interest in the use case and no clear implementation


Optimize PreviousPowerOf2

Note: there's difference in behaviour for negative values. Do we care?
I don't feel strongly about this one as it isn't really in hot-paths. Might not be worth it.
Diff
 ; Assembly listing for method Garnet.client.Utility:PreviousPowerOf2(long):long (FullOpts)
 ; Emitting BLENDED_CODE for X64 with AVX - Windows
 ; FullOpts code
 ; optimized code
 ; rsp based frame
 ; partially interruptible
 ; No PGO data
 ; Final local variable assignments
 ;
-;  V00 arg0         [V00,T00] ( 22, 22   )    long  ->  rcx
-;# V01 OutArgs      [V01    ] (  1,  1   )  struct ( 0) [rsp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
+;  V00 arg0         [V00,T00] (  3,  3   )    long  ->  rcx         single-def
+;  V01 loc0         [V01,T01] (  3,  3   )     int  ->  rax         single-def
+;# V02 OutArgs      [V02    ] (  1,  1   )  struct ( 0) [rsp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
 ;
 ; Lcl frame size = 0

 G_M63292_IG01:  ;; offset=0x0000
 						;; size=0 bbWeight=1 PerfScore 0.00
 G_M63292_IG02:  ;; offset=0x0000
-       mov      rax, rcx
-       sar      rax, 1
-       or       rcx, rax
-       mov      rax, rcx
-       sar      rax, 2
-       or       rcx, rax
-       mov      rax, rcx
-       sar      rax, 4
-       or       rcx, rax
-       mov      rax, rcx
-       sar      rax, 8
-       or       rcx, rax
-       mov      rax, rcx
-       sar      rax, 16
-       or       rcx, rax
-       mov      rax, rcx
-       sar      rax, 32
-       or       rcx, rax
-       mov      rax, rcx
-       sar      rax, 1
-       sub      rcx, rax
-       mov      rax, rcx
-						;; size=71 bbWeight=1 PerfScore 7.25
-G_M63292_IG03:  ;; offset=0x0047
+       xor      eax, eax
+       lzcnt    rax, rcx
+       neg      eax
+       add      eax, 63
+       mov      ecx, eax
+       sar      ecx, 6
+       movsxd   rcx, ecx
+       xor      rcx, 1
+       shlx     rax, rcx, rax
+						;; size=29 bbWeight=1 PerfScore 4.50
+G_M63292_IG03:  ;; offset=0x001D
        ret
 						;; size=1 bbWeight=1 PerfScore 1.00

-; Total bytes of code 72, prolog size 0, PerfScore 8.25, instruction count 23, allocated bytes for code 72 (MethodHash=a07108c3) for method Garnet.client.Utility:PreviousPowerOf2(long):long (FullOpts)
+; Total bytes of code 30, prolog size 0, PerfScore 5.50, instruction count 10, allocated bytes for code 30 (MethodHash=a07108c3) for method Garnet.client.Utility:PreviousPowerOf2(long):long (FullOpts)
 ; ============================================================

Yeah, does not seem worth it to lose the generality, as we don't call this on critical path.

Agreed--and it looks like this would misbehave with zero also


parted: build with python3

Motivation for this change
Moving away from python2. Seems to work at first glance, and
http://www.linuxfromscratch.org/blfs/view/svn/postlfs/parted.html
also suggests it should be possible to use on a system with
only python3.
Things done

[ ] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[ ] Fits CONTRIBUTING.md.

Could you mind adding yourself as a maintainer? The package currently has none.

Lets wait for ofborg but I think this is going to be a mass rebuild.

Would you mind adding yourself as a maintainer? The package currently has none.

I'm not sure I feel qualified to be quite honest...


Adhere to file naming convention

Motivation
https://datadoghq.dev/integrations-core/guidelines/conventions/#file-naming
import os
import re

ROOT = r'C:\Users\ofek\Desktop\code\integrations-core'
IGNORED_DIRS = {'datadog_checks_base', 'datadog_checks_dev', 'datadog_checks_tests_helper'}
BASE_CLASSES = {'AgentCheck', 'PDHBaseCheck', 'OpenMetricsBaseCheck', 'GenericPrometheusCheck', 'WinWMICheck'}

def main():
    for check in os.listdir(ROOT):
        if check in IGNORED_DIRS:
            continue

        check_dir = os.path.join(ROOT, check, 'datadog_checks', check)

        package_root = os.path.join(check_dir, '__init__.py')
        if not os.path.isfile(package_root):
            continue

        with open(package_root, 'r', encoding='utf-8') as f:
            lines = f.readlines()

        for i in range(len(lines) - 1, -1, -1):
            line = lines[i]
            if line.startswith('from .'):
                check_file_name = line.split('.')[1].split()[0]
                lines[i] = line.replace(check_file_name, 'check', 1)
                break
        else:
            print(check)
            continue

        # jmx
        if check_file_name == '__about__':
            continue

        check_file = os.path.join(check_dir, f'{check_file_name}.py')
        with open(check_file, 'r', encoding='utf-8') as f:
            contents = f.read()
            for base_class in BASE_CLASSES:
                if base_class in contents:
                    break
            else:
                print(check)
                continue

        if check_file_name == 'check':
            continue

        # Rename file
        os.replace(check_file, os.path.join(check_dir, 'check.py'))

        # Rename import
        with open(package_root, 'w', encoding='utf-8') as f:
            f.writelines(lines)

        # Rename possible test imports
        for root, _, files in os.walk(os.path.join(ROOT, check, 'tests')):
            for file_name in files:
                if not file_name.endswith('.py'):
                    continue

                test_file = os.path.join(root, file_name)
                with open(test_file, 'r', encoding='utf-8') as f:
                    old_contents = f.read()

                new_contents = re.sub(
                    f'datadog_checks.{check}.{check_file_name}(?!\\w)',
                    f'datadog_checks.{check}.check',
                    old_contents,
                )
                new_contents = re.sub(
                    f'from datadog_checks.{check} import {check_file_name}(?!\\w)',
                    f'from datadog_checks.{check} import check as {check_file_name}',
                    new_contents,
                )

                if new_contents != old_contents:
                    with open(test_file, 'w', encoding='utf-8') as f:
                        f.write(new_contents)

if __name__ == '__main__':
    main()

How would you log?

Recommend a deprecation approach rather than a wholesale backwards incompatible change.

That's a good question. That will only break if someone is importing things from the integrations like from datadog_checks.active_directory.active_directory import DEFAULT_COUNTERS beside the integration itself. How likely is that ?
It would mean "extending" from an existing integration ?

Example case:
active_directory.py:
# (C) Datadog, Inc. 2013-present
# All rights reserved
# Licensed under Simplified BSD License (see LICENSE)

import warnings
warnings.warn('Use of this file has been deprecated, import directly from "check.py" instead.', DeprecationWarning, stacklevel=2)

from .check import ActiveDirectoryCheck, DEFAULT_COUNTERS


Breakpoints not being outputted at all

Hi,
This plugin seems like the perfect solution for me however, I've not managed to get this to work. I've added it to my package.json and postcss.config.js without any errors. When I use an example of your breakpoint:
@breakpoint-only md {
  .header {
    background: red;
  }
}

Everything gets processed fine, but if I take a look at the source file, it's literally outputting the same code.
Any ideas, why this may not be working correctly?

Having the same issue.


SetUp/TearDown exactly once for all test methods in a TestCase ?

I'm migrating from DUnit to DUnitX. Everything seems fine, but I'm lacking one piece of functionality.
In DUnit there was a way to execute SetUp/TearDown not for every Test method in TestCase, but once for the whole TestCase (once for all methods inside TestCase).
This was made but TTestSetup class, in which SetUp and TearDown were overriden, and registration of the test case was special:
not just
RegisterTest(TSomeTestCase.Suite)
but
RegisterTest(TSomeTestSetup.Create(TSomeTestCase.Suite))
SetUp and TearDown were in TSomeTestSetup class and they were called one time for all Test methods inside TSomeTestCase.
Is there something similar in DUnitX? My SetUp method is slow (it connects to some server), so its not convinient to reconnect for every test method execute. I want to connect once and then execute all test methods (100+ of them) and then disconnect.

SetupFixture and TeardownFixture attributes are what you are looking for,

Not sure, what am I doing wrong. I've created empty example in Delphi 11 Alexandria (with built-in version of DUnitX) , wrote [Setup], [TearDown], [SetupFixture], [TeardownFixture] attributes, but these methods are not called
DUnit_Test.zip

Ahh, must be PUBLIC methods. The more you live the more you know...


aya: Fix Loading from cgroup/skb sections

fa037a88e2f0820d2a64bbaae12464bf5dce083d allowed for cgroup skb programs
that did not specify an attach direction to use the cgroup/skb section
name per the convention established in libbpf. It did not add the
necessary code to load programs from those sections which is added in
this commit
Fixes: #225
Signed-off-by: Dave Tucker<EMAIL_ADDRESS>

LGTM

Thank you for the fix @dave-tucker and @nak3 for the review! 🙏


Improved formatting of format_datetime errors, including original jiff error

There are some minor conflicts here that need to be fixed.

Should be fixed now


Show details on "installed packages" tab

This would imply we either cache the package info locally, or query the API.
I had spoken to Matt about the possibility of having and single package endpoint or even querying in bulk (which can be cached as well. initially it was thought for latest versions to prompt for updates) but i think things are i little busy on their side nowadays.


remove deprecated stuff in php tutorial

AMQPChannel::$callbacks was marked as @Internal in php-amqplib/php-amqplib@f30adba and AMQPChannel::is_consuming() public API was introduced to replace it.

Thank you!


Sometimes doesn't built correctly when added in test target (Xcode 11.4)

Error message:
Swift package product '' is linked as a static library by '' and ''. This will result in duplication of library code.

related discussion: https://forums.developer.apple.com/thread/128806


Translations file?

Hello! Thanks for sharing!!
Is it possible to store all translations in a single file and use v-translate globally?
i.e. I'm using Vuex to keep track of a dynamic language shifter and wondering what the best way to implement is. Any thoughts welcome!

Hey @JoshuaDoshua thank you for opening an issue! And yeah, that's a functionality i was thinking in adding, so i'll be working on it and let you know when is done :) hopefully, would be this weekend.
About your need, i dont have plenty experience with Vuex but as i see it you could just use
this.$translate.setLang('english')

or something when you receive a language shift notification via the Vuex store, but as i said, i have no experience with Vuex so i might be wrong.
If you give it a try just let me know please if you find any trouble and i'll try to help you, anyhow i'll add the functionality to dynamically load a single translation file. Good day!

I've made the change, is in the 1.2.0 release here: https://github.com/javisperez/vuetranslate/releases/tag/1.2.0 as i understand your need, you can now load the translations globally with something like:
import MyLocales from 'locales';

Vue.use(VueTranslate);

Vue.locales(MyLocales);

and after that everything should be normally usable.
I've also updated a little the README text, explaining some methods and events you could probably use. If you do give it a try please let me know if you got it to work.


Never ending Building and empty assert message

Describe the bug
One Student had the problem that he only got a "building" but no error message after multiple submits. I as an instructor in the class see an empty assert statement under the scores tab of Artemis. Only under the build plan id on bamboobruegge.in.tum.de was the correct error message for the assert.
This also happened after a build failure because of a wrong encoding.
To Reproduce

The exercise expects two classes with a main() method each.
They are tested by the structure test that ist run sequential.
He put both classes in the same file.
He got a never ending build cycle.
4.1 After reloading he gets a "no result" on the front page of Artemis
Even after committing the classes in separate files the building message was still visible for him bit no other error message.
In the scores view section of Artemis appears a "build failure" message for that student and if you click on it you see the empty assert statement.
On Bamboobruegge is the correct error message viewable.

Expected behavior
Correct output of error message
Screenshots
Students view:

Errormessage on bamboobruegge:
Correct error message:

First error message before the assert error:

The error message on Artemis in the scores view was something like:
"org.junit.ComparisonFailure: expected: but was: "
Environment

 Artemis 3.8.4

The empty assert statement appeared more often even in Repositories without prior build failures.
The empty assert statement can be seen by the instructor in the scores view as well as by the student in the respective exercise.

This has been fixed. Wrong encodings have been the problem.
Bamboo enforces now the UTF8 encoding to prevent such issue.


Thermo mechanical

Added temperature dependent thermo-mechanical loading, using a base class called NodalOperation that translates between elemental values and nodal values
Also added ElementalAverage that uses ElementOperation as base and determines average values within an element

Looks like a good addition! We're kinda getting quite a lot of modules where the only difference is the _prepare function, where the element matrix is assembled. I'll have to think a bit on how to handle this.


Include compression algorithms by default

Now one has to write the following code to opt-in zstd compression, though it could be included in kafkajs by default via optional dependencies.
const { CompressionTypes, CompressionCodecs } = require('kafkajs')
const ZstdCodec = require('@kafkajs/zstd')
CompressionCodecs[CompressionTypes.ZSTD] = ZstdCodec()

P.S. Thank you for such a great package!

default via optional dependencies.

But this would still mean that npm will attempt to download the packages, and build them. Depending on how "complete" your build environment is this might lead to quite some additional time before it is determined that the build cannot go through. From a PoV of managing a CI environment I rather not have such dependencies.
Looking at the other side: The cost for setting up build environments, testing, and maintaining the dependencies right now is paid by users that require zstd (or snappy, or lz4, ...) compression, which IMHO is "fair".
The question therefore is a bit: Apart from Out-of-the-box experience improvements, what is the value of moving the dependencies (presumably lz4 and snappy, too)?

I agree with Ankon. Making KafkaJS depend on the codecs is not gonna happen, as NPM will still install optional dependencies, meaning that anyone using KafkaJS would also get every single compression codec as a bonus (not to mention that we'd need to figure out a way to select which codec to use in case there are multiple options (such as native bindings vs pure-JS implementations).
However, it made me think about reversing the dependency. A codec could register itself if it has a peer dependency on kafkajs:
const MyGreatCodec = () => ({
  compress: async () => Buffer.alloc(0)
  decompress: async () => Buffer.alloc(0)
})

const register = () => {
  try {
    const { CompressionTypes, CompressionCodecs } = require('kafkajs')
    CompressionCodecs[CompressionTypes.ZSTD] = MyGreatCodec
  } catch (e) {
    throw new Error('Failed to register MyGreatCodec compression codec. Are you missing peer dependency "kafkajs"?')
  }
}

module.exports => {
  register,
  MyGreatCodec
}

Now, I'm not sure I think this is such a great idea. It would mean that every codec will have a slightly different registration method just by virtue of having different authors, and all we're really getting out of it is reducing a tiny, tiny amount of boilerplate.

But this would still mean that npm will attempt to download the packages, and build them.

There is --no-optional flag to omit those. Does it solve your issue?

Apart from Out-of-the-box experience improvements, what is the value of moving the dependencies (presumably lz4 and snappy, too)?

to reduce boilerplate code and keep it consistent with kafkajs
to hide code that modifies the kafkajs internals

You are not modifying internals; you are plugging a codec. I guess the interface to do that could be better, but realistically it is a one-line integration since the other two are basically imports. The --no-optional flag works, but I am certain that most users would forget about it and increase questions about codecs. I like the current setup because kafkajs is not concerned about the codecs, there is a simple but so far good enough interface to write the codecs, and on the codec side, it doesn't require any code from kafkajs.
We are not doing validating the codec interface before we call, we could override the setter and make sure the codec fulfills the required signature.

I have decided to use the package with ESM modules turned on and come to this:
import { CompressionTypes, Kafka, logLevel, CompressionCodecs } from 'kafkajs'
                                            ^^^^^^^^^^^^^^^^^
SyntaxError: Named export 'CompressionCodecs' not found. The requested module 'kafkajs' is a CommonJS module, which may not support all module.exports as named exports.
CommonJS modules can always be imported via the default export, for example using:

import pkg from 'kafkajs';
const { CompressionTypes, Kafka, logLevel, CompressionCodecs } = pkg;

import { CompressionTypes, Kafka, logLevel } from 'kafkajs'
// CompressionCodecs can't be imported from 'kafkajs', so the full path is required
import { Codecs } from 'kafkajs/src/protocol/message/compression/index.js'
import zstd from '@kafkajs/zstd'

Codecs[CompressionTypes.ZSTD] = zstd()

If there were the register method, which @Nevon stated, it would be much better.


[UrlRequest]  ':' inside Url will cause invalid literal error when it isn't marking the port number

If you have a Url like this:
url ="<EMAIL_ADDRESS>Urlrequest will cast following error:
invalid literal for int() with base 10<EMAIL_ADDRESS>This makes it so a lot of REST APIs can't be called from kivy not just from the parse.com site
This is caused because Urlrequest will see the ':' and will expect a port number.
See lines 242-247 in Urlrequest:
correctly determine host/port
    port = None
    host = parse.netloc.split(':')
    if len(host) > 1:
        port = int(host[1])
    host = host[0]

Want to back this issue? Post a bounty on it! We accept bounties via Bountysource.

Tested with:
from kivy.app import App
from kivy.lang import Builder

kv = """
AnchorLayout:
    canvas:
        Color:
            rgba: 1, 1, 1, 1
        Rectangle:
            pos: self.pos
            size: self.size
    AsyncImage:
        size_hint: None, None
        size: dp(56), dp(56)
        # http://duckduckgo.com
        source: 'http://<IP_ADDRESS>:80/assets/icons/meta/DDG-icon_256x256.png'
        anim_delay: 0.0333333333333333
"""

class TestApp(App):
    def build(self):
        return Builder.load_string(kv)

if __name__ == '__main__':
    TestApp().run()

Confused by this. How does that testcase catch the indicated error?

@hackalog Ah, I've misread the issue! Thanks. I thought the problem was in <url>:<port>, yet apparently it's <url>: what was desired. I'll try to look into it.


Change the colors and complete MVP.

each number is a different color and the game ends when either the board fills up or the number is 2048.

so close!!!


feat: added button component

Added Button component

Primary button
Button with link
Rounded buttons

@shraddha15-creator Please resolve conflicts

There was duplicated code, just fixed that. Rest was okay

why did you not accept this pr for hacktoberfest?

There was duplicated code, just fixed that. Rest was okay

why did you not accept this pr for hacktoberfest?

@shraddha15-creator I have marked it as hacktoberfest-accepted


Update GraalVM version

Changes

Update GraalVM version to 22.3.0

Codecov Report

Merging #705 (5bdc406) into main (6b15a74) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff             @@
##              main      #705    +/-   ##
==========================================
  Coverage   100.00%   100.00%
==========================================
  Files           66        56    -10
  Lines         2861      1970   -891
  Branches       475       322   -153
==========================================
- Hits          2861      1970   -891

Impacted Files
Coverage Δ

packages/recheck/src/lib/java.ts

packages/recheck/src/browser.ts

packages/recheck/src/lib/exe.ts

packages/recheck/src/lib/pure.ts

...ges/eslint-plugin-redos/src/rules/no-vulnerable.ts

packages/recheck/src/lib/env.ts

packages/recheck/src/lib/agent.ts

packages/recheck/src/main.ts

packages/recheck/src/lib/native.ts

packages/recheck/src/lib/worker-pool.ts

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


Your .env file for Google OAuth

"If you look at the .env file, you will see that we provided you with sample Google_clientID and Google_clientSecret values. These keys are working; however, we strongly encourage you create your own keys. We may remove the sample keys without notice, and you should learn how to create credentials at Google Cloud Platform."
This is from the end of Ch. 3, and I can't find the .env file that you're referring to.

Never mind. You clearly removed them without notice. The problem is that you have to sign-up for Google Cloud Platform and there's a cost, so I'm just going to skip that step this time around.


[feat] Implement React-Chatbot

NOTES
Nearly half of the files changed are deletions, and most of what's left over are copied from create-ui. 😄
The core of the changes are in:

ChatView.tsx
ChatItem.tsx
useChat.tsx

CONTEXT
We need to implement a React-chatbot component and its corresponding docs page. As part of this, we also will expose a useChat hook so that users can also choose to roll their own views and just leverage the data hook.
CHANGES

Implement chatbot views and styles
Extract relevant context values to a reusable chat hook
Surface reference numbers in chat answers. Clicking on them now opens the references section.
Prefix styles to prevent collisions
Support small devices: make chatbot window take full screen at small screen widths.
Remove dependencies on react-router-dom, react-icons to reduce npm package size
Modify build configs to export useChat from the lib directory.
Create a preview app for PRs for easy testing

Can we update docs/public/index.html so the title is "Vectara React-Chatbot"?


Creating issues and bad votes after experience [urgent Enhancement]

I think it would be an urgend enhancement, that newbies cannot create issues or make bad votings.
In the last days it see it often, that people, who finished 1-5 katas, create issues only because they do not unterstand a kata or do not know what it means to check for null/nill.
I would recommend, that only people with 200 or more honor points can create issues or can do a bad vote.
For bad votings perhaps it should give a mandatory comment-field, in which it has to be described, why the user does a bad vote. (There are people, who think, it is funny, do give bad votes and to lower the points from the author!)

Seems reasonable to me to limit voting. 200 honor is way too high though, we will severely limit the amount of feedback and nothing will get approved. Maybe 10 - 20 honor or something, to at least force those who have little to no experience on the site to have some experience before making a judgement call. I would also say that until you reach that level of honor, you can't vote on kata at all.
For creating issues, I don't see the big concern with allowing everyone to file an issue. The only real issue there is that the kata author isn't active on the site anymore and the issues linger, but for any active authors, they can always just close the issue.

I thought of denying bad voting until 200 (or a lower frontier).
I think it is no problem, when newbies vote positive or "middle". But a bad vote is very hard. And often newbies do that, because they didn't understand a kata or have not read the description or are not very good in programming.
Would it possible only to deny bad voting until the frontier is reached. (Perhaps 50 - 100 will do instead of 200.)
I unterstand your reasons for the "issue-problem" and agree.

Yeah thats still too high of a honor limit and if you can't give your full opinion then its the equivalent of having a 5 star rating system where 70% of the users aren't allowed to give a 1 or 2 star vote. It skews the results.
After more thought, I'm not sure how urgent this is, or if this is really even an issue. Most kata on the site have a 90% rating, very few are lower than 80%. If we put more work into propping up the scores even higher then there really is very little meaning to them since there is very little variance. If its an 8 kyu kata and beginner devs are complaining about null values, then maybe it is an issue. Maybe more of a hand holding description should be used. Or... maybe they just dont get it and the bad vote doesn't seem fare - but whatever the case they didn't enjoy the kata and they are entitled to their opinion.
If anything I'm thinking maybe you can't vote until you have done 2 or 3 kata, so that at least you have shaken off your Codewars training wheels and have an idea of what to expect - but IDK if much more is warranted beyond that.

And what about "For bad votings perhaps it should give a mandatory comment-field"?
If people have to write the reasons, some of them perhaps realize, that it is too hard.
Or otherwise the author get to know the reasons for the bad votings and could do better or improve the description...

Thats how things used to be. We had changed it because what would happen is that someone wanted to voice their opinion, and they had to comment, so you would end up with a kata that has 27 issues, and 25 of them are duplicates. So now we just strongly encourage it but dont force you.

Perhaps it is really the best, if voting is possible after x done katas. But perhaps a little bit more than 2 or 3.
Maybe 10? When I think back to my beginning.... I learnt a lot of the way, like things go on codewars in the first days and the first 10 katas... ;-)

For me, I think furthermoe it would be good to have a mandatory text field for bad votings.
Yesterday my Kata "https://www.codewars.com/kata/57b6f5aadb5b3d0ae3000611" was nearly 90%. So a really normal good kata. Then in 5 Minutes two guys give a bad voting.... I don't know why.... Now the kata is 81/82%. And I do not know anything. Did they hate me, because I have more points? Did they have a bad day. Is there a problem in the kata, I did not see? Or are they newbies? Or don't they care, how they vote...

Limiting votes until a set amount of honor or Kata completions means that  beginner Katas will never get rated or will always have a good rating (also worthless).
If a beginner-intended Kata has poor enough instructions that many beginners down-rate it, then perhaps it is deserved.  The real issue is that some Kata may not belong in beginner section and is getting down-rated for being too difficult.
My proposal:  the user must state WHY the poor rating is deserved.  Provide a multi-select list with:

Poor instructions
Too difficult
Incorrect results
Test solution works, but always get timeouts in submission (my pet peeve: optimization Kata are not a good fit in CodeWars)
Other (text field)

In any case, at least the author won't be blind as to what the ratings are for.

I agree with @J-Sorenson. Currently when you select 'somewhat' or 'not much' satisfaction buttons on a beta kata, there are links that encourage giving constructive feedback.

While upon selecting the neutral/negative buttons on an approved kata, the user isn't given encouragement or guided to give feedback to authors.

Approved katas should display the same 'info box' seen on beta katas.


spectra data without time and location is plotted as x-y plot

I have some spectra data and I am putting it into an oceanwave object to create a 2d polar spectra plot. However doing ow.plot() gives a x-y contour instead of a polar contour. Is there a way can request a polar contour?
import oceanwaves
import xarray as xr
import numpy as np
import matplotlib.pyplot as plt

# Create a spectra file
dir_bins = np.arange(7.5, 352.5 + 15, 15)
freq_bins = np.full(30, 0.03453, dtype=np.float) * (1.1 ** np.arange(0, 30))
data = np.ones((len(freq_bins), len(dir_bins)))
spec = xr.DataArray(data, coords=[freq_bins, dir_bins], dims=['frequency', 'direction'])
print(spec)
print('')

# Put it in an oceanwaves object
ow = oceanwaves.OceanWaves(frequency=spec.frequency,
                          direction=spec.direction,
                          energy=spec)
print(ow)
ow.plot()

It produces a polar plot when time and location are specified
import xarray as xr
import numpy as np
from datetime import datetime

# Create a spectra file
time     = [datetime(2013,12,1), datetime(2014,12,2)]
location = [(0,0), (0,1)]
dir_bins = np.arange(7.5, 352.5 + 15, 15)
freq_bins = np.full(30, 0.03453, dtype=np.float) * (1.1 ** np.arange(0, 30))
data = np.ones((len(time), len(location), len(freq_bins), len(dir_bins)))
spec = xr.DataArray(data,
                    coords=[time, [0,1], freq_bins, dir_bins],
                    dims=['time', 'location', 'frequency', 'direction'])
print(spec)

# Put it in an oceanwaves object
ow = oceanwaves.OceanWaves(time=time,
                           time_var='datetime',
                           location=location,
                           crs='epsg:28992',
                           frequency=spec.frequency,
                           direction=spec.direction,
                           energy=spec)
print(ow)
ow.plot(col='location', row='datetime')

Hi Ray,
The plotting routines are essentially the xarray plotting routines with some extra functions. You should therefore be able to use the subplot_kws argument to change the projection:
ow.plot(subplot_kws=dict(projection='polar'))

The fact that the projection is automatically set in case of a faceted grid plot is a workaround for a bug in older xarray versions. See https://github.com/pydata/xarray/pull/1148.
Bas


[BUG] When eventhub sends messages, it may happen that the message is not completely sent.

Describe the bug
When eventhub sends messages, it may happen that the message is not completely sent. The tryAdd method does not detect whether the current batch is full.
Code Snippet
AbstractEventHubTemplate.java
return producer.createBatch(options).flatMap(batch -> {
            for (EventData event : events) {
                try {
                    batch.tryAdd(event);
                } catch (AmqpException e) {
                    LOGGER.error("Event is larger than maximum allowed size. Exception: " + e);
                }
            }
            return producer.send(batch);
        });

Expected behavior
When the sent message is larger than maxMessageSize, the current batch of messages needs to be sent out first, and then the new batch is used to send the remaining part.
Setup (please complete the following information):

OS: [windows 10]
IDE: [IntelliJ]
Library/Libraries: [azure-spring-integration-eventhubs:2.8.0 (groupId:artifactId:version)]
Java version: [8]
App Server/Environment: [Tomcat]
Frameworks: [Spring Boot]

Additional context
tryAdd method:
public boolean tryAdd(final EventData eventData) {
        if (eventData == null) {
            throw logger.logExceptionAsWarning(new NullPointerException("eventData cannot be null"));
        }
        EventData event = tracerProvider.isEnabled() ? traceMessageSpan(eventData) : eventData;

        final int size;
        try {
            size = getSize(event, events.isEmpty());
        } catch (BufferOverflowException exception) {
            throw logger.logExceptionAsWarning(new AmqpException(false, AmqpErrorCondition.LINK_PAYLOAD_SIZE_EXCEEDED,
                String.format(Locale.US, "Size of the payload exceeded maximum message size: %s kb",
                    maxMessageSize / 1024),
                contextProvider.getErrorContext()));
        }

        synchronized (lock) {
            if (this.sizeInBytes + size > this.maxMessageSize) {
                return false;
            }

            this.sizeInBytes += size;
        }

        this.events.add(event);
        return true;
    }

Information Checklist
Kindly make sure that you have added all the following information above and checkoff the required fields otherwise we will treat the issuer as an incomplete report

[x] Bug Description Added
[x] Repro Steps Added
[x] Setup information Added

@ZhuXiaoBing-cn need to have a clear thinking and design of the semantic for this batch sending method. As per the expected behavior mentioned above, the following points should be closely considered in my view:

The original logic is to discard the data if the batch is full, as the snippet shows:

//EventDataBatch.java line 84
....
synchronized(this.lock) {
                if (this.sizeInBytes + size > this.maxMessageSize) {
                    return false;
                }

                this.sizeInBytes += size;
            }

            this.events.add(event);

This may lead to the result that "the message is not completely sent" problem.

The expected behavior will be create a new batch data and send the remaining part.  So the input events data is to be sent in a couple of "batches", and then the overall size of this "batches" should be limited?

merged


chore: fix function names in comment

Changes
fix function names in comment

Submitter Checklist
As the author of this PR, please check off the items in this checklist:

[ ] Has Docs if any changes are user facing, including updates to minimum requirements e.g. Kubernetes version bumps
[ ] Has Tests included if any functionality added or changed
[ ] pre-commit Passed
[ ] Follows the commit message standard
[x] Meets the Tekton contributor standards (including functionality, content, code)
[ ] Has a kind label. You can add one by adding a comment on this PR that contains /kind <type>. Valid types are bug, cleanup, design, documentation, feature, flake, misc, question, tep
[ ] Release notes block below has been updated with any user facing changes (API changes, bug fixes, changes requiring upgrade notices or deprecation warnings). See some examples of good release notes.
[ ] Release notes contains the string "action required" if the change requires additional action from users switching to the new release

Release Notes
NONE

/kind misc


How to link ffmpeg yo lvgl?

I tried to follow the instructions in the following picture, but when it comes to the step of selecting the box in the picture, I don't know how to proceed

I tried to add the following code to the Makefile file, I have tried putting it in the lvgl.mk file and component.mk file

The following figure shows the error situation

You should add it  in the top level Makefile. For example: https://github.com/lvgl/lv_port_pc_eclipse/blob/master/Makefile#L18

However, it seems you are using Cmake not make. So actually it should be part of our cmake file.
I think we can add it in this PR: https://github.com/lvgl/lvgl/pull/6265
Until that can you try adding ffmpeg similarly to the other libs.


Bug when initializing or updating specialization, force power and signatory ability

When you create or update after init a specialization, a force power or a signatory ability, the system will send an error User lack permission on Item created.
If multiple players are connected with only Player permission, it may cause a crash of the Foundry server where the system is running.
Probable source of the bug is a fix made in this PR: Adding an update at the end of a function called in a prepareData seems to make unwanted calls of preUpdateItem hooks coming from connected user client.

I fixed ours as following:
`
export default class ItemBaseFFG extends Item {
async update(data, options = {}) {
if(!game.user.isGM && !this.isOwner) {
return;
}
if (!this.flags?.starwarsffg?.ffgTempId || (this.flags?.starwarsffg?.ffgTempId === this._id && !this.isTemp) || this.flags?.starwarsffg?.ffgIsOwned) {
  await super.update(data, options);
  // if (this.compendium) {
  //   return this.sheet.render(true);
  // }
  return;
} else {
  const preState = Object.values(this.apps)[0]._state;

  await EmbeddedItemHelpers.updateRealObject(this, data);

  if (this.flags?.starwarsffg?.ffgParent?.isCompendium || Object.values(this.apps)[0]._state !== preState) {
    if (this.flags?.starwarsffg?.ffgParent?.ffgUuid) {
      this.sheet.render(false);
    }
  } else {
    let me = this;

    // we're working on an embedded item
    await this.sheet.render(true);
    const appId = this.system?.flags?.starwarsffg?.ffgParentApp;
    if (appId) {
      const newData = ui.windows[appId].object;
      newData[this.flags.starwarsffg.ffgTempItemType][this.flags.starwarsffg.ffgTempItemIndex] = mergeObject(newData[this.flags.starwarsffg.ffgTempItemType][this.flags.starwarsffg.ffgTempItemIndex], this);
      await ui.windows[appId].render(true, { action: "ffgUpdate", data: newData });
    }
    return;
  }
}

}
}
`
It triggers the "update" on all clients - I did not track it down, just made sure that people that actually have the permissions to perform the update is allowed to do so.  I suspect there might be a race condition, as GM + Character Owner will try to perform updates at the same time.  I do not think it is a big issue, as the update they are both doing will be the same.

Thanks for the report and suggested fix. I did a bit more digging and hopefully corrected the root issue. Should be released in 1.802.


Fix Travis Failure

This issue is about Travis Failure.
We need to change all www.youtubeinmp3.com links as service is no more available.

[x] I searched or browsed the repo’s other issues to ensure this is not a duplicate.
[x] This issue is for enhancement/bug fixing.
[ ] This issue is an addition to JSON database.
[ ] I have gone through Contribution Guidelines.
[x] Assign this issue to me.

Quick!

@anshumanv fix this one ASAP, I have PR for #240 ready.

Either remove these links or fix them
Issues :-( > Links 1. [L0106] http://yt-files.com/yt-dd.php?id=0m-JsMXxXsQ&hash=1163f36946da6ba620dc63dc93d86069&name=Haikyuu Connection refused - connect(2) for "yt-files.com" port 80 2. [L0112] http://yt-files.com/yt-dd.php?id=xP5_SnR75ZU&hash=81f36d506e80f82f1bf2eab97aab858a&name=Haikyuu!! Connection refused - connect(2) for "yt-files.com" port 80 3. [L0382] http://yt-files.com/yt-dd.php?id=x8CfQ3P-Z9w&hash=1c2320258ccb4b548daa83d0cbc1ec79&name=Naruto%20Shippuden%20Opening%2018 Connection refused - connect(2) for "yt-files.com" port 80 4. [L0388] http://yt-files.com/yt-dd.php?id=ZrBqxZ1T_5M&hash=67bfefcf768c91f02605582066ed83dc&name=Naruto%20Shippuden%20Opening%2019%20-%20Blood%20Circulator%20(Extended%20Version Connection refused - connect(2) for "yt-files.com" port 80 5. [L0490] http://yt2converter.com/yt-dd.php?id=tHG6pXGxxIE&hash=661a2d713365fe1720bd581dbb2a4596&t=6&name=Dragon%20Ball%20Super%20Opening%20#2 getaddrinfo: Name or service not known 6. [L0526] http://yt-files.com/yt-dd.php?id=m4O2VS4511Y&hash=29f2d27354eb0d248618a2b398d85904&name=Shingeki%20no%20Kyojin%20Attack%20on%20Titan%20Opening%20OP%20Guren%20no%20Yumiya%20Linked%20Horizon%20Extended%20Ver Connection refused - connect(2) for "yt-files.com" port 80 7. [L0621] https://www.youtubeinmp3.com/fetch/?video=https://www.youtube.com/watch?v=n-or12ftZB8 getaddrinfo: Name or service not known 8. [L1250] http://www.youtubeinmp3.com/fetch/?video=https://www.youtube.com/watch?v=IK1K9O3y-gk getaddrinfo: Name or service not known

I have asked @starkblaze01 to complete this.

Fixed Travis failure for these lines:-
L 0106, L 0112, L 0382, L 0388, L 0490, L 0526, L 0621, L 1250
and also fixed Travis Failure for a few Naruto Shippuden OSTs

The only @starkblaze01 :raised_hands:

Where is PR?

There is 404 on nearly 56 URIs merged yesterday 😢

Please change every <IP_ADDRESS>/ost/ in repository to <IP_ADDRESS>/anime_ost/.
@starkblaze01 one more PR will be appreciated. 🙏

Please change every <IP_ADDRESS>/ost/ in repository to <IP_ADDRESS>/anime_ost/.
@starkblaze01 one more PR will be appreciated and refer to this issue in PR. 🙏
cc: @anshumanv

Fixed Travis Failure


non-const Color::operator[] should return mutable reference

Environment

OS Version: Ubuntu 22.04
Source or binary build? main, e0193a59072cc4a083dedaecf05957d059997b02

Description

Expected behavior: To be able to mutate a component of Color using operator[]
Actual behavior: Since it returns a value, any mutation is not applied to the component in Color
https://github.com/gazebosim/gz-math/blob/e0193a59072cc4a083dedaecf05957d059997b02/include/gz/math/Color.hh#L162

The issue you're describing is related to the operator[] overload for the Color class. The problem is that the operator is declared to return a float instead of a reference to a float. As a result, when you use the operator to access a component of the color and attempt to mutate it, the mutation doesn't apply to the actual color instance.
To fix this issue, you should modify the declaration of the operator[] to return a reference to a float. Here's the corrected declaration:
public: float& operator[](const unsigned int _index);

This modification allows you to use the operator to both access and mutate the individual components of the Color class.
I was not able to create a pull request , hence I have provided the solution of the problem in the comment . Please look for the issue and provide me possible solutions for the same.
I hope by these changes in the code you will be able to mutate a component of color using operator

Hi, is this issue still open? If it hasn't been implemented I would be happy to open the pull request.

Hi @aagrawal05 , I am currently working on this issue. I'm getting some run time errors while running test cases. You can check those details here.
It would be appreciated if you can add some value to that .


Applied to multiple agents?

Hi, I have tested your project for the multi-agent environment.
But I am not sure whether it is suitable for the multi-agent environment.
My environment includes 8 agents with discrete actions. However, I got this error:
initialize model SUCCUESS.
save config to /RLData/sac_no_v/test/GridWorldLearning/config
There was a mismatch between the provided action and the environment's expectation: The brain GridWorldLearning expected 8 discrete action(s), but was provided: [-0.050590384751558304, -0.665206789970398, -0.0410725474357605, -0.23551416397094727, 0.010302126407623291, 0.2644920349121094, -1.0, -0.10047897696495056, -1.0, 0.03841760754585266, -1.0, -1.0, -0.33658552169799805, 0.7163478136062622, -0.1180223822593689, 0.31758153438568115, -1.0, -0.18739420175552368, -0.15177105367183685, -0.2588164806365967, 0.11979779601097107, -0.5222678184509277, -0.6121081113815308, -1.0, -0.08478996157646179, -0.6589073538780212, -1.0, 0.32313454151153564, -0.3325958251953125, -0.9373922348022461, 0.4225391149520874, -0.18213623762130737, 0.7108762264251709, 0.1738891303539276, -0.6963950395584106, 0.41238147020339966, -1.0, 0.451471209526062, -0.6678181886672974, -0.8575950860977173]
unsupported operand type(s) for +: 'NoneType' and 'str'

Could you please help with it? Thanks!

支持多智能体、多脑、多图像输入训练，但是SAC算法不支持离散动作，框架主要针对连续控制问题，框架内支持离散问题的算法为pg,ac,a2c,dqn，前沿算法有些不支持离散控制问题，有些目前没有扩展。建议对连续控制问题进行测试，因为框架内为简单版dqn，收敛性不佳。


INC examples refactorization

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint.


Cartographer transfer query failing

Describe the bug
Cartographer transfer query failing
Argument "orderBy" has invalid value executedTxNonce.
To Reproduce
https://app.datadoghq.com/logs?query=service%3A(cartographer-messages OR cartographer-roots OR cartographer-routers OR cartographer-transfers) error &cols=host%2Cservice&event=AgAAAYop-Qx74WiuGwAAAAAAAAAYAAAAAEFZb3AtZkJXQUFEb0p1TExjRDc0V2dBSwAAACQAAAAAMDE4YTI5ZjktZjZkNS00ZTNjLTlkY2MtNGNiM2YwMmU4YTk0&index=*&messageDisplay=inline&stream_sort=desc&viz=stream&from_ts=1692920472066&to_ts=1692921372066&live=true
Additional context
Add any other context about the problem here.

staging

no longer see this present on the staging logs, closing


chore: fix rebuilding db

Purpose

How does the solution address the problem

Changes made

prnet cleaned-up successfully


Updating external libraries

At this moment, it seems that updating bigg will cause errors in macOS (around bgfx), and not updating bigg will cause errors with GCC 7+ in Ubuntu (around glm).
Thus, this repository currently uses old bigg and uses GCC 6 in testing on Ubuntu 16/18.

This problem causes another problem: #22


Support psr/container ^2.x

The only difference I see between psr/container ^1.x and 2.x is the return type bool on ContainerInterface, which seems already implemented by the injector's container like that.

Thanks!

Thanks as well! @kelunik


Making custom handlers requires a defineContext function

The docs don't mention anything about this and I'm not sure of an ergonomic way to create this function...

That's a good point, @kentcdodds. Could you please show me how are you creating a custom request handler and what is your goal?
The defineContext function is used internally to define which ctx utility functions are available for specific request handlers. There are two main groups of request handlers, per docs: rest and graphql. Since those operate in different domains, they have different context utilities declared by defineContext.
However, as of Custom context utilities I see little benefit in passing them to defineContext, as you may import your custom context functions manually. I think it's a matter of marking defineContext as optional when creating a custom request handler, and describing what this function does for general knowledge in the documentation.

As of 0.9.2 the defineContext property is no longer required on a custom request handler.
I've updated the Custom request handler documentation to reflect on how to use the defineContext property to provide your custom context utilities.
I still don't recommend defineContext as the go-to, and would advise to just declare custom context utility functions and import them manually, but I can still see a use case of creating your own custom set of request handlers and even putting them into a separate package to distribute in the stack.

Thank you!


 Access Keys + CORS

The ReadMe's don't explain what the Darwin_Token is.
Is it the Access Key or Secret Key in the national rail "my feeds" or do I need to register for a different API access?
CORS... it's driving me mental. How can I disable cors - I've event tried hacking headings into the Bluebird index.js - no matter what call I make (and I'm doing this through Vue.js in case that's the issue?) I get:-
Access to fetch at 'https://lite.realtime.nationalrail.co.uk/OpenLDBWS/ldb11.asmx' from origin 'http://<IP_ADDRESS>:8844' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource. If an opaque response serves your needs, set the request's mode to 'no-cors' to fetch the resource with CORS disabled.
I suspect it's something to do with the :8844 port number on the local host?

Ignore the key thing... Found the site:
http://realtime.nationalrail.co.uk/OpenLDBWSRegistration/Registration
Still battling with CORS... :sigh:, but have worked out that Vue / port # is the issue

Hi Paul. Glad to hear you got it sorted out. It's a good point though, the README could certainly be a bit clearer on this front. I'll get something added to this to guide people to the registration page.
Regarding the CORS issue I'm afraid I can't be of much help. I have this deployed as an AWS lambda acting as a proxy for a couple of apps rather than using a browser. Good luck though!

@mattsalt CORS is totally a PITA.... I wrote a 5-liner sample in straight node.js and it works fine.
One thing to add to the Readme as well.... even after you've registered, despite what the email says, your key won't work for about an hour


sitemap.xml using incorrect domain (lunarcrush.com)

Link: https://spicygreenbook.com/sitemap.xml
Expected behavior:
The sitemap.xml doc should provide a crawler-friendly list of resources on a site. Each entry should include a valid "loc" for each "url" object. For this site, each "loc" should be a resource on spicygreenbook.com.
Current behavior:
All links in sitemap.xml specify "lunarcrush.com" as the domain.
Example:
<url>
  <loc>https://lunarcrush.com/biz/rodneys-ribs</loc>
  <lastmod>2020-09-17</lastmod>
  <changefreq>always</changefreq>
  <priority>1.0</priority>
</url>

Note: the path appears to be accurate, so the issue is limited to the domain. For instance, the above example correctly includes "/biz/rodneys-ribs".

Thanks @Dorkjedi for the fix


Compile Error Ubuntu

so im having an issue where at the very end of the compile it fails complains about orga macros ive looked everywhere but info seems limited ill post the error below hopefully someone can help me out so i can get my node running

Compiling wasm-bindgen-macro v0.2.79
error[E0554]: #![feature] may not be used on the stable release channel
--> /root/.cargo/git/checkouts/orga-93bd515e30e7ca9a/cc9356d/macros/src/lib.rs:1:12
|
1 | #![feature(proc_macro_span)]
|            ^^^^^^^^^^^^^^^
error[E0554]: #![feature] may not be used on the stable release channel
--> /root/.cargo/git/checkouts/orga-93bd515e30e7ca9a/0f3b1c8/macros/src/lib.rs:1:12
|
1 | #![feature(proc_macro_span)]
|            ^^^^^^^^^^^^^^^
Compiling rustls-native-certs v0.5.0
For more information about this error, try rustc --explain E0554.
error: could not compile orga-macros due to previous error
warning: build failed, waiting for other jobs to finish...
error: could not compile orga-macros due to previous error
error: failed to compile nomic v3.0.0 (/home/duckets/nomic), intermediate artifacts can be found at /home/duckets/nomic/target
duckets@duckets-MS-7C37:~$ rustup show
Default host: x86_64-unknown-linux-gnu
rustup home:  /home/duckets/snap/rustup/common/rustup
installed toolchains
nightly-2022-02-02-x86_64-unknown-linux-gnu
nightly-x86_64-unknown-linux-gnu (default)
active toolchain
nightly-x86_64-unknown-linux-gnu (directory override for '/home/duckets')
rustc 1.69.0-nightly (dc1d9d50f 2023-01-31)

Not sure if you ever resolved your issue, but it seems to be something related to your rust toolchain install rather than something with the nomic codebase (since the errors are implying the build is attempting to use stable Rust). Let us know if you're still having issues and we can help debug.


Add Diagnostics Events

Type of change?

[ ] Bug fix
[ ] New feature
[x] Enhancement
[ ] Breaking change (breaks backward compatibility)

Description, Context, Motivation
Add diagnostic events for the following categories:
-Overall dashboard events
-Device group create/edit flow
-Rules page open
-Help dropdown
-Refresh
Checklist:

[x] All tests passed
[x] The code follows the code style and conventions of this project
[ ] The change requires a change to the documentation
[ ] I have updated the documentation accordingly

This change is

adding Context API code might be out of scope for this PR. Will investigate further