Provide FlowParameters for linking credentials to authenticated users

The SignInIntentBuilder.enableAnonymousUsersAutoUpgrade() provides a configuration for linking credentials to an anonymous user. It would be nice to utilize this implementation to link credentials to authenticated users as well. This is especially useful for adding a phone number to an existing users or vise versa.
This might relate to #309.
Steps to reproduce:

Start AuthUI with two providers (e.g. Google and Phone)
Sign in with Google
Repeat 1.
Sign in with Phone

Observed Results:

A new user was created with the phone number provided in 4.

Expected Results:

The phone number was added to the user signed in in 2.

Relevant Code:
From AuthOperationManager.java
public Task<AuthResult> signInAndLinkWithCredential(@NonNull FirebaseAuth auth,
                                                    @NonNull FlowParameters flowParameters,
                                                    @NonNull AuthCredential credential) {
    if (canUpgradeAnonymous(auth, flowParameters)) {
        return auth.getCurrentUser().linkWithCredential(credential);
    } else {
        return auth.signInWithCredential(credential);
    }
}

public boolean canUpgradeAnonymous(FirebaseAuth auth, FlowParameters flowParameters) {
    return flowParameters.isAnonymousUpgradeEnabled() && auth.getCurrentUser() != null &&
            auth.getCurrentUser().isAnonymous();
}

Hi, thanks for the feature request! I've added this to our internal tracking (b/162980103).

Hello @sam-gc,
Have you any news about this feature ?
Best Regards,

Hi @FanciROS, unfortunately no updates for now

Hi, any update on this? I'd be great to use Auth UI flow for Linking accounts via linkWithCredential

I saw this is already solved here 309
@samtstern  seems this issue has been resolved perfectly great by @SUPERCILEX and still not avialble officially. Wouldn't it make sense to make the improvement avialble ? Even if IOS version is not alligned with this feature it doesn't make sense to hold the feature any longer for android users, specially since this has been avialble since 2017 or even before. Having the feature avialable will also encourage IOS team to deliver the feature sooner.... otherwise we will be waiting and waiting for an already avialble feature that is super helpful and mostly needed. Thanks in advance @samtstern , and also thanks a lot @SUPERCILEX for developing this super useful feature!


Added new karma plugin for errors

Added karma-simple-reporter plugin to the build process,
This will add new error message format to our karma unit testing.
Phase 1 of creating more understandable test error messages.

Can you add a screen shot here with how karma report looks now?

Adding screen shot for few states

@shahata
Hey, any new regarding this PR?
Thanks.

@shahata
Hey, it's been almost 2 weeks now, do you have any plans for this PR?
Thanks.

I tried it and it didn't work for me...
Please come over to show me how this works tomorrow and we'll merge it.
Also, please squash the commits.

Closing this pull request, i will create a new one.


feat: #1 add supports complex struct parsing with streaming

This PR supports parsing JSON/YAML from the stream and processing it as a model.
Allows you to implement features such as #1

I would love to get some feedback on the API:
class Letter(BaseModel):
    title: str
    to: Optional[str] = None
    content: Optional[str] = None

# Define handler
class Handler(BaseHandler):
    def model(self):
        return Letter

    async def handle_partially_parsed(self, data: Letter) -> Optional[Terminate]:
        if data.to and data.to.lower() != "larry":
            print("You can only write a letter to Larry")
            return Terminate()
        if data.content:
            self.ws.send(data.content) #show to the user with WebSocket

    async def terminated(self):
        print("Terminated")

# Invoke Function in a streaming request
async def main():
    # Request and process stream
    resp = await client.chat.completions.create(
        model="gpt-3.5-turbo",
        messages=[{
            "role": "system",
            "content":
                "You are a letter writer able to communicate only with VALID YAML. "
                "You must include only these fields: title, to, content."
                "ONLY write the YAML, without any other text or wrapping it in a code block."
        }, {"role": "user", "content":
            "Write a SHORT letter to my friend Larry congratulating him for his newborn baby Lily."
            "It should be funny and rhythmic. It MUST be very short!"
            }],
        stream=True
    )
    await process_struct_response(resp, Handler(), 'yaml')

cc @jogardi @MRYingLEE @yotammanor
Any chance you can help with feedback here?

Right away feedback is most welcome:)
Thabks


Fix for animated sprite not stopping

Description of change

Fixes issue where animated sprite continues to play even when _playing = false
Pre-Merge Checklist

[x] Lint process passed (npm run lint)

Thanks for this @Owlzy. Can you provide an example of this not work so we can verify?

Thanks for this @Owlzy. Can you provide an example of this not work so we can verify?

Thanks for this @Owlzy. Can you provide an example of this not work so we can verify?

Sure.  Having made a playground I now see it is specific to autoUpdate = false.
In this playground can see that animation plays regardless of calling stop().  If loop is true it will continue looping, or if not looping it will play till the last frame and stop.

Thanks for this @Owlzy. Can you provide an example of this not work so we can verify?

Sure.  Having made a playground I now see it is specific to autoUpdate = false.
In this playground can see that animation plays regardless of calling stop().  If loop is true it will continue looping, or if not looping it will play till the last frame and stop.

Got it, this example is help for context. At first, it seemed a little redundant to add this check, but now I see why because you are enabling autoUpdate.
I fine with this, but additional, I think it might be nice to add play and stop events. So the user could know when to remove from the ticker (which is what happens of autoUpdate is true). For example:
const sprite = new AnimatedSprite();
sprite.autoUpdate = false;
sprite.on('play', () => ticker.add(sprite.update, sprite) });
sprite.on('stop', () => ticker.remove(sprite.update, sprite) });

Play and stop would allow you to remove from the ticker or event loop and remove that call all together, which means you wouldn't need to defensively add the check in update. I think there's value in both, just a thought.

Got it, this example is help for context. At first, it seemed a little redundant to add this check, but now I see why because you are enabling autoUpdate.
I fine with this, but additional, I think it might be nice to add play and stop events. So the user could know when to remove from the ticker (which is what happens of autoUpdate is true). For example:
const sprite = new AnimatedSprite();
sprite.autoUpdate = false;
sprite.on('play', () => ticker.add(sprite.update, sprite) });
sprite.on('stop', () => ticker.remove(sprite.update, sprite) });

Play and stop would allow you to remove from the ticker or event loop and remove that call all together, which means you wouldn't need to defensively add the check in update. I think there's value in both, just a thought.

Can you please fix the linting? Otherwise, I'm fine with this.

Sorry thought I fixed that already. Should be fixed in the latest commit.

Thank you @Owlzy :tada:


docs error: mavericks-rxjava2 vs mvrx-rxjava2

The docs for upgrading from mvrx 1 say to use the mvrx-rxjava2 artifact when upgrading, but that didn't resolve for me. mavericks-rxjava2 did, however.

Thanks for reporting, updated the docs with https://github.com/airbnb/mavericks/pull/512


Add support for raster sources and changing tiles

For #33. @gtnbssn, would you mind please trying this for your use case and see if it works? Or if your custom component can do something else, could we add it here?
Note this needs maplibre-gl-js 3.5 for setTiles support. Does that make this a major/breaking change?

I'm about to leave on a plane, so won't be able to get to this one in a timely fashion. But in November I'll be back and have some time to look at it. Thanks again!

@dabreegster our use case was to get tiles from COGs, which aren't supported by maplibre out of the box.
We made a custom component for this, but the real path forward would probably be a maplibre plugin to support COGs (similar to the existing one for pmtiles), which is a bit out of my reach unfortunately! I am rushing another project (using OpenLayers which does support COGs) but hopefully will find time late November to come back to the project using MapLibre and maybe implement a better solution!
Thanks!

This is great. Thanks for your patience!

Published in v0.7.0.


Provide a way to change the mouse cursor

The first goal would be to show a standard arrow mouse pointer used on desktop platforms. Currently the default mouse cursor is a circle with a dot inside which might work well on a TV but looks pretty out of place on a Smart Monitor like the M5.
Later it would be nice if other SystemMouseCursors would work like in this example:
class MyStatelessWidget extends StatelessWidget {
  const MyStatelessWidget({super.key});

  @override
  Widget build(BuildContext context) {
    return Center(
      child: MouseRegion(
        cursor: SystemMouseCursors.text,
        child: Container(
          width: 200,
          height: 100,
          decoration: BoxDecoration(
            color: Colors.blue,
            border: Border.all(color: Colors.yellow),
          ),
        ),
      ),
    );
  }
}

Unfortunately this doesn't seem feasible since changing the cursor type is not allowed for 3rd-party apps on TV as far as I know. I tried calling the corresponding internal function (Cursor_Set_Type) during the app initialization but it had no effect.

Thanks for looking into this @swift-kim! What would be the appropriate location to file a bug report / feature request about this?
Are there any workarounds we could use? Maybe disable the mouse cursor and render it ourselves? Would we even get the mouse pointer information if we do this?

What would be the appropriate location to file a bug report / feature request about this?

You can ask for help at https://developer.samsung.com/dev-support but I'm not sure if you will get an answer. You should generalize this issue enough so that it doesn't appear to be a Flutter-specific problem.
@yman-son Hi. Do you have any idea about this issue? Do you know if Cursor_Set_Type is generally expected to work in user apps?

Are there any workarounds we could use?

There's probably nothing we can do if the feature is not supported by the platform.

Maybe disable the mouse cursor and render it ourselves? Would we even get the mouse pointer information if we do this?

