Listener of stream obtained by watch triggers after future of modifying query completes

When I listen to a database using watch and do for example an insert, I want the returned Future of the insert statement to complete after the listeners to the database have been fired.
I also found the following sentences in a comment in lib/src/runtime/executor/stream_queries.dart, which leads me to believe, this is also the intended behavior.

We want to dispatch table updates before the future from the query completes. This allows streams to invalidate their cached data before the user can send another query.

Steps to Reproduce

Set up a project as describe in https://drift.simonbinder.eu/docs/getting-started/starting_with_sql/
Add the following main method:

void main() async {
  final db = MyDatabase();
  final stream = db.select(db.todos).watch();
  stream.listen((event) {
    print('watch stream listener called');
  });
  // Just so that we can differentiate the initial listener firing from the one caused by the insert.
  await Future.delayed(Duration(seconds: 2));
  print('before insert');
  await db
      .into(db.todos)
      .insert(TodosCompanion.insert(title: 'Some Title', content: ''));
  print('after insert');
}

Run the program

Expected Result
The output should be
watch stream listener called
before insert
watch stream listener called
after insert

The first listener call can be ignored. Secondly the insert is started. Before the future of the insert completes, the listener should be fired. Only afterwards the future of the insert should complete. That way we can be sure that any (synchronous) side effects of the insert have happened after we awaited it. If there is any asynchronous work done in the listener, this guarantee can of course not be made, as the insert should not wait for some random stuff that happens elsewhere. Also Streams don't support this.
Actual result
watch stream listener called
before insert
after insert
watch stream listener called

The listener is called after the future completes.

Hmm... But how can i make sure to wait until the listener for a particular event is dispatched?
In my case i have a watch on the database that modifies some internal state. Then I make for example an insert on the database and afterwards I want to work with the modified internal state. The only safe alternative would be so call a method after every modifying query (of which there are a lot) that gets the current state from the Database, and modifies the internal state according to that. This is also error prone, since the method can easily be forgotten. The current workaround is to await a Future.delayed with a small delay after the insert statement before accessing the internal state. But this is also hacky. Do you have any advise?

Then I make for example an insert on the database and afterwards I want to work with the modified internal state

Just to clarify, is the internal state something derived from the database, but managed outside of drift? If you work with query stream updates, they should always reflect the new internal state.
You can emulate notifying listeners by await Future.delayed(Duration.zero).

Yes, the internal state is derived from the database. Its an AsyncNotifier from Riverpod that basically just maps the database models to our own models and provides methods for modifying the database. Here a rough outline of what it looks like:
class TodosNotifier extends AsyncNotifier<List<TodoDomainModel>> {
  Future<List<TodoDomainModel>> build() async {
    final db = ref.watch(databaseProvider);
    final todosStatement = db.select(db.todos);
    final sub = todosStatement.watch().listen((event) {
      state = AsyncData(mapDbTodosToDomainModel(event));
    });
    ref.onDispose(() => sub.cancel());
    return mapDbTodosToDomainModel(await todosStatement.get());
  }

  Future<void> addTodo() async {
    final db = ref.watch(databaseProvider);
    await db
        .into(db.todos)
        .insert(TodosCompanion.insert(title: 'Some Title', content: ''));
  }
}

So for example I want to await addTodo() and then access the modified state from the AsyncNotifier.
And I want to avoid doing something like await Future.delayed(Duration.zero) after every method that modifies the database.
If you don't have any further ideas, that's fine though. I know you're not my personal tech-support :)
It already helps to know the behavior is intended. We'll find some way around it.


issue

Thank you for this great and important idea

it has problem with versions that have (+)
also why it remove (^) from version number?

also it analyze the pubspec.lock file, it should't do that.

fix this by limiting to only 1 analyze per time

@berkkan22 Thank you. it's a very helpful extension.

I have fixed the issues and published a new version. It should be up in a couple of minutes. If there is still a problem or and other problem or feature request let me know.
Thanks for using my extension 😊

@berkkan22 wow, everything fixed! Thank you so much!


SelectDaysDialog.kt - fixed minor padding issue for Done button.

Awesome project & I love your YouTube videos! I had some time to check out the code and I found just a very small padding issue.
Before
After Fix
I tested on Android 11 & Android 13. Feel free to test & make changes...
Sarah

Thanks @santansarah 🙌 we're glad our videos are helpful to you ✨


gh-401 Create endpoint to return single ProfileProviderService

Also give profile providers index optional parameter to only return latest versions
Add tests to verify new endpoint

Resolves #401

Thanks @pjmonks, the code changes look good to me :+1:
Could you update the tracked_endpoints.txt file mentioned in one of the failing tests? I'll add a Postman entry for the URL as well.


[TEVA-1434] Only add link to referrer if referred from jobs path

Given the ticket is a bug, I think this meets the definition of a fixed bug. Ensuring search parameters are persisted after a user navigates to Get similar job alert and back is outside the scope of this ticket, is functionality in it's own right, and not something I'm sure we should necessarily do anyway.
Jira ticket URL
https://dfedigital.atlassian.net/browse/TEVA-1434
Changes in this PR:

Only add referrer link for search results if the referrer path is the jobs page

looks fine for what the PR is about but for the record im not a fan of little tenary expressions in templates like was already here in the view (related to other PRs ive put similar comments on)

But they're cute! If you can lobby someone for a +1 I'll move it elsewhere


Document SAML setup for login

Is your feature request related to a problem? Please describe.
SAML is useful for authentication. VarFish should already have support for it as sodar-core does. We have not tested this yet and we need to document it.
Describe the solution you'd like
Test setup and document the environment variables. Refer to SODAR-core documentation on how to configure details such as keycloak.
Describe alternatives you've considered
N/A
Additional context
N/A

Unfortunately, it is not as easy as "just" following the documentation. In the End a few changes to the Dockerfiles etc. are necessary.
Note: I have implemented/tested the SAML setup against a Keycloak IDP. Mileage may vary for other IDP, especially around the attributes.
The code I used to have a working SAML login in VarFish is provided in the pull request https://github.com/bihealth/varfish-server/pull/146. Changes are overall pretty basic. To authenticate against a keycloak saml endpoint, I have used the following attributes map in addition to the code changes in a docker environment:
'ATTRIBUTES_MAP': {
    'email': 'urn:oid:1.2.840.1135<IP_ADDRESS>',
    'username': 'username',
    'first_name': 'urn:oid:<IP_ADDRESS>',
    'last_name': 'urn:oid:<IP_ADDRESS>',
},

Additionally, I added the key files and metadata.xml into a volume passed to the varfish container. The other attributes in the .env file are set as described in the sodar-core documentation (minus the typo around IDP/IPD/IPO)
It would also be nice to introduce some redirect to sso/login from the standard login page or a button to this extent.

@stolpeo @mikkonie This looks like a sodar-core related issue to me. Is this correct?

Tracking https://github.com/bihealth/sodar-core/issues/597


Team leaves tournament activity message is wrong

When a team leaves a tournament, the activity should be for the team and not for the user:
Currenly:
UserA left tournament TournamentA
TeamA joined tournament TournamentA

It should be:
TeamA left tournament TournamentA
TeamA joined tournament TournamentA

PR reviewed. tested. deployed.


Invite people into an organisation with an unknown email / phonenumber

It is not always easy to know which email addresses / phonenumbers people used on their itsyou.online account.

People should get an invite link and when they follow it but already have an iyo account, can choose to add this to their profile (and is immediately verified off course).

@robvanmieghem should this be for both email addresses and phonenumbers or only email addresses


JSONDecodeError

When using Google Colaboratory for the development platform, imported the library from pip successfully and imported it into the project. However, when attempting to use the library, it returns:
`---------------------------------------------------------------------------
JSONDecodeError                           Traceback (most recent call last)
 in ()
1 stocktwits = pt.StockTwits()
----> 2 symbols = stocktwits.search(path='search/symbols', q='AAPL')
3 aapl = symbols[0]
4 print("Symbol: {} - Title: {}".format(aapl.symbol, aapl.title))
6 frames
/usr/lib/python3.7/json/decoder.py in raw_decode(self, s, idx)
353             obj, end = self.scan_once(s, idx)
354         except StopIteration as err:
--> 355             raise JSONDecodeError("Expecting value", s, err.value) from None
356         return obj, end
JSONDecodeError: Expecting value: line 1 column 1 (char 0)`
Attempted to use both the .search as well as the .streams function and both returned the same error. For reference, here is the copy/paste code which returned the above error:
import pytwits as pt
stocktwits = pt.StockTwits()
symbols = stocktwits.search(path='search/symbols', q='AAPL')
aapl = symbols[0]
print("Symbol: {} - Title: {}".format(aapl.symbol, aapl.title))

Your pasted code is working on my end, however I can't provide support for different IDEs etc.


Changes tar to unzip

See: https://github.com/oae/asdf-flutter/issues/14

I was on Catalina when I encountered the issue and posted the PR.

I was on Catalina when I encountered the issue and posted the PR.

I confirm this works for me on macOS Monterey 12.3.1

I confirm this works for me on macOS Monterey 12.3.1


TLS Interception hangs on macOS M1

Problem Description
Tried to use mitmdump on MacOS Ventura and Sonoma.
It is working fine with HTTP traffic but mitmdump hangs with HTTPS traffic.
The certificate is installed.
Steps to reproduce the behavior:

run ./mitmdump
install the certificate sudo security add-trusted-cert -d -p ssl -p basic -k /Library/Keychains/System.keychain ~/.mitmproxy/mitmproxy-ca-cert.pem
Try curl on HTTP, mitmdump works.
Try curl on HTTPS, mitmdump hangs and must be force quit.

I tried same step on Windows and it works.
System Information
Mitmproxy: 10.1.3 binary
Python:    3.12.0
OpenSSL:   OpenSSL 3.1.4 24 Oct 2023
Platform:  macOS-13.5.2-x86_64-i386-64bit
Tests logs
./mitmdump
[16:09:38.363] HTTP(S) proxy listening at *:8080.
[16:09:55.134][<IP_ADDRESS>:64923] client connect
[16:09:55.208][<IP_ADDRESS>:64923] server connect docs.mitmproxy.org:80 ([2600:9000:262a:7200:1e:9dd:23c0:93a1]:80)
<IP_ADDRESS>:64923: GET http://docs.mitmproxy.org/stable/
              << 301 Moved Permanently 167b
[16:09:55.227][<IP_ADDRESS>:64923] client disconnect
[16:09:55.228][<IP_ADDRESS>:64923] server disconnect docs.mitmproxy.org:80 ([2600:9000:262a:7200:1e:9dd:23c0:93a1]:80)
[16:10:06.555][<IP_ADDRESS>:64974] client connect

curl --proxy http://<IP_ADDRESS>:8080 "http://docs.mitmproxy.org/stable/"

<title>301 Moved Permanently</title>

301 Moved Permanently

CloudFront

curl --proxy https://<IP_ADDRESS>:8080 "https://docs.mitmproxy.org/stable/"

same issue. it starts with version 10.1.2, in which the bundle was made. there may be a problem with apple silicon processors (???), but i have it
working version - 10.1.1

Thanks folks! I've tracked this down to https://github.com/pyinstaller/pyinstaller/issues/8099 upstream. GitHub Actions does not support arm64 builds yet for FOSS projects, so I guess we need to ship a release with manually-built arm64 binaries.

