testing on custom  data

Congrats on the impressive work!
Is it possible to test ESLAM on data obtained from a commercial RGBD camera like Intel Realsense or Kinect?
I tried using the config file for TUM RGBD, after I have prepared the rgb.txt and depth.txt files, and the corresponding depth and rgb folders, and I also changed the width and hight and the intrinsic parameters as well, but I got the following error:
Traceback (most recent call last):
File "run.py", line 65, in
main()
File "run.py", line 60, in main
eslam = ESLAM(cfg, args)
File "/home/desk/my_WorkingDirectory/Neural Implicit-Based SLAM/Depth-Based/ESLAM/src/ESLAM.py", line 105, in init
self.frame_reader = get_dataset(cfg, args, self.scale)
File "/home/desk/my_WorkingDirectory/Neural Implicit-Based SLAM/Depth-Based/ESLAM/src/utils/datasets.py", line 71, in get_dataset
return dataset_dict[cfg['dataset']](cfg, args, scale, device=device)
File "/home/desk/my_WorkingDirectory/Neural Implicit-Based SLAM/Depth-Based/ESLAM/src/utils/datasets.py", line 193, in init
self.input_folder, frame_rate=32)
File "/home/desk/my_WorkingDirectory/Neural Implicit-Based SLAM/Depth-Based/ESLAM/src/utils/datasets.py", line 233, in loadtum
pose_data = self.parse_list(pose_list, skiprows=1)
UnboundLocalError: local variable 'pose_list' referenced before assignment
It seems like I should also pass the ground-truth poses (?)
Any advice would be highly appreciated!
Thank you in advance for your time

Hello,
You can remove all parts of the source code that requires ground truth poses as they are only used for evaluation.
However, you should be careful about the initialization of the camera pose and the scene bounds defined in the config files. Note that we use the ground truth pose for the first frame and only track the camera poses for the rest of the camera poses. This means that you can define an arbitrary camera pose for the first frame, but you need to be careful to set the scene bounds based on that arbitrary camera pose such that the feature planes could cover the whole interesting regions in the scene.
I hope this helps.


Issues with filtering to avoid mistakenly logging varCreated

#7 is mostly fixed, however, a few issues remain:

If a variable is declared with the same name afterwords, the output is incorrect, for example:
System.out.println();

int System = 6;

This logs that System was declared on the top line with type UNKNOWN.

If a variable has the same name as a class variable, it is never logged.  For example, if we have the following code:
public class Test {
    private int System;

    public void Test() {
        System++;
    }
}

This won't log that System was used in method Test().

Issue #21 would fix this

Feature freeze, won't fix


Can I also get the Hessian?

I see that the function used to compute the gradient w.r.t. the problem parameters is
@inline function obj_val_grad(capsule::P1,
           cone::P2,
           x::SVector{nx,T1},
           s::SVector{nz,T7},
           z::SVector{nz,T2},
           idx_ort::SVector{n_ort,Ti},
           idx_soc1::SVector{n_soc1,Ti},
           idx_soc2::SVector{n_soc2,Ti}) where {nx,nz,n_ort,n_soc1,n_soc2,Ti,T1,T2,T7,P1 <: AbstractPrimitive, P2 <: AbstractPrimitive}

   idx_x = SVector{nx}(1:nx)
   idx_z = SVector{nz}((nx + 1):(nx + nz))
   idx_r1 = SVector{3}(1:3)
   idx_q1 = SVector{4}(4:7)
   idx_r2 = SVector{3}(8:10)
   idx_q2 = SVector{4}(11:14)

   ForwardDiff.gradient(_θ -> lag_con_part(capsule,cone,x,s,z,_θ[idx_r1],_θ[idx_q1],_θ[idx_r2],_θ[idx_q2],idx_ort,idx_soc1,idx_soc2), [capsule.r;capsule.q;cone.r;cone.q])
end

If I also want to write a function that gives me the Hessian, i.e.,
$$H = \frac{\partial^2\alpha^\star}{\partial(r, q)^2}$$
would simply replacing
ForwardDiff.gradient(_θ -> lag_con_part(capsule,cone,x,s,z,_θ[idx_r1],_θ[idx_q1],_θ[idx_r2],_θ[idx_q2],idx_ort,idx_soc1,idx_soc2), [capsule.r;capsule.q;cone.r;cone.q])

with
ForwardDiff.hessian(_θ -> lag_con_part(capsule,cone,x,s,z,_θ[idx_r1],_θ[idx_q1],_θ[idx_r2],_θ[idx_q2],idx_ort,idx_soc1,idx_soc2), [capsule.r;capsule.q;cone.r;cone.q])

work?
Thanks in advance!

I tried this and wasn't able to get it to match up with the finite difference derivatives. Part of this may be due to the challenges associated with finite differencing a second derivative, but I'm not sure.
Have you made any progress on this?

Nothing a the moment, I haven't had the capacity to spend much time on the project that uses the Hessian.


[en] Fixed issues in container reference page.

Description (required)
This PR fixes all of the changes requested in the Astro Discord Community.

Related issues & labels (optional)

Closes: Issues listed in the screenshot above.
Suggested label:  #Docs, #SmallChange, #English

By @SnowDingo, Discord: Snowdingo

Lunaria Status Overview
🌕 This pull request will trigger status changes.

Learn more
By default, every PR changing files present in the Lunaria configuration's files property will be considered and trigger status changes accordingly.
You can change this by adding one of the keywords present in the ignoreKeywords property in your Lunaria configuration file in the PR's title (ignoring all files) or by including a tracker directive in the merged commit's description.

Tracked Files

Locale
File
Note

en
reference/container-reference.mdx
Source changed, localizations will be marked as outdated.

Warnings reference

Icon
Description

🔄
The source for this localization has been updated since the creation of this pull request, make sure all changes in the source have been applied.


[Bug/Request] Proper UTF-8 in admin/settings fields

E.g. Röyksopp instead of RÃ¶yksopp, Sundfør instead of SundfÃ¸r.
Pages that names contains these characters not be deleted in admin.

@tamascz I see this is only an issue in when trying to add menu items. Will look into it and thanks for the report.

Could you add also Emoji support for menu titles?

@TechArea, emojis are already supported and can be pasted for menu titles.
😀 -> try pasting this in the menu.

Hm... doesn't work here :-/

@TechArea what browser and operating system are you using?

macOS 10.15.4 (19E287), Safari Version 13.1 (156<IP_ADDRESS>.8)

@TechArea, I'm testing on the exact same setup and it's working ok.
Can you try this emoji: 😀

it might be some are unsupported
also, are you trying this out on the official demo?

Hm... the demo seams to work. At least, it doesn't generate wild characters. But it doesn't change (maybe that's forbidden?). I've tested your pasted Emoji and it doesn't work.

@TechArea can you explain a bit more of what doesn't change?
On what type of server are you trying this out, some specs would be helpful to try and debug why this is happening on some servers.

On the demo page, the title is not applied when saving. But this is probably intended.
It's a shared hosting (LiteSpeed Server mit HTTP/2, php7).

@TechArea you said

On the demo page, the title is not applied when saving. But this is probably intended.
But whenever I do changes on the demo it successfully saved?

I managed to reproduce the issue somewhere else, but please get back to me in regards to what doesn't get saved on the demo (if everything works correctly on the demo I would also highly appreciate it if you can confirm that).

Update: I'm still not positive on why this can be reproduced only on all WonderCMS installations at the / (root) of the server, all instances hosted in a subfolder/subdomain don't seem to display the emojis proparely.

@TechArea @tamascz
@slavenstancic and I finally managed to figured out why the special characters were broken, whenever the statistics plugin is enabled, it renders/encodes the characters incorrectly.
There's a pull request already pending to be merged https://github.com/StephanStanisic/simple-statistics/ and a new version should be released shortly.

Closing issue as we've pushed out updates both for WonderCMS and Statistics plugin, which resolve all of the mentioned issues above.


Fixes #304 - remove trailing slash on j2objc.home if present

TESTED=yes
@alexmetcalfe cc

LGTM - no strong feeling about my comments

done and done


DFU not working

On pressing upload, app crashes and the configurable settings (number of packets and External MCP DFU) are reset to 12 and OFF respectively. We require number of packets to be 1, and External MCP DFU to be ON. We did not have this issue in v3.0.1.

Hi @andrewbollen , can you try updating to the latest DFU Library version in the app and rebuild ?
modify the Podfile so this line:
pod 'iOSDFULibrary', :git => 'https://github.com/nordicsemiconductor/ios-pods-dfu-library', :branch => 'Version3'
becomes:
pod 'iOSDFULibrary', '~> 3.0'
then run pod update
if the issue still persists please let us know

Thankyou @mostafaberg, the latest update to nRF-Toolbox does not appear to have the same problem, and we have been able to correctly upload our firmware. Thanks for the response.


[PE-D][Tester A] Inconsistent Error Message [view command]

I first typed in list -pa, and after that when an invalid negative integer is typed for view command as shown above, the error messaged shown is Invalid person type! Specify either "-pa" for patient or "-sp" for specialist, which does not make sense for a user. Perhaps a better error message is to inform the users that an invalid number is used for the view command.

Labels: severity.Low type.FeatureFlaw
original: LHeng1/ped#5

Duplicate Issue as #129


Support data-driven defaults for type mapping

Currently, bindings for date related types are exported as String, in the absence of user-specified configuration. We should add sensible defaults for additional type mappings to improve safe interoperability.

Unassigning myself since I'm primarily working on the DateTime mapping as hinted at in the original comment.


Update IC Candid Files

Motivation
The Internet Computer APIs have updated.
Changes

Updated the interface description files for the Internet Computer.
Updated the javascript bindings for the latest IC interface.

Tests

[ ] Please check the API updates for any breaking changes that affect our code.

Closing because it required manual changes.


assert in import fails

Hey, that module is a dependency in blog, which I'm trying to run at the moment.
I get error: Expected ;, got assert at https://deno.land/x/emoji@0.3.0/emoji.ts:2:32 as the error message.
Deno version output:
deno 1.9.0 (release, x86_64-unknown-linux-gnu)
v8 9.1.269.5
typescript 4.2.2

Hmm, the example for importing JSON (https://examples.deno.land/importing-json) also doesn't work

It seems you are using a really old and outdated version of deno without import assertion support. Import assertions landed in 1.17, denoland/deno#12866. I would recommend updating, both as a security measure and as a best practice.

Okay, thank you


Add support for SR300

This is an attempt to add support to the SR300.
Changes proposed in this pull request:

Add a nodelet to handle SR300
Add a launch file to publish streams from SR300
Add a launch file to publish point cloud from processing of SR300 streams

I have tested it with the following configuration.
It works, topics are published correctly and can be visualized with rqt/rviz.

Version
Your Configuration

Operating System
Ubuntu 14.04.4 LTS

Kernel
4.2.0

Backend
video4linux

ROS
indigo

librealsense
0.9.1

SR300 Firmware
<IP_ADDRESS>

However, I still have some unit tests failing:
~/catkin_ws/src/realsense/realsense_camera/test/camera_core.cpp:330
Value of: g_depth_avg > 0
  Actual: false
Expected: true

and
~/catkin_ws/src/realsense/realsense_camera/test/camera_core.cpp:558
Value of: g_pc_depth_avg > 0
  Actual: false
Expected: true

Also, the stream of the IR camera is very noisy (black and white strips are overlayed with the actual stream). Do you think this has to do with the parameters fixed by default ?

@SyrianSpock Thanks for your contribution. The code looks good. Special thanks for following all our coding standards and adding unit tests.
We have created another PR #83 that includes your PR as well additional fixes, documentation and other updates from the indigo-devel branch. Please refer to the git commits for more details.
I am therefore closing this PR.


Upgrade to<EMAIL_ADDRESS>to fix broken codahale/hdrhistogram dependency

Fixes #536

codecov is getting weird


k8s 1.16: serialization issue, namespace deletion hangs

Yesterday, I tried to integrate compose-on-kubernetes v0.4.24 in Docker Desktop but faced one strange issue. It's not triggered when using kind in the CI here.
Steps:

Install Docker Desktop with Kubernetes 1.16 - https://download-stage.docker.com/mac/edge/39313/Docker.dmg
Enable Kubernetes
kubectl create ns redis
kubectl delete ns redis hangs forever.

kube-controller log shows plenty of:
E1010 09:32:12.184709       1 namespace_controller.go:148] deletion of namespace redis failed: object *v1alpha3.StackList does not implement the protobuf marshalling interface and cannot be encoded to a protobuf message

kube-compose-apiserver logs:
E1010 09:32:27.861111       1 writers.go:172] apiserver was unable to write a JSON response: object *v1alpha3.StackList does not implement the protobuf marshalling interface and cannot be encoded to a protobuf message