It is technically possible (https://stackoverflow.com/a/68623650/10814630) but not recommended. I tried the code in the link on my Smart Monitor M5, but the cursor movement didn't look very responsive (because it takes at least 1 fps time for Flutter to render the cursor) even in a very simple app. (Note: The code will not work out of the box on your device. A patch should be applied to the embedder code.)

Okay, now I'm going to rework the pointer input system of the embedder. I'll let you know if there's any news.
Goals:

[ ] Handle mouse hover events.
[ ] Handle secondary and ternary button events (right and middle clicks).
[ ] Support hiding the cursor (SystemMouseCursors.none).
[ ] Enable built-in cursor types (SystemMouseCursors.text).
[ ] Support custom cursor images.

I think the first three can be easily implemented but I'm not sure about the rest.

Awesome, thank you so much for working on this! Already the first three would help us a lot! The 1 frame delay is acceptable for our proof of concept and maybe even for the final version. Getting full support later would of course be great as well.
@swift-kim Do you mind sharing the patch for the embedder? Or is disabling the cursor something you planned to implement soon anyway?

@cbenhagen Hi. To apply the patch https://github.com/flutter-tizen/embedder/pull/30,

Go to your flutter-tizen installation directory.
Overwrite the bin/internal/embedder.version file with 4f461b2e71cacb72103cbd8171be351a987e212a.
Build and run your app again.

The third one in the previous comment (hiding the cursor) has not been implemented yet, so the hardware cursor will still be displayed. If you can't wait for upcoming patches, you can build the embedder manually from source by just deleting this line, or drop this prebuilt binary into flutter-tizen/flutter/bin/cache/artifacts/engine/tizen-arm/5.5.
I also found another cursor widget implementation that uses a CustomPainter. You can check it out at https://gist.github.com/ardera/e7ddf7c8e477d258a26dfa9c40002626. (I haven't tried the code myself.)

https://github.com/flutter-tizen/flutter-tizen/pull/494 includes the above patches and will be merged soon. Please check it out.


Kumarnitj patch 4

[x] I have read freeCodeCamp's contribution guidelines.
[x] My pull request has a descriptive title (not a vague title like Update index.md)
[x] My pull request targets the master branch of freeCodeCamp.
[x] None of my changes are plagiarized from another source without proper attribution.
[x] My article does not contain shortened URLs or affiliate links.

If your pull request closes a GitHub issue, replace the XXXXX below with the issue number.
Closes #32207

Thank you for opening this pull request.
This is a standard message notifying you that we’ve reviewed your pull request and have decided not to merge it. We would welcome future pull requests from you.
Thank you and happy coding.


Issues Using Slick inside a Polymer Custom Element

I'm running into issues using Slick inside of a Polymer custom element to create a Video Carousel of Youtube video embeds.  Reference this SO question I created that goes into much more detail:
http://stackoverflow.com/questions/22923956/use-external-scripts-inside-a-polymer-element
I've also tried using slickAdd with no success, both on a plain-jane html page with static slide markup and inside of my Polymer element.  I thought maybe if I constructed the slides in javascript code using slickAdd, and passing in the 'template' for each slide as html with the dynamic video IDs passed in, but it doesn't work, and no console errors.
Here's my plain-jane code attempting to add slides dynamically from code (slickRemove also doesn't work, let me know if I'm doing that part right):

I had it working with Polymer 0.5, but it's completely broken on 1.0.
It seems to replicate an instance of the generic non-computed element for some reason.
For example, if I have an element that is {{ text }}, every element will literally be  instead of  Hello! etc...

@eriklharper I am not really sure how you have reached a solution with this problem. Is there a way that I can see your polymer code and your html template that you are using? I am still struggling with trying to get this to work.

For some example code with an alternate implementation, check out my answer to Erik's question on SO. Here's the code without too much context:
I had a very similar use case. What I did was create a template for the slide, a template for the slider, and then initialized slick in my base page. In the Slider template's constructor, I use a factoryImpl function to add the individual slides in
Slide template

Slider template

Actual page

Some heading


Correct the spelling of CocoaPods in README

This pull requests corrects the spelling of CocoaPods 🤓
https://github.com/CocoaPods/shared_resources/tree/master/media
One day I’ll make a bot that looks through the READMEs of all Pods, looks to see if it uses “Cocoapods” and PRs “CocoaPods” :D— Ørta (@orta) February 10, 2016

Created with cocoapods-readme.

Thank you (again)!

:tada: :tada:


Rename file path to unify folder/module naming style: use the snake pattern

Snake file naming pattern for folder naming.

No code logic change, only renaming of project path.


Holding ctrl+shift and clicking a tile sometimes causes ctrl-lock like behavior

Type
Incorrect behavior
Operating System
Windows
OS Version
Windows 10
Bug description
I had initially reported this in the Hub Party Panel plugin's repo (TheStonedTurtle/party-panel#30) but was told that plugin doesn't implement tile pinging.
To reproduce, holding ctrl and shift and click a tile while in a party to ping a tile, then release both keys. Now click on a tile to walk there, but instead of walking there I'm finding that about half the time I end up pinging the tile even though I'm no longer holding the ctrl key. It nearly got me killed at ToB when I accidentally held both keys down while trying to shift click on a tile to walk there.
RuneLite version
Runelite version: <IP_ADDRESS>
Launcher version: 2.6.1

Bump! This is definitely an issue more people must be experiencing.
To reproduce:

Hold Ctrl down
Hold Shift down
Release Shift
Release Ctrl
This toggles a ctrl lock until ctrl is pressed again

Update: This is a bug in the custom menu entry swapper plugin. It happens only if you have any custom swaps assigned to Ctrl

#15649 I made a PR for this issue

Fixed in  #15649


One-line syntax error results in many error reports from analyzer

(using WebStorm 10, but I'm told this is not specific to webstorm)
Consider this code:
  void generateMethod
      Package package, Library lib, Class clazz, Method method) {
    Map data = {
      'package': package,
      'generatedOn': generatedOn,
...
Notice the syntax error on the first line (missing an open parens).
Expected: a single error reported by analyzer, pointing me to that line
Actual: many errors, in seemingly random order. No clear guidance on what is the root cause.
Please see attached screenshot. Thanks!

Attachment:
html_generator_dart_-dartdoc-__Code_dartdoc-_WebStorm_WS-141_224.png (181.65 KB)

The example still has bad error recovery:
$ cat 22938.dart
void generateMethod
      Package package, Library lib, Class clazz, Method method) {
    Map data = {
      'package': package,
      'generatedOn': generatedOn,
    };
      }
srawlins-macbookpro:sdk srawlins$ dart 22938.dart
22938.dart:1:6: Error: Expected ';' after this.
void generateMethod
     ^^^^^^^^^^^^^^
22938.dart:2:24: Error: Expected ';' after this.
      Package package, Library lib, Class clazz, Method method) {
                       ^^^^^^^
22938.dart:2:32: Error: Variables must be declared using the keywords 'const', 'final', 'var' or a type name.
Try adding the name of the type of the variable or the keyword 'var'.
      Package package, Library lib, Class clazz, Method method) {
                               ^^^
22938.dart:2:37: Error: Expected ';' after this.
      Package package, Library lib, Class clazz, Method method) {
                                    ^^^^^
22938.dart:2:43: Error: Variables must be declared using the keywords 'const', 'final', 'var' or a type name.
Try adding the name of the type of the variable or the keyword 'var'.
      Package package, Library lib, Class clazz, Method method) {
                                          ^^^^^
22938.dart:2:50: Error: Expected ';' after this.
      Package package, Library lib, Class clazz, Method method) {
                                                 ^^^^^^
22938.dart:2:57: Error: Variables must be declared using the keywords 'const', 'final', 'var' or a type name.
Try adding the name of the type of the variable or the keyword 'var'.
      Package package, Library lib, Class clazz, Method method) {
                                                        ^^^^^^
22938.dart:2:57: Error: Expected ';' after this.
      Package package, Library lib, Class clazz, Method method) {
                                                        ^^^^^^
22938.dart:2:63: Error: Expected a declaration, but got ')'.
      Package package, Library lib, Class clazz, Method method) {
                                                              ^
22938.dart:2:65: Error: Expected a declaration, but got '{'.
      Package package, Library lib, Class clazz, Method method) {
                                                                ^

@jensjoha

General comments / questions:
How much energy do we want to spend on something like this?
For this particular example we might be able to create a hack that detects that we're missing a ( at the correct place, but more generally (maybe even if Package package had been something just a little more advanced) this becomes really non-trivial and will probably both be computationally hard and require major refactorings. (not to mention it would probably also cost extra on the 'happy path' where everything is fine).
One could imagine fancy stuff where we - for instance on the method level - parse "into a buffer", and then upon seeing "too many errors" (whatever that might be), throw that "attempt" away, perform some (other) recovery and try again.
I suppose that ideally we should be able to take any syntactically valid input, delete an arbitrary character and then (if it's no longer syntactically valid) recovery with an error saying "you forgot '(the character you deleted)' at position '(whereever you deleted it)'" --- but even if that was computationally feasible (which it probably isn't) what would happen if two or more characters was missing in the same method? Or if there was one or more characters too much? Or if a character had been replaced by another one? (etc).
I'm am certainly willing to jump in and try to do stuff, but I'm not sure it's logically worth the investment --- thoughts?
(/cc @johnniwinther, @bwilkerson, @mraleph)

I'll start by noting that this was brought to your attention because (a) Sam is cleaning up some of the older analyzer issues, noticed that this is still a valid issue, and added a note to it which brought it to my attention, and (b) I noticed that you likely didn't have any visibility to I referenced you.

How much energy do we want to spend on something like this?

Probably not much. I doubt that this is a case that very many users are running into, though I'd love to have some data to back that up.

For this particular example we might be able to create a hack that detects that we're missing a ( at the correct place, but more generally ... this becomes really non-trivial and will probably both be computationally hard and require major refactorings. (not to mention it would probably also cost extra on the 'happy path' where everything is fine).

I'm probably forgetting some case, but I would have expected that after parsing void generateMethod we'd be expecting one of (, =, ,, or ;. When we don't find it we're no longer on the happy path, so a small amount of extra work isn't unreasonable. The current recovery is to assume a missing ;. But it doesn't seem like it would be hard to use look-ahead to see whether what follows looks like what we would have expected to find after either a ( or , (an arbitrary expression after an = seems harder to me). If we find either one then we could assume the appropriate missing punctuation and continue.

One could imagine fancy stuff ...

I definitely wouldn't go that far. But like I said, I don't think this is a high-priority item.

I'll start by noting that this was brought to your attention because (a) Sam is cleaning up some of the older analyzer issues, noticed that this is still a valid issue, and added a note to it which brought it to my attention, and (b) I noticed that you likely didn't have any visibility to I referenced you.

And I appreciate that! If it sounded like I didn't I apologize, that was not my intention.

How much energy do we want to spend on something like this?

Probably not much. I doubt that this is a case that very many users are running into, though I'd love to have some data to back that up.

Yes, data about stuff like this would be great. Do we have any way of getting any such data?

For this particular example we might be able to create a hack that detects that we're missing a ( at the correct place, but more generally ... this becomes really non-trivial and will probably both be computationally hard and require major refactorings. (not to mention it would probably also cost extra on the 'happy path' where everything is fine).

I'm probably forgetting some case, but I would have expected that after parsing void generateMethod we'd be expecting one of (, =, ,, or ;. When we don't find it we're no longer on the happy path, so a small amount of extra work isn't unreasonable. The current recovery is to assume a missing ;. But it doesn't seem like it would be hard to use look-ahead to see whether what follows looks like what we would have expected to find after either a ( or , (an arbitrary expression after an = seems harder to me). If we find either one then we could assume the appropriate missing punctuation and continue.

One small detail changes everything: If not seeing ( et al, it assumes that it's a field (which it does look like at this point) and is still on the happy path. It then starts parsing it as a field and after having parsed some of it (and send events to the listener to that effect), it sees that something is wrong. So the extra work to catch this would cost on every field parsing...

One could imagine fancy stuff ...

I definitely wouldn't go that far. But like I said, I don't think this is a high-priority item.

I personally think it would be cool to try something like this out, if as nothing else then as an experiment to see what it could actually do --- but again, I'm not sure it's necessarily worth the investment (then again having a prototype of something like this in a drawer somewhere might turn out useful in other scenarios).


pull request for e2e test at 01/24/2017 06:45:09

:white_check_mark: Validation status: passed
For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


 tag in data breaks dehydration

To replicate:

Use second with a JSON endpoint which contains an attribute with a <script></script>
dehydration of the component results in a </script> being output as part of the serialised JSON in the HTML, which then prematurely ends the script block that the data is inside.

Suggestion:
See: https://github.com/wildlyinaccurate/second/blob/master/packages/second-dehydrator/src/dehydrator.js#L6
It appears that JSON.stringify() does not escape forward slashes (/), so the suggestion is to add .replace(/\//g, '\\/'); to the end of this line.

Fixed in #6


My vscode can't open my code file which path in workspace

I want open my file in workspace, but this fail occur.
Unable to open 'api_model.py': Unable to read file (Unknown (FileSystemError): Error: ENOTDIR: not a directory, stat '/workspacepath/file/workspcepath/file').
I reinstall vscode,but can't fix this problem.
I don't know how to fix it .

Can you provide reproduction steps for this?
/needsMoreInfo

I have the same problem with Mac Catalina and vscode newest version.
It seems the problem of Microsoft Python Language Server. I use jedi and everything is ok.
But maybe jedi is not good enough, you could try kite for auto-completion.


i have jquery select2 applied in my project but now i want to implement that same in angular js without using jqueryt

The issues forum is NOT for support requests. It is for bugs and feature requests only.
Please read https://github.com/angular-ui/ui-select/blob/master/CONTRIBUTING.md and search
existing issues (both open and closed) prior to opening any new issue and ensure you follow the instructions therein.
Bug description:
Link to minimally-working plunker that reproduces the issue:
Version of Angular, UI-Select, and Bootstrap/Select2/Selectize CSS
Angular:
UI-Select:
Bootstrap/Select2/Selectize CSS (if applicable):

Can anyone please help me to achieve multiple select in angular js just like jquery select2? but i don't want to mix jquery with angular js.

This is from your message, please take a moment to read it and you'll find help elsewhere:

The issues forum is NOT for support requests. It is for bugs and feature requests only.
Please read https://github.com/angular-ui/ui-select/blob/master/CONTRIBUTING.md and search
existing issues (both open and closed) prior to opening any new issue and ensure you follow the instructions therein.

If everyone created issues to ask for help, there would be no time to fix bugs...
You should close/delete this issue.


refactor(consensus): add instrumentation when spawning tasks within consensus

This change is

#221  👈
main

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

Join @matan-starkware and the rest of your teammates on  Graphite

Merge activity

Aug 1, 5:05 AM EDT: @matan-starkware started a stack merge that includes this pull request via Graphite.


Loader can't load from file:// [$50]

This Issue is about a bug in the API (v3.3.0):
I have tried wrapping a Phaser app in Cordova/ React Native.
It mostly worked but there are issues with loading files. Neither images nor json can be loaded, they fail without a proper error.
After close debugging I noticed that the "Request Type" comes up as XHR whereas with Phaser 2.x it's image/ json like it should be.
I have set up a very basic example textures/sprite sheet.js and a more complex project, both fail.
Could this be related to #2670  or  #2485? Did this fix get lost in 3.x?
Any help is very appreciated, did anybody manage to wrap a Phaser 3 project with Cordova?
Cheers!
p.s.: www.zip the content of www within the Cordova app

UPDATE 29.03:
I have looked into this more. It seems like the issue has to do with the Phaser 3 loader not being able loading resources from file://. When I open the basic texture examples from Phaser 2 without being served from a server they work just fine, the Phaser 3 ones don't. Seems the loader does something differently so CORS becomes an issue.

There is a $50 open bounty on this issue. Add to the bounty at Bountysource.

I'm having the same issue on my application that I tried to run under Cordova/PhoneGap.
The images do not show up, that's a big blocker for Mobile development.

@Mikurox have you tried moving your assets in a folder relative to your index.html and instead of a  file://path, just using relative imports? E.g../images/player.png` (if images is a folder in the same directory as your game)

It works when I use images in the index.html or reference them in css file.
The issue I'm seeing is that they are not loaded (I see green lines) when I try to load an image in "preload" and use it in "create" functions, e.g.
this.load.image('starfield', 'assets/images/starfield.png');
...
this.bg = this.add.tileSprite(0, 0, this.game.width, this.game.height, 'starfield');
It's working when using the "browser" platform but not "android"

Yes, the v3 loader uses xhr for all files to get per-byte download feedback, per-file. I have posted a bounty on this issue as I don't have Cordova / PhoneGap set-up, so it would take a while to debug here.

Cheers for all the feeback and ideas. Will look into this more after the weekend!
@Saturate just try opening a basic Phaser 3 example directly from a folder in your browser. The error will happen as it can’t load the files through xhr. Use Chrome so you get an error message in the console.

Not sure this helps. I haven't had a chance to try it, but there is a tutorial on line.
https://gamedevacademy.org/creating-mobile-games-with-phaser-3-and-cordova/

Never mind, I tried the tutorial and the graphics don't show up

Hi,
@sftsk: incompatibility of Phaser 3 with direct loading through file:// protocol looks to be a design choice, as explained in the Getting Started tutorial part 1: https://phaser.io/tutorials/getting-started-phaser3
As described the solution for desktop browsers is to serve files through a server, which is a very standard practice nowadays, even for development.
As for Cordova in iOS, which is OP's described situation, the above solution is more complex to implement, but it is still a known and widely used practice as well.
There are many Cordova plugins that patch the Webview, for example:

Ionic Webview: uses an intermediary server to load files
https://github.com/ionic-team/cordova-plugin-ionic-webview
Oracle's cordova-plugin-wkwebview-file-xhr: bypasses file loading with native code
https://github.com/oracle/cordova-plugin-wkwebview-file-xhr

While @Huararanga's workaround is probably valid, a drawback is that all files are now base64 strings in your code, making it much heavier.
Furthermore, browsers and Webview cache files loaded the standard way, so rendering multiple instances of them is no problem. On the contrary, performance degrades when using base64 data multiple times.
Hope this helps.

As I mentioned above v3 uses xhr for all files, including images. v2 used the Image tag itself to load them, however it still used xhr for all json, xml, etc. I believe under Cordova in v2 you were still able to load things like texture atlases and bitmap fonts without any issue, so xhr must have been working to some extent back then? Which makes me wonder if it's actually something else causing this.

I have finally had time looking into this and got into the same solution as proposed by @ghybs .
Installing https://github.com/ionic-team/cordova-plugin-ionic-webview with Cordova fixes the issue. This will only be a fix for iOS, although probably for Android exists something similar.
I don't think there is anything to be done within Phaser as this XHR Cross Origin policy seems to be a limitation that can't be easily worked around on mobile. Chrome has a flag --disable-web-security that will allow the requests, not sure if that could be an option for Android.
Anyway, thanks for all the help, issue can be closed from my point of view. Perhaps add some instructions to the manual of needing the mentioned plugin when wrapping an app with Cordova.

Hi guys,
Thanks for investigating this, I guess if it's not a pure Phaser problem, then this can be closed.
However, I would believe that we need an "official" way of dealing with this, since we will not be the only ones having this issue. A Cordova section in tutorials or somewhere exposed should clarify how Phaser can work with Android/iOS. There might be other "tweaks" to do for mobile development as well and having a dedicated section will greatly help everyone.

Just as little extra info. The demo I mentioned above works fine on android. Images/Atlas load and show properly on a galaxy s8. So this definitely appears to be a an iOS issue.

Adding the cordova-plugin-ionic-webview as suggested by @ghybs and @sftsk worked for me.
At least it started loading my json file then. For the spritesheets to show up i had to change:
<meta http-equiv="Content-Security-Policy" content="default-src 'self' data: gap: https://ssl.gstatic.com 'unsafe-eval'; style-src 'self' 'unsafe-inline'; media-src *; img-src 'self' data: content:;">

to:
<meta http-equiv="Content-Security-Policy" content="default-src 'self' data: gap: https://ssl.gstatic.com 'unsafe-eval'; style-src 'self' 'unsafe-inline'; media-src *; img-src 'self' data: content: blob:;">

In the cordova index.html. Adding the  blob: in at the end.
Still need to add sound to my current project though. If i need to do anything special for that i'll post it here.

Discovered this a couple of months ago. Does this help?
Phaser v3.x.x (20180322); WARNING ANTI-PATTERN REMOVED
// CORS:  Remove anti-pattern!
// - https://developer.mozilla.org/en-US/docs/Web/HTTP/Access_control_CORS
// - https://enable-cors.org/
// Avoid this anti-pattern of omitting the protocols schemes in script "src";
// Cross origin requests are only supported for protocol schemes:
//		http, data, chrome, chrome-extension, https.
// - anti-pattern is:
//
- use this:

Can't see how this makes any difference tbh. All asset loading is done via a protocol.

Doesn't work, But there is a difference of behavior in iOS and Android. In iOS:
Game loads and is playable it's just that img doesn't load.(also maybe audio didn't test for that)
For android:
Nothing loads. It just serves a blank screen.

Is there any update about this problem?
I am using static files in my android project but my Phaser game's images doesnt shown.


Bürokratt processes Participants' requests to start using Bürokratt

AS A Bürokratt Project manager
I WANT TO process Participants' requests to start using Bürokratt
SO THAT I would have that process automated and easy as much as possbile
Acceptance Criteria
General requirements

[ ] List all REST endpoints created and used to fulfill the AC of this issue as valid OpenAPI specs
[ ] User-provided input must be validated against pre-approved options defined in an appropriate Ruuter DSL

Endpoints

[ ] #72 to process Participants' request to start using Bürokratt

Business requirements

[ ] Only users with appropriate permissions have access to process Participants' requests by re-using the template of #23
[ ] GUI is used to process Participants' requests

Expected functionalities

All of the functionalities below are based on Postgres' database table

[ ] List all requests to start using Bürokratt
[ ] Update the state of the application according to https://github.com/buerokratt/Buerokratt-Architectural-Decision-Records/issues/32
[ ] Update the content of the Participant's information
[ ] Mark request as deleted

DSL

[ ] Use institutions database table based on #24

GUI

[ ] Follows the principles of https://github.com/e-gov/cvi and https://e-gov.github.io/cvi/?path=/story/intro--page
[ ] Uses https://github.com/buerokratt/cvi as technical stack (PS! Currently in progress to get React-based components there)
[ ] Input for GUI fields are fetched from an appropriate configuration file

Waiting #25


Broken Links

Developers, please fix those links, whenever you have time.  Because it directly affects the SEO rankings of the website

Thanks so much for filing this @UlianaBil! Can you post the links to the page I can't tell what pages they are on from your screenshot

@futuresoup you should be able to open those links from this PDF by pressing url
broken links.pdf

Fixed! We passed with 0 broken links now!
Thank you so so much for bringing this to our attention.


chore: POC Enum property type support

A POC implementing enum props support for many-to-one and many-to-many searches.
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Closed in favour of https://github.com/cloudscape-design/collection-hooks/pull/85


treewide: add meta.mainProgram to (almost) all packages with a single binary

Description of changes
Set meta.mainProgram automatically for "trivial" cases of packages which produce only one binary (as determined by the nixpkgs-unstable channel's program.sqlite database).
Motivation:
https://github.com/NixOS/nixpkgs/pull/246386 has deprecated the assumption that a package's main program (if not set explicitly otherwise) has the same name as the package itself. Thus using lib.getExe on a vast number of existing packages has become essentially unsupported.
Unfortunately, it seems infeasable to set mainProgram for all existing packages manually. A rough estimate of the problem's scale was given in  https://github.com/NixOS/nixpkgs/issues/219567#issuecomment-1459241963, which estimates last year that there were around ~5500 packages affected.
I've previously opened individual PRs adding mainProgram to single packages when I came across one where it was missing, but honestly I don't look forward to dealing with this until ~2030 at least (rate estimated by running the above-linked script again now), so I thought it was worth looking at another approach.
Implementation
Builing on @emilylange's script (linked above), it's pretty easy to get a list of candidate packages which produce exactly one binary (which must hence be that package's mainProgram), but which do not actually set this in their meta block. I consider these "trivial" cases to be fixed. Currently (before this PR), there are 6921 of these.
Using meta.position, it is further (mostly) easy to get each candidate's definition site (exception: things produced e.g. via the builders in build-support/trivial-builders, where meta.position points to the builder's definition instead).
Candidates can then have a meta.mainProgram entry added to their source automatically, for which I wrote a little rust tool to edit package definitions (loosely based on nix-doc-munge which was written for the doc migration from AsciiDoc).
Consideration & special cases:
The automatic rewriting does two things:

if the package definition already has a meta block, it will add a  mainProgram = ... in the next line after the description entry
if it does not yet have a meta block, it will add a    meta.mainProgram = .. attribute to the end of the attribute set
however, some language-specific build systems (notably haskell) do     not have a separate meta block and instead keep description,    mainProgram, etc., as direct attributes of the package    description. I have found no better way to reliably identify these    than to see if the derivation has a top-level description (or    similar) attribute; in this case, no meta block will be created.

Results
Of 5457 files defining the candidate packages, 5373 were edited; in 84 cases my script did nothing:

most of these are files that occur more than once in meta.position of different    packages, which I simply chose to ignore
in 20 cases it found no suitable place for the meta attribute
in 15 cases it found an existing meta attrset but failed to edit it (these
lack description attributes, and it only knows how to insert something after that)

Re-searching for candidates with the changes applied reduced their number to 381. Still not nothing, but a lot more manageable.
Unexpected results
I thought this would be a no-op as far as packages are concerned, but turns out it is not:
Result of nixpkgs-review run on x86_64-linux 1

4 packages built:

python311Packages.waitress-django
python311Packages.waitress-django.dist
python312Packages.waitress-django
python312Packages.waitress-django.dist

This is a single package which has src = ./. set, so since its own package definition is part of the source, it does get changed.
Things done

Built on platform(s)

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

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

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

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

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

I skimmed the changeset, and it looks plausible. Given that it doesn't break eval or check-meta, let's give it a shot before it rots away.
Thanks for your work on this!

There are some packages like the Python library Amaranth which have found a random utility script as the meta.mainProgram rather than what the package is about.
I don't object to this PR but I think it's worth being aware of.

@tpwrules yes, that occurred to me as well — in the end, I didn't do anything about it, because I don't think that this is, as such, wrong? It might still enable nice things to have it there (be it for nix run or lib.getExe) and even if not, it shouldn't hurt to have that line there.
(wondering out loud for a bit: perhaps it would be useful to have a meta.isLibrary-kind of flag, to explicitly say "even if this does have a main program, that's not really the point of the package? But then, this would again mean a couple thousand lines added to nixpkgs, for unclear benefits)

wrote a little rust tool to edit package definitions

hm, this link seems dead?
i'm seeing some seemingly trivial cases like keepassxc and visidata not have the attribute set yet.

hm, this link seems dead?

ah, i renamed the repository once it turned into a slightly more general tool; I've now updated the link to again point at the version which was used for this PR (if you want to use it, be aware it's very much single-purpose & brittle)

i'm seeing some seemingly trivial cases like keepassxc and visidata not have the attribute set yet.

neither of these are "trivial" for the purposes of this PR; they both provide more than one binary (an easy way to check this is to use search.nixos.org, which uses the same programs.sqlite file to provide the "programs provided" listing).
I had deliberately excluded such packages which provide a binary named identically to their pname attribute, since that program is not always the actual "main program" in any intuitive sense (a good counterexample being the coreutils package providing a coreutils binary), so a wholly automated update would have likely led to unexpected (& unintended) consequences.


Implement authorization of consumer for outbound events

Description
Implementation of authorization has been left out of the outbound process. This should now be implemented.
Logic should be placed here:
https://github.com/Altinn/altinn-events/blob/main/src/Events/Services/OutboundService.cs#L122
Additional Information
No response
Tasks

[ ] Extend GenericCloudEventXacmlMapper if needed
[ ] Make required changes to OutboundService
[ ] Implement unit tests
[ ] QA
[ ] Manual test
[ ] Automated tests (do we need these?)

Acceptance Criterias

[ ] Generic events are successfully pushed to subscribers
[ ] If a subscriber is no longer authorized, the events should not be pushed (test by alter policy to limit access to the events to verify)

Current status: Manual testing shows that authorization decision isn't permit. Looking further into this.


feat: support Knative Ingress

Ⅰ. Describe what this PR did
Support Higress to listen Knative Ingress and convert corresponding resources, realize the functions defined by Knative Ingress such as traffic split
Ⅱ. Does this pull request fix one issue?
Ⅲ. Why don't you add test cases (unit test/integration test)?
Ⅳ. Describe how to verify it
Ⅴ. Special notes for reviews

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.1 out of 2 committers have signed the CLA.:white_check_mark: vikizhao156:x: vikizhaovikizhao seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.


Webyourmind/sept week 1

This PR fixes some recent bugs over the Copyrights management in the FileList and in the Definition data:

Fixes #294
Fixes #296

PR has been updated with a fix for another bug:

Fixes #297

I've responded to your comments @jeffmcaffer as well as made few minor improvements.
Please have a look at those

@gianpaj overall looks good. I followed up on some comments. See what you think and let me know when you are good to merge.


Support update replicas of Tempus gateway service/pods

Child of #722
Support update replicas of Tempus gateway service/pods

@akshaymhetre We need to review with @cherrera2001 before we proceed with this


test: Unquarantine host firewall + nodeport test

First commit is the fix from https://github.com/cilium/cilium/pull/25024. Second and third commits fix some general issues in the that test case. Fourth commit unquarantines it.
Fixes: https://github.com/cilium/cilium/issues/23356.

/test

/test-1.27-net-next

/k8s-1.27-kernel-net-next

/test-1.27-net-next


Fix for duff breadcrumb children

fixes #123
When the breadcrumb was being passed in as null/empty array it was showing a "ghost" breadcrumb
before:

after:

Bugfixe PRs should include a unit test

I think where we have nested components (breadcrumbs, tables, lists) we should be using the React context API
This is going to be in React 16.3
https://medium.com/dailyjs/reacts--new-context-api-70c9fe01596b
https://github.com/facebook/react/issues/12152
Should probably just mark this as a TODO for now


(OraklNode) Remove priority column from provider_urls table

value not being utilized

it was actually being utilized... I didn't see it
SELECT_PROVIDER_URLS_QUERY = "SELECT * FROM provider_urls WHERE chain_id = @chain_id ORDER BY priority;"


[Task Error] java.lang.NoSuchFieldError: PLAYER_HEAD

That version is for 1.13 only. Do not use it for other Minecraft versions.


Meta fails to load in VS2013

Since the split meta project can no longer open in vs2013 due to it 'Targeting framework versions not supported or not yet implemented'
changing Meta.csproj
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\Portable\$(TargetFrameworkVersion)\Microsoft.Portable.CSharp.targets" />

to
  <Import Project="..\.NET 4.5.targets" />

Fixes the issue

I'm using VS2013, what's different about your configuration?

I cloned via GIT and did update modules, my vs2013 might be Update 1 however (I'll check when I'm home)

This was vs2013 without any updates, ill try installed update 5 and see if it launches

I couldn't reproduce this with update 4, and update 5 won't install here... things work fine on VS2015 also, though.

Might be related:

Tool status
Microsoft Visual Studio Express 2013 for Web
Version 12.0.31101.00 Update 4
Microsoft .NET Framework
Version 4.6.00081
Installed Version: WD Express
Team Explorer for Visual Studio 2013   06156-004-0437007-02904
Microsoft Team Explorer for Visual Studio 2013
Visual Basic 2013   06156-004-0437007-02904
Microsoft Visual Basic 2013
Visual C# 2013   06156-004-0437007-02904
Microsoft Visual C# 2013
Application Insights Tools for Visual Studio Package   1.0
Application Insights Tools for Visual Studio
ASP.NET and Web Tools   12.4.51016.0
Microsoft Web Developer Tools contains the following components:
Support for creating and opening ASP.NET web projects
Browser Link: A communication channel between Visual Studio and browsers
Editor extensions for HTML, CSS, and JavaScript
Page Inspector: Inspection tool for ASP.NET web projects
Scaffolding: A framework for building and running code generators
Server Explorer extensions for Microsoft Azure Websites
Web publishing: Extensions for publishing ASP.NET web projects to hosting providers, on-premises servers, or Microsoft Azure
ASP.NET Web Frameworks and Tools 2012.2   4.1.21001.0
For additional information, visit http://go.microsoft.com/fwlink/?LinkID=309563
ASP.NET Web Frameworks and Tools 2013   5.2.21010.0
For additional information, visit http://www.asp.net/
Common Azure Tools   1.3
Provides common services for use by Azure Mobile Services and Microsoft Azure Tools.
NuGet Package Manager   2.8.50926.663
NuGet Package Manager in Visual Studio. For more information about NuGet, visit http://docs.nuget.org/.
PowerShell Tools   1.3
Provides file classification services using PowerShell
SQL Server Data Tools   12.0.41012.0
Microsoft SQL Server Data Tools
By the way, the Wiki says 10 works.  I regret listening to people who asked me to adopt them :(
Is there a way to resolve this without killing the portable library thing for people who want it? I don't know anything about this stuff. I don't know why portable libraries would fail in so many modern configurations.

PCL projects are not supported on VS Express Edition, but they should work on Community Edition (all except "enterprise" customer should be able to use Community Edition).
@kg, what problems have you found with PCL libraries? I also use them, but haven't seen any.
We always have an option provide both platform specific and PCL assemblies.

I want to have one JSIL.Meta csproj file that people can reference, instead of having 5 different copies of it that need to have their file lists maintained separately. Is there any way to do that? It sounded like some people need a PCL JSIL.Meta, but if entire VS product lines can't support PCLs, that's a non-starter.

I'm pretty sure they can build it using MsBuild. Probably they will need to install PCL references Libraries before.
Using Protobuild (#739) should help with managing multi-platform builds (I've never played with it, but according to its description it should automatically create all platform-specific .csproj files and synchronize back their changes to its own config).
We also have an option try to "hack" PCL project file so that it will load in VS Express edition.

I will think about using an import like the .net 4.5 targets file to make it possible to have PCL and non-PCL Meta projects that share the same file list. That could work out.

@aracdin, could you try build it using command line? So, open Visual Studio Developer Command Prompt and run msbuild JSIL.NoXNA.sln?

@kg, I'm pretty sure, that VS express blocks loading project according to ProjectType GUID in .csproj file. If we replace it with standard C# project GUID it will probably work.

Couldn't even get msbuild to run :-( .After some digging around, I found that Meta is asking for:

{786C830F-07A1-408B-BD7F-6EE04809D6DB};
{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}

Which according to: http://www.mztools.com/articles/2008/mz2008017.aspx are
"Store App Portable Universal" & C#. C# makes sense, but the other appears to be related to the Windows Store in some way (?). The GUID is in my registry, but only for a deleted 14.0 installation.

Easiest fix is probably just to update the wiki and tell people to use 15. ;-)

I want to have one JSIL.Meta csproj file that people can reference, instead of having 5 different copies of it that need to have their file lists maintained separately. Is there any way to do that?

I know I'm reviving this thread from the dead, but this is precisely the scenario that led MonoGame to adopt Protobuild - this is one of the core features of it (getting rid of all the platform-specific C# files).
For people who want to use PCLs, you can just do Protobuild.exe --generate PCL, while anyone who wants to use a platform implementation can do Protobuild.exe --generate Windows, etc.

Multi-targeting already possible with project.json/.xproj and dnx. It should work even with VS Code. So, let's see how it would work as soon as it will be RTM. Looks like it will solve most problems that Protobuild solve (at least how I understand them).

None of that is supported under MonoDevelop / Xamarin Studio, nor does it work under Mono or xbuild.
project.json/.xproj/dnx are entirely a CoreCLR thing and don't solve the same problems as Protobuild.

I hope it will be supported in some way with MonoDevelop / Xamarin Studio when it will be released (or a little bit later). project.json structure is much simpler than msbuild files.
With project.json in frameworks section you can define all tergets that you need - Net Core, Net Framework 4.x, different PCL profiles.
You will have nuget package as build artifact for such project.
Right now you cannot add project reference to .xproj from .csproj, but they promise to implement it.


Modify the model path generated by gii？

What steps will reproduce the problem?
What is the expected result?
Yii2 using the command line, the model generated by gii, how to modify the directory path
What do you get instead?
Additional info

Q
A

Yii version
2.0.18

PHP version

Operating system

http://v2.img.vyicoo.cn/Uploads/product/2019-04-22/5cbd627add39a.png

@samdark

@imanilchaudhari


cloudflared: 2022.2.0 -> 2022.2.1 + license change

Motivation for this change
License update commit: https://github.com/cloudflare/cloudflared/commit/05712103742fb9b20d24569d4e35f22dfcd79f9c
Things done

Built on platform(s)

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

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

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

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

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

[x] Fits CONTRIBUTING.md.

Builds and runs. Good catch on the license change. Thanks!


SC4S: F5 BIG IP Sourcetype=f5:bigip:crond without time stamp

Hi, since SC4S by default filter on parameters on incoming time stamp. We tried to re-establishing by the necessary format to ease the use case.
We are facing issues when try to establishing it for the F5 that run on VMware. Please advice how could we get the time stamp on it.

In place the necessary template as below

cat /apps/sc4s/local/config/destinations/t_custom_time_f5_bigip.conf
template t_ custom_time_f5_bigip {
 template('$(format-json *)');
# template('${YEAR}-${MONTH}-${DAY}T${HOUR}:${MIN}:${SEC}${TZ} ${HOST} ${MSGHDR}${MESSAGE}');
};

Make changed on the splunk_metadata.csv

_cat /apps/sc4s/local/context/splunk_metadata.csv | grep f5*
#Auto recognize syslog type, index, custom index name to override the default
f5_bigip,index,sc4s_multi
f5_bigip_nix,index,sc4s_multi
f5_bigip,sc4s_template, t_custom_time_f5_bigip
f5_bigip_nix,sc4s_template, t_custom_time_f5_bigip_

I also in place “app-vps-f5_bigip.conf “ parser as below. But noticed it does not make anything, as the SC4S could recognised and parked it in to “f5:bigip*”

_cat app-vps-f5_bigip.conf
#/opt/sc4s/local/config/app-parsers/app-vps-f5_bigip.conf
#File name provided is a suggestion it must be globally unique

application app-vps-test-f5_bigip[sc4s-vps] {
 filter {
       host('xxxxxxxxx0*')
    };
    parser {
        p_set_netsource_fields(
            vendor('f5')
            product('bigip')
        );
    };
};_

Outcome
It worked for the “sourcetyppe=f5:bigip:syslog” as below
2023-03-05T00:05:38+00:00 xxxxxxxsshd[25790]: pam_tacplus: tac_srv[1] addr=<IP_ADDRESS> port=0
2023-03-05T00:05:38+00:00 xxxxxxxsshd[25790]: Disconnected from <IP_ADDRESS> port 32874
2023-03-05T00:05:38+00:00 xxxxxxxsshd[25790]: Received disconnect from <IP_ADDRESS> port 32874:11: Closed due to user request.
2023-03-05T00:05:38+00:00 xxxxxxxtmsh[25798]: 01420002:5: AUDIT - pid=25798 user=svc.netautorw.001 folder=/Common module=(tmos)# status=[Syntax Error: unexpected argument "r1=$(ssh"] cmd_data=r1=$(ssh
But for the “sourcetyppe=f5:bigip:crond” as below that the time stample template does not in place
CROND[16204]: (root) CMD (nice -n 19 ionice -c 3 /usr/sbin/logrotate -s /var/lib/logrotate-monitors.status /etc/monitors/monitors_logrotate.conf)
CROND[12108]: (root) CMD (nice -n 19 ionice -c 3 /usr/sbin/logrotate -s /var/lib/logrotate-adm.status /etc/adm/adm_logrotate.conf)
CROND[16203]: (root) CMD (/usr/lib64/sa/sa1 1 1)
CROND[12107]: (root) CMD (nice -n 19 ionice -c 3 /usr/share/ts/bin/asm_logrotate)
When try use of “template('$(format-json *)');”, it does not process anything at all. It seem like does not process any template at all.
Below are the outcome from RSYSLOG, which indicated time stamp is there
2023-03-05T06:01:02+00:00 XXXXXXX notice run-parts(/etc/cron.hourly)[16547]: finished avr_run_scheduled_reports
2023-03-05T05:25:01+00:00 XXXXXXX info CROND[14709]: (root) CMD (nice -n 19 ionice -c 3 /usr/sbin/logrotate -s /var/lib/logrotate-bwafconf.status /etc/bwafconf/bwafconf_logrotate.conf)
2023-03-05T05:25:01+00:00 XXXXXXX info CROND[14708]: (root) CMD (nice -n 19 ionice -c 3 /usr/sbin/logrotate -s /var/lib/logrotate-monitors.status /etc/monitors/monitors_logrotate.conf)
2023-03-05T04:05:01+00:00 XXXXXXX info CROND[10487]: (root) CMD (nice -n 19 ionice -c 3 /usr/sbin/logrotate -s /var/lib/logrotate-adm.status /etc/adm/adm_logrotate.conf)
2023-03-05T04:01:03+00:00 XXXXXXX notice run-parts(/etc/cron.hourly)[10109]: finished datasyncd_logrotate
2023-03-05T02:51:01+00:00 XXXXXXX info CROND[6037]: (root) CMD (/usr/bin/diskmonitor)
2023-03-05T02:26:01+00:00 XXXXXXX info CROND[4790]: (syscheck) CMD (/usr/bin/system_check -q)
Whereby noticed that when enabled the rawmsg, the server are recorded in VMWare folder
du -h | grep ukfararkt1dev2lb
36K     ./nix:syslog/xxxxxxx01
132K    ./nix:syslog/xxxxxxx01
28K     ./vmware:esxlog:crond/xxxxxxx01
28K     ./vmware:esxlog:crond/xxxxxxx01
280K    ./f5:bigip:syslog/xxxxxxx01
260K    ./f5:bigip:syslog/xxxxxxx01
Below the contained
_cat 2023-03-05-archive.log
<78>1 2023-03-05T07:56:01.000+00:00 d4c6fde90063 @syslog-ng - - - {"fields":{"sc4s_vendor":"vmware","sc4s_syslog_severity":"info","sc4s_syslog_facility":"cron","sc4s_product":"vsphere","sc4s_class":"esx"},"RAWMSG":"<78>Mar  5 07:56:01 XXXXXXX01 info CROND[18580]: (syscheck) CMD (/usr/bin/system_check -q)","PROGRAM":"CROND","PID":"18580","MESSAGE":"(syscheck) CMD (/usr/bin/system_check -q)","LEGACY_MSGHDR":"CROND[18580]: ","HOST_FROM":"xx.xx.xx.xx","HOST":"xxxxxxx01",".splunk":{"sourcetype":"vmware:esxlog:crond","source":"vmware:esxlog:crond","sc4s_template":"t_5424_hdr_sdata_compact","index":"infraops"},".netsource":{"sc4s_vendor_product":"f5_bigip","sc4s_vendor":"f5","sc4s_product":"bigip"},".metadata":{"header":{"log_level":"info"}},".app":{"name":"app-lp-global_archive"},"._TAGS":"wireformat:rfc,wireformat:rfc3164,source_identified,wireformat:rfc3164_wlevel,vps,ns_vendor:f5,ns_product:bigip,.app.app-vps-test-f5_bigip,.app.app-almost-syslogz-wlevelword,.app.app-syslog-vmware_vsphere-pgm,.app.app-lp-global_archive,.source.s_DEFAULT"}
<78>1 2023-03-05T07:58:01.000+00:00 d4c6fde90063 @syslog-ng - - - {"fields":{"sc4s_vendor":"vmware","sc4s_syslog_severity":"info","sc4s_syslog_facility":"cron","sc4s_product":"vsphere","sc4s_class":"esx"},"RAWMSG":"<78>Mar  5 07:58:01 XXXXXXX01 info CROND[18654]: (syscheck) CMD (/usr/bin/system_check -q)","PROGRAM":"CROND","PID":"18654","MESSAGE":"(syscheck) CMD (/usr/bin/system_check -q)","LEGACY_MSGHDR":"CROND[18654]: ","HOST_FROM":"xx.xx.xx.xx","HOST":"xxxxxxx01",".splunk":{"sourcetype":"vmware:esxlog:crond","source":"vmware:esxlog:crond","sc4s_template":"t_5424_hdr_sdata_compact","index":"infraops"},".netsource":{"sc4s_vendor_product":"f5_bigip","sc4s_vendor":"f5","sc4s_product":"bigip"},".metadata":{"header":{"log_level":"info"}},".app":{"name":"app-lp-global_archive"},".TAGS":"wireformat:rfc,wireformat:rfc3164,source_identified,wireformat:rfc3164_wlevel,vps,ns_vendor:f5,ns_product:bigip,.app.app-vps-test-f5_bigip,.app.app-almost-syslogz-wlevelword,.app.app-syslog-vmware_vsphere-pgm,.app.app-lp-global_archive,.source.s_DEFAULT"}

PCAP Outout
No issues on time stamp  and archive created in /apps/sc4s/archive/ and able to found in log file
<30>Jan  9 04:55:02 XXXXXXXXLB01.SC.NET info systemd[1]: Starting Cleanup of Temporary Directories...
<77>Jan  9 05:01:01 XXXXXXXXLB02.SC.NET notice run-parts(/etc/cron.hourly)[1765]: starting autodosd_logrotate
Can't display time stamp, and when enable archive function in env_file, didn't see any archive created in /apps/sc4s/archive at all
<78>Jan  9 04:54:01 XXXXXXXXLB02.SC.NET info CROND[1428]: (syscheck) CMD (/usr/bin/system_check -q)
<78>Jan  9 04:54:01 XXXXXXXXLB01.SC.NET info CROND[23119]: (syscheck) CMD (/usr/bin/system_check -q)
Please advise

any update on this?

It seems like due to the configuration provided early are the troublemaker of the issues.
Question

What is the correct configuration’s file that shall reside on /apps/sc4s/local/config/app_parsers/ for F5?
How to ensure the correct sourcetype are displayed when use on item 1 file? (Compared sourcetype on Item 1&2 vs 3&4)
Is that a need to hardcode as defined on the Parser Configuration (https://splunk.github.io/splunk-connect-for-syslog/main/sources/vendor/F5/bigip/) ?
What the use of “app-syslog-f5_bigip.conf” as I found it resided on GitHub. Anything that can be use to exchange this? (https://github.com/splunk/splunk-connect-for-syslog/blob/main/package/etc/conf.d/conflib/syslog/app-syslog-f5_bigip.conf)

Echo command use in the test
$ echo "<78>date +\"%b %d %H:%M:%S\"xxxxxxxLB02 info CROND[16204]: (root) CMD (nice -n 19 ionice -c 3 /usr/sbin/logrotate -s /var/lib/logrotate-monitors.status /etc/monitors/monitors_logrotate.conf)" > /dev/udp/10.10.10/514
$ echo "<45>date +\"%b %d %H:%M:%S\"xxxxxxxlb01 sshd[16287]: pam_unix(sshd:session): session closed for user svc.netautorw.001" > /dev/udp/10.10.10/514
$ echo "<78>date +\"%b %d %H:%M:%S\" xxxxxxxAA info CROND[16202]: (root) CMD (/usr/lib64/sa/sa1 1 1)" > /dev/udp/10.10.10/514
Parser files involved
$ cat app-postfilter_bigip.conf
application app-postfilter_bigip[sc4s-postfilter] {
filter {
host("xxxxxxx2lb*" type(glob)) or host("xxxxxxxAA ") or host('<IP_ADDRESS>')
and "$PROGRAM" eq "CROND"
};
parser { app-postfilter_bigip() };
};
block parser app-postfilter_bigip() {
channel {
rewrite {
r_set_splunk_dest_default(
index('sc4s_multi_sec_int_gdc-w')
source('f5:bigip')
sourcetype('f5:bigip:$(lowercase ${PROGRAM})')
vendor("f5")
product('bigip')
class('crond')
);
};
};
};
$ cat  app-vps-f5_bigip.conf
#/opt/sc4s/local/config/app-parsers/app-vps-f5_bigip.conf
#File name provided is a suggestion it must be globally unique
application app-vps-test-f5_bigip[sc4s-vps] {
filter {
host("xxxxxxxlb*" type(glob)) or host("xxxxxxxAA") or host('<IP_ADDRESS>')
};
parser {
p_set_netsource_fields(
vendor('f5')
product('bigip')
);
};
};
app-syslog-f5_bigip.conf
Refer to this link : (https://github.com/splunk/splunk-connect-for-syslog/blob/main/package/etc/conf.d/conflib/syslog/app-syslog-f5_bigip.conf)
Results of test

Use of app-postfilter_bigip.conf
Time Stamp/header: ALL missing

Sourcetype provide as below
CROND: sourcetype = f5:bigip:info
sshd: : sourcetype = f5:bigip:sshd
info CROND[16202]: (root) CMD (/usr/lib64/sa/sa1 1 1)
sshd[16287]: pam_unix(sshd:session): session closed for user svc.netautorw.001
info CROND[16204]: (root) CMD (nice -n 19 ionice -c 3 /usr/sbin/logrotate -s /var/lib/logrotate-monitors.status /etc/monitors/monitors_logrotate.conf)

app-postfilter_bigip.conf + app-syslog-f5_bigip.conf
Time Stamp / Header: ALL missing

Sourcetype provide as below
CROND: sourcetype = f5:bigip:info
sshd: : sourcetype = f5:bigip:sshd

info CROND[16204]: (root) CMD (nice -n 19 ionice -c 3 /usr/sbin/logrotate -s /var/lib/logrotate-monitors.status /etc/monitors/monitors_logrotate.conf)
info CROND[16204]: (root) CMD (nice -n 19 ionice -c 3 /usr/sbin/logrotate -s /var/lib/logrotate-monitors.status /etc/monitors/monitors_logrotate.conf)
sshd[16287]: pam_unix(sshd:session): session closed for user svc.netautorw.001

app-vps-f5_bigip.conf +  app-syslog-f5_bigip.conf – Working
Time Stamp/header: All showing as config parameters

Sourcetype provide as below
sourcetype = f5:bigip:syslog

2023-03-30T12:55:50+00:00 xxxxxxxlb01 sshd[16287]: pam_unix(sshd:session): session closed for user svc.netautorw.001
2023-03-30T12:55:39+00:00 xxxxxxxlb02 info CROND[16204]: (root) CMD (nice -n 19 ionice -c 3 /usr/sbin/logrotate -s /var/lib/logrotate-monitors.status /etc/monitors/monitors_logrotate.conf)
2023-03-30T12:55:33+00:00 xxxxxxxAA info CROND[16202]: (root) CMD (/usr/lib64/sa/sa1 1 1)
2023-03-30T12:55:24+00:00 xxxxxxxAA info CROND[16204]: (root) CMD (nice -n 19 ionice -c 3 /usr/sbin/logrotate -s /var/lib/logrotate-monitors.status /etc/monitors/monitors_logrotate.conf)

app-vps-f5_bigip.conf – working
Time Stamp/header: All showing as config parameters

Sourcetype provide as below
sourcetype = f5:bigip:syslog
2023-03-30T13:05:23+00:00 xxxxxxxlb02 info CROND[16204]: (root) CMD (nice -n 19 ionice -c 3 /usr/sbin/logrotate -s /var/lib/logrotate-monitors.status /etc/monitors/monitors_logrotate.conf)
2023-03-30T13:05:15+00:00 xxxxxxxlb01 sshd[16287]: pam_unix(sshd:session): session closed for user svc.netautorw.001
2023-03-30T13:05:12+00:00 xxxxxxxAA info CROND[16202]: (root) CMD (/usr/lib64/sa/sa1 1 1)

FYI.
the "app-bigip-postfilter" given are based on "F5 BigIP CROND events wrongly assigned as VMWare #1969"
https://github.com/splunk/splunk-connect-for-syslog/issues/1969

Hi @Jo-Ng Please find answers to the questions below:
What is the correct configuration’s file that shall reside on /apps/sc4s/local/config/app_parsers/ for F5? Anything which you need to override will reside here, 2 postfilters for the same source cant be used , you need to use different topic like sc4s-finalfilter (not recommended we recommend to use loop to have all operation in single file).
How to ensure the correct sourcetype are displayed when use on item 1 file? (Compared sourcetype on Item 1&2 vs 3&4) Use one file , cover all the corner cases and dont confuse the parser, either use post filter or splunk_metadata.csv(preferred if you have the right key).
Is that a need to hardcode as defined on the Parser Configuration (https://splunk.github.io/splunk-connect-for-syslog/main/sources/vendor/F5/bigip/) ? Yes it helps SC4S to identify the source when there are not much difference in vendor logging pattern
What the use of “app-syslog-f5_bigip.conf” as I found it resided on GitHub. Anything that can be use to exchange this? (https://github.com/splunk/splunk-connect-for-syslog/blob/main/package/etc/conf.d/conflib/syslog/app-syslog-f5_bigip.conf) This is default parser , if configuration is correct at vps level , you dont need any custom configuration and sc4s will assign right metadata to event.
Now what we need to help you here:
please provide each log one sample, let us know what should be the value ( rather telling what is not right as it is confusing :) ) , we will help you to write a parser which cover all these cases.

when you use on below "echo"
Echo command use in the test
$ echo "<78>date +"%b %d %H:%M:%S"xxxxxxxLB02 info CROND[16204]: (root) CMD (nice -n 19 ionice -c 3 /usr/sbin/logrotate -s /var/lib/logrotate-monitors.status /etc/monitors/monitors_logrotate.conf)" > /dev/udp/10.10.10/514
$ echo "<45>date +"%b %d %H:%M:%S"xxxxxxxlb01 sshd[16287]: pam_unix(sshd:session): session closed for user svc.netautorw.001" > /dev/udp/10.10.10/514
$ echo "<78>date +"%b %d %H:%M:%S" xxxxxxxAA info CROND[16202]: (root) CMD (/usr/lib64/sa/sa1 1 1)" > /dev/udp/10.10.10/514
Events showed. But SC4S standard are removing the time stamp from the events where original message is as "Mar 5 07:56:01 XXXXXXX01 info CROND[18580]: (syscheck) CMD (/usr/bin/system_check -q)"
Our end will want to establish the time stamp like what RSYSLOG are display to prevent any re-work on use case due to the parameters. hence we use below format to establish back the time stamp include the header
In place below template
cat /apps/sc4s/local/config/destinations/t_custom_time_f5_bigip.conf
template t_ custom_time_f5_bigip {
template('${YEAR}-${MONTH}-${DAY}T${HOUR}:${MIN}:${SEC}${TZ} ${HOST} ${MSGHDR}${MESSAGE}');
};
so far it work for most LB events except those CROND events that link from early case ("F5 BigIP CROND events wrongly assigned as VMWare https://github.com/splunk/splunk-connect-for-syslog/issues/1969"
$ echo "<78>date +"%b %d %H:%M:%S" xxxxxxxAA info CROND[16202]: (root) CMD (/usr/lib64/sa/sa1 1 1)" > /dev/udp/10.10.10/514
$ echo "<78>date +"%b %d %H:%M:%S"xxxxxxxLB02 info CROND[16204]: (root) CMD (nice -n 19 ionice -c 3 /usr/sbin/logrotate -s /var/lib/logrotate-monitors.status /etc/monitors/monitors_logrotate.conf)" > /dev/udp/10.10.10/514
Hope this clear.

ANy update?

@rjha-splunk
are you guys working on this?

We will post update on this asap, apologies for the delay on this.

The additional parameters on the message that contained of “ meta sequenceId* “ is not acceptable. As this meant the events contained has been modified and no longer original
With the “app-bigip-postfilter” parser given, is this meant the “app-vps-f5_bigip.conf” are not require at all? As based on the site the filter shall be there.
https://splunk.github.io/splunk-connect-for-syslog/main/sources/vendor/F5/bigip/
Rest of the parsers does not need to specific the actual mapping on the parser on “index('netops')” (just use as it), except this need mapped to actual specific  “index(sc4s_multi_secxxxx). What the logic behind?
For the events format, our end just need point to, then we will get the events will the time stamp and header that we need. But why this F5 Parser need included in the “app-bigip-postfilter” parser” itself? Why?
a.	“/apps/sc4s/local/config/destinations” for the events template like time stamp or header (example below:
template t_scb_custom_time_aruba {
template('${YEAR}-${MONTH}-${DAY}T${HOUR}:${MIN}:${SEC}${TZ} ${YEAR} ${HOST} ${MSGHDR}${MESSAGE}');
};
b.	/apps/sc4s/local/context/splunk_metadata.csv

aruba_ap,index,sc4s_multi_sec_int_gdc-w
aruba_ap,sc4s_template,t_scb_custom_time_aruba
5)	The time format that we want is as below. IF I added into the Parser given, no F5 events will be display at Portal. Could you please help what could cause it? * Use your time stamp events will showed
application app-bigip-postfilter[sc4s-postfilter] {
filter {
host("xxxx2lb*" type(glob)) or host("jomoni*") or host('<IP_ADDRESS>')
and "$PROGRAM" eq "CROND"
};
parser { app-bigip-postfilter() };
};
block parser app-bigip-postfilter() {
channel {
rewrite {
r_set_splunk_dest_default(
index('sc4s_multi_sec_ ')
source('f5:bigip')
sourcetype('f5:bigip:$(lowercase ${PROGRAM})')
vendor("f5")
product('bigip')
class('crond')
template('${YEAR}-${MONTH}-${DAY}T${HOUR}:${MIN}:${SEC}${TZ} ${HOST} ${MSGHDR}${MESSAGE}')
);
};
};
};

Thanks @Jo-Ng for the comment, let me review it again and post the updated solution. splunk metadata plus context templates are first in line after oob parsers so it works in other cases but not here.

pplication app-bigip-postfilter[sc4s-postfilter] {
 filter {
        host("ukfar*" type(glob))
       and "$PROGRAM" eq "CROND"
    };
    parser { app-bigip-postfilter() };
};

block parser app-bigip-postfilter() {
     channel {
        rewrite {
            r_set_splunk_dest_default(
                index('netops')
                source('f5:bigip')
                sourcetype('f5:bigip:$(lowercase ${PROGRAM})')
                vendor("f5")
                product('bigip')
                class('crond')
                template('t_everything')
            );
        };
   };
};

The template t_everything will do exactly what are you looking for , the format which you are trying to implement will not work, PFB answers to the question as well:
The additional parameters on the message that contained of “ meta sequenceId* “ is not acceptable. As this meant the events contained has been modified and no longer original : template t_everything will remove this bug( i am calling this bug because its a known issue in syslog-ng version)
With the “app-bigip-postfilter” parser given, is this meant the “app-vps-f5_bigip.conf” are not require at all? As based on the site the filter shall be there.
https://splunk.github.io/splunk-connect-for-syslog/main/sources/vendor/F5/bigip/
Rest of the parsers does not need to specific the actual mapping on the parser on “index('netops')” (just use as it), except this need mapped to actual specific “index(sc4s_multi_secxxxx). What the logic behind? It is used by many customers ..for them its mostly plug and play with given parsers and key generated by this parser can be used along with splunk_metadata.csv
For the events format, our end just need point to, then we will get the events will the time stamp and header that we need. But why this F5 Parser need included in the “app-bigip-postfilter” parser” itself? Why?
a. “/apps/sc4s/local/config/destinations” for the events template like time stamp or header (example below:
template t_scb_custom_time_aruba {
template('${YEAR}-${MONTH}-${DAY}T${HOUR}:${MIN}:${SEC}${TZ} ${YEAR} ${HOST} ${MSGHDR}${MESSAGE}');
};
b. /apps/sc4s/local/context/splunk_metadata.csv
they are working as designed and built, it is working in first case because it follows the sequence OOB parser > splunk_metadata(context and config) > post filter .

Hi,
you may mixed up the 2 & 3 questions

With the “app-bigip-postfilter” parser given, is this meant the “app-vps-f5_bigip.conf” are not require at all? As based on the site the filter shall be there.
https://splunk.github.io/splunk-connect-for-syslog/main/sources/vendor/F5/bigip/

3.Rest of the parsers does not need to specific the actual mapping on the parser on “index('netops')” (just use as it), except this need mapped to actual specific “index(sc4s_multi_secxxxx). What the logic behind?
What I meant is rest of parser we just use the  “index('netops')” even custom parser that provided by Splunk PS. and we just need make changed on the /apps/sc4s/local/context/splunk_metadata.csv with below
f5_bigip,index,sc4s_multi_sec_int_gdc-w
Where this F5 parser can't use the setting that set on splunk_metadata?
I will test the "t_everything". take note that other parsers are all use of configuration that set on /apps/sc4s/local/config/destinations/, but F5 are different again...
I may only respond next week as I'm away

@rjha-splunk
Below the output use on the template('t_everything')
echo
echo "<78>date +\"%b %d %H:%M:%S\" server1 info CROND[23119]: (syscheck) CMD (/usr/bin/system_check -q)" > /dev/udp/<IP_ADDRESS>/514
Output
2023-05-10T08:10:31.000+00:00 server1 CROND[23119]: (syscheck) CMD (/usr/bin/system_check -q)
Issues

Extra of millisecond 31.000.
missing of the "info" before the CROND, or the "MSGHDR"

Output from RSYSLOG which our end want and also what the original tcpdump received.
2023-05-10T07:01:01+00:00 serverx info CROND[10028]: (root) CMD (run-parts /etc/cron.hourly)
Please advice the above query.

i will check this and get back

@Jo-Ng i was not able to replicate time difference in my system , PFA screenshot as well as i have updated the parser to take care of other use case.
application app-bigip-postfilter[sc4s-postfilter] {
 filter {
        host("test*" type(glob))
       and "$PROGRAM" eq "CROND"
    };
    parser { app-bigip-postfilter() };
};

block parser app-bigip-postfilter() {
     channel {
        rewrite {
            r_set_splunk_dest_default(
                index('netops')
                source('f5:bigip')
                sourcetype('f5:bigip:$(lowercase ${PROGRAM})')
                vendor("f5")
                product('bigip')
                class('crond')
                template('t_msg_only')
            );
        };
       rewrite {
          set("${ISODATE} ${HOST} ${LEVEL} ${LEGACY_MSGHDR}${MESSAGE}" value("MESSAGE"));

       };
   };
};

@rjha-splunk
Your time different actually display the time different. Extra 000
The RSYSLOG is  2023-05-10T07:01:01+00:00 serverx info CROND
Your parser showed is 2023-01-09T09:01:01.000+00:00
the template that suitable to the RSYSLOG is as below:-
template('${YEAR}-${MONTH}-${DAY}T${HOUR}:${MIN}:${SEC}${TZ} ${HOST} ${MSGHDR}${MESSAGE}');
can this template fill into your parser?

@Jo-Ng Ofcourse you can do that, the parser was easily tuneable as per requirement:
application app-bigip-postfilter[sc4s-postfilter] {
 filter {
        host("test*" type(glob))
       and "$PROGRAM" eq "CROND"
    };
    parser { app-bigip-postfilter() };
};

block parser app-bigip-postfilter() {
     channel {
        rewrite {
            r_set_splunk_dest_default(
                index('netops')
                source('f5:bigip')
                sourcetype('f5:bigip:$(lowercase ${PROGRAM})')
                vendor("f5")
                product('bigip')
                class('crond')
                template('t_msg_only')
            );
        };
       rewrite {
          set('${YEAR}-${MONTH}-${DAY}T${HOUR}:${MIN}:${SEC}${TZ} ${HOST} ${LEVEL} ${MSGHDR}${MESSAGE}' value("MESSAGE"));

       };
   };
};


Add rate limiting for user comments

We just had a spammer hit us with >2k comments, in what appear to be rapid succession (will have to look at API logs because, to clean things up quickly, I nuked all of their comments).
I'd like to propose a rate limit that disallows (returns a 429 with a "please wait X more seconds") a comment if we've seen another comment from the same user in the last 20 seconds. We should include the wait time in both the error message (so the web UI can pick it up without modification) and the API (Retry-after header). This should provide somewhat of a foil against the kind of comment spam we just saw, which occurred through the website (vs. directly via the API).
On top of this, I'd also suggest a rolling rate limit of 30 comments per hour. We can analyze the current list of comments to see whether we'd catch any legitimate user via that, but my gut says that we wouldn't, since that number would correspond to a user rating every talk they've seen at a long/action-packed conference in a single sitting.

I'm +a on 30 comments per hour rate limit.

Probably a good idea to include with this fix a format conversion in the DB for the comment creatioon timestamp. Right now it (date_made) is a raw UNIX timestamp. For a bit more consistency with nearly every project I've worked with recently, I'd say swapping to a datetime (still in UTC) and renaming to created_at would be a decent course of action. As an added bonus, we can then use DEFAULT CURRENT_TIMESTAMP. With that schema setup, it would be easy enough to do the column-add migration first, then cut over the code to use the new column, since the default value would be the correct one. This would involve API-level changes to ensure that the endpoinst still return the same things.

:+1: on the API rate limit - the datetime in UTC for creation is definitely a good idea as it makes the DB field easier to comprehend when we have to loom at DB level.

Interesting ticket - started working on this.


Adding code demos creates artifact

Adding a code demo as a second PDF right under the slides PDF creates an empty container on the website.

Solved here: https://github.com/jakob-r/courseTheme/commit/dcee9002e27d08d10054273b52e6db4e8f9499ff


Add expiration date to the query for loading option chains

Feature Request
When using the API I'm unable to pass in the expiration date of the option chain to query. By default it currently loads the option chain of the nearest expiration.
Wanted Feature
Add support for the query parameter "date" which accepts a timestamp like in this example: https://query1.finance.yahoo.com/v7/finance/options/X?date=1622160000
The available timestamps are available in the result of the default statement when using the API as is:
expirationDates: [
1621555200,
1622160000,
1622764800,
...
]

Use Cases

Querying options chains for a specific expiration would allow me to implement my trade management for the expirations I have chosen. Only having access to the nearest option chain does not help.
Without the argument, the API doesn't seem to make sense for me.

Potential Example Usage
This feature could be used in the following way:
  const queryOptions = { lang: 'en-US', formatted: false, region: 'US', date:<PHONE_NUMBER>};
  const result = await yahooFinance.options('TSLA', queryOptions);

My fault. I forgot to add this when I created the module. Will send PR soon.

@MiErnst, this will be in the next release.  There'll be an automatic message here once it's available via npm.
That might only be in another week or two so you're invited to run the development version of the library until then if you like and feel comfortable with it, as described in CONTRIBUTING.md.  Please report back if you do.

Thanks for the support.

:tada: This issue has been resolved in version 1.11.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


injectPayload funciton

can you add new functon  ?
or  optimizing injectPayload, i want to  load remote javascript files , and get client more informaiton( like client fingerprint  information or webrtc ip ) in to JS-Tap project.
and add JS-Tap more custorm function ( like  custorm javascript funciton )

I like the idea of loading up custom javascript remotely from the js-tap portal, that tracks closely with a feature I had in mind. I'll get to work on that.
Good idea on the webrtc LAN IP.

It sees the internal IP address trick stopped working in the past year or so, but I'll get the payload inject going soon. Sorry Burpbounty.

Gotta start on the UI work in the dev branch, I hope to have this feature done in the next week or so.

Thanks for that code, I'll take a look at adding this soon. I should have the custom payload stuff finished by this weekend. Gotta few bugs I'm working on, and I need the UI for triggering a custom payload on a single client. Right now I have execute on all clients, and auto execute on new clients.

Custom payload import/export now works.

@Burpbounty I've merged the custom payload changes into main. They seem to be working now. Look over the updated README and let me know if that does what you were hoping for. I'll have to come back to the webrtc stuff later. Closing this issue for now, let me know if you have any problems using it.


Unslick removes filtered slides from DOM

When using unslick/responsive unslick on a filtered slider the slides don't get restored properly.
Steps to reproduce the problem

setup slick
filter slides
change to resolution to trigger unslick breakpoint
hidden slide elements are missing from DOM

Resize the fiddle to be smaller than the unslick breakpoint:
http://jsfiddle.net/dotHyphen/s3jyw2m7/

What is the expected behaviour?
All slides would be restored to DOM.

What is observed behaviour?
Some DOM elements are removed after unslick.

All browsers.
Slick 1.5.7 and1.6.0;
Don't know if it worked before first time using slick :smile:

The destroy function restores the original DOM state from _.$slides.
I propose a change to the aforementioned function to implement restoring from _.$slidesCache if it's available: _.$slider.append(_.$slidesCache !== null ? _.$slidesCache : _.$slides);
I will give a pull request if it's needed. Don't have the time right now.

Good issue--very comprehensible. I agree with your expected behavior. As a workaround, you can set the breakpoint, listen for the breakpoint event, unfilter, and then unslick.

My first thought was to do unfilterSlides on the unslick event but that lead to an infinite loop.
Tried to do it on breakpoint now and it also leads to a loop.
$(window).on('breakpoint', function(event, _slick, breakpoint) {
	if(breakpoint === 600) {
    $('.slider').slick('unfilterSlides');
  }
});

Should I be doing it some other way :smile:  ?

Interesting. I found another issue about the looping. I'd need to dig into it to figure out what's going on exactly, but I debounced your fiddle and that seems to work.
https://jsfiddle.net/sLv9a5s2/
Hope that helps!

Hello there,
is there any update on this issue yet?
Still having trouble with slides getting deleted when I filter.
Thank you,
Sören


Add a test priority score to --listTests

It would be great to assign a score per test based on the inputs. For example, if I'm running
jest --listTests --findRelatedTests file1 file2

the result should be a map of tests associated with how important Jest thinks each individual test is. Two ways of assigning a score:

Dependencies: Based on the number of edges in the dependency graph. A direct dependency of a test to the file will result in a higher score  than a  file ten levels deep in the tree.
File system locality: assign a higher score to files that are physically closer.
Speed (if cached): Fast tests will yield results earlier, so should have a higher score.

Then, a higher level tool can decide which tests to run immediately and which ones to defer.
I am primarily interested in ones that are fast to compute, but also interested to hear about slower methods, like static analysis of the test file or other complexity analysis. What other factors to assign a score to a test can you think of?

Another thing I'd like to consider based on this is more efficient test scheduling and more immediate feedback in watch mode. The priority score can be used to optimize test runs in watch mode as well.

Most recently failed (if cached) would/could be one metric: usually when running tests I want to catch failures fastest, especially when tests are flaking.

You may consider dependencies with a different angle: number of times it is used. If a component is used 100 times, it should have a higher score than one not used at all, regardless of other sub scores.

I'm not sure if build (babel compile) times are taken into account for total test run metrics? If not then it would be great to include that. A test that pulls in a massive amount of deps would take longer to run.

I would be even better if we can have more control on which test suite to run next with multiple workers.
e.g. I have 4 workers running all tests and each test file targets different machine.
If I can make the test balanced against all machines the test will run a lot faster.
Currently, The 4 workers sometimes running tests against the same machine, while other machines are idle.


Possible to have Verbose output by default

Hey mmozeiko,
not sure if you noticed but in rclone 1.36 the Verbose output seems to be turned off  for some reason, i know rclone browser has the option to enable verbose output before an job starts but is their an way to set it by default in an config file of sorts?

Yes, I plan to update UI to show proper progress output by default for 1.36 version.

sweet

Correct me if I'm wrong but doesn't a option stay enabled after you use it once?

Yes, transfer dialog should remember settings used in previous operation. Does it not happen for you?


Network request failed error remains on screen

Summary
The 'Network request failed' error message remains at the top of the screen even when the app is working and I am sending/receiving messages.
Environment Information

Device Name: iPhone 6
OS Version: 10.2.1

Expected behavior
When the app is working I would expect that error to disappear on it's own.
Observed behavior
Even when the app is working and I am sending and receiving messages, this error will remain there. It only disappears when I hit the 'x' on the right hand side.

Hi @amberbahm - thanks for the report!
We have a ticket here to not show the network request error message and we'll do something else for disconnects https://mattermost.atlassian.net/browse/PLT-5967


FunctionBuilder ignores parameters annotated with GraphQLIgnore

Currently FunctionBuilder includes all parameters except those annotated with GraphQLContext and those of type DataFetchingEnvironment: https://github.com/ExpediaDotCom/graphql-kotlin/blob/9915070a96b68d36528ee7cf28ba825e1e53dd85/src/main/kotlin/com/expedia/graphql/generator/types/FunctionBuilder.kt#L38-L41
With this present change, FunctionBuilder would also ignore parameters annotated with @GraphQLIgnore.
What follows is my concrete use case in the context of a Spring app, but the change would be convenient in other situations as well.
===
The example in the repo resolves nested queries by virtue of a lateinit var field (see https://github.com/ExpediaDotCom/graphql-kotlin/blob/3132d8851d67f2147f08590207279841a74338ad/example/src/main/kotlin/com/expedia/graphql/sample/query/NestedQueries.kt), with the associated data fetcher component getting resolved from the BeanFactory via a custom SpringDataFetcherFactory. This is quite cumbersome when nested queries require parameters, as seen here: https://github.com/ExpediaDotCom/graphql-kotlin/blob/3132d8851d67f2147f08590207279841a74338ad/example/src/main/kotlin/com/expedia/graphql/sample/query/NestedQueries.kt#L44-L49
A more convenient way would be to provide the nested query as a function in the data class, with bean component parameters annotated with Spring's @Autowired. A custom AutowiringFunctionDataFetcher resolves these annotated parameters to appropriate beans retrieved from the BeanFactory. The resulting data class looks as follows (contrived to match the repo's example):
data class NestedAnimal(
        val id: Int,
        val type: String
) {
    fun details(filter: String, @Autowired @GraphQLIgnore detailsRepository: DetailsRepository): Details {
        // retrieve details via detailsRepository
    }
}

Consequently the logic of the nested query lives in the data class itself instead of a separate DataFetcher class. Note that in my project I don't actually call data repositories directly in the data classes. Instead, the business logic is encapsulated in UseCase classes and the query is merely a call to a specific UseCase or Service (usually a one-liner). In this case having the logic in the data class isn't an issue.
Unfortunately the above approach doesn't currently work due to FunctionBuilder including all parameters, including the @Autowired @GraphQLIgnore parameters. Hence my proposed change.

Nice change! I agree that it makes sense to add even without the context of needing it in Spring

@sgeb I am releasing 0.2.12 with the changes. https://github.com/ExpediaDotCom/graphql-kotlin/releases/tag/0.2.12

Great, thanks for the super quick reaction.
BTW, I have a couple of more changes which could make sense to merge upstream. For example, I'm currently working around the fact that com.expedia.graphql.execution.FunctionDataFetcher#mapParameterToValue is private by copying the whole class into my project. The function could instead be protected to allow for easy specialization via inheritance.
Not sure when I'll get to providing a PR though.

Also, the Spring DI approach for nested queries described above has proven very convenient in my project. Happy to contribute it into this repo's example project. Is that something you'd be interested in? (again, not sure when I'll get to providing a PR though).

More examples are always helpful and we would welcome any PRs made.
With the changes to FunctionDataFetcher , we intended consumers to use the DataFetcherExecutionPredicate to modify the behaviour after we have mapped the values already.
I.e. You can modify the return value used here: https://github.com/ExpediaDotCom/graphql-kotlin/blob/af9667df8fa8901e64dc11cf56147b01b0ab5dc5/src/main/kotlin/com/expedia/graphql/execution/FunctionDataFetcher.kt#L65
Is there some data that is not available to you that you need?


[Fixes #1082] Switch branch even if we don't clone repo

Currently the branch is only switched if we clone the repo. Error checking for both sub-commands of clone + checkout are handled in the one try/except block.
This branch breaks that apart, and handles both actions separately, each in their own try/except block.

Codecov Report

Merging #1094 into master will not change coverage.
The diff coverage is 100%.

@@          Coverage Diff           @@
##           master   #1094   +/-   ##
======================================
  Coverage     100%    100%
======================================
  Files          18      18
  Lines         783     787    +4
======================================
+ Hits          783     787    +4

Impacted Files
Coverage Δ

cookiecutter/vcs.py
100% <100%> (ø)
:arrow_up:

Continue to review full report at Codecov.

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


Make pachyderm/opencv image smaller

we can just swap out the one on Docker Hub with jdoliner/opencv

@sjezewski not 1.3 urgent of course

Just did this.


Added sustainability to platform capabilities

Hello everyone, and apologies for the late contribution. I added sustainability and cost governance to the "Capabilities of platforms" paragraph.
Cost governance was mentioned earlier in the paper but did not appear in the capabilities section.
Sustainability, instead, was not mentioned before, but it will be a very hot topic in the near future and it can also become a decision driver. The CNCF itself started a working group on sustainability, so I think it would be nice to refer to the topic.
If you think this can be a good point and if you know other tools that can fit in this category, please feel free to add them.

Thanks for raising these @ugho16.
To this point we've considered watching costs a form of monitoring/observability. Currently we include cost monitoring in the "Observability" capability and OpenCost in the table.
For sustainability could you clarify what is the exact capability the platform would provide? Is it the ability to measure and observe power consumption and emissions levels? In that case I'd lean again to say those are part of the observability capability.
Here's another open source project for measuring "sustainability": https://github.com/sustainable-computing-io/kepler
In #279 we discussed how capabilities could have many features, so observability would include metrics, traces, costs, power consumption, etc. I wasn't able to add the "features" idea to the paper yet but maybe we should....


Replace [Netlify] prefix in contact email subjects

Replaces [Netlify] prefix with [eCamp v3] in future contact form emails.
This has become possible as of May 2023: https://answers.netlify.com/t/customize-the-email-subject-line-for-form-submission-notifications/91534
Apparently inline scripts are allowed and recognized in Astro: https://docs.astro.build/en/guides/client-side-scripts/
Maybe some of our email rules on the receiving side also need to be adjusted..?

Good catch! I think [ecamp3.ch Form]  may be a bit more clear, what the origin is. What do you think?

@manuelmeister But form isn't language independent, and I'd prefer to keep the prefix as short as possible. The prefix is in my opinion primarily for the users, and they might be reading the reply on a phone. Also for the conversation it isn't important that the initial request was submitted via a form, it's only important that it's about eCamp.

Okay 👍