We've just shipped mitmproxy 10.1.4, once Homebrew is updated (https://github.com/Homebrew/homebrew-cask/pull/160010) we should be good! 😃

Same for me. Thanks for quick fix!

Homebrew folks have been on fire, we just need to wait for caches to clear! 😃

@mhils I am facing the same issue where mitmproxy takes a long time to send response due to which it throws 502 bad gateway error for traffic through browser.
While trying through terminal using command curl -x localhost:8080 -k https://www.google.com or curl -x localhost:8080 -k https://lh3.googleusercontent.com . It is taking a long time to send response in terminal.
I installed it using command pip install mitmproxy
System Information:
Device: Macbook M1
Mitmproxy: 10.3.0
Python:    3.12.0
OpenSSL:   OpenSSL 3.2.1 30 Jan 2024
Platform:  macOS-14.3-arm64-arm-64bit
Homebrew 4.3.0


fix(transformers): chunkify only chunking first chunks

fixes #3

thanks for spotting that, those tests I wrote were actually awful. you've also brought to my attention that the internal stripIterable utility isn't doing what it's supposed to do. not too big of a deal since that function is only used in tests, but it should probably just be removed (unless it can be made to work). I can't fix that right now, but I will get to it soon — otherwise you're welcome to do it.

alright, i'll also remove the stripIterable function and their related usages as well.

would there be anything else i'd need to do to get it merged?

@jajaperson

apologies, i have had pretty bad covid the last week and haven't gotten to this. since the code works and the problem withstripIterable does not affect it, i see no reason not to merge this as is.

thank you! i've also gotten covid a few months ago, hope you get well soon.


New package: MaxwellGuide v0.1.0

Registering package: MaxwellGuide
Repository: https://github.com/wsshin/MaxwellGuidedMode.jl
Created by: @wsshin
Version: v0.1.0
Commit: a26897582e053df9a2ddb29cc2344d867004f63f
Reviewed by: @wsshin
Reference: https://github.com/wsshin/MaxwellGuidedMode.jl/commit/a26897582e053df9a2ddb29cc2344d867004f63f#commitcomment-54637609
Release notes:

MaxwellGuidedMode.jl is becoming a registered package.

@wsshin please see the message above.  Once you fix the automerge issues you can register again the new revision without changing the version number and this pull request will be automatically updated.
[noblock]

@giordano, the problem was that I used an old package name in Project.toml.  I already fixed this error and registered again.  However, because the package name was updated, a new PR was created; see https://github.com/JuliaRegistries/General/pull/42496.  Therefore, I think we can close the present PR.


encodec error

The coarset transformer is learned when using soundstream, but not when using encodec.

@LWprogramming
One-dimensional wavform(ex.[(96000)]) are derived from the data.py, but if i put that input to the current encodec code, they don't run. So, in the front of the code, 'wav.unsqueeze (0)' must be inserted into the encodec code.

I added an assertion in my personal branch but was still able to train coarse correctly. Here is the demo script I am using (I may insert assertion errors as reminders to myself but you can ignore those if you want to try using it to replicate).
Is it raising an error when you train using the demo script? If so, it's possible that there's some other processing between when it comes from data.py and when it actually enters encodec, correctly shaping it (in which case I don't think we'd need unsqueeze)

Like the demo code you showed me, I checked that there is no error if I give the data_max_secondsparameter as 320*30 in the CoarseTransformerTrainer.
However, In the CoarseTransformerTrainer, if i give the parameter (data_max_length_seconds = 30), the following error comes.
AssertionError: Expected indices to have shape (batch, num_frames, num_coarse_quantizers + num_fine_quantizers), but got torch.Size([1, 2250, 8])


Remove global static plugin support, and enable plugin immediately when using it.

For better support to the CQRS plugin: it requires the plugin to be enabled as soon as possible, especially before the wechaty.start() because it needs to control the start/stop of the Wechaty instance.

Has been publish with the commit.


Compatibility with pre-2.10 versions https://github.com/unum-cloud/us…

Fixes https://github.com/unum-cloud/usearch/issues/423

Epic, @zh217, thank you! Doing my best to merge it to upstream in the next couple of days, was blocked by this - TinySemVer.


easydict

I couldn't find the easydict , but this file use it,
from easydict import EasyDict as edict.
in the TFFRCNN-master/lib/fast_rcnn/config.py
how could I solve  it ,I would be appreciate if you could help me. @CharlesShang

Thank you ,I solve this problem by pip install the easydict.


Rename project to "democracyos"

Just calling this "app" is pretty confusing when the project is forked by other orgs or users not called "DemocracyOS" :)

+1

I'll be adding this as part of 0.11.0 somtime later this week, inluding support for Node version 0.10.36 and as latest npm as possible.


[VT-31] vit; allow direct editing of annotation with "e"

David Patrick on 2013-08-11T14:40:56Z says:
Using vit, if you place the cursor over a task and hit "e", it opens up your default $EDITOR, ready to edit any and all task details.
This feature request is for a new behavior when you hit "e" with the cursor over an annotation, that opens the editor with JUST that annotation text.

Migrated metadata:
Created: 2013-08-11T14:40:56Z
Modified: 2014-07-02T01:34:27Z


Added logic to check if create exists on operatorgroup for operator chart

Fixes: https://github.com/rht-labs/helm-charts/issues/23

linting is failing due to:
Error: unable to build kubernetes objects from release manifest: [unable to recognize "": no matches for kind "OperatorGroup" in version "operators.coreos.com/v1", unable to recognize "": no matches for kind "Subscription" in version "operators.coreos.com/v1alpha1"]
which is expected, if OLM isn't deployed.

@garethahealy  - yeah this ci "fail' is expected. I think we need to circle back to this issue sometie soon, hopefully some CoP folks have some good ideas on testing this stuff as it's all quite manual atm


Get precise data

Added rawPercentage to have the percentages present in the file as strings and keep the precision of it.
Added tests to it.
Now the method hardestCall uses this rawPercentage to decide which trace took the most time.