Nothing special in kube-apiserver logs.

It appears that while all other requests to the Compose API Server use JSON, delete collection (which is called as part of delete namespace) always uses protobuf – even if we register the API Server as only having JSON and YAML support. I think this is a Kubernetes 1.16 bug and we are looking for a work around.


Please invite me to the Recode-Hive GitHub Community Organization

Name
Vaibhav Verma
Discord Username (if applicable)
VaibhavOfficials
Additional Context
No response

Invitation sent to join the GitHub Organisation. Welcome to the community 🎉
Don't forget after accepting to make it public so it appears on your GitHub profile for everyone else to see. You can do this by finding your name in the GitHub organisation list and change the dropdown to public https://github.com/orgs/recodehive/people


Add admin / non-admin role indicator in top-right of masthead

@mturley @eriknelson Is this a permanent addition or just there during development?

Oh, most definitely just during development. We wanted to make it clear that the stuff we demo tomorrow is incomplete.

Oh, sorry, wrong PR 😄 I think it's probably temporary, until we have a proper identity/role dropdown there, is that right @eriknelson @ibolton336 ?


Transform.rotate broken on iOS on Flutter 3.24.0

Steps to reproduce

Create a new project
Execute a Transform.rotate with a angle: pi on iOS

Expected results
The child widget should be mirrored on Y axis.
Actual results
The child is not mirrored and is only moved outside its parent, but only on iOS. On Android and web it's working fine as you can see from the screenshot below.
Code sample
Code sample
import 'dart:math';

import 'package:flutter/material.dart';

void main() {
  runApp(const MyApp());
}

class MyApp extends StatelessWidget {
  const MyApp({super.key});

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      debugShowCheckedModeBanner: false,
      home: Scaffold(
        backgroundColor: Colors.black,
        body: Center(
          child: Column(
            mainAxisAlignment: MainAxisAlignment.center,
            crossAxisAlignment: CrossAxisAlignment.center,
            children: [
              // The normal icon
              Container(
                color: Colors.yellow,
                child: const Icon(
                  Icons.arrow_back,
                  size: 16.0,
                  color: Colors.white,
                ),
              ),
              // The one that should be mirrored
              Transform.rotate(
                angle: pi,
                child: Container(
                  color: Colors.green,
                  child: const Icon(
                    Icons.arrow_back,
                    size: 16.0,
                    color: Colors.white,
                  ),
                ),
              ),
            ],
          ),
        ),
      ),
    );
  }
}

Screenshots or Video

Screenshots / Video demonstration

Logs
No response
Flutter Doctor output
Doctor output
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, 3.24.0, on macOS 14.6 23G80 darwin-arm64, locale it-IT)
[✓] Android toolchain - develop for Android devices (Android SDK version 34.0.0)
[✓] Xcode - develop for iOS and macOS (Xcode 15.4)
[✓] Chrome - develop for the web
[✓] Android Studio (version 2023.3)
[✓] VS Code (version 1.92.0)
[✓] Connected device (4 available)
[✓] Network resources

• No issues found!

A workaround that we have found right now is to use Transform with a matrix.
Transform(
  transform: Matrix4.identity()..rotateZ(pi),
  // Center point as half the size of the child
  origin: const Offset(20, 20),
  child: Container(
    color: Colors.green,
    child: const Icon(
      Icons.arrow_back,
      size: 40.0,
      color: Colors.white,
    ),
  ),
),

This problem is triggered only when you need mirroring and using angle: pi in Transform.rotate and Transform.flip.

Duplicate of https://github.com/flutter/flutter/issues/153036
(The text is missing the transform in this case)


Bug Summary

Describe the bug
Exclusions listed with extend-exclude in pyproject.toml get overwritten by passing --extend-exclude to the command line
To Reproduce
Steps to reproduce the behavior:

Add a list of exclusions in the [tool.deptry] extend-exclude: ... section of a project using pyproject.toml
Call deptry from the command line adding a parameter --extend-exclude ... with a different list of exclusions
deptry will check locations listed as excluded in pyproject.toml

Expected behavior
The parameter name "EXTEND" exclude suggests that additional exclusions passed in the command line would be appended to whatever is listed in the project file, not overwrite them. This results in very anti-intuitive behaviour.
If this is intended (as for other parameters it makes sense to overwrite the project setting by command line settings if explicitly requested), then at least a warning should be shown in the command line mentioning that the rules set in the project file are being overridden.
System [please complete the following information]:

OS: e.g. Ubuntu 23.10 running on Docker in an M1 Mac
Language Version: Python 3.11
Poetry version: Poetry 2

Thanks for raising the issue. This is indeed intended behavior, as explained in the documentation, see this section specifically. I agree that it can be perceived as counter intuitive for a parameter that has the word 'extend' in it's name.
On the other hand, it can also be perceived as counterintuitive that the behavior for some parameters is different than for others. Someone might try to overwrite the configuration from pyproject.toml through the CLI argument, and then unexpectedly find that the lists are concatenated.
We could choose to add some logging statements in this file when parameters are overwritten.


[tasks] Add tasks for manipulating pipeline schedules

What does this PR do?
Adds inv tasks to handle pipeline schedules and pipeline schedule variables using a Gitlab Project Access Token.
The output of all the tasks is a simple pprint-formatted JSON returned by the API, which I believe is fine since these tasks will be used rarely and I don't think they need more human-friendly output.
Motivation
What inspired you to submit this pull request?
Additional Notes
Anything else we should know when reviewing?
Describe how to test your changes
Write here in detail how you have tested your changes
and instructions on how this should be tested in QA.
Checklist

[ ] A release note has been added or the changelog/no-changelog label has been applied.
[ ] The need-change/operator and need-change/helm labels has been applied if applicable.
[ ] The appropriate team/.. label has been applied, if known.
[ ] If known, an appropriate milestone has been selected; otherwise the Triage milestone is set.
[ ] The config template has been updated if applicable.

Note: Adding GitHub labels is only possible for contributors with write access.

@mx-psi fixed, could you please re-review?


fix: Toggle arrows at the ImageGallery in accordance to scroll position

What's the purpose of this pull request?
This PR fixes the behavior of the ImageGallery, implementing toggle rules for the arrows that are used to navigate in the image minatures:

The right/up arrow only shows when the first image is not visible
The left/down arrow only shows when the last image is not visible

How does it work?
It uses the inView value for the first and last images, added using the useInView() hook.

If the inView for the first image is true, then the left (mobile)/up (desktop) arrow is not displayed. It is displayed when inView is false.

This means that the arrow is hidden when we are at the beginning of the image miniatures list, and displayed when we start navigating towards the end of the images.

If the inView for the last image is true, then the right (mobile)/down (desktop) arrow is not displayed. It is displayed when inView is false.

This means that the arrow is hidden when we are at the end of the image miniatures list, and displayed when we start navigating towards the beginning of the images.

Preview GIFs:

Mobile
Desktop