* Commit: [b72cb35](https://github.com/Alamvic/XCVMProfiler/commit/b72cb35a774ba66f42f5c29e9dd6523a7e1bd890)

* Pull Request: nil

It's a bit weird that it doesn't show the pull request ID.

Commit: b72cb35
Pull Request: nil

It's a bit weird that it doesn't show the pull request ID.

Haha yes, I don't know, to be fixed.


Add Contributors Table in README.md

Like this

I would like to work on this.

I would like to work on this.

I would like to work on this.

Sure 😃

I would like to work on this.

Sure 😃

Can you assign me this issue. And add DWOC and Level label in it.

Can you assign me this issue. And add DWOC and Level label in it.

Can you assign me this issue. And add DWOC and Level label in it.

Sure what are you going to work on?
I'll label it accordingly.

Can you assign me this issue. And add DWOC and Level label in it.

Sure what are you going to work on?
I'll label it accordingly.

I will add code in README.md file which will automatically add contributors in the table.

I will add code in README.md file which will automatically add contributors in the table.

Here you go!

Here you go!


Auto-Detect Drupal Single Site Install Path

Reference #42, #36 and #15. The Drupal types currently require the composer.json to be located in the sites/all folder to allow for multi-sites. It appears to be common to want to locate the composer.json in the root of a drupal app. So would be nice for the DrupalInstaller to detect whether it's in root of the app to prefix sites/all/ to the install path.
@RobLoach has done this in his DrupalInstaller. I think the detection stuff makes sense (and would love a PR or your copy permission Rob) but I would like to get #43 done first.
This would make it so core drupal modules and themes cannot be installed with composer/installers. Which is a good thing but just making it clear.

Closing here as it is very very old, and I'm assuming another solution was found if there really was something to fix.


Setup and run end to end

The main change is documenting how to set the slack bot for ask-astro https://github.com/astronomer/ask-astro/blob/setup-and-run-end-to-end/docs/api/setup_slack_bot.md
Other are minor improvement and scripts to run ask-astro API locally
Closes: #32  #38

Over all looks good to me. Following needs to be added.
1. Installation of poetry and missing requirements if any.

could be improved but this is how it looks like now


Refactor Base and Actor Critic classes

Resolves #49

Travis build is failing because ppo1 and other algos call non existent functions. They have to be refactored as well.

I'll fix the quality stuff now


Documentation out of date, 'other' not an option

Step 11 is out of date. I made the assumption to use 'Chrome App' and selecting that does not give me a client secret.

Can you double-check your process? I still see this:

https://youtu.be/W5k2BuxFFBo
Please let me know if I didn't follow something correctly.

Looks right. It's weird because I just tried with a new account and new project and I still get the old UI.
Perhaps try Desktop app or any other item that doesn't require platform-specific info like "Android store URL"

Desktop App gives me a client secret. You da man

Thank you for the update! Guide updated: https://github.com/DrewML/chrome-webstore-upload/commit/444e33518d6bf7c0477b217c48e789ee42c4355a


Autogenerate fbs include files and rely on (refactored) include hierarchy

What
As implied by the title there's two things going on here:

a fbs code generation step that generated include files

yes. it happend. we're generating code generators. 😱

a refactor of how we include things in general

previously, we sometimes did and sometimes did not include as-if we want to compile individual type definitions standalone. Practically, we never do that and things we don't do break. Degrading includes within type definitions to an annoying nuissance.
now, we almost never include in actual type definitions, leaning in on the fact that we only ever compile the new entry_point.fbs

Checklist

[x] I have read and agree to Contributor Guide and the Code of Conduct
[x] I've included a screenshot or gif (if applicable)
[x] I have tested the web demo (if applicable):

Using examples from latest main build: rerun.io/viewer
Using full set of examples from nightly build: rerun.io/viewer

[x] The PR title and labels are set such as to maximize their usefulness for the next release's CHANGELOG
[x] If applicable, add a new check to the release checklist!
[x] If have noted any breaking changes to the log API in CHANGELOG.md and the migration guide

PR Build Summary
Recent benchmark results
Wasm size tracking

To run all checks from main, comment on the PR with @rerun-bot full-check.

hmm strange. why is it reporting codegen would do changes. doesn't change anything on my Windows machine.
It's not CRLF, must be some other similar sublety


Drag and Drop in Queue

Hey, love the app and the motivation behind it! One thing about the queue I think I can improve would be drag and drop re-ordering. I (and possibly others) frequently find myself wanting to get nitty-gritty with my playlist order on iTunes, so I figured this might be a desirable feature.
I have a favorite library for this that I would import if I were to implement this feature, so I wanted to post this issue before diving in, in case any core maintainers were opposed to such an approach.
https://bevacqua.github.io/dragula/
I'll fork and start poking around for now, and if this is of interest, I would love to implement it and submit my PR.

Closing, since the feature is complete!


Unable to create a subnet from a secondary VPC CIDR

Background
I was attempting to create a Subnet from a secondary VPC CIDR and was getting a subnet validation error.
It appears that this is because create_subnet only validates the CIDR is a subset of the VPC primary CIDR (https://github.com/spulec/moto/blob/master/moto/ec2/models.py#L3433-L3435). Instead I believe this should be validated against all CIDRs in the VPC cidr block association sets
Observed Behavior
To reproduce you can run the below code (I tested with<EMAIL_ADDRESS>and<EMAIL_ADDRESS>in python3.7):
import boto3
from moto import mock_sts, mock_ec2

@mock_sts
@mock_ec2
def main():
    client = boto3.client("ec2", region_name="us-west-2")

    vpc = client.create_vpc(CidrBlock="<IP_ADDRESS>/16")

    # Succeeds
    subnet1 = client.create_subnet(
        AvailabilityZone="us-west-2a",
        CidrBlock="<IP_ADDRESS>/24",
        VpcId=vpc["Vpc"]["VpcId"],
    )

   print(subnet1)

   client.associate_vpc_cidr_block(
        CidrBlock="<IP_ADDRESS>/16",
        VpcId=vpc["Vpc"]["VpcId"],
    )

    # Fails
    subnet2 = client.create_subnet(
        AvailabilityZone="us-west-2a",
        CidrBlock="<IP_ADDRESS>/24",
        VpcId=vpc["Vpc"]["VpcId"],
    )

    print(subnet2)

if __name__ == '__main__':
    main()

Output / Traceback
{'Subnet': {'AvailabilityZone': 'us-west-2a', 'AvailabilityZoneId': 'usw2-az2', 'AvailableIpAddressCount': 251, 'CidrBlock': '<IP_ADDRESS>/24', 'DefaultForAz': False, 'MapPublicIpOnLaunch': False, 'State': 'pending', 'SubnetId': 'subnet-89f4d757', 'VpcId': 'vpc-5c9431df', 'OwnerId': '111122223333', 'AssignIpv6AddressOnCreation': False, 'Ipv6CidrBlockAssociationSet': [], 'SubnetArn': 'arn:aws:ec2:us-west-2:111122223333:subnet/subnet-89f4d757'}, 'ResponseMetadata': {'RequestId': '7a62c49f-347e-4fc4-9331-6e8eEXAMPLE', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'amazon.com'}, 'RetryAttempts': 0}}
Traceback (most recent call last):
  File "test.py", line 35, in <module>
    main()
  File "/path/to/.venv/lib/python3.7/site-packages/moto/core/models.py", line 100, in wrapper
    result = func(*args, **kwargs)
  File "/path/to/.venv/lib/python3.7/site-packages/moto/core/models.py", line 100, in wrapper
    result = func(*args, **kwargs)
  File "test.py", line 29, in main
    VpcId=vpc["Vpc"]["VpcId"],
  File "/path/to/.venv/lib/python3.7/site-packages/botocore/client.py", line 316, in _api_call
    return self._make_api_call(operation_name, kwargs)
  File "/path/to/.venv/lib/python3.7/site-packages/botocore/client.py", line 635, in _make_api_call
    raise error_class(parsed_response, operation_name)
botocore.exceptions.ClientError: An error occurred (InvalidSubnet.Range) when calling the CreateSubnet operation: The CIDR '<IP_ADDRESS>/24' is invalid.

Expected Behavior
Resource subnet2 should pass validation and be successfully created in the backend.

Thanks for raising this, and providing a test case @davidaah - that's always helpful. Marking it as a bug.

This is now fixed as of moto >= 1.3.16.dev69


if every bounding box have multi entities, how to process?

Chinese receipt may appear multi entities because of printing.

I have the same issue.  Have you solved it?


Added many features and fixed bugs

Hi, thanks for making this. I've wanted to set up an image uploader for a while. There were a bunch of features that I also wanted to have, so I added them:

Added dark theme
Added login with username and password (which are stored hashed and salted)

Login has remember me functionality with hashed tokens

Added rich text viewer for text files with theme support and syntax highlighting
Added upload forms for text and files on the gallery page
Added text uploads through a shell script (like a pastebin)
Added a rename button on the gallery page
Added bulk download and delete operations
Added custom date formats for upload names (you can choose whether you want files to have random names, date-based names, or keep original name)
Added custom date formats on the gallery page with fixed sorting
Uploader can now be added as a PWA
Updated to new versions of css/js assets
ShareX config files now automatically set this uploader as default
Updated to new version of PHPUnit and cleaned up some tests
Fixed GitHub workflows for testing

I've ended up restructuring a lot of the project and I've moved all the code out of the u/ folder so there are a lot of breaking changes. My fork is also significantly more bulky, so if you'd prefer, I can just continue my fork separately.
Let me know what you think.

Really nice! It's definitely worth getting this merged in, i'll find some time to run some tests locally and write a bit of a migration how to for the breaking changes.
But really happy to have some one improving the project!

Thanks! If you'd like I can start managing releases and we can release this as v2. I think all users should need to do to upgrade is run something like find . -maxdepth 1 -not -name "*.php" -exec cp '{}' ../backupfiles/ ';' to copy their uploaded images into a separate folder, reinstall the new version of the uploader, and copy the files back. I've started writing up a quick guide on how to do this.

On an unrelated note, could you consider releasing this project under an open source license (like MIT)?

Thanks! If you'd like I can start managing releases and we can release this as v2. I think all users should need to do to upgrade is run something like find . -maxdepth 1 -not -name "*.php" -exec cp '{}' ../backupfiles/ ';' to copy their uploaded images into a separate folder, reinstall the new version of the uploader, and copy the files back. I've started writing up a quick guide on how to do this.

Sounds good to me, might be worth popping a quick migrating from v1->v2 on this PR in plain text for none techy people would be nice, (essentially just move all files that arent php into /backupfiles/)

On an unrelated note, could you consider releasing this project under an open source license (like MIT)?

Absolutely, I'll drop in the MIT license

Thanks for the comments! Are we ready to merge?

Nice one, and feel free to take some control in terms of releases


New Training Dataset

I am preparing a new training dataset. Do I need to run SMPL-X in order to normalize the orientation of the 3D human models?

It is not a necessary pre-processing step to normalize the orientation.
------------------ Original ------------------
From: crocis @.>
Date: Tue,Mar 26,2024 11:59 PM
To: aipixel/GPS-Gaussian @.>
Cc: Subscribed @.***>
Subject: Re: [aipixel/GPS-Gaussian] New Training Dataset (Issue #31)
I am preparing a new training dataset. Do I need to run SMPL-X in order to normalize the orientation of the 3D human models?
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you are subscribed to this thread.Message ID: @.***>

Is it a recommended pre-processing step?

Where could I find the code to fit SMPL-X to a 3D human model?

Actually not. I do this only for having a unified data identifier which makes it easy to synthesis validation videos.
------------------ Original ------------------
From: crocis @.>
Date: Wed,Mar 27,2024 0:36 AM
To: aipixel/GPS-Gaussian @.>
Cc: Sawyer @.>, Comment @.>
Subject: Re: [aipixel/GPS-Gaussian] New Training Dataset (Issue #31)

Where could I find the code to fit SMPL-X to a 3D human model?


Support the ability to define the repository types for security issues

It would be nice to be able to define the repository types to include for the security issues. For example, we might want a SECURITY.md for all public and internal repos, but not care about whether private repos have it or not.

Hi @coheigea Thanks for the question.
This is possible if you set your security.yaml to:
optConfig:
  optOutStrategy: true
  optOutPrivateRepos: true
aciton: issue

You might also want to opt-out private repos on branch_protection.yaml as well, unless you are paying for that feature in GitHub.


Write a Kotlin program to print reverse of a string

Description
Write a Kotlin program to print reverse of a string
Reverse of a string is the string with the characters in reverse order. For example, the reverse of "hello" is "olleh".
Input  : abcd
Output : dcba

How to contribute

Save the solution in PrintReverseOfAString.kt file
Add PrintReverseOfAString.kt file in print-reverse-of-a-string folder

!assign


[Automation] Generate SDK based on TypeSpec 0.20.0

[Automation] Generate SDK based on TypeSpec 0.20.0

you can checkout the changes in healthinsights


Add support for pandas DataFrames as input data

Currently only numpy arrays are accepted as input when creating nm_channel object.
A name related error is thrown when running:
features = stream.run(data)
Find Error reproduction in a jupyter notebook and sample data attached.
The Exception thrown is misleading.
reproduce_error.zip

Hello Samed. First of all thank you for reporting this issue and providing the code to reproduce it. I checked the error message and indeed there was a bug in there, in that it was showing the channels names of the input data twice, instead of comparing the input data channel names with the expected names, that are the ones set in nm_channels when initializing the stream.
After fixing that, now this is the content of the thrown Exception:
If data is passed as a DataFrame, thecolumns must match the channel names in `nm_channels`.
Data columns: [' EXG_Channel_0', ' EXG_Channel_1', ' EXG_Channel_2', ' EXG_Channel_3', ' EXG_Channel_4', ' EXG_Channel_5', ' EXG_Channel_6', ' EXG_Channel_7']
Expected: nm_channels.name: ['ch0', 'ch1', 'ch2', 'ch3', 'ch4', 'ch5', 'ch6', 'ch7'].

As you see, the problem is that the columns in the input dataframe have not been renamed to match the nm_channels object, or viceversa.  You have 2 lines that potentially fix this error:
data = data.rename(columns=dict(zip(data.columns[0:8], nm_channels.name)))

or
nm_channels = nm_define_nmchannels.set_channels(ch_names=data.keys()[0:8], ch_types=['SEEG']*8)

Notice that I have changed the slicing ranges from 1:9 in the original code to 0:8
After fixing that, that error wasn't thrown anymore but the resulting feature dataframe was empty. I noticed that there was a mismatch between the expected shape for numpy data (n_channels, n_timepoints) and the expected shape for a pandas.df (n_timepoints, n_channels). That should be fixed by PR  #301


Improve debuggability of C++ library

Currently the preview packages for the core input dependencies being very large are shipping without PDBs, which makes debugging difficult.
Possible solutions:

Ship NuGet symbol packages to nuget.org, making the symbols available to debuggers through the nuget.org symbol server
This is the standard solution to shipping PDBs, but is most suited for managed code. In the case of webrtc.lib, a single lib file is associated with many PDBs, which appears not to be supported by nuget.org. Moreover in the case of a static library the PDBs are needed during linking, not only at debug time, and I don't think symbol servers are used at that point.

Ship NuGet packages with PDBs inside.

This is different from 1. in that the packages are regular .nupkg, not symbol packages (.symbols.nupkg or .snupkg). There, PDBs are treated as any other content file, and essentially ignored by nuget.org. This has the advantage to make the PDB files available at link time too.
Working with local webrtc.lib build:
In addition of the missing PDBs, the current NuGet packages contain .targets files to configure the header and library paths. Because those are .targets and not .props, they are included last, overriding any local path. This means users currently need to tweak the .vcxproj to make things work with the locally-built core dependencies, and uninstall the NuGet packages locally.

Is it possible to get the PDBs outside of Nuget?


Conform on the name Connector instead of Adapter in the docs

In the documentation, references to adapter are made whereas in other places (newer documentation) it refers to connector. We should replace the term adapter with connector throughout the documentation.

I would like to work on this issue.


[ENHANCEMENT] move settings from dbconstants to json file and load it at startup

Is your feature request related to a problem? Please describe.
When you need to change some setting (for example path to DB folder) in production, you need to publish new version of HMI.
Describe the solution you'd like
When the settings are located in a file that is loaded at startup, you can simply edit the file and restart application.
Describe alternatives you've considered
It doesn't have to be explicitly JSON file. Could be saved in DB, csv, xml just that it is possible to edit it and the application loads it at startup.

/cib


Tutorial Page btp-app-ext-service-intro.md Issue. PROD

Tutorial issue found: https://github.com/sap-tutorials/Tutorials/blob/master/tutorials/btp-app-ext-service-intro/btp-app-ext-service-intro.md contains invalid tags. Even though your tutorial was created, the invalid tags listed below were disregarded. Please double-check the following tags:

products>sap-s-4hana-cloud

Affected server: PROD

Hello,
How can we find the correct tags to use? I could not find it in the tutorials creation guide or the style guide.
Best regards,
Manju

There is a list with all the primary tags in IMS. Unfortunately yours is missing there.
In your case the issue is that the tag's name space has been changed from products to software-product over a year ago.
The correct primary tag is software-product>sap-s-4hana-cloud

Thanks Michael, I'll update it.

Closing as it was updated.


unable to acquire connection from connector: error: [13] an unknown TLS error, state: 4, context: _open(neo4j-drivers/seabolt/src/seabolt/src/bolt/communication.c:74): unable to establish connection

hi:
driver, err = neo4j.NewDriver(g.url, neo4j.BasicAuth(g.user, g.pass, ""))
if err != nil {
log.Error("new graph driver fail:%v",err)
return nil
}
session, err = driver.Session(neo4j.AccessModeWrite)
if err != nil {
   	log.Error("new graph Session fail:%v",err)
    return nil
}

the two steps below  does not get any errors, I can telnet the server correctly
but when goes
_,err := g.session.Run( s,nil, neo4j.WithTxTimeout(5*time.Second) );
got error like this :
unable to acquire connection from connector: error: [13] an unknown TLS error, state: 4, context: _open(neo4j-drivers/seabolt/src/seabolt/src/bolt/communication.c:74): unable to establish connection
use the lastest version of seabolt
https://github.com/neo4j-drivers/seabolt/blob/1c0e8c26d84fa5c830c0be10b33206ff5ea43baa/src/seabolt/src/bolt/communication.c#L73
Please give some idea to debug this error, I do not get any way to investigate it,thanks
@ali-ince  I use the py2neo on the same machine and it does work

Hi,
Could you please enable debug level logging and provide the logs? It's probably something related with TLS.
Thanks.

@ali-ince  log from server:
2019-04-28 09:46:52.794+0000 WARN  badMessage: 400 Illegal character 0x16 for HttpChannelOverHttp@77eda9fd{r=0,c=false,a=IDLE,uri=}
2019-04-28 09:46:52.797+0000 WARN  Illegal character 0x16 in state=START for buffer HeapByteBuffer@9ce7732[p=1,l=326,c=8192,r=325]={\x16<<<\x03\x01\x01A\x01\x00\x01=\x03\x03\xC6B-N\xFd\xBf\x0b...\x03\x02\x03\x03\x02\x01\x02\x02\x02\x03\x00\x0f\x00\x01\x01>>>wser/\r\nAccept-Enc...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00}
2019-04-28 09:46:52.797+0000 WARN  badMessage: 400 Illegal character 0x16 for HttpChannelOverHttp@68f411b2{r=0,c=false,a=IDLE,uri=}
2019-04-28 09:46:52.800+0000 WARN  Illegal character 0x16 in state=START for buffer HeapByteBuffer@1b887feb[p=1,l=326,c=8192,r=325]={\x16<<<\x03\x01\x01A\x01\x00\x01=\x03\x03v\x9f\x0ec\xE0B1...\x03\x02\x03\x03\x02\x01\x02\x02\x02\x03\x00\x0f\x00\x01\x01>>>wser/\r\nAccept-Enc...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00}

Hi @dw130,
We need the debug level logs for the driver itself, and you can have a look at https://github.com/neo4j/neo4j-go-driver#logging for how to configure driver logging.
Thanks.

I am facing the same issue after following the configuration snippet,
My error is
"unable to acquire connection from connector: error: [1] an unknown error occurred, state: 4, context: plain_socket_open(/seabolt/src/seabolt/src/bolt/communication-plain.c:131), connect error code: 99"

Would you please provide more details on your environment, like your operating system and it's version, what version of neo4j server, etc?
And also it would be very useful if you could provide debug level logs, as described in https://github.com/neo4j/neo4j-go-driver#logging.

I am running my application and neo4j using docker compose
My docker compose looks like this
`version: '3.3'
services:
neo4j:
image: neo4j:3.5.4
ports:
- "7474:7474"
- "7687:7687"
environment:
NEO4J_AUTH: "none"
volumes:
- ./neo4j/data:/data
networks:
- neo4j_go_net
api:
image: golang:1.12-alpine
build : .
volumes :
- ".:/go/src/app"
ports:
- "8080:8080"
env_file: .env
networks:
- neo4j_go_net
links:
- neo4j
- memcached
deploy:
restart_policy:
condition: on-failure
delay: 5s
max_attempts: 3
depends_on:
- neo4j
- memcached
networks:
neo4j_go_net:
driver: bridge
volumes:
dgraph:`
In my main.go, here is the command I am running in order to connect,
driver, err = neo4j.NewDriver(neo4jURL, neo4j.NoAuth(), useConsoleLogger(neo4j.ERROR)) 	if err != nil { 		log.Fatal("Error creating neo4j driver") 	} 	defer driver.Close()
I have been trying to get some logs but all I have is about the server, nothing about the driver

Also having this issue, also running in alpine docker

Strangely enough, this seemed to be a manifestation of an incorrect username/password. It is working for me now

Got the same issue when running below:
	_, err := s.Run("MERGE (s:Page {url: $url, depth: $depth, status: $status}) return s", map[string]interface{}{
		"url":    n.Url,
		"depth":  n.Depth,
		"status": n.Status,
	})
	if err != nil {
		log.Fatalf("Unable to create link data: %v", err)
	}

My error:
Unable to create link data: unable to acquire connection from connector: error: [11] connection refused, state: 4, context: plain_socket_open(/seabolt/src/seabolt/src/bolt/communication-plain.c:151), select error code: 111

We are getting the same now running integration tests against neo4j-enterprise inside docker-compose
Our docker-compose file looks like:
version: "3.4"
services:
  neo4j:
    image: neo4j:3.5.9-enterprise
    environment:
      NEO4J_AUTH: "none"
      NEO4J_ACCEPT_LICENSE_AGREEMENT: "yes"
    volumes:
      - db-data:/data
    ports:
      - "7474:7474"
      - "7687:7687"
  neo4j-client:
    build: .
    image: neo4j-client:latest
    depends_on:
      - neo4j
    command:
      [
        "/wait-for.sh",
        "neo4j:7687",
        "--",
        "neo4j-client",
        "--insecure",
        "--verbose",
        "--non-interactive",
        "--no-known-hosts",
        "-i",
        "/migrations/create-indexes.cyp",
        "neo4j",
        "7687",
      ]
  authztest:
    build:
      context: ../
      target: test
    container_name: $CONTAINER_NAME
    image: authz:test
    volumes:
      - $BUILD_DIR:/tests
    environment:
      DB_CONTAINER_NAME: ${CONTAINER_NAME}
    depends_on:
      - neo4j
    command:
      ["./db/src/wait-for.sh", "neo4j:7687", "--", "./db/jenkins-run-tests.sh"]
volumes:
  db-data:

FWIW -- our Jenkins CI server had the Docker settings limited to 2GB of RAM, and that appears to have been the death knell.  Up the RAM, and our tests started passing.  There are other caveats -- like you need to pass in a dynamic container name, and also periodically run a jenkins job that does docker prune system.

same issue ;(

Was also getting this issue when running Neo4j in Docker.  Example 11.2 gives a snippet to get bolt working over TLS. We then need to mount the generated certs and the directory structure for Docker to see (-v option), tell Neo4j that tls is required (you can use OPTIONAL too) and enable the ssl policy. These are set using config overrides from the official image (https://neo4j.com/docs/operations-manual/current/docker/configuration/). Finally the permissions need to be correct so run Neo4j as the current user to save having to faff with UIDs matching.

I don't know if this helps any of you, since you're using timeouts that I am not, but I was receiving this error and solved it by disabling tls in the call to NewDriver like so:
var err error
	var driver neo4j.Driver
	if driver, err = neo4j.NewDriver("bolt://graph:7687", neo4j.BasicAuth("neo4j", "neo4j", ""), func(c *neo4j.Config) {
		c.Encrypted = false
	}); err != nil {
		fmt.Println("Error while establishing graph connection")
	}

“c.Encrypted = false“ is very important, it solves the problem, thanks!

  // Neo4JConfig{
  //   username: "neo4j",
  //   password: "password",
  //   connstring: "neo4j://localhost:7687",
  // },

	driver, err2 := neo4j.NewDriver(
		neo4jConfig.connstring,
		neo4j.BasicAuth(neo4jConfig.username, neo4jConfig.password, ""),
		func(c *neo4j.Config){ 👈
			c.Encrypted = false
		},
	)
	checkForErrors(err2, "Cannot connect to NEO4J")
	defer driver.Close()
	session, err := driver.NewSession(neo4j.SessionConfig{})
	checkForErrors(err, "Unable to create a new session")
	_, err5 := session.Run(
		`
		 CREATE (p:Person {id: $id, name: $name}) RETURN p.id, p.name;
		 MATCH  (p:Person {id: $id, name: $name}) DELETE p;
		`,
		map[string]interface{}{
			"id": 1,
			"name": "John Doe",
		},
	)
	checkForErrors(err5, "Unable to run a query")
	log.Println("Successfully connected with Neo4j 🎉")


[Cookbook] English / doc / code corrections

One commit per "category"
@WebMamba I don't get the Stimulus button example... how would it work ?

@WebMamba I don't get the Stimulus button example... how would it work

Sorry, I don't get what you mean. Do you think the example is not relevant?

@WebMamba I don't get the Stimulus button example... how would it work

Sorry, I don't get what you mean. Do you think the example is not relevant?

No sorry, i have (as too often) miss-expressed myself :) To be working, it would need some more code.. i know the goal is to be synthetic and didactic, but i feel it a bit missleading. We speak about state transition when clicked, but we don't show the code to do this.
What do you recon here ? (and i'll follow your vision ;)) :

simplified code to give an idea of the component behaviour (but is not copy-pastable as it)
exact code (that can be a bit too much to illustrate the article)

I think adding a state is not much if you thing that it could be relevant. So lets add this state

Let's merge as it is if you're okay, and we'll see the example if someone ask questions :))


pkg/trace/agent: introduce Process benchmarking.

This change improves the Process benchmark by:

Introducing a sync.WaitGroup used only in tests to help wait
for each goroutine to finish.
Uses the same input for each iteration in the benchmark to ensure
accuracy.

The added sync.WaitGroup is a bit nasty and could potentially be removed
after it serves its purpose of improving the performance of the Process
function.
I am open to alternative suggestions. I ran some short tests and it seems that
removing 2 of the 3 goroutines already provides a 13% speed improvement.
The 13% is calculated based on the speed of the benchmark which includes
the copying of the trace that is used as input, so it's possibly more than that.

Yep, totally agree with you.
Tbh, I think we're both uncomfortable with having code that should only be
used for testing in the live path of production code.  But I don't know of
a better way off hand, I'll have to think about it this afternoon.
On Tue, Feb 5, 2019, 09:21 Gabriel Aszalos<EMAIL_ADDRESS>wrote:

@gbbr commented on this pull request.
In pkg/trace/agent/service.go
https://github.com/DataDog/datadog-agent/pull/2993#discussion_r253882100
:

@@ -119,11 +119,11 @@ const appType = "app_type"

// TraceServiceExtractor extracts service metadata from top-level spans
type TraceServiceExtractor struct {

outServices chan<- pb.ServicesMetadata

outServices chan pb.ServicesMetadata

It's definitely not nice to change this type. But I assumed it's a
worthwhile compromise given that it allows us to properly benchmark the
Process function in order to improve the performance and clean up the
code. I think the end result is definitely worth it. Eventually we should
add the type back here.
—
You are receiving this because your review was requested.
Reply to this email directly, view it on GitHub
https://github.com/DataDog/datadog-agent/pull/2993#discussion_r253882100,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ADboGzgLH8NoezmE7ExwoJIoyxNwVjwwks5vKZNogaJpZM4ajNqU
.

It will be removed in the immediate next PR which will remove the goroutines, along with the wait groups. The next PR will have benchmarks showing how removing all the goroutines is actually faster.

I'm going to close this PR and open a new one because I think there is a problem with CI caused by a rebase I made.


total disabling of logging

place i need this
i have an implementation of over 350 keyfob
so i have to do factory default every 3,5 - 4 months .. because of fulling memory ( 2 times until now )

Good point. Will add that

@nardev Is this part of the logfile maintenance that I just noticed? While I haven't had to do a factory reset, I have had to power-cycle it because the interface hangs while retrieving logs.


fix(api): little improvements

:tada: This PR is included in version 1.10.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Correction for raw affiliation OpenAQ, Washington, D.C., USA

Correction needed for raw affiliation OpenAQ, Washington, D.C., USA
raw_affiliation_name: OpenAQ, Washington, D.C., USA
new_rors:
previous_rors: 04kb0nk47
works_examples: W3087582936
contact: d8e3ceed542ec280d7c3fc5e8b902b6b:c13edde29bc217 @ air.org

This issue was accepted and ingested by the OpenAlex team on 2024-10-10. The new affiliations should be visible within the next 7 days.


Explain flow of keys, where everything is and how it operates.

Hello, can someone explain somewhere how messages are signed and transferred between client, server, other clients and a report server. I would really appreciate if details would be out on curseforge page too.
Mainly I don't understand how chat signatures work. Does client generate private key for each session and uses it to sign all messages or will it send message to auth/session server for signing? Also what is being delivered to server that is handling reports?

Done! You can watch it here: https://www.youtube.com/watch?v=hYAUEMlugyw
Now it is also referenced in description both CurseForge and Modrinth.


Installation via chocolatey fails saying that Microsoft.VCLibs.140.00.UWPDesktop is missing

Environment
Windows build number: 10.0.18362.476
Windows Terminal version (if applicable): Trying latest, can't install

Any other software?

Corporate laptop, Store disabled via corporate GPO, Sophos installed

# Steps to reproduce

1. Ran "choco install microsoft-windows-terminal" as admin
2. Got error saying Microsoft.VCLibs.140.00 was missing
3. Installed it via https://download.microsoft.com/download/B/E/1/BE1F235A-836D-42AC-9BC1-8F04C9DA7E9D/vc_uwpdesktop.140.exe
4. Got same error
5. Tried --force --force-dependecies
6. Same error

# Expected behavior

Expected terminal to install, and potentially resolve dependencies

# Actual behavior

Thanks for the report! I'm pretty sure this issue is already being tracked over in /dup #3097, so I'll redirect discussion to that thread.


Licence

What do we wish this work to be licensed under?
Bear in mind: not licensing this work is equivalent to make it (legally) impossible for people to use it without our permission.

I've consulted with Debby, and she (and I think all of us) are happy with MIT


Windows and GTK4?

I'm currently trying to build the first todo example from the gtk4-rs book and it looks like the project requires this library as dependency during build. It fails because it tries to build gtk4-wayland and sometimes gtk4-x11. Is this intended behavior?
Also you can comment out this library as dependency and the todo_1 starts to work, but other todo listings are failing with the following error:
(todo_2.exe:4552): GLib-GIO-ERROR **: 22:08:29.193: Settings schema 'org.gtk_rs.Todo2' is not installed

OS: Windows 11
Pre-requirements: prepared build environment as described in section "Build GTK 4 with gvsbuild and MSVC (recommended)" on this page.
Steps to reproduce:
git clone https://github.com/gtk-rs/gtk4-rs
cd ./gtk4-rs/book/listings
cargo run --bin todo_1

The example in the book is targetting linux, ashpd is a linux only library. If you are using windows, you should just remove the parts that uses ashpd and replace them with something else.
Feel free to report an issue against gtk4-rs to make the book conditionally use that on linux only.


alertHistoryIndex and findingIndexPattern in data sources

Signed-off-by: Petar Dzepina<EMAIL_ADDRESS>Description
Added alertHistoryIndex and findingIndexPattern to DataSources
Issues Resolved
[List any issues this PR will resolve]
Check List

[ ] New functionality includes testing.

[ ] All tests pass

[ ] New functionality has been documented.

[ ] New functionality has javadoc added

[ ] Commits are signed per the DCO using --signoff

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

plz address CI failure

plz raise PR to main branch. we will backport to 2.x

https://github.com/opensearch-project/common-utils/pull/290
covered this changes


Enhancement for the selection (filter match mode "contains" or "exact)

Hi again !
I think I found a bug in the selection. let's tell that I have 2 similar data in a column :

test1
test0-test1

and I've a dropdown list from what I select the data i want to filter.
If I filter my dropdown list to shows items having in this column the data "test1", it shows also items having in this column the data "test0-test1", probably because it contains also "test1". But the contrary is not true if select "test0-test1" in the list, it's ok and select the good items.
So I think it's a bug.
I've a working example to show you if it's not clear

is there a filter_match_mode option for multi select ?

@sakethsaxena - yes, if it does not work for you open a new issue with jsffiddle/etc test case

Hey,
I'm not sure if this is something pertinent enough to create a new issue and I haven't really worked with jsfiddle before so i'll take sometime to come up with it but i've gone through the yadcf documentation and it doesn't say that it is supported for filter_type: "multi_select",

filter_match_mode
Required:           false
Type:               String
Default value:      contains
Possible values:    contains / exact / startsWith / regex
Description:        Allows to control the matching mode of the filter (supported in select / auto_complete / text filters)

I'm using yadcf with server side and giving a list of values to the filter.
The initialisation of the filter I'm trying to work with is like this :
{ column_number : 4,  filter_type: "multi_select", select_type:"select2",  sort_as:"none", filter_match_mode:"exact" },
and the kind of behaviour i'm looking for can be found here : https://select2.github.io/examples.html#matcher

@sakethsaxena , you have mixed lots of unrelated stuff, please post a question on stackoverflow (tag with yadcf) and I will try to help you there, github is used for bug reports / new features request only


No ER721_TO_ETH or ERC1155_TO_ETH route

I'm trying to understand why the BasicOrderRouteType enum doesn't have the routes: ER721_TO_ETH or ERC1155_TO_ETH.
All other possible routes appear to be in the struct, but not these, which I would expect to see. I'm sure this is intentional, and that I'm missing something fundamental.
Can someone explain why they're not present?
enum BasicOrderRouteType {
    // 0: provide Ether (or other native token) to receive offered ERC721 item.
    ETH_TO_ERC721,

    // 1: provide Ether (or other native token) to receive offered ERC1155 item.
    ETH_TO_ERC1155,

    // 2: provide ERC20 item to receive offered ERC721 item.
    ERC20_TO_ERC721,

    // 3: provide ERC20 item to receive offered ERC1155 item.
    ERC20_TO_ERC1155,

    // 4: provide ERC721 item to receive offered ERC20 item.
    ERC721_TO_ERC20,

    // 5: provide ERC1155 item to receive offered ERC20 item.
    ERC1155_TO_ERC20
}

That was the answer I was looking for, thank you.


IIS selecting the wrong certificate after renewals..?

Big LEWS fan here, except for this one issue which is eating away at my sanity:
We run an IIS8 server on 2012, with 1,000+ sites and bindings. LEWS works wonderfully for creating the certificate - here's the command we use:
letsencrypt.exe --notaskscheduler --verbose --plugin iissite --validation iis --siteid "%id%"
Everything behaves nicely (especially in the most recent release) however for months we have had IIS site bindings (all bindings for the site) randomly end up attached to the wrong certificate - a certificate from an entirely different site. This breaks the site and we have to re-run LEWS to fix it.
A clue as to how this is happening is that the binding usually ends up attached to a site with a similar name in IIS - usually you could truncate the broken site's name and end up with the other's. It's not clear whether this happens after renewals, or randomly - it's very hard to deliberately trigger.
A timeline of events for the two sites might look like:
Monday:

Both sites have their own SSL certs set up through LEWS and working well

IIS Site 1:

ID: 576
Name: Business Widgets

IIS Site 2:

ID: 1267
Name: Business Widgets Ecommerce

Tuesday:
IIS Site 1:

SSL Cert: It's own
Status: Fine

IIS Site 2:

SSL Cert: Business Widgets Ecommerce
Status: Broken

I am not sure whether this problem is on LEWS's end or IIS's. Prior to LEWS we managed our SSL through Cloudinary so the server has never been configured with another provider (which would rule out LEWS as the source).
Thanks and keep up the great work :)

I've read similar reports many times over, though it never seems to be consistently reproducible for anyone. Also see #94 which I designated as the issue to collect these stories.
You should be able to see in the Event Viewer whether a renewal happened between the working state and the broken state. Could provide some interesting clues perhaps.
My theory is that the Microsoft.Web.Administration assembly which is used to manage IIS is simply a bit buggy. For v1.9.8 I'm bumping the system requirements up to .NET 4.6 so that we can upgrade from version 7.0 to version 11.0. I hope that's going to improve reliability.

Nope, nothing in Event Viewer about the broken sites at all :(

Just managed to recreate this! Updated site #1, and site #2 (with a similar IIS name but different bindings entirely) was also updated. Then I updated site #2, and site #1 was updated. And then I updated #1, and this time #2 was missed. Very odd.
The error occurs at the section where LEWS logs "Updating existing https binding". Site #2 is not mentioned in the console output prior to that. It seems like the code in AddOrUpdateBindings() is incorrectly determining that site #2 shares the same bindings as #1, but they do not.
At the "Updating existing" point, it includes the bindings from the other site. Bizarrely it doesn't seem to do this in test mode.
I've dug around in your code and I can't find anything in AddOrUpdateBindings() which would make site #2 show as an alternative for site #1.
I will try compiling LEWS after stripping out the AddOrUpdateBindings() code and see if that fixes my problem.

Okay, I think I've cracked this. It comes down to FriendlyNameFilter in services\CertificateService.cs line 298. This is used to find the most recently issued certificate for a site (so it can find other sites with the same cert).
But if the most recent logged request doesn't have a thumbprint logged (or if it can't find any history items) it instead uses GetCertificateByFriendlyName, searching against the 'Host' attribute of the target.
That 'Host' attribute, though, is actually just the NAME of the site in IIS, eg 'Blue Widgets Website' - check out IISSite.cs line 93.
The fact that it's the name of the site means that when the FriendlyNameFilter kicks in, and does this:
return (x.Issuer.Contains("LE Intermediate") || x.Issuer.Contains("Let's Encrypt")) && x.FriendlyName.ToLower().StartsWith(friendlyName.ToLower());
It's using StartsWith() as the comparison for the FriendlyName (in the existing cert) to friendlyName (from the site you're actually renewing), which is pretty lax and matches when the site's name in IIS starts with the same bunch of characters as another (which happens often enough if you're hosting hundreds of similarly named sites).
I'm guessing this is because the FriendlyName in the certificate ends with the date, which changes, so you want to exclude that from the comparison by only checking the start.
I propose that rather than doing this, you compare against the 'Subject' attribute of the certificate, which will be something like 'CN: domainname.com' and doesn't change between renewals. Although this may well have its own flaws.
A client-side solution to the problem of certificates being replaced, which I will implement in the interim, is to ensure that no site in IIS has a name which starts with another site's name. This means the 'StartsWith' comparison will fail between the two non-matching sites. So no site called 'Widgets Co' if I also have a 'Widgets Co Ecommerce'. This will be a pretty straightforward fix, anyway.
I hope that makes sense and proves useful! This bug had been causing some serious woe lately. I'm very happy to have finally figured it out :)

Incredible work

Thanks for this insight!
Unfortunately I don't think the proposed solution is bullet proof either. The subject name can actually change between renewals (due to the refresh feature), and there can be multiple certificates with the same subject name (but different SAN's).
I could add some kind of separator character between the fixed part of the friendly name and the date, or some kind of unique id to the renewal and which could be tagged as an extension to the certificate, but all of those require at least one renewal to happen before they become effective. By that time, the thumbprint should also be available from the history, and I think that is still the most solid way of identifying the previous certificate.
I'm going to change the code to simply not delete anything unless the thumbprint can be found.

This change was released into v<IP_ADDRESS>, thanks for thinking along!


Added unit tests

Added some basic table tests for some of the handlers and other packages.  Needs more coverage.

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@2bde121). Click here to learn what that means.
The diff coverage is 57.14%.

@@            Coverage Diff            @@
##             master      #14   +/-   ##
=========================================
  Coverage          ?   70.83%
=========================================
  Files             ?        3
  Lines             ?       48
  Branches          ?        0
=========================================
  Hits              ?       34
  Misses            ?       10
  Partials          ?        4

Impacted Files
Coverage Δ

rest/routes.go
100% <100%> (ø)

log/logger.go
100% <100%> (ø)

rest/handlers.go
63.15% <45.45%> (ø)

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 2bde121...776d032. Read the comment docs.


Handle CREFs in Quick Info tooltips

This is what I see today in Code ... "see" XML for type references:

This is what I see in VS for the same thing:

Here's what I'd like:
Step 1 - Remove the XML experience - show me the type name (fully qualified is fine).
Step 2 - build a colorized experience like VS.
Step 3 - Profit.
I also note that the argument description is missing. That would be good to have, too, but is a different issue.

For Roslyn LSP and O#, the CREF type name is now displayed as text.


Define lifecycle of support

I'm not going to define a solid, hard and fast lifecycle.  I'll support current versions and, at least for now, the legacy v5 compatible branch, but legacy is going to be moved to a separate repo and support handled there.
If a support lifecycle starts to make sense, then I'll define one, but at this point, I think that's unnecessary for such a small project (and I don't want to commit to making regular updates as I don't know what direction this is ultimately going to be going in, or what will make sense later to do)


Independent diffs, local state per file, refactorings

To #407
Sorry for huge PR. The issue was not superficial at all. Had to refactor much internals. Here is come comment for history and as a help for review.

changelog.txt added
INCLUDE zabapgit_migrations added - called from run form, contains migration methods and call, probably a good place for future migrations
Definitions: ty_file_signature added as a shorter vehicle for hash data, gc_state - list of file states
zabapgit_file_status - completely rewritten to support individual state calculation and performance. Hopefully has better structure now. All files in the result has now remote and local states, path and filename (needed for whole diff in particular).
zabapgit_git.prog - push returns the list of actually pushed files
zabapgit_objects.prog - lcl_objects_files collects accessed files which after is used to update only those checksums which were actually pulled
page_main and other UI classes - styles and code for independent diff display
zabapgit_repo.prog - build_local_checksums removed, instead rebuild_local_checksums for complete guess-rebuild, and update_local_checksums to update specific filelist (actually pulled/pushed). Update does not recalc sha1 - it relyes on proper param input.
service_repo - can refresh_local_checksums
zabapgit_tadir.prog - got helper method to find object package (without all tadir struc)
unit test for file_state

cool, will take a look tomorrow or on monday :smile:

added global View diff to the main page, change Pull/Stage showing logic. I think all this dtuff above does indirectly close #391 by the way
Diff page: style tweaks, paddings, display change-side marker, invert green/red logic for files changed remotely (still to be improved, but later)

P.S. Ufff, tired from abap for some time :) Next will probably have a look at repo favourites thing after a while.

Hi,
I get the warning each time I start abapGit, and I click OK each time,

looks like all files are skipped in rebuild_local_checksums, because the path does not match
      READ TABLE lt_remote ASSIGNING <ls_remote>
        WITH KEY path = <ls_local>-file-path filename = <ls_local>-file-filename
        BINARY SEARCH.
      CHECK sy-subrc = 0.  " Ignore new ones

Also I get the following errors:

Hmmm, very strange. I cannot repeat both of errors ...
Also the "Files for object" error is from the part of the code I didn't touch
Could you send me a screen of it_results at beginning of lcl_sap_package=>check ?

Suggest taking the SHA1 from lt_local in REBUILD_LOCAL_CHECKSUMS and store it as the checksum? Guess also the correct path is required for it to work later?

Checksums: not really. It would build checksums based on actual curent state of local files whereas they might be changed from last-sync-state. The whole idea of this code is to have 3 states: actual local, actual remote, and last-sync to compare them versus.
path: that's a confusing part - both local and remote paths should be correct by the call of status ... but I cannot recreate your issue. Probably also it_local and it_remote screens from lcl_file_status->calculate_status could be helpful
P.S. might be that lcl_sap_package=>check should be also adjusted to the new status output. I'll have a look, but "Files for object" error logic looks OK now and should work without change so the issue is somewhere else.

code in method rebuild_local_checksums, must be changed from
    lt_local        = get_files_local( ).
    lt_remote       = get_files_remote( ).

to
    lt_remote       = get_files_remote( ).
    lt_local        = get_files_local( ).

to make sure it can find the .abapgit.xml from remote in get_local_files

on another note, we have diff in

the file/object list

the staging page

and now in the main menu

it seems that there are too many places the diff page can be called from?

local/remote -> done. Yeap, I had this issue also in status. Probably can be refactored a bit ...
diff link: well, yes. Why not? seems to be convenient. Personally I missed the whole diff overview from main. Maybe it can show up a bit less ... I'll think about design a bit more ... but in general I think it look ok.

Has something changed in the diff page? The counter shows 2 added(green) lines, but the diff shows 2 red lines. Perhaps it also worked like this earlier?

highlighting: yes, it was changed in https://github.com/larshp/abapGit/pull/419/commits/430b6e1f9bba50974a0ec0b89d1cd1a119454a9d
The idea of change: now we track not only the fact that files differ but where the difference come from (local or remote). Consequently if it comes from remote - the highlighting logic is reversed.
It probably need some tweaks. My guess is that side of string should be also changed to reflect it correctly. But I would not do it in this PR, it may take some time. So ... how you prefer ... I can either comment new logic for now or just fix it some later separately.
P.S. those errors in your first response - did they go away ?

okay, we'll fix the coloring of the diff in next PR, I'll open a separate issue for it
squashing and merging
thanks :smile:

Seems like there are some issues ... :(
I'll have a look at the evening

I've fixed the .abapgit.xml issue, I dont think the other ones are part of the normal flow, they are power user features, which are nice to have. :smile:


[RFE] Reconsider default hydrogen_mass setting

Originally we used to run a hydrogen mass of 3 amu with a 4 fs timestep. Since we've switched to using the gufe settings, this has changed to 4 amu. Coincidentally I'm also seeing an increase in sporadic early simulation crashes.
It's possible that the two aren't related (could also be because we halved the number of minimization steps by default), but it's something worth keeping an eye out for. Hopefully post-workshop we can use something like alchemiscale to get to the bottom of this.

Transferring to gufe, having briefly discussed with @mikemhenry - it looks reasonably clear that the Perses team found very similar outcomes. See https://github.com/choderalab/perses/pull/924 amongst others.
I would suggest we change gufe settings to have a default hydrogen_mass of 3.0.

Extra info - the choice of mass does influence absolute values in some specific systems: https://github.com/OpenFreeEnergy/openfe/pull/332#issue-1661426676


oracledb_alert metric are not working

Hello, out of box oracledb_alert alert metrics are not working.

Alert.log shows ORA- error
ORA-07445: SIMULATED ERROR, JUST FOR TESTING, IGNORE!!!
2020-07-24T21:53:46.638049+00:00
ORA-07445: SIMULATED ERROR, JUST FOR TESTING, IGNORE!!!

cat oracle.conf has correct alert.log path
connections:

connection: user/password@tnaname
database: xxxx
instance: xxxx
alertlog:

file: /axxx/trace/alert_dbname.log

The process is up and running as ==>
prometheus_oracle_exporter -configfile=/tmp/oracle.conf -web.listen-address <IP_ADDRESS>:9500 -defaultmetrics -recovery

curl -s http://x.x.x.x:9500/metrics | grep oracledb_error
show no data

Found the root cause. The timestamp format was changed on 12.2 and onward
Revert the Oracle's timestamp to the original.
alter system set UNIFORM_LOG_TIMESTAMP_FORMAT=FALSE scope=both;
or
fix the layout on this code.
var (
Errors    []oraerr
oralayout = "Mon Jan 02 15:04:05 2006"

Hello! Are you tested after your change in alertlog.go? because i have a same problem and it not work after compilation of exporter?

Yea, change the Oracle timestamp to "alter system set UNIFORM_LOG_TIMESTAMP_FORMAT=FALSE scope=both;"
Then should work.

oracledb_exporter_last_scrape_error{instance="lab", job="oracle-short"} value 0. But i have some errors in alert_SID.log file. I have compiled exporter to 19.3 oracle version

check curl -s http://your IP:port/metrics | grep oracledb_error to see if the client has error.
The output should be something like this ==> oracledb_error{code="ORA-0600",database="orcl",dbinstance="orcl1",description="SIMULATED ERROR, ORCL1, IGNORE!!!",ignore="0"}
I validated it with 19.3 Oracle version, It works for RAC and single node.

Ok! May be I have not compiled all files of the exporter correctly... Did you have any mail or discord channel for exchange? I have developed news functions in this exporter and we can discuss on it if you want. Thanks

I am not an owner of this repo. So you should contact with the repo owner for any contributions.
To build it, you might need to run something like this.
export GOPATH=/home/oracle/go
go get -u github.com/freenetdigital/prometheus_oracle_exporter
cd /home/oracle/go/src/github.com/freenetdigital/prometheus_oracle_exporter/
go install
go build


bundle-install-error

just a heads up, with solution:
http://stackoverflow.com/questions/3951869/bundle-install-error
cheers

Looks like this is sorted. Let me know if you have a problem.


Undefined environment variable GITHUB_WORKSPACE

I am wondering where the GITHUB_WORKSPACE env variable is set?
See: https://github.com/pion/.goassets/blob/master/ci/.github/generate-authors.sh#L15

It is set by GitHub Actions
https://docs.github.com/en/actions/learn-github-actions/environment-variables

Thanks @ashellunts,
I think this breaks when the script is invoked via a local Git hook.
I will create a PR to set the workspace to the Git worktree when used outside a GitHub CI workflow.


Change u_int16_t type for uint16_t

The types u_intXX_t (underscore after the u) are not supported
by newer versions of GCC and uintXX_t should be used instead.
In the file src/svncterm_server/genfont.c there were still some
variables using the old type u_int16_t. They have been fixed.

Merged as per 8c5dcbc17ffcc71c4efd18b6e7221d726bd822be


Add method to drop index in migration

While setting it up, I ran into an issue where I had to rollback the earthdistance migrations. This PR adds a method to drop the index so rollbacks can be performed cleanly. I tried using add_index as possible alternative to executing straight SQL so that it could be captured in schema.rb, but it wouldn't let me use ll_to_earth(lat, lng) as an argument because it doesn't match any column names.
Thanks for this gem, it's been very useful.

Thanks for the PR :+1:


[Linux(Ubuntu 22.04)] SDK problems: 2. Ommiting "common_nn_models" because 'cp -r' is not specified

Hi
I bought AMB82-MINI boards, and I tried several example sketches from AMB Pro 2 SDK 4.0.2 in Arduino IDE.
All of them are working good, when I do so ON WINDOWS.
But when I do same ON LINUX(Ubuntu 22.04 64bit), I got this message on Arduino IDE(1.8.19):
... cp: -r not specified; omitting directory '.../.arduino15/packages/realtek/hardware/AmebaPro2/4.0.2/variants/common_nn_models'
Please check this out.
Thanks in advance.

Hi @S10143806H
Instead of showing the full compilation log, I present you the solution I found myself:

Open one of the C++ source code file:
~/.arduino15/packages/realtek/tools/ameba_pro2_tools/1.1.2/misc/src/postbuild_linux.cpp

Edit the line 179 as follows:
179 ...  cmdss << "cp " << common_nn_models_path << "* ./";
->
179 ... cmdss << "cp -r  " << common_nn_models_path << "/* ./";

Compile it:
g++ postbuild_linux.cpp -o postbuild_linux

Replace  ~/.arduino15/packages/realtek/tools/ameba_pro2_tools/1.1.2/postbuild_linux executable.

After that, the NN stuffs are included correctly into the result and the Face Detection & Recognition, Object Detection examples are working good.
I prefer Linux because the project build job is much faster.
So I hope this be included in the next release.
And I think that the MacOS case should be looked into as well.

Hi @S10143806H
I think it will be better for you to raise a PR. I got not enough extra time, busy for my own job.
Sorry but thank you.

Hi @Sunyoup ,
The reason for asking you to PR is simply I don't want to take credit from you. Since this is an open-source repository, with your PR, you can become a contributor to this repository.
Anyway, before making the PR, I would like to confirm with you how to reproduce this issue?
When I tried to compile any of the NN examples on Ubuntu 22.02.4 with Arduino IDE 2.0 and running AmebaPro2 4.0.2 SDK. It seems like this compilation finished without showing your error/warning message. Please take a look at the screenshot below for more details:

Thank you.

Hi @S10143806H

I'm using Ubuntu 22.04 & Arduino IDE 1.8.19. Not 2.x.
But I don't think it is the key issue.

Looking into your compilation log, I think that it is also a FAILURE case.
It is saying that the sketch compile result is 8,658,944 bytes in size.
The successful result should be greater than 14M bytes if the common_nn_* files are included correctly.
My failure case was same at first, with making some sketch binary, flashing it, showing scenes via RTSP,
but with NO FACE OR OBJECT DETECTION RECTANGLES.
I don't know why your log does not show the "cp: -r not specified, omitting common_nn_ ..."
(Maybe the command execution outputs are redirected >& /dev/null or something like that way.)

Actually I wanted & tried to raise a PR. But I failed.
After a long work at my job place till late, I was very tired and
before making a PR, cloning the repository onto my desktop failed due to the BIG size and
temporary network problem. I will try it later again but you don't have to wait for it.
(You told me that the development branch workers are already aware of it.)

Please don't forget the "/dev/null.d" problem as well.

The MacOS case can have same problems I think.

Anyway I think this AMB82-MINI board is AWESOME. I have tried esp32-cam, Freenove esp32s3-cam.
But this is better than them I think. Thanks for developing & creating this masterpiece of product.

Hi @Sunyoup ,
Yes, you are correct, this issue is IDE-independent, and my compiled image on have video features but not NN, causing the total image size is smaller.
Alternatively, without modifying the tool, you can just edit lines 142 & 144 in platform.txt to avoid this issue.
https://github.com/ambiot/ambpro2_arduino/blob/06b716d1da1c02bb4521e4383f75456fe42bdeb7/Arduino_package/hardware/platform.txt#L142
from:
recipe.objcopy.hex.pattern.linux="{ameba.tools_path}/{recipe.objcopy.hex.cmd}" "{ameba.tools_path}" "{recipe.objcopy.hex.imagepath_appntz}" "{compiler.path}" "{build.variant.path}/{build.sym_bklist}" "{recipe.objcopy.hex.imagepath_appntzmap}" "{build.upload_mode}" "{runtime.platform.path}/variants/common_nn_models" "{build.upload_mode_nn}" "{build.upload_mode_voe}"
to
recipe.objcopy.hex.pattern.linux="{ameba.tools_path}/{recipe.objcopy.hex.cmd}" "{ameba.tools_path}" "{recipe.objcopy.hex.imagepath_appntz}" "{compiler.path}" "{build.variant.path}/{build.sym_bklist}" "{recipe.objcopy.hex.imagepath_appntzmap}" "{build.upload_mode}" "{runtime.platform.path}/variants/common_nn_models/" "{build.upload_mode_nn}" "{build.upload_mode_voe}"
(Add a '/' behind file path {runtime.platform.path}/variants/common_nn_models)
We will fix this issue in our dev branch by modifying the mentioned lines.
You can also try from your side and get back to us.

Besides, the "/dev/null.d" problem have been fixed in dev branch:
https://github.com/ambiot/ambpro2_arduino/blob/8255ddc58469c85893b999d4bb68462a43527e27/Arduino_package/hardware/platform.txt#L123
Please do not worry about the PR, thank you for raising this issue and your support on AmebaPro2 :)

This is resolved by  18469a1a9217cc0ff93382f3df913befe081f970

Closing this issue. I confirmed that this is resolved in 4.0.3


sync github actions for other branches

Galactic is EoL in a month, so not adding github actions for it. Support will be dropped, starting early next year.


Ipopov/553+593

Merged in Vadim and Alex changes related to Notification Count.
Fixed tests.
Fixes minor bugs.

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.:x: IgorPopov-MS sign nowYou have signed the CLA already but the status is still pending? Let us recheck it.


feat(plugin): support fluentbit metrics input plugin (#357)

Signed-off-by: zhangpeng<EMAIL_ADDRESS>
What this PR does / why we need it:
support fluentbit metrics input plugin

Which issue(s) this PR fixes:

Fixes #357
Does this PR introduced a user-facing change?

Additional documentation, usage docs, etc.:

@Gentleelephant New PR merged after you creating this PR, would you help to resolve the conflicts?


pachube upload failure

Got my pachube connection set up yesterday, but smartermeter crapped out on it's upload attempt as follows:
(erb):1:in `block in request_body': undefined method `kwh' for #<Array:0x000000019a19f0> (NoMethodError)
        from (erb):1:in `select'
        from (erb):1:in `request_body'
        from /usr/lib/ruby/1.9.1/erb.rb:838:in `eval'
        from /usr/lib/ruby/1.9.1/erb.rb:838:in `result'
        from /home/philiph/.gem/ruby/1.9.1/gems/smartermeter-0.4.1/lib/smartermeter/services/pachube.rb:38:in `request_body'
        from /home/philiph/.gem/ruby/1.9.1/gems/smartermeter-0.4.1/lib/smartermeter/services/pachube.rb:24:in `upload'
        from /home/philiph/.gem/ruby/1.9.1/gems/smartermeter-0.4.1/lib/smartermeter/daemon.rb:212:in `upload'
        from /home/philiph/.gem/ruby/1.9.1/gems/smartermeter-0.4.1/lib/smartermeter/daemon.rb:194:in `block (2 levels) in fetch_dates'
        from /home/philiph/.gem/ruby/1.9.1/gems/smartermeter-0.4.1/lib/smartermeter/daemon.rb:178:in `each'
        from /home/philiph/.gem/ruby/1.9.1/gems/smartermeter-0.4.1/lib/smartermeter/daemon.rb:178:in `block in fetch_dates'
        from /home/philiph/.gem/ruby/1.9.1/gems/smartermeter-0.4.1/lib/smartermeter/daemon.rb:166:in `connect'
        from /home/philiph/.gem/ruby/1.9.1/gems/smartermeter-0.4.1/lib/smartermeter/daemon.rb:177:in `fetch_dates'
        from /home/philiph/.gem/ruby/1.9.1/gems/smartermeter-0.4.1/lib/smartermeter/daemon.rb:125:in `run'
        from /home/philiph/.gem/ruby/1.9.1/gems/smartermeter-0.4.1/lib/smartermeter/daemon.rb:20:in `start'
        from /home/philiph/.gem/ruby/1.9.1/gems/smartermeter-0.4.1/bin/smartermeter:11:in `<top (required)>'
        from /usr/bin/smartermeter:19:in `load'
        from /usr/bin/smartermeter:19:in `<main>'

can you tell me how to trigger this for debugging?  I don't want to have to wait 24 hours to see if pachube upload will work or not.  Thanks!

So if you remove the latest .csv from your data directory (which is configured in ~/.smartermeter) then it should attempt to upload to pachube again.
As for the error I'm looking into it now.

If you upgrade to smartermeter v0.4.2 (already on rubygems) it should fix your issue.


Despite the setup being complete, I cannot access the Paladin Cloud

❔ Question
Despite the setup being complete, I cannot access the Paladin Cloud
🔦 Context
I am exploring Paladin Cloud.
I followed the installation instructions provided in the following documentation -
https://github.com/PaladinCloud/CE/wiki/Installation

After installation is complete I received the following message.

💻 Code Sample
************************************************* OUTPUT ************************************************

          MySQL Host: paladincloud-data.************.us-east-1.rds.amazonaws.com:3306

            MySQL DB: pacmandata

         DB Username: paladin

         DB Password: ***********

             ES Host: vpc-paladincloud-data-**************************.us-east-1.es.amazonaws.com

         Kibana Host: vpc-paladincloud-data-**************************.us-east-1.es.amazonaws.com/_plugin/kibana/

   Paladin Cloud URL: http://internal-paladincloud-**********.us-east-1.elb.amazonaws.com

               Admin: [admin<EMAIL_ADDRESS>/ PaladinAdmin!!

                User: [user<EMAIL_ADDRESS>/ PaladinUser!!

*********************************************************************************************************

In the installation instructions, there is one Note below instruction 9.

Note: Setting up SSL before the installation will save up to thirty minutes of time. Click here for the steps to set up SSL before installation.

Hyperlink for -  Click here for the steps to set up SSL before installation is missing.

Hi @SohamLawar ,
From the installation banner, you have used an internal load balancer. Can you please let us know how you are connecting to UI? It is only accessible inside of VPC.
We are updating our docs right now, we will fix the broken links.

Hi @SohamLawar ,
From the installation banner, you have used an internal load balancer. Can you please let us know how you are connecting to UI? It is only accessible inside of VPC.
We are updating our docs right now, we will fix the broken links.

I am connecting to UI from the browser of my local system.
How to access UI inside of VPC?
2) Okay, Thanks

How to configure installation banner to use a public load balancer?

How to access UI inside of VPC?
Please setup a windows VM in that same VPC and from within a browser on that VM ,  use the Paladin URL provided at the end of the install using with the credentials provided.

How to access UI inside of VPC?
Please setup a windows VM in that same VPC and from within a browser on that VM , use the Paladin URL provided at the end of the install using with the credentials provided.

Hello @Subbu-PaladinCloud ,
Thanks for quick response.
Can you please provide a document/link that would be helpful for me to create a windows VM in that same VPC?
Is there any alternative?

We are in the process of updating our documentation to include this information. However, for now , please follow these steps.

In the VPC where you have the Paladin Installed , please launch a windows instance ( Small is fine)
Set up the RDP access using the keys
Ensure you get the password using the keys from the prev step
connect to the windows VM
open a browser ( Chrome/Edge) , and put in the URL provided at the end of the install
Use the credentials provided to login

You can also use VPN to login, if that is something you want to do.

hi @SohamLawar
https://docs.aws.amazon.com/vpn/latest/clientvpn-admin/cvpn-getting-started.html
if like to setup vpn please follow above document

Hello @Subbu-PaladinCloud ,
Thanks for the response.
The steps that you instructed for launching a windows VM worked for me.

Hi @SohamLawar You can setup VPN to that vpc .please refer below docement. https://docs.aws.amazon.com/vpn/latest/clientvpn-admin/cvpn-getting-started.html

Hello @rnithinpaladin ,
Let me check this and get back to you.
Which of the above alternative (Windows VM  vs VPC) is more cost efficient?

Hi @SohamLawar
Spinning windows vm is easy way.

Cool good to hear that you are able to access, Please let us know on how we you plan to use the product, in other words which Cloud resources are you looking to monitor, manage.. This will help us to guide better. We can get on a call to support your use case if that is required

@SohamLawar , do you have any feedback for us based on your use of the product ?

Based on the feedback earlier, this issue is resolved, please feel free to open a new issue if you have any additional problems.

@SohamLawar , do you have any feedback for us based on your use of the product ?

No, we have not used the application yet. I will definitely provide feedback once we use this application.

@Subbu-PaladinCloud ,
Okay, Thanks


Fixes #6395: Move string index appropriately with molfiles

Fixes #6395
This code gives a fix to molfile parsing, where properties lines might not be processed correctly when they use pairs of values. The old code would fail to increase the string index when certain values were provided, so the code would fail to move completely to the next pair of values.
I've adjusted the code to be similar to the Attachment Points code https://github.com/rdkit/rdkit/blob/d4547e21165cf9cdc04ea6e0bfd1f25bbf2ed14e/Code/GraphMol/FileParsers/MolFileParser.cpp#L903-L973
and the ZCH code https://github.com/rdkit/rdkit/blob/d4547e21165cf9cdc04ea6e0bfd1f25bbf2ed14e/Code/GraphMol/FileParsers/MolFileParser.cpp#L689-L738
This code adjusts the string index close to where the values are being parsed, so that there aren't issues later on with continues skipping the string index incrementing step. Additionally, the code also sets default values in the case that the substring being parsed is too short or consists only of spaces.

I'm not familiar with how rdkit runs tests. Is there a place that file parsing is already being tested, and how would I modify and run these tests?

I'm not familiar with how rdkit runs tests. Is there a place that file parsing is already being tested, and how would I modify and run these tests?

I'd suggest adding the test to the bottom of this file: https://github.com/rdkit/rdkit/blob/master/Code/GraphMol/FileParsers/file_parsers_catch.cpp
When you run make test or ctest that's one of the tests which will be run.

Just added some tests to reflect the changes I made. Let me know if I should change anything else.

Thanks for the contribution @timothyngo !


Limit test execution time

Motivation and context

This should protect us from unnoticed hangs, which happen sometimes and waste CI and developer time.
Currently, the limit is 15s per test, which should be enough in normal conditions.
How has this been tested?

Checklist

[ ] I submit my changes into the develop branch
[ ] I have added a description of my changes into CHANGELOG file
[ ] I have updated the documentation accordingly
[ ] I have added tests to cover my changes
[ ] I have linked related issues (read github docs)
[ ] I have increased versions of npm packages if it is necessary (cvat-canvas,
cvat-core, cvat-data and cvat-ui)

License

[ ] I submit my code changes under the same MIT License that covers the project.
Feel free to contact the maintainers if that's a concern.

@zhiltsov-max , before making the change, we need to understand the current statistics for our tests. What is the average and maximum time in 10 runs? How does it depend on a PC (because we don't control that)

@zhiltsov-max , the change can easily can make our tests unstable. I will prefer to run tests till the first fail. It will save time. What do you think?

the change can easily can make our tests unstable. I will prefer to run tests till the first fail. It will save time. What do you think?

I like the idea. It seems, however, that the library worked this way some time ago, but then they decided to fail a test instead.

before making the change, we need to understand the current statistics for our tests. What is the average and maximum time in 10 runs? How does it depend on a PC (because we don't control that)

I think we should choose a meaningful limit, which will deliver comfortable and adequate development experience. I think times up to 1 minute are good enough, because in general, we don't expect tests to work for a long time, and if it is expected for some tests, we can state this explicitly. The only reason for the limit to exist it to protect the developers from unexpected test hangs. Probably, we can extend the timeout up to 1 or 5 minutes, and try to fail the suite in the case of a problem.


Upstreaming lemmas for symbolic calldata reasoning

This PR adds lemmas that are useful for reasoning about symbolic calldata.

Closing due to age.


x/sys/unix: add Solaris Fcntl?

(I'm trying to follow the contributor guidelines: this is my first submission. I have 20 years of coding experience, and my own github repositories at https://github.com/bolthole )
My relevant environment:
go version go1.10.1 solaris/amd64
Background: 3rd party code I want to use, calls
unix.Syscall(unix.SYS_FCNTL, ...)
Problem is, my platform of Solaris, while being a supported platform.. does not have an implementation of Syscall(). Nor can it have one, because the OS does not have that API.
Seeing as how fcntl() is in the actual POSIX standard, seems like it would be a good idea for Go to actually have an official function call for it. Particularly since practically all the platforms suported in the "unix" collection, actually have OS suport for a native fcntl() call.
I have working code, that I'd like to submit to the repo, for Solaris.
I could potentially submit an attempt at other platforms, as well, but I do not have a testbed for them.
Proof my code works:
$ cat test.go
package main
import (
"golang.org/x/sys/unix"
"fmt"
)
func main() {
var retval int
    fmt.Println("Hi there")
    retval, _ = unix.Fcntl(1,unix.F_SETFD, unix.FD_CLOEXEC)
    fmt.Println("status of fcntl: ", retval)

}
$  go build test.go
$ truss ./test
/1:     write(1, " H i   t h e r e\n", 9)               = 9
/1:     fcntl(1, F_SETFD, 0x00000001)                   = 0
status of fcntl:  0
/1:     write(1, " s t a t u s   o f   f c".., 20)      = 20
/1:     _exit(0)

I guess I should explictly mention that my code change is extremely small; i could easly cutnpaste it here :) but for brevity at the moment, I will say that it only touches two files currently:
unix/asm_solaris_amd64.s
unix/syscall_solaris.go
I could probably trivially add in a true Fnctl() call for the other unixen platforms, by modifying just a single file,
unix/flock.go
which currently only has FcntlFlock()

If you already have the code, send the code GitHub PR or Gerrit (https://golang.org/doc/contribute.html) and @tklauser, @ianlancetaylor, and I can take a look.


How to add a uneditable field auto filled by other fields value

Hello,
As said in the subject, I got 3 fields (name, year, crop) and a field.editable(false) which I want to be auto filled with the value of the 3 other fields,
like so : entry['year'] + '-' + entry['crop'] + '-' + entry['name']
I can do half of what I need using a .transform(function) which send the full text to the web-service, but the user does not see the field filled and the result before the form is submitted.
Thanks

I finally found how to  do that by changing the template :
.template("{{ entry.values['year'] }}-{{ entry.values['crop'] }}-{{ entry.values['name'] }}")
.transform(function(value, entry) {
return entry['year'] + '-' + entry['crop'] + '-' + entry['name'];
})
And using a transform to send the data I want to the web-service


Speed up Travis build

There are a bunch of possibilities which could further speed up the builds on Travis:

[ ] only collect and report coverage on a merge to master (everything else doesn't make sense)
[ ] only collect and report coverage on one PHP version
[x] only report coverage when the build was a success
[ ] disable xdebug when it's not needed (we only need it when collecting coverage)
[x] only run php-cs-fixer on one PHP version
[ ] do not try to run php-cs-fixer on PHP7, it's not supported

:information_desk_person: Doesn't speed up builds, but provides feedback earlier if one build failed:

[ ] allow builds to finish early, see https://docs.travis-ci.com/user/customizing-the-build/#Fast-Finishing

@localheinz
I changed your list to a checklist so that we could track progress a little bit easier. Thanks for all the PRs.

Everything looks good. The only thing that may get reconsidered down the line is when coverage is generated (which is why I think computing an environment variable that captures "when we generate coverage" is useful).
I would like it if Codeclimate could report coverage +/- back on PRs to master and this is something we've talked to them about before at conferences here and there. Something similar to what coveralls will do. It's not a big priority, but more a thought. For now, I think what you've sent over the past few days helps out a lot and we can always adjust if Codeclimate supports this feature. Honestly, progress over time is already tracked well in CC, it's just the cases where contributors send uncovered code that an extra check helps with. Isn't really a big problem.
Anywho, if you come up with any other ideas on speeding things up, send them our way. Switching to the container infrastructure 5-or-so months ago helped tremendously and I'm sure these changes will shave even more time off.
Thanks again, @localheinz! :hand:

@mdwheele
We've asked Code Climate for this feature, too - would be really nice to have it!
Closing the issue as we're done here.


Vector : filtering array column with accented characters

Hello,
I'm using a Vector and I have a bug when filtering an array column containing accented string. I think it is related to the https://github.com/Abhoryo/APYDataGridBundle/commit/8ecb013f2c70b730f16a61644a2189061095d3a2 PR.
// My example data
$articlesArr[] = [
    'id'=>$article->getId(),
    'name'=>$article->__toString(),
    'categories'=>['Some catégorie with accents','Other category without accents'],
];

$source = new Vector($articlesArr);

$grid = $this->get('grid');
$grid->setSource($source);

// ...

$grid->getColumn('categories')
    ->setFilterType('select')
    ->setOperatorsVisible(false)
;

The category filter is a single select, when I choose 'Some catégorie with accents', I get no result after submit. Tracing the code, I noticed the filter value has no accent but the column value does.
https://github.com/Abhoryo/APYDataGridBundle/blob/master/Grid/Source/Source.php#L326
// At this point, $value has no accents: /s\:9\:"Some categorie with accents";/i

$fieldValue = $this->prepareStringForLikeCompare($fieldValue, $column->getType());
// $fieldValue does have accents: a:1:{s:17:"Some catégorie with accents";}

$found = preg_match($value, $fieldValue);

// Not found.

The method prepareStringForLikeCompare does not remove accents when value type is array.

Simple workaround was to implode my array, so column values are treated as string.


Fixes decoding invoices with missing fields and defines non-default currency in Bolt11 if non-default currency is used

Thank you very much!