How to test it?
Open a product with many images (it is easier to change the code at ImageGallery.tsx, at the ImageGallerySelector component - update the images={images} to images={images.concat(images.concat(images))}.
Repeat these steps for both desktop and mobile:

Verify that when you open a product, only the left/up arrow is not being displayed
Click the right/down arrow to start navigating. Verify that both arrows are now being displayed (if not, check if the image miniatures list is big enough for that. If necessary, test with another product)
Navigate until the end of the images list
Verify that now only the right/down arrow is not being displayed
Navigate again towards the beginning of the list, clicking the left/down arrow
Verify that the behavior repeats consistently

References
react-intersection-observer

Maybe we can fix this by adding the inView to an additional div before and after the images instead of referring to the first and last images. What do you think?

Nice catch @filipewl. There is a threshold option that can be set to 1 to trigger only when the image is 100% visible: https://github.com/thebuilder/react-intersection-observer#options

@filipewl Nice catch indeed! And yes, you can add a threshold. The default is 0, meaning that when a tiny bit of the element enters the viewport, it sets inView = true.
I've tested with threshold value of 1 and this results in the opposite effect (when just a little bit of the element leaves the viewport, inView = false and the corresponding arrow shows up again).
I think that going to the other extreme makes it a bit weird, so I'll stick with an arbitrary value of 0.5 for the threshold.
Here is the comparison:

Mobile - threshold 100%
Mobile - threshold 50%

What do you think?

After a conversation and pairing with @danzanzini we opted for removing the padding and using the 100% threshold. Apparently it was the padding that was causing the weird appearance of the ImageGallerySelector when using threshold: 1


Show colors for other color-related properties

While it shows the color assigned for background-color and color properties, it doesn't show the color box for the following CSS properties:
-webkit-tap-highlight-color
border-bottom-color
border-left-color
border-right-color
border-top-color
border-color

Thanks, this should be easy fix.


Home Page - Explore Nearby

Implement Home page, and shift the about data  to another page. Implement Explore nearby feature onto homepage

@HarisaranG try to fetch data and deliver it before frontend can be implemented


Clipped Image/Logo in Settings About Pivot on Windows 10 Mobile Only

I can't figure this out. The image/logo shows up clipped/cropped to the top left portion of the image on Windows 10 Mobile. Lumia 950.

Certainly, you should provide a screen capture, dude.

Sorry. This is a non-issue.


Enhancement: PTable sorting

PTable currently requires row sorting to be implemented downstream because the tables have no built-in sort methods.
I imagine sorting being based on column header, with the table / table header components exposing methods and models that would allow the consumer to control and respond to changes in the sort order. I think we can extend the TData model to include sort on the column, which would be a boolean that controlled whether sort interactions were enabled by default for the column.

Is there a specific table in the ui we want to add this behavior too first?

Not in my mind @pleek91 - but any that work with API-sorting would be good


Add underlay network implementation based on AWS VPC

In a case when all Weave peers run on AWS within the same VPC, we could rely on AWS VPC for packet routing instead of using custom overlays.
Most of the work is done, the following is missing:

[x] Cleanup VPC route table upon peer termination.
[x] Change the block donation algo strategy to the one which tries to find such block that its donation would require minimal amount of changes in the route table.
[x] Simplify grouping of IP ranges: merge ranges before calling HandleUpdate, match only those ranges which differ.
[x] Error handling for special situations: the 50 routes limit has been reached, etc.
[x] System tests on the AWS infra.
[ ] Write docs, guides, etc.
[x] Simplify system setup (route table detection, setting proxy_arp, etc.)
[ ] Consider subnet isolation: no container can be reached from a host running it.
[x] Avoid using fatal loglevel when possible.

Nice to have:

[ ] Make update ops of the route table asynchronous (i.e., move to a separate goroutine).
[ ] Improve semantics for choosing a peer for donations.

This issue does not cover changes which would be required in order to make the AWS VPC overlay compatible with the existing overlay implementations (in particular, with sleeve and fastdp).

Enhancements moved to #2322


Include source_detail session params for FB/Google registrations

What's this PR do?
This pull request moves the check for a session source_detail into the  registerViaWeb method , which has been refactored to accept an optional auth_source property via the Facebook and Google controllers.  This keeps the source_detail of users who authenticate via FB or Google to be consistent with users who register via the Northstar registration form (a stringified object with optional UTM, Contentful, Referrer params) .
How should this be reviewed?
👀
Any background context you want to provide?
ℹ
Relevant tickets
References Pivotal #169213761.
Checklist

[x] This PR has been added to the relevant Pivotal card.
[x] Added appropriate feature/unit tests.
[x] If new attributes were added to users, then the data team already knows about these changes.

@katiecrane @ngjo -- After working in #979 and getting to know the SubscriptionController a bit,  it seems we'll be missing these UTM parameters in the source_detail of any new registrations via the Newsletter Subscription widget. We wouldn't be able to call thisregisterViaWeb there, since we're not redirecting the user to the registration page.. so maybe it'd be best resolved by the Phoenix component passing over the stringified UTM params, as well as its current value, in the source_detailwhen it makes a POST /subscriptions request?

Is the Newsletter Subscription widget the overlay on like Easy Scholarships?
Either way, yeah, good 👀 ! We definitely need to continue tracking the UTM parameters in the source_details


update affiliation

What type of PR is this?
/kind documentation

What this PR does / why we need it:
Fixing a missing affiliation in MAINTAINERS.md
Which issue(s) this PR fixes:
Refers to #240 and #244

Special notes for your reviewer:
Does this PR introduce a user-facing change?

None

:warning: Please install the  to ensure uploads and comments are reliably processed by Codecov.
Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 29.02%. Comparing base (57570dd) to head (375ff48).
Report is 70 commits behind head on main.

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@            Coverage Diff             @@
##             main     #245      +/-   ##
==========================================
+ Coverage   26.61%   29.02%   +2.41%
==========================================
  Files          24       26       +2
  Lines        2788     3135     +347
  Branches     1516     1668     +152
==========================================
+ Hits          742      910     +168
- Misses        948     1004      +56
- Partials     1098     1221     +123


I am not able to integrate this in laravel 5 . any help ?

@vikram-ucreate

Project no longer maintained see the Parser project for a replacement.


Net::ReadTimeout when within_frame iframe suddenly closes

I'm writing a capybara/rspec test for a web app that opens a popup window containing a form that needs to be submitted. Upon submission of the form, the javascript logic in the popup window would automatically close the popup window.
Now I would intermittently get Net::ReadTimeout errors because of this, I'm assuming because the selenium webdriver cant recover when the popup closes too quickly and is left in a weird state.
          popup_window = window_opened_by do
              some_button.click
          end

          within_window popup_window do
            within_frame 0 do
              some_form_submit_button.click #this would close the popup
            end
          end

          # carry on with other stuff in the parent window

I'm using within_frame here because the form I need to submit is actually within an iframe in the pop-up window. I have no control over the page I am testing and would only really be able to work around it in the test.
Is there any way to reliable handle the popup window and the iframe within it from closing too quickly?

Moveing to capybara repo instead.


removed space

Description
Please include a summary of the changes.
Issues Fixed or Closed

Fixes #(issue)

Type of Change
Please delete options that are not relevant.

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] Documentation change (non-code changes affecting only the wiki)
[ ] Infrastructure change (changes related to the github repo, build process, or the like)

Checklist

[x] My code was submitted to the develop branch of the repository.

just removed space on shazam


Extension unresponsive

I've been getting issues with my editor becoming unresponsive from time to time while working on files that are not markdown files, although with markdown styled comments. I was able to capture a profile which includes a stack trace, which I'll attach here.
exthost-cb3c77.cpuprofile.txt

Hi thanks for the report,
do you have any example file on how to reproduce this?
I found an issue that caused unnecessary computation when the table mode is turned off. But I think that we are not yet there.

Sorry, I've had the extension disabled for a while and don't remember any particular instances.


typo in <IP_ADDRESS>, page 1137

In equation (34.101), I believe $y_{1:b}$ should be $y_{1:B}$, as capital $B$ is used elsewhere.
Also, in the first line of this section, "a batch of $b$ candidate query points" -> "a batch of $B$ candidate query points".

fixed


Play 2.4 example project

I thought this might be a good addition for an example project. Let me know what you think.

Looks great, thanks! The only thing I would add is maybe some info in the main README?

I've added some documentation and a link in the main Readme file.

Thanks!


Certify Azure Event Hubs as Stable in pubsub

Signed-off-by: Surender Singh Malik<EMAIL_ADDRESS>Description
Certifications test for azure eventhubs to promote the same as stable pubsub component
Pending Items (work in progress)

Integration with github workflow
Updating component metadata from environment variables
Relevant changes in infra scripts required for the tests

Issue reference
Please reference the issue this PR will close: #1379
Checklist
Please make sure you've completed the relevant tasks for this PR, out of the following list:

[x] Code compiles correctly
[ ] Created/updated tests
[ ] Extended the documentation / Created issue in the https://github.com/dapr/docs/ repo: dapr/docs#[issue number]

Testing

Test cases were run and verified in local by updating the metadata with actual azure resources like SPN, Storage account, eventhubs, iot hub.

@daixiang0 - Thank you for your note, PR is ready for review (removed WIP tag). Do let me know your valuable inputs on this change.

@surenderssm thanks for your contribution! Please remove WIP tag when ready for review.

@surenderssm Any updates on the PR?

@berndverst Please review this PR ...

Let me know if you can figure out which permission is missing and I will apply that additional permission to our infrastructure -- please also update the shell script in this PR to grant the additional permission. @surenderssm

Let me know if you can figure out which permission is missing and I will apply that additional permission to our infrastructure -- please also update the shell script in this PR to grant the additional permission. @surenderssm

This has been fixed, Azure Event Hubs Data Owner is the role which was required. This role was being assigned, however with an invalid scope path. Same has been fixed.
Scope path before the change
:/subscriptions/${SUB_ID}/resourceGroups/${RESOURCE_GROUP_NAME}/providers/Microsoft.EventHub/namespaces/${EVENT_HUBS_NAMESPACE}/eventhubs/*
Scope path after the change :
/subscriptions/${SUB_ID}/resourceGroups/${RESOURCE_GROUP_NAME}/providers/Microsoft.EventHub/namespaces/${EVENT_HUBS_NAMESPACE}

I applied the new role to the infrastructure.
All tests pass now.


Feature Information

Hello.
First I would like to really thank you for this tool. The problem of Sqs generation is very time consuming and you have made it work on parallel machines.
I have a question about the parallel implementation: I cannot initialize the mpi runtime for the tool. I was able to specify the threads_per_rank for instance as [8,8,8 ...] 16 times then I run mpirun -n 16. I get the message that the mpi runtime was not initialized and even though the program does it and continues but I would like to be able to know how to do it to be able to calculate the estimated time etc.
Also, is there is anyway to output the structures during the mpirun? I would like to be able to see how the objective function changes for instance. Sometimes the difference in objective function is very small but it takes numerous iterations to reach to it. I realize the log level can be changed, but the program will basically stop giving any kind of output when the iterations start until it is done with the number of iterations.
Thank you.
Khaled.

Dear @khaledb9!
Just a simple question before! Did you obtain your binary via conda or, did you compile the package yourself?
The reason why I am asking is because the conda binary only exhibits OpenMP parallelization. For MPI one needs to compile the package manually. It is a little bit hidden in the documentation. Let me know if you need support.
...but I would like to be able to know how to do it to be able to calculate the estimated time etc
There I do suggest to make an estimate without MPI and multiply in simply. The reason is that communication overhead is negligible and you can safely extrapolate.
Also, is there is anyway to output the structures during the mpirun? I would like to be able to see how the objective function changes for instance.
Not directly, but hence the binary needs to be compiled anyway for MPI support it would be easy to add a line line in sqs.cpp, that prints the current time and value of the objective function.
I hope that helps and best regards

Thank you for your response.
I compiled it myself and the version supports mpi. But I was not able to overcome that mpi runtime initialized message even though the program assigns the ranks and threads as desired.
Could you please point me to the block of code to modify for the output in Sqs.cpp ?
Thank you

Hi @khaledb9
Does sqsgenerator --version contain a line stating features: ['openmp', 'mpi']? The reason why I'm asking is that the build will continue if SQS_USE_MPI is set to ON but the MPI library was not found, then it silently turns off MPI again.
Could you please point me to the block of code to modify for the output in Sqs.cpp ?
Of course, I personlly would put it there in sqs.cpp. I'd provide you with patch file anyway, once we are sure that everything worked out with the build system correctly

Hello
Yes it includes mpi in the --version command.
When I Run "mpirun -np 16 Sqsgen run iteration" for instance, the stdout file says "could not initialize mpi runtime, i will do it !" And it assigns the correct ranks.
I set the threads_per_rank input parameter to [8, 8, 8] etc assuming I'm using 3 ranks and 8 threads.
The idea why I'm asking about output the best function, I found out via a simple modification in 354 where i added a print statement to the global_best_function. That it takes much fewer iterations to reach the objective for some systems, more than the provided number of iterations. I think a very useful addition to the code would be to check if the function reached zero before the iterations end and jump to the output phase.
Thank you

Dear @khaledb9!
Ok, many thanks for your informations! Can you run the code with MPI debug, to further investigate what is going on? E.g. for Intel MPI (I_MPI_DEBUG). Actually if the MPI_Init function returns zero, it is hard to fix in the code, since the code just calls the MPI library.
I think a very useful addition to the code would be to check if the function reached zero before the iterations end and jump to the output phase.
When you interupt the program (Crtl+C) it will write the results of the current optimizations. The point is however, there are cases, when one is not interested only in a single SQS but multiple structures. With our approach there is not a single structure which might mimize the objective function, but there may be many of them. So there may be several best  structures. Secondly, because of the finite number of cells, the minimal value the objective function can approach a non-zero values, but this depends on the user settings such as the shell weights. So it is hard to tell a-priori when the  minimzation has reached the optimal value.
I found out via a simple modification in line 354 of Sqs.cpp where i added a print statement to the global_best_function
Indeed, there is nothing more than a print statement to add. However, L354 is the MPI synchronization logic, so whether you see this print statement depends on whether a different rank has found something, which is ensured to be done by a single thread at a time. After that the thread populates the value to it's thread team members. The point where you can be sure that results a synchronized across both MPI ranks and OpenMP threads is L369. So therefore, I suggest to
add there something like
// You want only one thread per MPI rank to print the message, since they all see the same value
// Warning makes sure you see it, without changing the verbosity level
#pragma omp single
BOOST_LOG_TRIVIAL(warning) << "MPI rank: " << mpi_rank << ", current best objective" << best_objective;

Thank you for your response.
I will try the mpi debug and let you know the outcome.
Regarding the output, I realize that Ctrl+C will write an output but it will terminate the program. My idea is that as the program generates new structures based on the current objective functions. I would like to be able to take the structure and test it outside in Dft for instance.
Consider the following scenario to explain my situation:
Assuming that the best possible objective function is 0.1 and after several hours 0.2 was obtained. Now if it takes double the time to reach to 0.1, it is worth it to try the structure obtained from (0.2) as most probably the difference in energy won’t be large, it would be a good representation and save many computation hours. To be able to do that I have to get the structure while the iterations are still running.
Is there is a way for instance to call an output function after every generation of a new objective function.
I have to admit that my c++ knowledge doesn’t extend as far as MPI implementation but I have been trying to study your code for such implementation of output. If you kindly can point me to a way to call the output function after printing the objective function. My guess is that the I/O operation will increase the computation time, however if you have other ideas kindly let me know.
Regards
On 10 Jul 2023, at 5:47 PM, dgehringer @.***> wrote:

Dear @khaledb9https://github.com/khaledb9!
Ok, many thanks for your informations! Can you run the code with MPI debug, to further investigate what is going on? E.g. for Intel MPI (I_MPI_DEBUG). Actually if the MPI_Init function returns zero, it is hard to fix in the code, since the code just calls the MPI library.
I think a very useful addition to the code would be to check if the function reached zero before the iterations end and jump to the output phase.
When you interupt the program (Crtl+C) it will write the results of the current optimizations. The point is however, there are cases, when one is not interested only in a single SQS but multiple structures. With our approach there is not a single structure which might mimize the objective function, but there may be many of them. So there may be several best structures. Secondly, because of the finite number of cells, the minimal value the objective function can approach a non-zero values, but this depends on the user settings such as the shell weights. So it is hard to tell a-priori when the minimzation has reached the optimal value.
I found out via a simple modification in line 354 of Sqs.cpp where i added a print statement to the global_best_function
Indeed, there is nothing more than a print statement to add. However, L354 is the MPI synchronization logic, so whether you see this print statement depends on whether a different rank has found something, which is ensured to be done by a single thread at a time. After that the thread populates the value to it's thread team members. The point where you can be sure that results a synchronized across both MPI ranks and OpenMP threads is L369. So therefore, I suggest to
add there something like
// You want only one thread per MPI rank to print the message, since they all see the same value
// Warning makes sure you see it, without changing the verbosity level
#pragma omp single
BOOST_LOG_TRIVIAL(warning) << "MPI rank: " << mpi_rank << ", current best objective" << best_objective;
—
Reply to this email directly, view it on GitHubhttps://github.com/dgehringer/sqsgenerator/issues/37#issuecomment-1629006135, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AXGS3TDRZYCGFYWSS6KOXR3XPQBYDANCNFSM6AAAAAA2EEYEZQ.
You are receiving this because you were mentioned.Message ID: @.***>

Dear @khaledb9!
Assuming that the best possible objective function is 0.1 and after several hours 0.2 was obtained. Now if it takes double the time to reach to 0.1, it is worth it to try the structure obtained from (0.2) as most probably the difference in energy won’t be large, it would be a good representation and save many computation hours. To be able to do that I have to get the structure while the iterations are still running.
I do exactly see your point, and moreover think that I do understand what you mean. The point is however, as the structure is randomly generated, the probability to find the best one is the same of each structure. In other words, where is no such concept, of "resuming" and optimization. If you do a second run with and end up with a lower objective function, then it is because you sampled twice as many structures. But as the events (the structure generation) are independent of each other, it does not matter if you do one run with $2\cdot10^6$ iterations, or two smaller ones with $10^6$ iterations each.
I would like to be able to take the structure and test it outside in Dft for instance
Actually we thought about this, namely to allow the user to pass callback functions (e.g. new objective found), the point is just that integration  is not so easy. But that is something we can do. We have just to agree what to expose

Thank you for the clarification. I did some test runs and eventually on enough cores it takes less than 24hours to reach a non-changing objective function to consider testing the structure and hence interrupting the program is the correct way.
Indeed the dft coupling is an excellent step but I do realize the time and effort required to do that. However, the tool is remarkable in terms of the performance.
Regarding the MPI issue. I’m not using intel, I use openmpi. The program build supports mpi. I installed it on the conda environment to avoid any confusion with the hpc versions. I run normal using “mpirun -n XX sqsgen ..” and specify the threads per rank: [2,2,2,…] XX times. However, the program says the same message of “Mpi runtime is not initialized, I’m going to do that !”. Anyway it assigns the correct XX number of ranks and correct number of threads.
Sent from my iPhone
On 12 Jul 2023, at 11:53 AM, dgehringer @.***> wrote:

Dear @khaledb9https://github.com/khaledb9!
Assuming that the best possible objective function is 0.1 and after several hours 0.2 was obtained. Now if it takes double the time to reach to 0.1, it is worth it to try the structure obtained from (0.2) as most probably the difference in energy won’t be large, it would be a good representation and save many computation hours. To be able to do that I have to get the structure while the iterations are still running.
I do exactly see your point, and moreover think that I do understand what you mean. The point is however, as the structure is randomly generated, the probability to find the best one is the same of each structure. In other words, where is no such concept, of "resuming" and optimization. If you do a second run with and end up with a lower objective function, then it is because you sampled twice as many structures. But as the events (the structure generation) are independent of each other, it does not matter if you do one run with $2\cdot10^6$ iterations, or two smaller ones with $10^6$ iterations each.
I would like to be able to take the structure and test it outside in Dft for instance
Actually we thought about this, namely to allow the user to pass callback functions (e.g. new objective found), the point is just that integration is not so easy. But that is something we can do. We have just to agree what to expose
—
Reply to this email directly, view it on GitHubhttps://github.com/dgehringer/sqsgenerator/issues/37#issuecomment-1632024066, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AXGS3TDGANOKBETLAP6EZ6LXPZJXJANCNFSM6AAAAAA2EEYEZQ.
You are receiving this because you were mentioned.Message ID: @.***>

Dear @khaledb9!
This message is no error message, but rather an information only. The programm outputs it in this line. The reason for this message is, that commonly, python programs are MPI paralellized with mpi4py, however, that would impose an additional dependency. Therefore if sqsgenerator is not encapusulated in an mpi4py (which would do the MPI runtime initialization) script we have to do it ourselves. You just get an info then
I hope that does clarify your issue

Hi @khaledb9!
There is a new feature in version 0.3 of the program, which now allows to pass a function, that will be called when a certain condition is met. The feature is still undocumented
there are two callbacks

better_or_equal: is triggered when a structure with equal or lower objective is found
better: is triggered when a configuration with lower objective is found

An example would look like this:

from typing import *
from sqsgenerator.public import SQSResult, Structure, sqs_optimize

def callback(iteration: int, structure: Structure, result: SQSResult, mpi_rank: int, thread_id: int) -> Optional[bool]:
    # do what ever you want here
   # but since you run MPI you want to execute callbacks only on the "HEAD" rank
   if mpi_rank == 0:
       # call DFT code
       # or anything else you want
       stop = True
       return stop

settings.update(
    callbacks=dict(
        better=[callback]  # trigger only if a better configuration was found
   )
)

result, timings = sqs_optimize(settings, pass_structure=True)

The return value of the callback is important. So None or False will be ignored. If True  or an value that evaluates to True returned it will instruct sqsgenerator to stop the main optimization loop.
I think with that feature you are now able to track the progress of the optimization!
Let me know if it is fine know :smile:, and we can close the Issue


Fix EmailStr for Cython

Change Summary
This PR fixes EmailStr which is in Compiled Pydantic binary.
Related issue number
https://github.com/samuelcolvin/pydantic/issues/1070
Checklist

[x] Unit tests for the changes exist
[x] Tests pass on CI and coverage remains at 100%
[ ] Documentation reflects the changes where applicable
[x] changes/<pull request or issue id>-<github username>.md file added describing change
(see changes/README.md for details)

great thank you.


New projects should list webgme as peer dependency (not regular dependency)

https://nodejs.org/en/blog/npm/peer-dependencies/

+1


Update README.md

Just A Tip for better movements That I had problems with in the past.

Looks good, thanks!


Merging resumes fails (Cannot read property 'markdownify' of undefined)

When merging 2 cvs, 1 with full content and 1 with partial, HackMyResume fails to build the html and pdf versions.
For example:
cv1.json
{
  "name": "Jane Q. Fullstacker",
  "meta": {
    "format"<EMAIL_ADDRESS>    "version": "0.1.0"
  },
  "info": {
    "label": "Senior Developer",
    "characterClass": "Programmer",
    "brief": "**Full-stack software developer with 6+ years industry experience** specializing in scalable cloud architectures for this, that, and the other. A native of southern CA, Jane enjoys hiking, mystery novels, and the company of Rufus, her two-year-old beagle.",
    "image": "jane_doe.png",
    "quote": "Be the change you want to see in the world."
  },
  "social": [
    {
      "label": "GitHub",
      "network": "GitHub",
      "user": "janef-was-here",
      "url": "https://github.com/janef-was-here"
    }
  ],
  "employment": {
    "summary": "7+ years industry IT and software development experience.",
    "history": [
      {
        "employer": "One Cool Startup",
        "url": "https://onecool.io/does-not-exist",
        "position": "Head Code Ninja",
        "summary": "Development team manager for [OneCoolApp](https://en.wikipedia.org/wiki/Vaporware) and OneCoolWebsite, a free social network tiddlywink generator and lifestyle portal with over 200,000 users.",
        "start": "2013-09",
        "current": true,
        "keywords": ["Agile","PM","Amazon Web Services","AWS"],
        "highlights": ["Managed a 5-person development team", "Accomplishment 2", "Etc."]
      },
      {
        "employer": "Veridian Dynamics",
        "url": "https://en.wikipedia.org/wiki/Better_Off_Ted#Plot",
        "position": "Principal Developer",
        "summary": "Developer on numerous projects culminating in technical lead role for the [Jabberwocky project](http://betteroffted.wikia.com/wiki/Jabberwocky) and promotion to principal developer.",
        "start": "2011-07",
        "end": "2013-08",
        "keywords": ["C++","C","Linux"],
        "highlights": ["Managed a 5-person development team", "Accomplishment 2", "Etc."]
      },
      {
        "employer": "Stark Industries",
        "position": "IT Administrator",
        "summary": "Junior programmer with heavy code responsibilities. Promoted to intermediate role after 6 months.",
        "start": "2008-10",
        "end": "2011-06",
        "keywords": ["Novell","Active Directory","Linux","Windows"],
        "highlights": ["Promoted to intermediate developer after 6 months", "Accomplishment 2", "Etc."]
      }
    ]
  },
  "samples": [
    {
      "title": "Rememberpedia",
      "summary": "A website to help you remember things.",
      "url": "https://rememberpedia.com",
      "date": "2015-07"
    }
  ]
}

And cv2.json
{
  "name": "Jane Q. Fullstacker",
  "meta": {
    "format"<EMAIL_ADDRESS>    "version": "0.1.0"
  },
  "info": {
    "label": "Senior Developer",
    "characterClass": "Programmer",
    "brief": "This is a more specific cv that should override, or add, specific parts",
    "image": "jane_doe.png",
    "quote": "Be the change you want to see in the world."
  },
  "social": [
    {
      "label": "Twitter",
      "network": "Twitter",
      "user": "janef-was-here",
      "url": "https://twitter.com/janef-was-here"
    }
  ],
  "employment": {
    "history": [
      {
        "employer": "Dunder Mifflin",
        "position": "Intern",
        "summary": "Performed IT administration and deployments for Dunder Mifflin.",
        "start": "2008-06",
        "end": "2008-09",
        "keywords": ["Novell","Active Directory","Linux","Windows"],
        "highlights": ["Supervised roll-out of Dunder Mifflin Infinity website.", "Performed mission-critical system backups and ", "Etc."]
      }
    ]
  },
  "samples": [
    {
      "title": "Asteroids",
      "summary": "A browser-based space shooter built on Three.js.",
      "url": "http://janef.me/asteroids",
      "date": "2014-09"
    }
  ]
}

Both of which validate, and can build the final resumes fine:
hackmyresume VALIDATE cv1.json cv2.json

*** HackMyResume v1.3.1 ***
Validating cv1.json against FRESH schema: VALID!
Validating cv2.json against FRESH schema: VALID!

Yet when you merge them together, they error:
hackmyresume BUILD cv1.json cv2.json TO out/resume.all

*** HackMyResume v1.3.1 ***
Applying MODERN theme (5 formats)
Reading resume: cv1.json
Reading resume: cv2.json
Merging undefined onto undefined
Generating DOC resume: out/resume.doc
[TypeError: Cannot read property 'xmlify' of undefined]
Generating HTML resume: out/resume.html
[TypeError: Cannot read property 'markdownify' of undefined]
Generating MD resume: out/resume.md
Generating PDF resume: out/resume.pdf
[TypeError: Cannot read property 'markdownify' of undefined]
Generating TXT resume: out/resume.txt
Generating JSON resume: out/resume.json
Generating YML resume: out/resume.yml
ERROR: Cannot read property 'stringify' of undefined
TypeError: Cannot read property 'stringify' of undefined
    at Class.module.exports.BaseGenerator.extend.generate (/Users/me/.nvm/versions/node/v5.3.0/lib/node_modules/hackmyresume/src/gen/json-yaml-generator.js:30:49)
    at single (/Users/me/.nvm/versions/node/v5.3.0/lib/node_modules/hackmyresume/src/verbs/generate.js:165:32)
    at /Users/me/.nvm/versions/node/v5.3.0/lib/node_modules/hackmyresume/src/verbs/generate.js:78:17
    at Array.forEach (native)
    at build (/Users/me/.nvm/versions/node/v5.3.0/lib/node_modules/hackmyresume/src/verbs/generate.js:77:13)
    at main (/Users/me/.nvm/versions/node/v5.3.0/lib/node_modules/hackmyresume/src/index.js:79:42)
    at Object.<anonymous> (/Users/me/.nvm/versions/node/v5.3.0/lib/node_modules/hackmyresume/src/index.js:27:3)
    at Module._compile (module.js:398:26)
    at Object.Module._extensions..js (module.js:405:10)
    at Module.load (module.js:344:32)

Similar issues occur with JsonResume formats

It is also not very clear what the merging action does.
Does merging override everything defined in the generic json (in this case cv1.json) with anything defined in the specific one (in this case cv2.json).
For elements that are arrays, does it merge both arrays or does it overide them? In this example, should the Social fields of the final resume have both Github and Twitter (a merge of both arrays of the json files) or just have Twitter (as it is the only one defined in the more specific cv, cv2.json)
It would be very useful to have some basic example json files as part of the project, I see there are a couple in the test folders but these don't merge either

Using the development branch/release seems to fix this, so closing


API documentation for app.router

I see app.router() used in a lot of express apps, but the API does not mention it exists or what it does, with the only comprehensive documentation actually being a stackoverflow answer (http://stackoverflow.com/questions/12695591/node-js-express-js-how-does-app-router-work). Could the router() function be added to the API documentation?

app.router and app.route are same or having some difference.Please Signify!
http://expressjs.com/api.html#app.route

Given that 3.x is no longer maintained and will soon be deprecated with the 5.0 release, I think we should close this.


Problems around the new io.opentracing.tag.Tag api

While I can't quite trace the background for it, io.opentracing.tag.Tag appears to have been added last week. There are a number of problems around it, which I'll catalog here:

there are no api docs for this, for example, clarifying if anything is allowed to be null, if it is allowed to call anything multiple times, or the apis it is allowed to call... if it should be called in no-op etc. Neither is it clear why you would implement this. Basically docs are needed both to make safe implementations and to decide if one should implement this.
this broke 0.31 api to add this to Span, but as you can see below, it is actually more characters to invoke it this way. tag.set(span, value) is 3 characters less than directly calling span.setTag(tag, value). It would be nice to know why this should have broken api.
This was added to SpanBuilder also, but as a builder overload isn't defined, this causes a problem in implementation. I'll describe that at length in the next section.

On problems with adding withTag(Tag<T> tag, T value) to SpanBuilder, especially in context to the sampling flag.
OT has no sampling api (still) and we are supposed to interpret Tags.SAMPLING_PRIORITY as a sampling hint. This means we need to know the value during SpanBuilder hydration.
However, the signature of io.opentracing.tag.Tag is Span, not SpanBuilder. This api gap causes problems.
One way is to make a dummy span implementation that catches the result of Tag.set so that we can inspect the value as if it were made with SpanBuilder directly. For example, if the key matches sampling, we use a special dummy span to record the result of Tag.set similar to how mock libraries work. Then, we can get the value of sampling before we create a span.
  @Override public <T> BraveSpanBuilder withTag(Tag<T> tag, T value) {
    // Assuming Tag implementations are only allowed to call span.setTag with the given key once?
    // We could make a dummy span captor impl to catch the value as we have a builder, not span here.
    // The tag could be a pseudo-api (ex sampling priority) desirable prior to building a span.
    //
    //  public interface Tag<T> {
    //    String getKey();
    //    void set(Span span, T value);
    //  }
    return this;
  }

Other options are to remove the withTag(Tag<T> tag, T value) signature from the builder, or add set(SpanBuilder builder, T value); to Tag.

added a pull request for the major features needed. a little more work to do. pausing a bit
notably you can see the hack here https://github.com/openzipkin-contrib/brave-opentracing/pull/93/files#r271152691

@tylerbenson correct me if I am wrong, but it looks like your original intention (#311) with this method
<T> Span setTag(AbstractTag<T> key, T value);

was NOT to require that implementations call  key.set(this, value) (kind of hinted at by calling the argument key instead of tag).
However, later on in https://github.com/opentracing/opentracing-java/pull/337/commits/9b6ca36d8920d40e14cbf24e70ae7fbf3956296c it was changed to
<T> Span setTag(Tag<T> tag, T value);

I think we need to fix this by documenting that indeed the implementations of these span/builder methods are expected to do a double-dispatch by delegating to the passed tag object, which also must implement set(SpanBuilder, builder, T value) method to be consistent. Without double-dispatch the implementation cannot handle tag values in type-safe manner, which can be observed in the original PR #311  where mock tracer ignores the type:
public <T> Tracer.SpanBuilder withTag(Tag<T> tag, T value) {
            this.initialTags.put(tag.getKey(), value);
            return this;
}

Alternatively, we could remove/deprecate these two methods from span/builder, as they seem to be causing more issues than they are worth.
cc @carlosalberto

Hey hey

was NOT to require that implementations call key.set(this, value) (kind of hinted at by calling the argument key instead of tag).

Going through the history of this change, I can also see that we ended up with an actual different thing.
My feeling is that we should document the expected behavior (the double dispatch part) should be enough for this API (as we won't have many upcoming releases).

For  double-dispatch to work on SpanBuilder the Tag interface needs an extra method set(SpanBuilder, T)

@yurishkuro I guess I don't fully understand the problem you're referring to with the double-dispatch and how it relates to SpanBuilder.  Is your issue with the need for double dispatch?

Sorry, double dispatch is probably a jargon used for Visitor-like pattern, which very similar to Tag:
span.Set(tag,v) => tag.Set(span,v) => span Set(tag.key, v)
The same doesn't work for span builder today because the middle part is missing from Tag interface: tag.Set(spBldr, v)

@yurishkuro on SpanBuilder, maybe the implementation could be just:
@Override
public <T> SpanBuilder withTag(final Tag<T> tag, final T value) {
  return withTag(tag.getKey(), value);
}

I realize this isn't as nice as with Tag, but this is effectively what was being done before these changes.
I must be missing something... Where does this break down?

It won't compile 😄
withTag methods are strongly typed, but here we don't know the type of the value. Double dispatch through concrete tag works because it makes the value type concrete.

@yurishkuro I see my problem now... we had a private method in our implementation that each of the withTag methods delegated to:
withTag(final String tag, final Object value)

Which is why I didn't discover this problem when doing integration testing.

@tylerbenson exactly, the same happened in MockTracer in the original PR, we could've caught it there.


[zh-cn] localize blog: 2023-05-16-kmsv2-beta.md

localize blog: 2023-05-16-kmsv2-beta.md
Fix https://github.com/kubernetes/website/issues/41106

/approve

/lgtm
Need to trigger the ci again.


There should be a way for resolvers to cache retrieved originals

So that we don't pull big files over the network over and over again. Ideally this mechanism should be shared among resolvers.
https://github.com/curationexperts/riiif/blob/82b25b08865f7ac65a988ab7b2fc5d6aa1b0bb0c/lib/riiif/http_file_resolver.rb#L48-L49

Thanks @jcoyne. This is obviously WIP and needs a reference impl or two, but the idea is that Resolver implementations can do whatever they need to do, as long as #resolve returns the path to an image, and the format of that image. If that means checking a local cache before doing something more expensive (probably, in most cases), that's fine. Obviously we'll want to get to supplying a reference impl. Cf. #17.


Group Quota GA API version

ARM (Control Plane) API Specification Update Pull Request

[!TIP]
Overwhelmed by all this guidance? See the Getting help section at the bottom of this PR description.

PR review workflow diagram
Please understand this diagram before proceeding. It explains how to get your PR approved & merged.

Purpose of this PR
What's the purpose of this PR? Check the specific option that applies. This is mandatory!

[ ] New resource provider.
[ ] New API version for an existing resource provider. (If API spec is not defined in TypeSpec, the PR should have been created in adherence to OpenAPI specs PR creation guidance).
[ ] Update existing version for a new feature. (This is applicable only when you are revising a private preview API version.)
[x] Update existing version to fix OpenAPI spec quality issues in S360.
[ ] Convert existing OpenAPI spec to TypeSpec spec (do not combine this with implementing changes for a new API version).
[ ] Other, please clarify:

edit this with your clarification

Due diligence checklist
To merge this PR, you must go through the following checklist and confirm you understood
and followed the instructions by checking all the boxes:

[x] I confirm this PR is modifying Azure Resource Manager (ARM) related specifications, and not data plane related specifications.
[x] I have reviewed following Resource Provider guidelines, including
ARM resource provider contract and
REST guidelines (estimated time: 4 hours).
I understand this is required before I can proceed to the diagram Step 2, "ARM API changes review", for this PR.

Additional information

 Viewing API changes
For convenient view of the API changes made by this PR, refer to the URLs provided in the table
in the Generated ApiView comment added to this PR. You can use ApiView to show API versions diff.

Suppressing failures
If one or multiple validation error/warning suppression(s) is detected in your PR, please follow the
suppressions guide to get approval.

Getting help

First, please carefully read through this PR description, from top to bottom. Please fill out the Purpose of this PR and Due diligence checklist.
If you don't have permissions to remove or add labels to the PR, request write access per aka.ms/azsdk/access#request-access-to-rest-api-or-sdk-repositories
To understand what you must do next to merge this PR, see the Next Steps to Merge comment. It will appear within few minutes of submitting this PR and will continue to be up-to-date with current PR state.
For guidance on fixing this PR CI check failures, see the hyperlinks provided in given failure
and https://aka.ms/ci-fix.
For help with ARM review (PR workflow diagram Step 2), see https://aka.ms/azsdk/pr-arm-review.
If the PR CI checks appear to be stuck in queued state, please add a comment with contents /azp run.
This should result in a new comment denoting a PR validation pipeline has started and the checks should be updated after few minutes.
If the help provided by the previous points is not enough, post to https://aka.ms/azsdk/support/specreview-channel and link to this PR.

API change check
APIView has identified API level changes in this PR and created following API reviews.
Microsoft.Quota

@tejasm-microsoft - As far as I can tell, this is a new API version, not updating an existing API version as you indicated in the submission template. Can you clarify the purpose of this PR? If it's really updating an existing API version, the changes should be file modifications, not additions.

@tejasm-microsoft - As far as I can tell, this is a new API version, not updating an existing API version as you indicated in the submission template. Can you clarify the purpose of this PR? If it's really updating an existing API version, the changes should be file modifications, not additions.

Sorry, let me reedit my comment. **This is a new version of the API.**The purpose of this PR is to release a stable public version of this API. After our public preview testing, we wanted to remove unnecessary fields in the request body and remove api paths that wont be supported in the public release.

@tejasm-microsoft - As far as I can tell, this is a new API version, not updating an existing API version as you indicated in the submission template. Can you clarify the purpose of this PR? If it's really updating an existing API version, the changes should be file modifications, not additions.

Sorry, let me reedit my comment. This is a new version of the API. The purpose of this PR is to release a stable public version of this API. After our public preview testing, we wanted to remove unnecessary fields in the request body and remove api paths that wont be supported in the public release.

Without this we cannot tell what the real difference between your preview and stable versions are. Please create 2 commits that tell us the clear difference

@tejasm-microsoft - As far as I can tell, this is a new API version, not updating an existing API version as you indicated in the submission template. Can you clarify the purpose of this PR? If it's really updating an existing API version, the changes should be file modifications, not additions.

Sorry, let me reedit my comment. This is a new version of the API. The purpose of this PR is to release a stable public version of this API. After our public preview testing, we wanted to remove unnecessary fields in the request body and remove api paths that wont be supported in the public release.

Without this we cannot tell what the real difference between your preview and stable versions are. Please create 2 commits that tell us the clear difference

Just pushed up the two commits. Just to add some more context about the changes in the stable version. We removed 2 fields in the request body for the Group Quota Request as we noticed that they were unused. We also removed API endpoints that are still being tested in preview but are not ready to be released in the public stable version


Adds EndTime to PsychSignalSentiment

Description

Previously, we would only set the Time property, which EndTime would set for us. However, we had no frame of reference as to when the data was began being aggregated.
In addition to this, we had no mechanism to model the delay from the API when retrieving data from it. I have set this delay to zero for the meanwhile.
Related Issue

Closes #3798
Motivation and Context

Live trading reconciliation
Requires Documentation Change

No
How Has This Been Tested?

Local regression tests and cloud testing
Types of changes

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ ] Non-functional change (xml comments/documentation/etc)

Checklist:

[x] My code follows the code style of this project.
[x] I have read the CONTRIBUTING document.
[ ] I have added tests to cover my changes.
[x] All new and existing tests passed.
[x] My branch follows the naming convention bug-<issue#>-<description> or feature-<issue#>-<description>

Lean is using EndTime so there shouldn't be an issue since the end times are always going forward
Since the offset is less than the data resolution ( Minute right? ) it might be rounded down, see https://github.com/QuantConnect/Lean/blob/master/Engine/DataFeeds/SubscriptionData.cs#L65 where we will round down before emitting - I think this could potentially happen in other places too.
The overlapping could confuse users.

Could we use a 1 minute offset instead? Would be pessimistic but would avoid these issues

* Lean is using `EndTime` so there shouldn't be an issue since the end times are always going forward

* Since the offset is less than the data resolution ( Minute right? ) it might be rounded down, see https://github.com/QuantConnect/Lean/blob/master/Engine/DataFeeds/SubscriptionData.cs#L65 where we will round down before emitting - I think this could potentially happen in other places too.

* The overlapping could confuse users.

Could we use a 1 minute offset instead? Would be pessimistic but would avoid these issues

Solely based on the fact that we will have time rounded down on us is enough to set a 1 minute offset. However, we should try to also aim to model live trading as accurately as possible. I'd like to discuss a solution with you if possible since there's a lot to consider here 👍

@gsalaz98 reviewed the stack and it seems that the only sticky point would be consolidators not being triggered https://github.com/QuantConnect/Lean/blob/master/Engine/AlgorithmManager.cs#L1277 which do not exist today.
My round down comment isn't valid because its applied on the data.Time and the offset is in the data.EndTime - see https://github.com/QuantConnect/Lean/blob/master/Engine/DataFeeds/SubscriptionData.cs#L65 closely
Regarding history requests specifying bar counts as periods https://github.com/QuantConnect/Lean/blob/master/Algorithm/QCAlgorithm.History.cs#L199, since the underlying implementation uses resolution it might cause it to not include some data point, since end time might be after, but note that PsychSignalSentiment is flagged as sparse data too, so the behavior of this api call wouldn't be that deterministic either way

Any feedback on the Travis errors?
1) Test Failure : QuantConnect.Tests.Engine.DataFeeds.LiveTradingDataFeedTests.HandlesAllTypes(AAPL.TiingoNews R735QTJ8XC9W,Hour,1,0,0,0,0,48,False)
     Expected: 48
  But was:  47

at QuantConnect.Tests.Engine.DataFeeds.LiveTradingDataFeedTests.HandlesAllTypes (QuantConnect.Symbol symbol, QuantConnect.Resolution resolution, System.Int32 days, System.Int32 expectedTicksReceived, System.Int32 expectedTradeBarsReceived, System.Int32 expectedQuoteBarsReceived, System.Int32 expectedAuxPointsReceived, System.Int32 expectedCustomPointsReceived, System.Boolean shouldThrowException) [0x00ab0] in <81539c702ded4bbc88110d66c72d5b06>:0

2) Test Failure : QuantConnect.Tests.Engine.DataFeeds.LiveTradingDataFeedTests.HandlesAllTypes(AAPL.TiingoNews R735QTJ8XC9W,Minute,1,0,0,0,0,120,False)
     Expected: 120
  But was:  119

at QuantConnect.Tests.Engine.DataFeeds.LiveTradingDataFeedTests.HandlesAllTypes (QuantConnect.Symbol symbol, QuantConnect.Resolution resolution, System.Int32 days, System.Int32 expectedTicksReceived, System.Int32 expectedTradeBarsReceived, System.Int32 expectedQuoteBarsReceived, System.Int32 expectedAuxPointsReceived, System.Int32 expectedCustomPointsReceived, System.Boolean shouldThrowException) [0x00ab0] in <81539c702ded4bbc88110d66c72d5b06>:0

3) Test Failure : QuantConnect.Tests.Engine.DataFeeds.LiveTradingDataFeedTests.HandlesAllTypes(AAPL.TiingoNews R735QTJ8XC9W,Tick,1,0,0,0,0,24,False)
     Expected: 24
  But was:  23

at QuantConnect.Tests.Engine.DataFeeds.LiveTradingDataFeedTests.HandlesAllTypes (QuantConnect.Symbol symbol, QuantConnect.Resolution resolution, System.Int32 days, System.Int32 expectedTicksReceived, System.Int32 expectedTradeBarsReceived, System.Int32 expectedQuoteBarsReceived, System.Int32 expectedAuxPointsReceived, System.Int32 expectedCustomPointsReceived, System.Boolean shouldThrowException) [0x00ab0] in <81539c702ded4bbc88110d66c72d5b06>:0

After some thought and inspection, I'm pretty sure that the test is failing because of my changes 😢
Probably with the time advances, we can't squeeze in an additional data point per day, causing the number of points to drop from 24 to 23, 48 to 47, and 120 to 119.
This is backed up by the fact that the FuncDataQueueHandler uses PsychSignalSentiment as the custom data to emit, and sets the EndTime parameter, causing it to be advanced 15s into the future:
https://github.com/QuantConnect/Lean/blob/cf1b6c340aae834058827db4c3c9a6cbbf98ad9b/Tests/Engine/DataFeeds/LiveTradingDataFeedTests.cs#L1319-L1345
@StefanoRaggi - Could you please review the test to see if my changes are the source of the test failing?

@gsalaz98 Given that the EndTime is being shifted 15 seconds forward, I believe the expected count should be one less, as reported by the failing test.
BTW, the tests were updated recently to throw for PsychSignal (as unsupported streaming data), in fact the PsychSignalSentiment tests are passing -- the TiingoNews tests are failing because the data type enqueued is PsychSignalSentiment in both cases 😃
I think the test should be updated to enqueue the correct data type.


Update component spec with default image if the image is not set

Signed-off-by: Mykola Morhun<EMAIL_ADDRESS>This MR explicitly sets default component image in component spec if it was not set manually.
Such behavior:

Makes it more clear for the user which image is used and how to change it.
Analysis of the component (including gitops creation) is made from actual component configuration in the cluster, not a modified in-memory copy.

Fix of PLNSRVCE-291

/test has-e2e

/retest

/retest


Bastion key handling needs to be improved

I had a wrong bastion key and fablib just kept on trying the postboot scripts that are executed as part of slice submit. It should've flagged the problem right away. It waited 4500 seconds until I without interrupting it fixed the key then it proceeded.

I also ran across this recently.  My bastion key expired, so I created a new one, but my configuration still was pointing to the old key.  So Slice.submit() kept trying with the old key, until there was enough authentication failures that triggered fail2ban.
I think the problem is that Slice.wait_ssh() (invoked by Slice.submit()) keeps trying to connect to the nodes for a full 30 minutes, in 20 seconds intervals, regardless of the type of failure:
https://github.com/fabric-testbed/fabrictestbed-extensions/blob/7c3eff01540f95c4b0183623b70f85c6d4e420e1/fabrictestbed_extensions/fablib/slice.py#L1937-L1940
This is likely to lead to a lot of avoidable support tickets in the future.
Perhaps we could try probing bastion with the supplied bastion related parameters,  and fail early if there's an authentication failure before invoking wait_ssh()?
To sketch out an idea:
try:
    bastion_client = paramiko.SSHClient()
    bastion_client.set_missing_host_key_policy(paramiko.AutoAddPolicy)
    bastion_client.connect(
        hostname=os.getenv("FABRIC_BASTION_HOST"),
        username=os.getenv("FABRIC_BASTION_USERNAME"),
        key_filename=os.getenv("FABRIC_BASTION_KEY_LOCATION"),
        passphrase=os.getenv("FABRIC_BASTION_KEY_PASSPHRASE"),
        look_for_keys=False
    )
except paramiko.AuthenticationException as e:
    # Report error and give up
    logger.error(f"Auth error: {e}")
    raise e
except paramiko.SSHException as e:
    # Unsure how to handle this -- same as above maybe?
    logger.error(f"SSH error: {e}")
    raise e
except Exception as e:
    # Could this be a transient error? Should we keep re-trying in that case?
    logger.error(f"Some other error: {e}")
finally:
    bastion_client.close()

Definitely probing and failing early is the way to go.


Store Spotify's refresh_token.

Spotify's access_token expires after a few hours. To be able to refresh the token, we need to be storing refresh_token.

Thanks!


exec /usr/local/bin/uvicorn: exec format error

Have you not adapted to AMD64 yet？？？

这是来自QQ邮箱的假期自动回复邮件。

您好，您发的邮件我已收到。谢谢

Still can't do it

@wwwrookie I see, give me a few days. I'm working on it. Actually, I'm trying to rebuild the Docker from the AMD and Windows machine directly and then test it and make sure everything works. I will update here soon.

ok  thanks

@wwwrookie I see, give me a few days. I'm working on it. Actually, I'm trying to rebuild the Docker from the AMD and Windows machine directly and then test it and make sure everything works. I will update here soon.

@wwwrookie please try the new Docker and let me know if you have any issues with that; for this scenario, it should work hopefully, but if not, let me know.

@wwwrookie please try the new Docker and let me know if you have any issues with that; for this scenario, it should work hopefully, but if not, let me know.

Still unable to run on the AMD platform

@socekin  Can you please share with me your operating system specs, so I can build a virtual machine exactly the same as yours on the same platform, and I can test it to replicate the error for myself? I appreciate you sharing this with me; I really need it.

@socekin Can you please share with me your operating system specs, so I can build a virtual machine exactly the same as yours on the same platform, and I can test it to replicate the error for myself? I appreciate you sharing this with me; I really need it.

@socekin Can you please share with me your operating system specs, so I can build a virtual machine exactly the same as yours on the same platform, and I can test it to replicate the error for myself? I appreciate you sharing this with me; I really need it.

I checked on Docker Hub and found that the OS/ARCH of the image is still linux/arm64/v8. I think we need to compile a linux/amd64 version. Has the image you compiled not been updated yet?

I installed QEMU on my VPS, then ran docker run --platform linux/arm64/v8 --shm-size=2gb -p 11235:11235 unclecode/crawl4ai:basic. It's now usable, and I hope it helps everyone.
install QEMU
docker run --rm --privileged multiarch/qemu-user-static --reset -p yes
Enable buildx
docker buildx create --use

@socekin Very helpful, right now I am rebuilding all images to be multi-platform and I will cover this too.

@socekin I think I'm done with fixing the issue with the Docker. I created two sets of images for ARM and AMD platforms. Please look at the comments I posted in another similar issue. I tried; I think it works now, hopefully. https://github.com/unclecode/crawl4ai/issues/240#issuecomment-2507773599


Run or raise functionality like in AwesomeWM?

Description
If an app is already running then just raise it i.e focus it and make it come to top if floating and if not then run the app.

pidof app && hyprctl dispatch focuswindow app || app&


Add MaxMindDB.cr to the list

Hi @veelenga ! Finally I did it 🙂

@delef cool, really happy you did


Question about structuring and loading

So basically after this commit https://github.com/folke/lazy.nvim/commit/b7c489b08f79765b7c840addc4e542b875438f47 it became apparent to me (since I'am using symbolic links for my config) that the previous structuring of my plugins is "wrong" for lazy.
The way I want to structure my config + plugins is this.
As you can clearly, see, I have a plugins.lua file inside my main lua folder which is passed as string to the setup function.
But this has the effect that the loader is trying to load each plugin related file I have inside lua/tt/plugins/ as modules, as it's clearly stated in the docs.

any lua file in ~/.config/nvim/lua/plugins/*.lua will be automatically merged in the main plugin spec

Do you think this is something that can or should be tackled? Cause I'd really wouldn't want to change my config structure.

what exactly is the issue here?

The issue is that each file inside my plugins folder contains a M.setup() function that I call from the config callback from the lazy plugin spec. But Lazy loader tries to individually parse the file as a plugin-spec.

you should just pass require"tt.plugins" to the setup function so it uses this spec

Yes that will work probably, but I think that way I will lose the automatic change detection.
 Closing this


Slack upgrade issues - Push Events being responded to multiple times

Logs / Issue tracking

Slack made an upgrade recently that changed how events were pushed which is causing HeyEmoji to get stuck in a responding loop.
This will require a GoLang update but it's not exactly known where exactly.
Current short term solution is to mute the HeyEmoji bot so the notifications aren't interrupting

I think I know what's going on;
HeyEmoji is responding to itself saying "leaderboard"

I wonder if we need to switch to socket mode (as mentioned here and here)?
Here's an example:
https://github.com/slack-go/slack/blob/master/examples/socketmode/socketmode.go
(this in particular)
I haven't looked any deeper than that..


NSRDB insert extra header line when merging multiple years

The following command insert an extra header line before the second year of data:
gridlabd nsrdb_weather -y=2014,2015 -p=45.62,-122.70 > weather.csv
This appears to be caused by two copies of the data being output.

This no longer occurs in develop.


Updates

What this PR does / why we need it:
This PR fixes remaining issues after the merge of PR #698.
In particular, we ...

upgrade to go 1.20 and update go dependencies accordingly
upgrade to Fabric 2.5
upgrade nanop proto compilier
fix proto build for the IRB demo
enable docker build-kit
replace marble chaincode with basic asset transfer chaincode from the fabric-samples repository

@munapower @Flamewind97 can you please have a look.
@munapower you should be able to test on your m1 mac by setting the following in your config.override.mk.
DOCKER_BUILD_CMD=buildx build
DOCKER_BUILD_OPTS=--platform linux/amd64

Then run cd $FPC_PATH && make -C utils/docker build build-dev run-dev to build the FPC docker images and start the dev container. Within the container you can just run make to build and test.

PR works fine to build dev on an M1 environment. Trying to build the run environments generates errors that seem to be tightly related to the M1 environment and can be addressed in another ticket.
make -C _build test || \
	(echo "PDO crypto tests failed. Define PDO_DEBUG_BUILD=1 environment for enabling logging in tests." && exit 1)
make[3]: Entering directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/_build'
Running tests...
Test project /project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/_build
    Start 1: utest
1/3 Test #1: utest ............................   Passed    3.29 sec
    Start 2: ttest
2/3 Test #2: ttest ............................***Failed    0.07 sec

    Start 3: attested_evidence_test.sh
3/3 Test #3: attested_evidence_test.sh ........***Failed    1.00 sec
attested_evidence_test.sh: Testing simulated attestation
error creating enclave

33% tests passed, 2 tests failed out of 3

Total Test time (real) =   4.44 sec

The following tests FAILED:
	  2 - ttest (Failed)
	  3 - attested_evidence_test.sh (Failed)
Errors while running CTest
make[3]: *** [Makefile:84: test] Error 8
make[3]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/_build'
PDO crypto tests failed. Define PDO_DEBUG_BUILD=1 environment for enabling logging in tests.
make[2]: *** [Makefile:25: test] Error 1
make[2]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto'
make[1]: *** [Makefile:11: test] Error 2
make[1]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common'
make: *** [Makefile:22: test] Error 2

Also for make to run correctly inside the container, before starting it the docker context should be reviewed. In my scenario, even though I had added a DOCKER_HOST variable set to the correct value it was not being used. Instead the context named desktop-linux was being used.
docker context ls
NAME                TYPE                DESCRIPTION                               DOCKER ENDPOINT                                     KUBERNETES ENDPOINT   ORCHESTRATOR
default             moby                Current DOCKER_HOST based configuration   unix:///var/run/docker.sock
desktop-linux *     moby                Docker Desktop                            unix:///Users/mariamunaro/.docker/run/docker.sock

To change this behaviour I had to issue docker context use default for this to change.
docker context ls
NAME                TYPE                DESCRIPTION                               DOCKER ENDPOINT                                     KUBERNETES ENDPOINT   ORCHESTRATOR
default *           moby                Current DOCKER_HOST based configuration   unix:///var/run/docker.sock
desktop-linux       moby                Docker Desktop                            unix:///Users/mariamunaro/.docker/run/docker.sock

From that point forward everything worked correctly for make clean and make build-dev

Thanks Maria, I will tackle this docker issue in another PR


Hi, confusion about the computation of the feature statistics similarity (mean&variance)

I'm dealing my unbalanced data with your study;
A little confusion: how to compute the Feature statistics similarity between the many-shot region and few-shot region?
Cuz the features in the few-shot region bins are less than that in many-shot region.

Thanks to your attention!

I'm not sure my understanding is correct:
the practice is computing the mean and variance value across the samples in the same bin, and finally each bin owns two features(the feature mean and the feature variance) ?  If so, the issue should be closed.

Hi - thanks for your interest. Yes, your understanding is correct -- the feature mean / (co)variance are computed over all samples in the same bin. Then you calculate the similarity between bins.


fix issue with trackpad scrolling

When scrolling with trackpad or touchpad onScroll is triggered multiple times. This fixes the issue with the velocity that the trackpad has which triggers the event multiple times. Tested on windows trackpad and mac touchpad.

Another possible solution is actually by using this package:
https://github.com/d4nyll/lethargy

@zwug I would say that nether my solution nor lethargy works correctly. Looks like a deep issue. Solution might as well be to expose a callback in the onScroll function and let the user decide how to tackle this.

Seems like a deep issue, yes. I want to avoid delegating to library user the trackpad issue. I think I will research this later, but it is not the top priority.

Hi,
Thanks for the work you've done for this library.
I am experiencing the same issue. Scroll is triggered multiple times on the trackpad of my mac pro.
Any plans to fix the issue?


Could you provide a working sample code that archives what's displayed on the gif?

I have looked at this repository for weeks and I still can't make the payment work due to some missing parts of the code, like the handleOnRedirect function. It would be easier if a working code sample is provided.

Hi @BtMwanza, sorry to hear you're having a hard time with the docs, we'll definitely work on improving it.
To display a payment button you can use the following.
https://github.com/Flutterwave/flutterwave-react-native#paywithflutterwave
Here's an example of what the handleOnRedirect function will receive.
https://github.com/Flutterwave/flutterwave-react-native#redirectparams
Hope this helps point you in the right direction.
Also, feel free to share your pain points with the docs, you can let me know what you tried, your expectations, and the unwanted results.
Please let me know if this worked for you.
Thanks.


JS breaks when saved filter are tried to apply on emty table

Steps to reproduce:

Create an empty table which saves the state of the filters via hash
Add the following to the url #{"col_0"%3A{}} (an empty filter on the first column)

Expected Result: Nothing should happen. It should try to apply the saved filters in a failsafe way.
Actual Result: JavaScript breaks with TypeError: i is null as it's trying to apply the filter.
Assumption: When removing the content of <tbody> in the example /dist/starter.html the filters aren't shown anymore. This could be the reason why applying the saved filters can't be applied. I'm not that deep into the source though.
Side info: It worked perfectly fine with v0.2. Also with v0.2 the filter inputs are shown even if the table is empty. Currently it is also reproducible when using local_storage as the save method.

Confirming, bug is fixed with 0.5.33.
Thank You!


Cancel open orders on exit

We need to enforce local / remote consistency as much as possible.
One piece of it can be done via cancelling all open orders (created via this instance of the library) on the exchange.

This doesnt seem like a good idea (non resilient, what about crash behavior, etc.)
Actually the opposite could be sensible, in order to avoid local / remote divergence...
Dropping for now


Set "minimum" tag in Makefile; Bump to K8s v1.19

Depends on:

https://github.com/openshift/release/pull/34349

/hold

/unhold

/cherry-pick release-2.6


Allow background click

Is it possible to allow click on background View when the popup is presented from bottom ?

@chlebta you could add gesture recognizer to popupController.backgroundView.


[BUG] High CVE in ASB SDK from Netty tcnative

Describe the bug
OWASP checks fail when including
compile "com.azure:azure-messaging-servicebus:7.7.0"
Exception or Stack Trace
netty-tcnative-classes-2.0.46.Final.jar<EMAIL_ADDRESS>cpe:2.3:a:netty:netty:2.0.46:::::::) : CVE-2014-3488, CVE-2015-2156, CVE-2019-16869, CVE-2019-20444, CVE-2019-20445, CVE-2021-21290, CVE-2021-21295, CVE-2021-21409, CVE-2021-37136, CVE-2021-37137, CVE-2021-43797
netty-tcnative-classes-2.0.47.Final.jar<EMAIL_ADDRESS>cpe:2.3:a:netty:netty:2.0.47:::::::) : CVE-2014-3488, CVE-2015-2156, CVE-2019-16869, CVE-2019-20444, CVE-2019-20445, CVE-2021-21290, CVE-2021-21295, CVE-2021-21409, CVE-2021-37136, CVE-2021-37137, CVE-2021-43797
See the dependency-check report for more details.
To Reproduce
Add Gradle OWASP plugin to your projects and run the "dependencyCheckAggregate" task daily, it will fail as soon as any high CVE is detected.
Expected behavior
OWASP check should pass, libraries should automatically get upgraded on regular basis to handle CVE

Gradle OWASP plugin
https://plugins.gradle.org/plugin/org.owasp.dependencycheck

https://github.com/Azure/azure-sdk-for-java/blob/main/SECURITY.md#reporting-security-issues

Added the OWASP Maven plugin and wasn't able to replicate the warnings Gradle produced using the dependencies mentioned in this issue.
<plugin>
  <groupId>org.owasp</groupId>
  <artifactId>dependency-check-maven</artifactId>
  <version>7.0.4</version>
  <executions>
    <execution>
      <goals>
        <goal>check</goal>
      </goals>
    </execution>
  </executions>
</plugin>

This appears to be a false-positive. To validate this was a false-positive I changed dependencies to include libraries that are known to have CVEs and warnings were produced.

Closing as based on investigation using OWASP this appears to be a false-positive.


Add Unity Build action

Builds the game for win-x86, win-amd64, mac-amd64, and linux-amd64 for every commit. Also allows you to check on a PR whether the changes build or not.
Built binaries can be found under artifacts of the action.

😢 welp this was still helpful for play-testing the game


Implement mark/unmark issue command

Create command to mark issue as complete and unmark to mark issue as incomplete
Mark Command:  issue -m ISSUE_ID
Unmark Command: issue -u ISSUE_ID
Add incomplete issue count method and completed issue cout method in project class, included these counts in ProjectCard display.
Also edited the command_usage messages in different command classes to standardise them

Codecov Report

Merging #105 (004ac45) into master (3e47cc5) will decrease coverage by 1.06%.
The diff coverage is 2.94%.

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


Alternative parser technology

Hum the parser code is quite impressively long why it's not using something like parboiled2 ?
https://github.com/sirthias/parboiled2

We are very excited to witness rapid development of fastparse (https://github.com/lihaoyi/fastparse), and it would be really interesting to have a fastparse-based parser that emits scala.meta trees with filled in tokens.
In the near future, I'll be addressing https://github.com/scalameta/scalameta/issues/150 and https://github.com/scalameta/scalameta/issues/154, which should make this issue approachable for contributions.

Maybe this is also a good contender to be included: https://github.com/begeric/FastParsers

@sirinath This ticket is not just about picking a parser combinator library, there are also has to be an implementation of full-blown parser for Scala grammar including all of its quirks.

For some one who attempts this the above might help the cause as it claims to have a similar interface as the Scala parse combinators.

My 2c is a "me too" to what @paulp said: the hard part about parsers is not parsing correct code (and relatively simple code, like scala/scala), but having clear (and well positioned) error messages

https://github.com/lihaoyi/fastparse/blob/master/scalaparse/shared/src/test/scala/scalaparse/unit/FailureTests.scala
@dragos I don't know what it'd take for you to be proven wrong, but IMHO this basically trumps Scalac's error messages in terms of correctness of parser: it shows all options that can make progress at the point of failure, with exact error positions.
Furthermore, apart from having a nice toString, the failure is actually a data structure. This means it's trivial to programmatically/interactively expand e.g.
SmallerExprOrLambda -> ParenedLambda | PostfixLambda

LocalMod            -> `abstract` | `final` | `sealed` | `implicit` | `lazy

BindPattern         -> Binding ~ InfixPattern | InfixPattern | VarId

and so on recursively as deeply as you would like. These aren't strings anymore.

Furthermore, because these aren't strings, you can easily tag parts of the grammar with identity extra-metadata-parsers such that if the failure trace contains these parsers, the metadata will be present in the stack trace and can be used e.g. for a custom explanation. This would be as simple as replacing
val ObjDef = P(...)

with
val ObjDef = P(...)(FuncName("ObjDef", "The definition of a Scala `object` or singleton")

A similar technique can be used to tag arbitrary sub-sections of parsers such that their failure results in custom error messages, e.g. making procedure-syntax contain a custom error that can be extracted to show the user would be as simple as swapping
`=`          -> `=`.failureMsg("Procedure syntax has been remove since 2.11.x, please us `def f: Unit = ...` if you want a function returning `Unit`")

And then extracting the message from the Failure object via
failure.traced.fullStack.collectFirst{case Tagged(_, msg) => msg }

Lastly, this has no dependencies, and parses at 40,000LOC/s, ~10x slower than Scalac's own parser
Is there anything else you'd from this? ^_^

Starting from 0.1.0-RC5, scala.meta's infrastructure no longer requires Tree.tokens to be assigned for every parsed AST. Now the only thing that the parser is expected to do is to assign Tree.origin, which is equivalent to providing a position, i.e. a start-point-end range. Our tokenizer is then able to calculate tokens on its own based on the provided position.
I hope that this will remove unnecessary barriers to providing an alternative parser for scala.meta trees.
The only additional complication that I can think of at the moment is the necessity to support the Quasiquote dialect of Scala, i.e. being able to accept stuff like ..$xs or foo(...$argss) and to transform it  to a scala.meta AST enriched by nodes representing ellipses and unquotes.
/cc @lihaoyi

Our parser has been serving us well for 3+ years, which shows that we're not in the market for alternative parser technologies. Therefore I'm closing this issue, and if something groundbreaking comes up, we can always reopen it.