Properly integrate CLA agreement into the workflow

Currently we just link to CLAhub, which is a bit lame. We could include it in the workflow directly, either using their API (which might involve improving it), or just having our own CLA which is agreed to as part of the flow.

It would be nice to remove the dependency on CLAhub. Feedback on the Eastleigh manifesto deployment of groupthink so far is predominantly on how confusing it is to get started and eliminating the CLAhub authentication step would help simplify things.

Yeah, it would be much better to just include CLA text in the "submit PR" page.


Add support for creating application and worker AMIs

A few things have been done here, but everything was done to support creating AMIs for the application and worker instances.

In order to move things along quicker, I've removed all monitoring hooks from the project. If this project moves beyond SBIR phase 1, we'll most likely leverage hosted monitoring services anyway.

I renamed some AWS specific environment variables so that they automatically get picked up by Boto. They allows us to avoid supplying things like region as a kwargs to Boto constructors.

The production Django settings file was busted. It now pulls instance metadata correctly and sets up ALLOWED_HOSTS.

AWS resource setup now happens via a Django management command and pulls information it needs via Django settings.

I had to jump through a bunch of hoops to prevent the AWS resource creation script from running during AMI creation, because it shouldn't be able to create or interact with other AWS resources at that time. I ended up forcing the issue via cloud-config.

Testing
Read the README included in the pull request, and once everything is setup, run the following command:
$ GIT_COMMIT="feature/hmc/ami-creation" ./rf_stack.py create-ami --aws-profile rf-stg --rf-profile staging

Note: This process makes use of the rf-stg API keys, which is different than the API keys associated with rf-dev. You can find the rf-stg keys on the file share.

I'm getting the following weeor when I try to run this command
./rf_stack.py create-ami --aws-profile rf-stg --rf-profile staging --machine-type rf-{app,worker}
Traceback (most recent call last):
  File "./rf_stack.py", line 7, in <module>
    from cfn.stacks import get_config

Fix to missing get_config reference is in https://github.com/azavea/raster-foundry/commit/ffa1969a6cfa5486789f7c61f6992980fe2c9af2.

Now getting:
./rf_stack.py create-ami --aws-profile rf-stg --rf-profile staging --machine-type rf-{app,worker}
There is no section [staging] in the configuration file
you specified. Did you specify the correct file

Can you add a deployment/default.yml with something like this as its contents:
[staging]
Region: 'us-east-1'

+1. Successfully created worker and app AMIs.
Needed a default.yml file in the deployment dir with the following.
[staging]
Region: 'us-east-1'
StackType: 'Staging'


Change image library to libpng and improve how palettized textures are extracted

Change the library used for PNG files. From stb to libpng.
Include the palette inside palettized textures (ci4 and ci8).

Currently this palette will be ignored when building back the PNG to a C array until we figure out a better solution.

Add TlutOffset attribute to <Texture> node.

This should be used only in ci4 or ci8 textures.
Is the offset of the used TLUT by the current texture.
ZAPD will try to automatically assign each TLUT to their corresponding ci textures based on their use in the extracted DLists.

Improve TLUT's overlapping handling.
Now ZFile is in charge of tracking textures, as oposed of ZDisplayList.
Adds a README.md.
Makefile: use make ASAN=1 to compile with Address sanitizer enabled.
Add easter egg.
Adds -crc/-output-crc parameter. If it is provided when invoking ZAPD, then ZAPD will create a file per texture containing its CRC hash.
Remove redundant CalcHash calls.
Probably something else I forgot :sweat_smile:

Is CalcHash() no longer called on all resources?

No. Are we interested in doing that?
I removed it since it was only used for textures, but I could re-add it.

Right now we're not calculating hashes for non-textures but it may be useful in the future. The function is virtual so it doesn't do any actual CRC calculations for non-textures and won't impact performance.

I changed it back to always calculate the hash for every extracted asset.


Intellij doctor check crashed

Hi, I keep getting this message when trying to run a new flutter project on intellij. I have reached out to intellij but thier support team claims it's a flutter issue. Can somebody please assist me with the issue attached.

Closing as duplicate of https://github.com/flutter/flutter/issues/94060, This issue is fixed on the master channel and the fix should be available on the stable channel in the upcoming stable release.


Sitemap update

Sitemap

Added to sitemap missing pages, categories and tasks;
Changed in sitemap so that some stale pages to indicate a weekly refresh

.deploy


[DOCS] Added description for camera2D missing members

Also fixed typo in AudioEffectFilter and fixed some descriptions to better understanding.

Thanks guys, done the changes, but please don't make me squash'm I'm kinda traumatized with this :(

If you follow the docs, there's nothing to be traumatized about: http://docs.godotengine.org/en/latest/community/contributing/pr_workflow.html#mastering-the-pr-workflow-the-rebase
And those docs even tell you that instead of making a new commit, you could have amended the original one directly.

Merged manually as 1063ddfeb.


[WIP] string_view support

Don't needs merge, just a idea

I think you would need to use basic_string_view<char_t> instead of string_view.

Yes, will change later

Close, replaced by the super newer: #457


L.polylineDecorator is null

When I use the https://cdnjs.cloudflare // leaflet.js everything works.  But when I put a copy of 'leaflet.js' in my local folder, L.polylineDecorator is null - no other changes.  I'm trying to run Leaflet offline (with local tiles), and I can't figure out how to make this work.

Hi!
Do you correctly include polylineDecorator after Leaflet? Do you use the async attribute?
Can you please write down how you link to your .js files in both cases? I can't reproduce this bug, but maybe I'm overlooking something.

Hi Benjamin,
I rearranged my ‘.js’ references in the html, and now with a local copy of leaflet.js it works.
Thanks!
But while I’ve got you (!!), I have another question.  My web app layout is:
XXXXXXXXXXXX
XXXXXXXXXXXX
YYZZZZZZZZZZZ
YYZZZZZZZZZZZ
YYZZZZZZZZZZZ
Where X is a top div with control widgets, Y is a status div, and Z is the Leaflet map div.  If I don’t explicitly turn off scroll bars, they are there and if people use them they can scroll the map so it overlays the top and left divs.  After turning off scroll bars, things are better but when tell leaflet to center the map at a latLng, the latLng location is offset down and to the right, about the same size as the top and left divs.
How do I fix this?
Thanks again in advance,
Paul
From: Benjamin Becquet<EMAIL_ADDRESS>Sent: Saturday, February 10, 2018 5:43 AM
To: bbecquet/Leaflet.PolylineDecorator<EMAIL_ADDRESS>Cc: Maynard, Paul Freedman<EMAIL_ADDRESS>Author<EMAIL_ADDRESS>Subject: [EXTERNAL] Re: [bbecquet/Leaflet.PolylineDecorator] L.polylineDecorator is null (#80)
Hi!
Do you correctly include polylineDecorator after Leaflet? Do you use the async attribute?
Can you please write down how you link to your .js files in both cases? I can't reproduce this bug, but maybe I'm overlooking something.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://github.com/bbecquet/Leaflet.PolylineDecorator/issues/80#issuecomment-364649194, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AgJBc1cYo2WioMflLjAsr55UaHp10lhxks5tTY7ggaJpZM4R7efU.


[3.1] [Constraint solver] Dont assume orphans are along in the inactive list.

Explanation: The inactive list may contain other disjunctions associated with bound
type variables, which will cause the constraint solver to crash.
Scope:  The crash showed up with a fairly simple expression involving ?. and ??, so it could potentially hit a significant amount of code. The code causing the crash is fairly new (merged on Monday).
SR Issue: https://bugs.swift.org/browse/SR-4056
Risk: Fairly low; it's a small "obvious" change to the orphan-constraint-handling code.
Testing: Compiler regression testing, plus the example from the fixed SR.

@swift-ci please test

LGTM!


grpc-web: add per route config

Hi guys,
I've been recently building a system that users gRPC-web and HTTP as communication protocols.
Something like:
static_resources:
  listeners:
    - name: listener_0
      address:
        socket_address:
          address: <IP_ADDRESS>
          port_value: 80
      filter_chains:
        - filters:
          - name: envoy.filters.network.http_connection_manager
            config:
              codec_type: auto
              stat_prefix: ingress_http
              route_config:
                name: my_grpc_service_route
                virtual_hosts:
                  - name: my_grpc_service
                    domains:
                      - "mygrpcservice.example.com"
                    routes:
                      - match:
                          prefix: "/MyGrpcService"
                        route:
                          cluster: my_grpc_service
                          max_grpc_timeout: 0s
                    cors:
                      allow_origin_string_match:
                        - prefix: "*"
                      allow_methods: GET, PUT, DELETE, POST, OPTIONS
                      allow_headers: keep-alive,user-agent,cache-control,content-type,content-transfer-encoding,x-accept-content-transfer-encoding,x-accept-response-streaming,x-user-agent,x-grpc-web,grpc-timeout
                      max_age: "1728000"
                      expose_headers: grpc-status,grpc-message
                  - name: my_http_service
                    domains:
                      - "myhttpservice.example.com"
                    routes:
                      - match:
                          prefix: "/"
                        route:
                          cluster: my_http_service
                    cors:
                      allow_origin_string_match:
                        - prefix: "*"
                      allow_methods: GET, PUT, DELETE, POST, OPTIONS
                      allow_headers: keep-alive,user-agent,cache-control,content-type,content-transfer-encoding,x-accept-content-transfer-encoding,x-accept-response-streaming,x-user-agent
                      max_age: "1728000"
              http_filters:
                - name: envoy.filters.http.grpc_web
                - name: envoy.filters.http.cors
                - name: envoy.filters.http.router

I always found weird that the envoy.filters.http.grpc_web is applied to both virtual hosts and to all the routes in them and I should just rely on the envoy.filters.http.grpc_web to skip non-gRPC-web routes so they fallback to plain HTTP.
Now I'm implementing some file uploads to a service behind Envoy and getting 413 Payload Too Large. Based on #2919, it seems like the envoy.filters.http.grpc_web filter is buffering the file upload causing the issue.
Maybe I'm just missing something fundamental since I'm pretty new to Envoy, but my question is: how can I avoid such behaviour? How can I have the grp_web filter applied only to the gRPC route?
Is really my only option to use 2 listeners (and 2 different ports)?
Thanks in advance!

Looking at the gRPC web filter, the first thing it does is check to make sure the request is actually a gRPC web request.  If not, it should basically be a no-op, early-returning the Continue codes and not buffering.  Are you sure those 413s aren't for large gRPC-web requests?

Yup. 100% sure it's for the file upload.
I don't expect the router or cors filters to be buffering the request. So gRPC is the only thing left.
Any suggestions on how to further troubleshoot the issue?

This is definitely still an issue for me.

@juanjoDiaz could paste the request headers for the file upload request? Especially the Content-Type of it. Thanks!

Hi @dio
I'm currently on holiday so this will have to wait until august. 🙂

Hi @dio
I'm currently on holiday so this will have to wait until august. 🙂
we also found the same problem,is it solved now?

This is definitely still an issue for me.

we also found the same problem,is it solved now?

Hi guys,
I've been recently building a system that users gRPC-web and HTTP as communication protocols.
Something like:
static_resources:
  listeners:
    - name: listener_0
      address:
        socket_address:
          address: <IP_ADDRESS>
          port_value: 80
      filter_chains:
        - filters:
          - name: envoy.filters.network.http_connection_manager
            config:
              codec_type: auto
              stat_prefix: ingress_http
              route_config:
                name: my_grpc_service_route
                virtual_hosts:
                  - name: my_grpc_service
                    domains:
                      - "mygrpcservice.example.com"
                    routes:
                      - match:
                          prefix: "/MyGrpcService"
                        route:
                          cluster: my_grpc_service
                          max_grpc_timeout: 0s
                    cors:
                      allow_origin_string_match:
                        - prefix: "*"
                      allow_methods: GET, PUT, DELETE, POST, OPTIONS
                      allow_headers: keep-alive,user-agent,cache-control,content-type,content-transfer-encoding,x-accept-content-transfer-encoding,x-accept-response-streaming,x-user-agent,x-grpc-web,grpc-timeout
                      max_age: "1728000"
                      expose_headers: grpc-status,grpc-message
                  - name: my_http_service
                    domains:
                      - "myhttpservice.example.com"
                    routes:
                      - match:
                          prefix: "/"
                        route:
                          cluster: my_http_service
                    cors:
                      allow_origin_string_match:
                        - prefix: "*"
                      allow_methods: GET, PUT, DELETE, POST, OPTIONS
                      allow_headers: keep-alive,user-agent,cache-control,content-type,content-transfer-encoding,x-accept-content-transfer-encoding,x-accept-response-streaming,x-user-agent
                      max_age: "1728000"
              http_filters:
                - name: envoy.filters.http.grpc_web
                - name: envoy.filters.http.cors
                - name: envoy.filters.http.router

I always found weird that the envoy.filters.http.grpc_web is applied to both virtual hosts and to all the routes in them and I should just rely on the envoy.filters.http.grpc_web to skip non-gRPC-web routes so they fallback to plain HTTP.
Now I'm implementing some file uploads to a service behind Envoy and getting 413 Payload Too Large. Based on #2919, it seems like the envoy.filters.http.grpc_web filter is buffering the file upload causing the issue.
Maybe I'm just missing something fundamental since I'm pretty new to Envoy, but my question is: how can I avoid such behaviour? How can I have the grp_web filter applied only to the gRPC route?
Is really my only option to use 2 listeners (and 2 different ports)?
Thanks in advance!

we also found the same problem,is it solved now?

@baoervsdier could you help us by sending a sample request when you do the file uploading? Thank you!

And
A similar problem has been mentioned, but it has not been resolved so far. The per_connection_buffer_limit_bytes parameter has been increased, but the error still exists.https://github.com/envoyproxy/envoy/issues/16395


Is this project still maintained or improved somewhere?

First , I think it's a great project, satisfies what I imagined for a "DAG Framwork", such as DAG base, easy to use, support thread, and so on.
When I go deeply to this project, I am puzzled about some detail. The project use adobe forest to define a tree, but use a Graph to manage the connection, it seems that the forest-tree has nothing to do with the Graph-tree.
So what's the state of this project now? Is there any new version of this project? Or is there any more material about this project?
Hope to get an answer, because I really like it and want to go on to maintain it.

The project use adobe forest to define a tree, but use a Graph to manage the connection, it seems that the forest-tree has nothing to do with the Graph-tree.

The forest-tree and the graph are orthogonal to each other.
The forest manages ownership of Nodes and nesting of nodes if one node is a child / sub-node of another node.
The graph is a representation of the dataflow graph itself. It can be used to visualize the graph, search for cycles etc.

So what's the state of this project now? Is there any new version of this project? Or is there any more material about this project?
The project is definitely being used by my former employer. I will get in contact with them to ask about their plans concerning maintenance of the public project.

Nice to hear that you like the project and are interested in maintaining it.

The project is definitely being used by my former employer. I will get in contact with them to ask about their plans concerning maintenance of the public project.

Thank you for your kindness first.
I read some materials about data oriented programming, most of them relates to the developing of   Games, is this project is a basis of a game developing too?

@CasparKielwein send an email to you, hope you have received it.

Hi,
Caspar already mentioned that the project is still in use at his former employer's. I am with said employer and currently preparing a commit with all of the changes, but there have been a lot of changes and documentation is a little sparse here and there. I will need some more time to get the docs up to date.
Regarding your wish to use this for game development, I'd say it's definitely possible, but this framework is (more or less) expecting a static dataflow graph. Getting it to work with dynamically created entities could get a little tricky.
Regards,
Justus

I read some materials about data oriented programming, most of them relates to the developing of Games, is this project is a basis of a game developing too?

Flexcore is implementing "Dataflow Programming"
That is unrelated to "Data Oriented Programming" even though the two concepts can be mixed.

Hi,
Caspar already mentioned that the project is still in use at his former employer's. I am with said employer and currently preparing a commit with all of the changes, but there have been a lot of changes and documentation is a little sparse here and there. I will need some more time to get the docs up to date.
Many thanks for updating this project, I have just understood the framework (not the detail) of this project and can't wait to see your latest improvements.
Regarding your wish to use this for game development, I'd say it's definitely possible, but this framework is (more or less) expecting a static dataflow graph. Getting it to work with dynamically created entities could get a little tricky.

I just wondered if this is a base architecture for game development, the real issue of mine is Media processing, because of the variety of user-defined processing steps, I need to create graph dynamically.
Now in a simple case, I found a way to do this, as you said, it's tricky, but it seems work
Anyway, I like this framework very much, and learned a lot, hope to learn more  ^_^

Regards,
Justus

I read some materials about data oriented programming, most of them relates to the developing of Games, is this project is a basis of a game developing too?

Flexcore is implementing "Dataflow Programming"
That is unrelated to "Data Oriented Programming" even though the two concepts can be mixed.

Yes, the two concepts is confusing to me.
I think they are both data-centered design, I can take "Dataflow Programming" as the framework, and later use "Data Oriented Programming" to optimize the efficiency.

Hi,
Caspar already mentioned that the project is still in use at his former employer's. I am with said employer and currently preparing a commit with all of the changes, but there have been a lot of changes and documentation is a little sparse here and there. I will need some more time to get the docs up to date.
Regarding your wish to use this for game development, I'd say it's definitely possible, but this framework is (more or less) expecting a static dataflow graph. Getting it to work with dynamically created entities could get a little tricky.
Regards,
Justus

please remind me if you have updated the project
thanks


Splash page and About Page

Sorry Ahmed, this was my fault.  I know I asked you to say "Developed by Ahmed Bodi," on the splash page and the about page but someone brought up the valid point that you didn't develop the original Bitcoin code.
Can you change the splash page and the about page to say, "Changes to the Bitcoin Core code made by Ahmed Bodi and the Terracoin Foundation."
Thanks man!

Closed by 98b912a3762db3ec7efcf053a1549895adac1e8f


Custom Theme is broken in new version.

Current Behavior
I used the next/expo starter some time ago to start my project. In the tamagui.config.ts I followed the documentation to create a new theme with some additions in the following way:
const newThemes = {
  ...themes,
  light: {
    ...themes.light,
    grayBackground: '#f9f9f9',
    whiteBackground: '#ffffff',
    // background: '#ff0000'
  }
}

I had then included it in the createTamagui function:

export const config = createTamagui({
 [...]
  themes: newThemes,
})

This used to work until a recent release. With the newest release I am getting the error:
src/tamagui.config.ts(90,14): error TS7056: The inferred type of this node exceeds the maximum length the compiler will serialize. An explicit type annotation is needed.
I guess the issue is that the compiler is trying to infer the type as I have not defined it. I tried to copy the Type Theme that the original themes uses, but it complains that properties are missing.
I also spent quite some time  trying to migrate to createThemeBuilder, but I ran into various challenges there as well, so that did not seem like a quick fix. How can I get my current code to run with the latest release?
Expected Behavior
No response
Tamagui Version
1.39.6

Reproduction
Use this code in tamagui.config.ts with the solito starter:

import { createTamagui, createTokens } from 'tamagui'
import { createInterFont } from '@tamagui/font-inter'
import { shorthands } from '@tamagui/shorthands'
import { themes, tokens } from '@tamagui/themes'
import { createMedia } from '@tamagui/react-native-media-driver'

import { animations } from './animations'

const newThemes = {
  ...themes,
  light: {
    ...themes.light,
    grayBackground: '#f9f9f9',
    whiteBackground: '#ffffff',
    // background: '#ff0000'
  }
} as Theme

const customTokens = createTokens({
  ...tokens,
  color: {
    brand: '#47A17E',
    lightGrey: '#ededed',
    darkGrey: '#dadada',
    lightRed: '#ff0000',
    darkBlack: '#1f1f1f',
    midDarkBlack: '#333333',
    // background: '#f9f9f9',
  }
  // ... see configuration docs for required tokens
})

const headingFont = createInterFont({
  size: {
    6: 15,
  },
  transform: {
    6: 'uppercase',
    7: 'none',
  },
  weight: {
    6: '400',
    7: '700',
  },
  color: {
    6: '$colorFocus',
    7: '$color',
  },
  letterSpacing: {
    5: 2,
    6: 1,
    7: 0,
    8: -1,
    9: -2,
    10: -3,
    12: -4,
    14: -5,
    15: -6,
  },
  face: {
    700: { normal: 'InterBold' },
  },
})

const bodyFont = createInterFont(
  {
    face: {
      700: { normal: 'InterBold' },
    },
  },
  {
    sizeSize: (size) => Math.round(size * 1.1),
    sizeLineHeight: (size) => Math.round(size * 1.1 + (size > 20 ? 10 : 10)),
  }
)

export const config = createTamagui({
  defaultFont: 'body',
  animations,
  shouldAddPrefersColorThemes: true,
  themeClassNameOnRoot: true,
  shorthands,
  fonts: {
    body: bodyFont,
    heading: headingFont,
  },
  themes: newThemes,
  tokens,
  media: createMedia({
    xs: { maxWidth: 660 },
    sm: { maxWidth: 800 },
    md: { maxWidth: 1020 },
    lg: { maxWidth: 1280 },
    xl: { maxWidth: 1420 },
    xxl: { maxWidth: 1600 },
    gtXs: { minWidth: 660 + 1 },
    gtSm: { minWidth: 800 + 1 },
    gtMd: { minWidth: 1020 + 1 },
    gtLg: { minWidth: 1280 + 1 },
    short: { maxHeight: 820 },
    tall: { minHeight: 820 },
    hoverNone: { hover: 'none' },
    pointerCoarse: { pointer: 'coarse' },
  }),
})

System Info
System:
    OS: Windows 10 10.0.22621
    CPU: (12) x64 Intel(R) Core(TM) i7-10750H CPU @ 2.60GHz
    Memory: 44.79 GB / 63.75 GB
  Binaries:
    Node: 16.15.0 - C:\Program Files\nodejs\node.EXE
    Yarn: 3.5.0 - ~\AppData\Roaming\npm\yarn.CMD
    npm: 9.5.0 - C:\Program Files\nodejs\npm.CMD
  Browsers:
    Edge: Spartan (44.22621.1848.0), Chromium (114.0.1823.67)
    Internet Explorer: 11.0.22621.1
  npmPackages:
    @babel/runtime: ^7.18.9 => 7.21.5
    @manypkg/cli: ^0.19.1 => 0.19.2
    check-dependency-version-consistency: ^3.0.3 => 3.1.1
    eslint: ^8.21.0 => 8.40.0
    node-gyp: ^9.3.1 => 9.3.1
    prettier: ^2.7.1 => 2.8.8
    turbo: ^1.8.3 => 1.9.6
    typescript: ^4.7.4 => 4.9.5

After some more looking in the documentation, it looks like I shouldn't define non theme colors in a theme, but rather as tokens or create a new theme with those tokens and follow https://tamagui.dev/docs/intro/themes - Ensuring valid types. I will close this ticket for now, as I will try to change my code accordingly.

I also have this exact issue today. But for me is by removing the default theme from Tamagui's theme, the issue is gone.


Build only changed files

Hi Team,
I was wondering if there is a way to build only the files that update instead of re-running the whole build process every time. Our currently build time is around 20 minutes which is horrible for us.
We are using V3 of middleman (and from what I've read V4 doesn't present any significant performance improvements so no point for upgrading)
Thanks for your help!

You can glob a single file, but if you use the blog or related files then it will not cascade to these.
https://github.com/middleman/middleman/issues/327


MWPW-136934 Grid Bug

Fixes grid issues caused by milo PR https://github.com/adobecom/milo/pull/1259
Overwrites section metadata grid styles to conform to how it was before milo PR

Resolves: MWPW-136934
Test URLs:

Before: https://main--bacom--adobecom.hlx.live/products/analytics/adobe-analytics-benefits
After: https://methomas-grid-bug--bacom--adobecom.hlx.live/products/analytics/adobe-analytics-benefits?martech=off
Before:  https://main--bacom--adobecom.hlx.live/products/campaign/benefits
After: https://methomas-grid-bug--bacom--adobecom.hlx.live/products/campaign/benefits?martech=off
Before: https://main--bacom--adobecom.hlx.live/products/experience-manager/digital-commerce
After: https://methomas-grid-bug--bacom--adobecom.hlx.live/products/experience-manager/digital-commerce?martech=off

I don't think the failing tests are related. It's a different block (comparison) and my tests passed locally


Do not install development dependencies on Fedora

It seems that diorite pulls in glib2-devel on Fedora. This is obviously development library and should not be needed. Checking the package dependencies:
$ sudo dnf repoquery --requires diorite0.2
Last metadata expiration check: 0:31:49 ago on Tue Apr 12 12:56:33 2016.
/sbin/ldconfig
/usr/bin/pkg-config
/usr/bin/python3
libX11.so.6()(64bit)
libc.so.6()(64bit)
libc.so.6(GLIBC_2.14)(64bit)
libc.so.6(GLIBC_2.2.5)(64bit)
libdioriteglib-0.2.so()(64bit)
libgdk-3.so.0()(64bit)
libgdk_pixbuf-2.0.so.0()(64bit)
libgio-2.0.so.0()(64bit)
libglib-2.0.so.0()(64bit)
libgobject-2.0.so.0()(64bit)
libgtk-3.so.0()(64bit)
libpango-1.0.so.0()(64bit)
libpthread.so.0()(64bit)
libpthread.so.0(GLIBC_2.2.5)(64bit)
pkgconfig(dioriteglib-0.2)
pkgconfig(glib-2.0)
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(FileDigests) <= 4.6.0-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rpmlib(PayloadIsXz) <= 5.2-1
rtld(GNU_HASH)

This is very likely caused by the dependency on pkgconfig(glib-2.0), which is there due to inclusion of pkgconfig files. As per Fedora guidelines [1], these files should be placed into -devel subpackage and this would avoid this dependency.
But this is just my guess, since I cannot find the .spec files anywhere ....
[1] https://fedoraproject.org/wiki/Packaging:Guidelines#Pkgconfig_Files_.28foo.pc.29

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

Hello @voxik. Thanks for taking the time to report this issue. Indeed, Diorite library is currently built as a single package without a -devel sub-package.

I'm closing this issue as Nuvola 3.1 Milestone 2 deprecates DEB/RPM packages in favor of cross-distribution flatpaks and no improvements are planned for the current DEB/RPM packaging.

Probably time to prepare my own RPMs .... But thx for Nuvola development 👍

Probably time to prepare my own RPMs

Sure. I don't have time to do that any more but community RPM builds are welcome 👍


Update README.md

Remove references to deprecated queries
Perhaps add more more detail to setup + environment
Perhaps add a few relevant query examples
Perhaps add a Contributing section

i.e., main vs. testing vs. staging vs. production

Closing, good enough for now (not wrong anymore).


Add example use case to readme

It's very difficult to work out if this module could be of any use to me because the readme is very technical and lacks any examples of real-world use cases.

Take a look at the site over at https://pushmodule.slact.net . There's an example javascript chat client with readily-available source that might be of help to you.
I will also be sure to add examples to the next release, which will be a major feature push.


Assessments: Improved assesment view for instructors

Checklist
General

[ ] This is a small issue that I tested locally and was confirmed by another developer on a test server.
[X] Language: I followed the guidelines for inclusive, diversity-sensitive, and appreciative language.
[X] I chose a title conforming to the naming conventions for pull requests.

Client

[x] I followed the coding and design guidelines.
guidelines](https://docs.artemis.ase.in.tum.de/dev/guidelines/client-tests/).
[x] I documented the TypeScript code using JSDoc style.
[x] I added multiple screenshots/screencasts of my UI changes.
[x] I translated all newly inserted strings into English and German.

Motivation and Context
This PR is linked to #4176.
After assessing a single submission, the button for importing this submission as an example submission appears directly under the cursor for submitting the assessment and cause instructors to accidently click on it.
Description
The button position for importing as example submission has been moved. In addition a dialog window has been added that opens after clicking the button in order to confirm the importing process.
Steps for Testing
Prerequisites:

1 Instructor
1 Student
Text Exercise with all dates set, so that one has enough time to start and submit the exercise and asses

Log in to Artemis
Navigate to course overview
Start the created text exercises
Submit any text
Wait for the submission period to be over
Navigate to course management, and the corresponding text exercise
Open submission dashboard
Click the button "Assess submission"
Add Feedback and submit
The buttons should be aligned correctly. When clicking the import button, the instructor should be prompted with a verification dialog. If aborted, the submission should not be imported. If approved, the submission should be imported.

Review Progress
Code Review

[ ] Review 1
[ ] Review 2

Manual Tests

[ ] Test 1
[ ] Test 2

Test Coverage
assessment-header.component.ts: 92.3% | 78.26%
Screenshots
Before:

After:

Note: This PR hotfixes the input value 'isAtLeastInstructor' for the component assessment-layout.component.ts. As this value is redundantly defined as an attribute in the input object exercise, the input 'isAtLeastInstructor' should be replaced with the usage of the attribute in exercise. Follow up in #4428.

Tested on ts3 and everything worked perfectly fine.

a) [...] So do you think it would be a good idea to change all "import" strings into "export"?

I think 'import' may fit better than 'export'. In my understanding, 'exporting' suggests exporting some files from the Artemis server to the outside of Artemis (e.g. local computer). I agree, that 'import' may be a little bit confusing here but 'export' even more imo.

b) This might be tricky (because CSS and alignment can be very frustrating) but if you could remove the right margin for the very right button it should perfectly align with the rest.

Changed in 39cca73.

I changed all client-side translations from 'import' to 'use as' example submission in f23addd.
I did not change the server-side code, where 'import' is still used but not visible to the end-user. Should I also incorporate changes on the server side (functions, rest endpoints, etc.)?


How to contribute

It's not super clear from the readme if or how we want people to contribute to these documents. Obviously they went through a process through various oma3 working groups so maybe contact info on how to join those working groups at least?

Good point.  I'll add links to the README.  Currently the only way to contribute is to join OMA3 but this will likely change in the near future.  https://www.oma3.org/join.


producer: bugfix for aggregators getting stuck

In circumstances where Flush.Messages and/or Flush.Bytes were set but
Flush.Frequency was not, the producer's aggregator could get stuck on a retry
because a metadata-only chaser message would not be enough on its own to trigger
a flush, and so it would sit in limbo forever.
Always trigger a flush in the aggregator when the message is a chaser. This has
the additional benefit of reducing retry latency when Flush.Frequency is set.
Add a test for this case.
@Shopify/kafka

This PR also DRYs up a pattern in the tests that was annoying me

This makes sense to me; if the test case went from red to green I am happy.
Would writing these tests be easier if we would have a mock Client?

This test in particular was straightforward - I'd have to think about the other two.


Can the values of this package be used in android and ios native files?

Can we use these variables that are obfuscated in files like the Info.plist or Android Manifest?

Unfortunately not. You have to make those separately.

How could one approach something like this? Currently theres no existing way to do it in Flutter?

You could write some smart shell script that does it for all 3 platforms (preferably in your CI/CD pipeline). You can probably use Fastlane for all of it.


publish already transpiled code to npm

this is on the right path with npm preversion however need to make sure that @yarn-cli uses the transpiled code.

resolved via b90ea23cce835ad1e2f48b82447cc4f3f3a2155d


[easy] a couple small cleanups

Noticed these while looking at the smoke tests. Also remove language/test.sh because it's no longer used and its main functionality is now in cargo xtest.

:broken_heart: Test Failed - commit-workflow

/land


Definition of a MRAA FFI for TypeScript language

The goal is to provide a support for the typescript language.
To do that, you just need to create a FFI for Typescript.
This has been done in src/typescript/mraa.d.ts
Next, I just update the set of examples usig the typescript language

Hi @barais, thanks for the work & your interest in mraa! I'm honestly a little confused as to what you are doing and the reasons behind it, could you explain a little more? I've got a small list of queries - excuse my lack of knowledge until you made this PR I was unaware of 'typescript' :)

The .ts files seem to reuse the nodejs examples, why are both necessary?
Is the mraa.d.ts autogenerated? Does it generate from the mraa js module?
Since this requires the nodejs module which is automatically generated - can we automatically generate the dts?
What is the node dts, that looks like something which is always required, why should we distribute it?

@rwaldron These examples all work on my box on nodejs - feel free to open a new PR or issues if you think we can do it in a better way, the parseInt() call may have been superfluous I was being fast and got annoyed at node's constant misunderstanding of my hex. This is probably not the place to discuss these issues though - unless specificaly relevant to typescript.
@barais If it's easier feel free to pop into #mraa on freenode IRC and chat with us (invitation is open to everyone)

These examples all work on my box on nodejs

How does x.address(...) know to change the string argument that it's receiving to a number?

the parseInt() call may have been superfluous I was being fast and got annoyed at node's constant misunderstanding of my hex.

As long as you're writing HexIntegerLiterals the correct way, eg. 0x00, then there is no reason that "node" will misunderstand. Additionally, "node" has nothing to do with the actual execution of code—this is done by v8.

This is probably not the place to discuss these issues though - unless specificaly relevant to typescript.

I saw them here for the first time—I didn't realize that the JS files had all been changed to be written that way.

@rwaldron

The .ts files seem to reuse the nodejs examples, why are both necessary?

I can create example that use class to be more on the typescript spirit.

Is the mraa.d.ts autogenerated? Does it generate from the mraa js module?

Partialy but I can improve my generator to fully generate the d.ts if you prefer for supporting evolution.

Since this requires the nodejs module which is automatically generated - can we automatically generate the dts?

I don't think so

What is the node dts, that looks like something which is always required, why should we distribute it?
To be sure that the examples works directly. But we can also provides something in a Readme.

The idea behind this work is that f some developper, especially the one that comes from Java or C#, it is a way to get something familiar. It also provides also refactoring capabilities.

@barais Thanks for explaining a little, it's very helpful.

The examples are meant to show a minimal working set for working with the library, if the js examples already work I see no reason to provide more examples. The less code is around, the easier it is to maintain :)

Honestly fully generating the d.ts is likely the only way this would get into master, whilst we endevaour to make little change to libmraa maintaining both a C++, C and SWIG APIs all in sync is hard and having a d.ts file to update would mean we'd likely end up with code rotting.

I dont think your i2c or spi works because from what I see in the d.ts you don't do the correct translations as we do with SWIG.

To be honest I'm struggling to understand whether this should be included, to get C# or java support we can use SWIG to generate bindings which would be easier to support and fits in with our existing model, we've done it with PHP & go with little trouble and at least java is very well supported in SWIG. What's the advantage of using typemaps to do it instead?
@rwaldron ah yes the address() param as modified there doesn't work. I had some issues with HexIntegerLiterals in node, I'll have to try again.

Honestly fully generating the d.ts is likely the only way this would get into master, whilst we endevaour to make little change to libmraa maintaining both a C++, C and SWIG APIs all in sync is hard and having a d.ts file to update would mean we'd likely end up with code routing.

I fully agree, I will provide this generator from .hpp header file or swig interface files.

I dont think your i2c or spi works because from what I see in the d.ts you don't do the correct translations as we do with SWIG.

I will correct that.

To be honest I'm struggling to understand whether this should be included, to get C# or java support we can use SWIG to generate bindings which would be easier to support and fits in with our existing model, we've done it with PHP & go with little trouble and at least java is very well supported in SWIG.

At the end, it is not for developing with C# or  Java but with TypeScript. Typescript is also a language which is used by javascript and nodejs community and it requires this d.ts file.

What's the advantage of using typemaps to do it instead?

basically, it is just typing information for typescript compile. At the end, it directly use the js library you already provide.
I propose you  reject this pull request. I will rework on it and provide the d.ts generator. Next time I will contact you on IRC before, to see if it is valuable for the community. If it is not I will keep it on a public repository.
Thanks for your work and your quick review
Regards

Ok, I think I understand much better now, it provides static typing and object handling as a superset to js by means of a d.ts wrapper/header, makes sense. Do you have a link to your generator? I'd be very interested in playing with it if it's publicly available :) Because our code is actually C++ we have the typing information already, by using the output from SWIG you should be able to gather all the information you need to generate such a header on the fly, which would be quite cool.
Sure, I'll close this for now, but I'd be really interested to hear from you again so do drop by #mraa. I think something like this would be valuable to the community, we have a very wide range of developers from a lot of backgrounds so providing more choice is always a good thing!

it provides static typing and object handling as a superset to js by means of a d.ts wrapper/header, makes sense.

But only at "development time". All of that is stripped away before the code is actually run, which leaves it at "just JavaScript".


Changes required to support 4.18

Move common.sh content to update-hosts.sh (to avoid override by https://github.com/openshift/installer/blob/6320ceb8f5c0ca351f16924e7888088fa97eb64b/data/data/agent/files/usr/local/bin/common.sh).
Create the recovery GRUB menu entry manually (to avoid mount failure by coreos-boot-edit.service).

/test all

/test all


Allow changing user's language and timezone from settings

It's somewhat sad that these cannot be changed after registration, requiring the user deletes and recreates his account.
It should be only a matter of restarting his engine.

We're not going to support any language but English, and the timezone is not that important. I'm removing this from the release.


emails: Add preheader to "new login" emails.

Fixes: #9866

@Anupam-dagar can you post a screenshot of the result in gmail?  Also, you should look into the CI failures.

@timabbott yeah, I'll attach a screenshot. For the circle CI failures, I don't know why it is failing. I have messaged a traceback in #test-suites. Its failing due to scrapy and ifttt. A 404 was also reported in the traceback.

@timabbott I fixed the earlier Circle errors by rebasing my branch. Currently I think it is giving a casper flake. The tests are passing on local system. Attached below is the screenshot of the changes.

Merged, after adding an update to version.py so re-provisions are requested after rebasing onto this.  Thanks @Anupam-dagar!


Increment wagtail. Update ITSystemHardware model and admin report outputs.

This change is

Coverage decreased (-0.03%) to 50.323% when pulling 9483df79cca00c3ec1eee150df9c3cd4cd7c0a5d on ropable:master into 75ec97c3de22a83659bc6e20077b28822d768b9f on parksandwildlife:master.


What's the current way to install the Fabric SDK now that WebPI is retired?

On the page there is a hint that WebPI will be retired tomorrow. But there is no way described to install it after 7/1/2022.

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 23e79576-36ff-8e39-9d21-adc897608b73
Version Independent ID: bb904115-2166-6871-6347-0941dbb32d2a
Content: Set up a Windows development environment - Azure Service Fabric
Content Source: articles/service-fabric/service-fabric-get-started.md
Service: service-fabric
GitHub Login: @peterpogorski
Microsoft Alias: sukanyas

Hello @MartinDemberger , please refer to this blog post https://www.microsoft.com/web/downloads/platform.aspx.

Q:  What if I still need something from WebPI to maintain a legacy system?

A:  Take a look at creating a WebPI Offline Feed - you can setup a mini WebPI feed and installer repository locally that will allow you to continue to deploy products to legacy machines.  Remember to download and store copies of the WebPI installer itself (both x86 and x64) as those will be removed per the dates above.

You mean that you won't update the documentation on https://github.com/MicrosoftDocs/azure-docs/blob/main/articles/service-fabric/service-fabric-get-started.md?

The page mentions that the tool will be retired fairly soon (July 1, 2022), so you may need to look for alternative ways to install this after that date. Stay tuned!

I assume you have another ticket wo track this change. Are you able to give me a link so I can follow it and update our onboarding documentation.

Hi @peterpogorski , could we make it clearer in our documentation?


Puttable or alternative APIs

I'm trying to replace Node Stream API with Channel API and get real backpressure (not buffering, throttling, highWaterMark or other heuristic approximation Node and RxJS do) for learning purpose.
Here is my attempt with comments about the problem I've encountered:
function readFile(path, opts) {
  let outChan = new Channel(1);
  let inStream = Fs.createReadStream(path, {encoding: "utf-8"});
  console.log("== READ START ==");
  inStream
    .on("readable", async function () {
      console.log("readable!");
      let chunk;
      do {
        console.log("reading...");
        // inStream.pause(); does not help, flowing mode only?!

        ////
        // await outChan.puttable(); -- need something like this
        //// -- imaginary Promise which resolves when you can put into Channel

        chunk = inStream.read(); // may immediately cause another "readable" event
        await outChan.put(chunk);
        // inStream.resume(); does not help, flowing mode only?!
      } while (chunk !== null);
    })
    .on("end", function () {
      console.log("== READ DONE ==");
    });
  return outChan;
}

function writeFile(path, opts, inChannel) {
  let outStream = Fs.createWriteStream(path, opts);
  console.log("== WRITE START ==");
  (async function () {
    let chunk;
    while ((chunk = await inChannel.take()) !== null) {
      console.log("writing...");
      await timeout(1000); // should stop readable for a second
      // ... write implementation ...
    }
    console.log("== WRITE DONE ==");
  })();
}

readFile("sample.jpg", {}); // -- problem is here already
// writeFile("sample2.jpg", {}, readFile("sample.jpg", {}));

The API of ReadableStream made in a way that as soon as you call .read() it immediately resumes with a next chunk. I need to pause reading somehow but there is no API to check if Channel is writable right now. I can't just await channel.put(foo); in this case. Do I miss something?

Readable streams are a tricky one to work with. In order to properly support their expectations, I would potentially need a #write() method which returns either true or false, depending on whether or not backpressure should be assumed. Then, we would also potentially need a way to support Channel#on('drain', callback) to tell the reads to continue piping. Both of these items would be very specific to the nodejs stream expectations. I believe they could be implemented, but it would tie us to support a specific external library as well.
If we do decide to support something like your proposal, I would probably call it #drain(), and mimic how nodejs streams handle the drain event. I'm not convinced it would be enough, given your example code though -- I'm really not sure how a ReadStream#on('readable', callback) would handle a callback which returns a promise. You could try something like this, instead of your callback for #on('readable') (attaching a data event handler puts the stream into flowing mode):
  inStream.on('data', async data => {
    inStream.pause();
    await outChan.put(data);
    inStream.resume();
  });

But a glance at that has me slightly concerned about performance, especially if you have to pause/resume the instream every time.

I agree. Node Stream API is very specific and this single use case should not dictate us how the library API should look like. We definitely need to collect more use experience. So let's close this issue for now and if or when we hit something similar again it may be reconsidered.


x/lockup: Move messageServer logic for LockTokens into keeper method

Closes: #944
Description

Move LockTokens logic to its keeper method
I just want to make sure my approach is right before I modify test files
Also I'm wondering where I can find other validation logic for x/lockup

For contributor use:

[ ]  Move validation logic
[ ]  Move LockTokens logic
[x]  Fix test cases

Fixed test cases. Ready for review!

Sorry for the delay in reply. I think the way I'd recommend architecting this, is we have a single point of entry function LockTokens. That function does what the message did before.
Basically determining that:

[ ] The owner is correct
[ ] If there is a prior lock, call add tokens to lock
[ ] If there is no prior lock, create a new lock. (This would involve renaming the existing ``LockTokensfunction into a new function, perhaps calledCreateLock`)

Codecov Report

Merging #1233 (4432b79) into main (f56fbe5) will decrease coverage by 0.03%.
The diff coverage is 9.43%.

:exclamation: Current head 4432b79 differs from pull request most recent head b14011a. Consider uploading reports for the commit b14011a to get more accurate results

@@            Coverage Diff             @@
##             main    #1233      +/-   ##
==========================================
- Coverage   19.82%   19.79%   -0.04%
==========================================
  Files         202      202
  Lines       27685    27720      +35
==========================================
- Hits         5489     5486       -3
- Misses      21175    21214      +39
+ Partials     1021     1020       -1

Impacted Files
Coverage Δ

x/gamm/pool-models/balancer/amm.go
17.58% <ø> (ø)

x/gamm/pool-models/stableswap/amm.go
43.28% <0.00%> (-12.49%)
:arrow_down:

x/gamm/pool-models/stableswap/pool.go
0.00% <0.00%> (ø)

x/lockup/keeper/lock.go
54.85% <100.00%> (-0.47%)
:arrow_down:

x/lockup/keeper/msg_server.go
86.30% <100.00%> (+3.80%)
:arrow_up:

Continue to review full report at Codecov.

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

@ValarDragon @alexanderbez Made all the suggested changes!

I think the major goal of the issue was to move the logical gate of determining if it's an existing lock to a separate keeper method, whilst this PR only moves the basic checks that were done in msg_server.go to keeper.
I do think that this PR itself does contain useful changes that could be merged to main, but I do think that the main goal of the ##944 would remain unsolved and would have to create a seperate PR for it later on.

Thank you @mattverse for the insightful review. I was a bit confused whether to move the entire "existing lock" logic or just simple validation checks, but i've moved the entire logic as per your suggestion. Should be good now :)


Upgraded to OpenSearch 1.2.3.

Signed-off-by: dblock<EMAIL_ADDRESS>Description

Upgraded to OpenSearch 1.2.3
Expanded build matrix to MacOS
Added bin to .gitignore

Check List

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

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

I don't get how I'm supposed to fix this or why this happens. Adding import de.thetaphi.forbiddenapis.gradle.ForbiddenApisPlugin doesn't seem to do anything?
* What went wrong:
A problem occurred evaluating root project 'plugin-template'.
> Failed to apply plugin class 'de.thetaphi.forbiddenapis.gradle.ForbiddenApisPlugin'.
   > Could not create plugin of type 'ForbiddenApisPlugin'.
      > Could not initialize class de.thetaphi.forbiddenapis.gradle.ForbiddenApisPlugin

I don't get how I'm supposed to fix this or why this happens. Adding import de.thetaphi.forbiddenapis.gradle.ForbiddenApisPlugin doesn't seem to do anything?
* What went wrong:
A problem occurred evaluating root project 'plugin-template'.
> Failed to apply plugin class 'de.thetaphi.forbiddenapis.gradle.ForbiddenApisPlugin'.
   > Could not create plugin of type 'ForbiddenApisPlugin'.
      > Could not initialize class de.thetaphi.forbiddenapis.gradle.ForbiddenApisPlugin

Interesting..do you who is pulling ForbiddenApisPlugin?
From build.gradle I dont see anything.

Looks like OpenSearch is doing it via gradle.
https://github.com/opensearch-project/OpenSearch/search?q=ForbiddenApisPlugin

The current error is
> Task :yamlRestTest

org.opensearch.path.to.plugin.RenameClientYamlTestSuiteIT > initializationError FAILED
    java.lang.NoClassDefFoundError: org/apache/logging/log4j/core/Layout

I don't get why this is happening.
@reta maybe you will have some ideas?

@AmiStrn any ideas how to fix this?

@dblock oh I know what this is about

Its gotta be something in the build.gradle file. It is pretty late on this side of the globe. I can take a look later on friday unless @reta has it pin pointed already:)

@dblock I created this pull request to fix the issue https://github.com/dblock/opensearch-plugin-template-java/pull/1

Its gotta be something in the build.gradle file. It is pretty late on this side of the globe. I can take a look later on friday unless @reta has it pin pointed already:)

I bit more tricker, it is optional dependencies, which seems to be treated differently when api "org.opensearch:opensearch:${opensearch_version}" vs   api project(':server') :(

🤯  @reta I don't know why or how you knew how to fix this one but hat tip

exploding_head @reta I don't know why or how you knew how to fix this one but hat tip

It happens I run into that a few days ago while working on POC to move out the repository plugins :smile:

@CEHENKLE Can you please help with permissions here? We have a 2 people approvals required by the org, and there's not 2 people maintaining this repo.

@AmiStrn cool if I add @saratvemulapalli to PR reviewers to this project?
Maybe @reta is also interested?

@AmiStrn cool if I add @saratvemulapalli to PR reviewers to this project?
Maybe @reta is also interested?

@dblock I am certainly in, thank you

@AmiStrn cool if I add @saratvemulapalli to PR reviewers to this project?
Maybe @reta is also interested?

@dblock I am certainly in, thank you

Thanks. @AmiStrn LMK if it's ok to add these two

Thanks. @AmiStrn LMK if it's ok to add these two with write permissions?

@saratvemulapalli and @reta are more than welcome:)

@dblock i think i can add them myself. is this ok in terms of how we should be doing things?

@dblock I added @saratvemulapalli because he is in the org it seemed to work fine. However, im gonna need help with @reta  🙏

@dblock I added @saratvemulapalli because he is in the org it seemed to work fine. However, im gonna need help with @reta 🙏

Exactly. I think org owners need to do something to bring in an external user for the first time. I’ll go find out how.

@reta you should have received an invite to this repo, please let me know if you haven't

@dblock all good, got it and accepted it, thank you! ❤

@dblock all good, got it and accepted it, thank you! ❤

Thank you for contributing!


Offer dummy user for logging services with demo gateway

Seems like it would be an easy way to make it one tiny bit simpler to see how things look on a potentia user's most important platform ;)

Maybe I'll make this an omni-ticket for generally improving evaluation experience :)
Let's use kiwi irc instead of webirc:
https://kiwiirc.com/nextclient/#irc://chat.freenode.net/#matterbridgechat?nick=emily-warren-roebling

Using<EMAIL_ADDRESS>where possible:
https://www.mailinator.com/v3/index.jsp?zone=public&query=hellodemo#/#inboxpane
Service: username / password / email

[x] Discord: hellodemo / hellodemo /<EMAIL_ADDRESS>[x] Slack: hellodemo / hellodemo /<EMAIL_ADDRESS>[ ] Matrix:
[ ] Mattermost:
[ ] Twitch:
[ ] Zulip:
[x] open.rocket.chat: hellodemo / hellodemo /<EMAIL_ADDRESS>[ ] Gitter
[ ] XMPP:
[ ] Steam:
[ ] Hipchat Being sunset
[ ] ssh-chat

Worth adding a link to a rocketchat demo too? Seems not incl, but wondering if there's a reason :)
Can we add ssh-chat? Could we install in on a server you're already using for matterbridge gateway?

closing because no activity


Add some badges

It would be nice to have some badges with the version number of this project on them.

Done with commit 3c8d7fd.


Changed git and doc link to new repo address

From the old repo:

Note: This repository is no longer maintained. The official repository is now at phonegap/phonegap-plugin-barcodescanner.

Nice; can you make this PR into dev-next? That's the branch we use to base new releases off of.

I'll try... new to all of this.


style(extra-zed): Add cursor color and change active line background

Thanks for the PR @byt3m4st3r!


cc-wrapper: broaden explicit libc++abi linking for LLVM stdenv

Description of changes
This change ensures that libc++abi is linked on all platforms explicitly by cc-wrapper if stdenv is LLVM.
This is designed to address https://github.com/NixOS/nixpkgs/issues/166205
Rationale:
Currently, attempt to build c++ software which requires abi-realted features like exceptions using LLVM >=12 breaks link phase.
For example, boost build(fails):

nix-build -E "with import {}; pkgs.boost-build.override {stdenv = pkgs.llvmPackages_14.stdenv;}"

> clang++ -x c++ -std=c++11 -O3 -s -DNDEBUG builtins.cpp class.cpp command.cpp compile.cpp constants.cpp cwd.cpp debug.cpp debugger.cpp execcmd.cpp execnt.cpp execunix.cpp filesys.cpp filent.cpp fileunix.cpp frames.cpp function.cpp glob.cpp hash.cpp hcache.cpp hdrmacro.cpp headers.cpp jam_strings.cpp jam.cpp jamgram.cpp lists.cpp make.cpp make1.cpp md5.cpp mem.cpp modules.cpp native.cpp object.cpp option.cpp output.cpp parse.cpp pathnt.cpp pathsys.cpp pathunix.cpp regexp.cpp rules.cpp scan.cpp search.cpp startup.cpp subst.cpp sysinfo.cpp timestamp.cpp variable.cpp w32_getreg.cpp modules/order.cpp modules/path.cpp modules/property-set.cpp modules/regex.cpp modules/sequence.cpp modules/set.cpp -o b2
ld: warning: option -s is obsolete and being ignored
Undefined symbols for architecture arm64:
  "operator delete(void*)", referenced from:
      builtin_normalize_path(frame*, int) in builtins-da63fb.o
      var_parse_group_compile(VAR_PARSE_GROUP const*, compiler*) in function-7967a9.o
      var_parse_to_string(VAR_PARSE_VAR const*, bool) in function-7967a9.o
      var_parse_to_string(VAR_PARSE_GROUP*, bool) in function-7967a9.o
      b2::paths::normalize(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) in pathsys-eb8532.o
      b2::startup::builtin_boost_build(frame*, int) in startup-0cdd77.o
      b2::startup::bootstrap(frame*) in startup-0cdd77.o
      ...
  "operator new(unsigned long)", referenced from:
      var_parse_to_string(VAR_PARSE_VAR const*, bool) in function-7967a9.o
      b2::startup::builtin_boost_build(frame*, int) in startup-0cdd77.o
      b2::startup::bootstrap(frame*) in startup-0cdd77.o
      std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > std::__1::operator+<char, std::__1::char_traits<char>, std::__1::allocator<char> >(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) in startup-0cdd77.o
  "___cxa_allocate_exception", referenced from:
      std::__1::__throw_length_error(char const*) in function-7967a9.o
      std::__1::__throw_length_error(char const*) in startup-0cdd77.o
  "___cxa_begin_catch", referenced from:
      ___clang_call_terminate in startup-0cdd77.o
  "___cxa_free_exception", referenced from:
      std::__1::__throw_length_error(char const*) in function-7967a9.o
      std::__1::__throw_length_error(char const*) in startup-0cdd77.o
  "___cxa_throw", referenced from:
      std::__1::__throw_length_error(char const*) in function-7967a9.o
      std::__1::__throw_length_error(char const*) in startup-0cdd77.o
  "___gxx_personality_v0", referenced from:
      builtin_normalize_path(frame*, int) in builtins-da63fb.o
      var_parse_group_compile(VAR_PARSE_GROUP const*, compiler*) in function-7967a9.o
      var_parse_to_string(VAR_PARSE_VAR const*, bool) in function-7967a9.o
      var_parse_to_string(VAR_PARSE_GROUP*, bool) in function-7967a9.o
      std::__1::__throw_length_error(char const*) in function-7967a9.o
      b2::paths::normalize(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) in pathsys-eb8532.o
      b2::startup::builtin_boost_build(frame*, int) in startup-0cdd77.o
      ...
ld: symbol(s) not found for architecture arm64
clang-14: error: linker command failed with exit code 1 (use -v to see invocation)

For example, cmake(succeeds):

nix-build -E "with import {}; pkgs.cmake.override {stdenv = pkgs.llvmPackages_14.stdenv;}"

There is an attempt to introduce the same change as in https://github.com/NixOS/nixpkgs/pull/181143 which has proposed commit as focused on fixing zig instead of enforcing libc++abi link as a separate concern.
In conclusion: why enforcing libc++abi link?

This is what is already done for linux.
There is no point in doing it differently and adding isDarwin duct tape to every libc++ ABI-consuming package considering the actual reason behind the requirement. See following point:
There is a discussion which I find interesting related to static linking shenanigans( https://reviews.llvm.org/D96070 ) which provides quite a few insights: Apple stock system libc++ is indeed already contains libc++abi inside which is reasonable considering this system is strictly single ABI, while LLVM libc++ does and will continue to require explicit ABI specification at link time because there are a few different ABIs available(which opens a huge can of worms related to cc-wrapper - it is quite unhealthy to do linking spec in there in a such blunt way. The proper way would be to expose ability to specify libc++ ABI for LLVM stdenvs and link accordingly(both for Linux and Darwin), but for now this is quite okay, I think).
Usage of reexport seems to be  obsolete legacy or at least of libc++ internals support, but I can't find strong evidence about it as associated changes are quite contradictory(see linked nixpkgs issue for examples)

Some random test runs after the change:

nix-build -E "with import ./.{}; pkgs.boost-build.override {stdenv = pkgs.llvmPackages_14.stdenv;}"
otool -L result/bin/b2

result/bin/b2:
        /nix/store/j146zdsqp37rlidxarnj5zigh6ilqvrs-libcxxabi-14.0.6/lib/libc++abi.1.dylib (compatibility version 1.0.0, current version 1.0.0)
        /nix/store/jwk3wdc1fwbw7qvd2jjsgcnlwwy99z5d-libcxx-14.0.6/lib/libc++.1.0.dylib (compatibility version 1.0.0, current version 1.0.0)
        /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1292.60.1)

nix-build -E "with import ./.{}; pkgs.boost-build.override {stdenv = pkgs.llvmPackages_11.stdenv;}"
otool -L result/bin/b2

result/bin/b2:
        /nix/store/vszv8b85jk3f5ad6bi2y4jcmrvrb6qjh-libcxxabi-11.1.0/lib/libc++abi.1.dylib (compatibility version 1.0.0, current version 1.0.0)
        /nix/store/a6hrx5qnk5sfjc45y3dzskdjb6y049nd-libcxx-11.1.0/lib/libc++.1.0.dylib (compatibility version 1.0.0, current version 1.0.0)
        /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1292.60.1)

nix-build -E "with import ./.{}; pkgs.boost-build"
otool -L result/bin/b2

result/bin/b2:
        /nix/store/vszv8b85jk3f5ad6bi2y4jcmrvrb6qjh-libcxxabi-11.1.0/lib/libc++abi.1.dylib (compatibility version 1.0.0, current version 1.0.0)
        /nix/store/a6hrx5qnk5sfjc45y3dzskdjb6y049nd-libcxx-11.1.0/lib/libc++.1.0.dylib (compatibility version 1.0.0, current version 1.0.0)
        /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1292.60.1)

nix-build --system x86_64-darwin -E "with import ./.{}; pkgs.boost-build.override {stdenv = pkgs.llvmPackages_14.stdenv;}"
otool -L result/bin/b2

result/bin/b2:
        /nix/store/h02cjzyvvcwggdha3nlzj3drlb7a3jp4-libcxxabi-14.0.6/lib/libc++abi.1.dylib (compatibility version 1.0.0, current version 1.0.0)
        /nix/store/fah6lawx65gr3dwkhzkd097igfq070qa-libcxx-14.0.6/lib/libc++.1.0.dylib (compatibility version 1.0.0, current version 1.0.0)
        /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1238.60.2)

Things done

Built on platform(s)

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

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

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

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

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

[x] Fits CONTRIBUTING.md.

@Itaros Do you happen to know why this issue crops up when using LLVM 11 (the default in our Darwin stdenv) to compile LLVM 13, as does in Zig? Since this issue only occurs with LLVM >= 12, and we're compiling LLVM 13 with LLVM 11, I'm a bit lost on how this issue would occur.

There are some breakages apparently caused by this:

[ ] https://hydra.nixos.org/build/185817635
[ ] https://hydra.nixos.org/build/185828228

Something that may be worth nothing is that I cannot reproduce these (I tested nsis) with the Clang stdenv on x86_64-linux. Absolutely no clue what could be causing this.

I wonder if it's not finding libc++abi because it's one of the bootstrap stage clangs?

This is causing breakage when using an alternate clang, because for example libcxxabi v13 now links against libcxxabi v11:
otool -L /nix/store/wk6crafpdldhpn0vlvm6gz31f93f6ds6-libcxxabi-13.0.1/lib/libc++abi.1.dylib
/nix/store/wk6crafpdldhpn0vlvm6gz31f93f6ds6-libcxxabi-13.0.1/lib/libc++abi.1.dylib:
	/nix/store/wk6crafpdldhpn0vlvm6gz31f93f6ds6-libcxxabi-13.0.1/lib/libc++abi.1.dylib (compatibility version 1.0.0, current version 1.0.0)
	/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1238.60.2)
	/nix/store/chgdwkvgghfr6jn0392l1sc9xyx2mca5-libcxxabi-11.1.0/lib/libc++abi.1.dylib (compatibility version 1.0.0, current version 1.0.0)

This is causing ld (from cctools) to hang for a while then assert:
0  0x1030a551c  __assert_rtn + 120
1  0x102f16cf8  ld::tool::InputFiles::findDylib(char const*, ld::dylib::File const*, bool) + 1160
2  0x102ff086c  generic::dylib::File<x86>::processIndirectLibraries(ld::dylib::File::DylibHandler*, bool) + 104
3  0x102f18514  ld::tool::InputFiles::createIndirectDylibs() + 696
4  0x102f1956c  ld::tool::InputFiles::forEachInitialAtom(ld::File::AtomHandler&, ld::Internal&) + 232
5  0x102fd22e8  ld::tool::Resolver::resolve() + 164
6  0x102f221e8  main + 828
A linker snapshot was created at:
        /tmp/BugpointPasses.dylib-2022-07-04-101821.ld-snapshot
ld: Assertion failed: (counter() < 0xffff), function nextCounter, file ./ld.hpp, line 314.

When adding the -t flag, it shows it's stuck in an infinite loop parsing /nix/store/wk6crafpdldhpn0vlvm6gz31f93f6ds6-libcxxabi-13.0.1/lib/libc++abi.1.dylib over and over again. (This is InputFiles::createIndirectDylibs, where _allDylibs keeps being extended, so the while-loop never terminates.)
I couldn't checkout and fetch b060076^ without rebuilding stdenv, so I checked against the release-22.05 branch, and confirmed it doesn't show the issue in otool -L output.
I used install_name_tool to temporarily hack both references to point to v13, and that fixed the linker invocation I was testing with. I'm not sure if we can find an easy way to exclude libcxxabi from this wrapper option, but a fixup like that is also an option, if a little ugly.

Here is a potential fix with the install_name_tool workaround: https://github.com/NixOS/nixpkgs/pull/185766
Will be doing some more testing with this.


Incorrect Column Description - sys.dm_exec_sessions client_version

Hello,
On sys.dm_exec_sessions's documentation page, I believe the description for column client_version is incorrect.
According to that page, this column shows the "TDS protocol version of the interface that is used by the client to connect to the server. The value is NULL for internal sessions. Is nullable."
However, while this column holds a value that correlates with the TDS version, its not the actual TDS version. Rather, the TDS version is reported elsewhere in the management views, in sys.dm_exec_connection’s protocol_version column.
Correlation
From my experimentation, client_version's values correlate to TDS version as follows:

TDS Version
TDS Version in Binary (ref)
client_version Value

7.0
0x00000070
2

7.1
0x00000071
3

7.1r1
0x01000071
4

7.2
0x02000972
5

7.3A
0x03000A73
6

7.3B
0x03000B73
7

7.4
0x04000074
7

There might be a mapping for client_version =1, but, if there is, I haven't been able to determine what it is. :-) There's the possibility that it's for TDS 4.2 (0x04020000), but I don't have any TDS 4.2 test code around to use to confirm.
If it would help, I can provide/post the source for a very simple C# console application that you can use to verify the above mappings.
Interpretation
I'm not sure what exactly client_version represents. :-) However, it's clearly not the TDS version or even the major number portion of the TDS version.
If I had to make a wild guess, I'd wonder if client_version reflects the compatibility mode SQL Server's TDS parsing mode using for the connection.
Suggestion
Would you consider updating client_version's description to describe what this field indicates? Possibly, a table showing the mappings between TDS version and client_version values could be included in the new description.
Thank you!

@bgribaudo thank you for the feedback.  I am going to copy the text from both issues you created and put them in an internal tracking item for the author to review.  We only recently lit up the public side of our content and we had not intended to have the "issues" feature enabled as we are not staffed to manage issues and PRs for so many topics.  We hope to some day but not now.  Apologies for the confusion.  My suggestion is to also past a summed version of your question on the bottom of the topic, in the comments section, then after some reviews the feedback and updates the topic as needed, they can respond via the comments area.  https://docs.microsoft.com/en-us/sql/relational-databases/system-dynamic-management-views/sys-dm-exec-sessions-transact-sql.


GameAPI needs updating

The startGame functions needs to be updated to supply the game with a communication medium (MVars,  channels, etc.)

Exactly what does the game need?

A channel for receiving GameAction and one for sending. I believe the easiest way is to use MVars

Can you give the type of the startGame function as you want it?

I would recommend using channels because of their duplication feature. With MVar the server would need to write and read from a pair of MVars for each client.
It looks to me that a games communication works very similar to that of how a the chats currently are implemented.
Each game needs channel which the server can hold in it's state with a list of game channels. All clients who is going to join the game then gets to hold a duplicate of the game channel in it's state which the client then activly reads from.
This is exactly how the chat works. In fact, chat is interchangeable with game in the previous paragraph.

My initial thought was the following:
startGame :: [String] -> Elem -> MVar GameAction -> MVar GameAction -> Client ()
Due to the Control.Concurrent.Chan not working with Haste when the code is compiled to JavaScript the seemingly easier solution would be using MVars from the Control.Concurrent package.
When I looked at the Haste.Concurrent package I could only find MBox as a viable option, and I believe it is implemented with MVars.

Control.Concurrent.Chan can't be compiled with haste. We solved this by adding an api method from which the client can tell the server to listen on its channel an return when it reads a new value.
The client then runs this api function in a new thread.
Sidenote, i think just about everything is implemented with MVars in some way. I know the Chan type is aswell.
Can the MBox be duplicated? I'm still thinking about how the implementation of passing the game-actions around on the server is to be made.

Ok, I will look into that API.
I don't think the MBox can be duplicated.

Clientside function which listen to Server, if you haven't already found it.
https://github.com/DATx02-16-14/Hastings/blob/development/src/Views/Chat.hs#L110-L123

As a side note: wouldn't it be more proper to use Haste.App.Concurrent for MVars? http://haste-lang.org/docs/haddock/0.5.4/Haste-App-Concurrent.html

I  think it shouldn't be a problem from the games perspective, its just a matter of what the lobby supplies

As far as I'm concerned, we can give you exactly what you want :trophy:

So far we've used Control.Concurrent.MVar throughout the project. I think this is because they were used in the examples we examined at the start of the project.


Add batch permissions to mig-controller

For each of the following check the box when you have verified either:

the changes have been made for each applicable version
no changes are required for the item

Affected versions:

[X] Latest
[ ] 1.1
[ ] 1.0

The CSV is responsible in OLM installs for

[X] Operator permissions
[X] Operator deployment
[X] Operand permissions
[X] CRDs

The operator.yml is responsible in non-OLM installs for

[X] Operator permissions
[X] Operator deployment

The ansible role is responsible in non-OLM installs for:

[X] Operand permissions
[X] CRDs

The ansible role is always responsible for:

[X] Operand deployment

If this PR updates a release or replaces channel

[X] I created a new z release directory in deploy/olm-catalog/konveyor-operator
[X] I updated channels in the konveyor-operator.package.yaml
[X] I created a new release directory in deploy/non-olm
[X] I created or updated the major.minor link in deploy/non-olm
[X] Updated the .github/pull_request_template.md Affected versions list

Fix issue with jobs in latest:
Status:
Conditions:
Category:              Critical
Last Transition Time:  2020-03-25T07:56:26Z
Message:               Reconcile failed: [User "system:serviceaccount:openshift-migration:migration-controller" cannot update jobs.batch in the namespace "ocp-25090-jobs": User "system:serviceaccount:openshift-migration:migration-controller" cannot update jobs.batch in project "ocp-25090-jobs" (put jobs.batch external-job)]. See controller logs for details.


Revert "Fix FOUC with inject CSS files"

This reverts commit eeb661b6cd82a3f21f5adbf0d1389cf2804fd16b.
fixes #191
This was causing injected CSS to pile up over and over each time javascript did an HTTP request, which resulted in massive slowdown over time.  For sites that do a lot of HTTP requests (example: hangouts during a call), things can get unbearably slow very quickly and CPU usage hits 100% until you reload with ctrl-R.
I'm not sure how to fix the flash of unstyled content (FOUC) fixed by eeb661b6cd8 but I haven't had that issue.

Thank you so much for the help! I did not realise did-get-response-details would be called multiple times. I was wondering what the cause of the polluted console was for some time now. This fixes #172 as well!

Yay!  \o/ Glad I could help :)


Logging module queries MDC

If MDC doesn't have any saved trace ID (read: Sleuth isn't used), then
logging resorts to the trace ID manually extracted from the request, in
order to group log entries by trace ID.
Fixes #637

Mental note for myself: the order of getting the trace id in the json bit
needs to be reversed.
Artem Bilan<EMAIL_ADDRESS>escreveu em qui, 31 de mai de 2018
às 17:57 :

@artembilan approved this pull request.
Nothing to complain about from my side.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/spring-cloud/spring-cloud-gcp/pull/714#pullrequestreview-124990974,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ADI26GY1BoVx0fgmvI2Z7Aktvfr4tXC4ks5t4Gc7gaJpZM4UVu_z
.

--
Message sent from my phone. Apologies for any spelling mustangs.


[QUERY] Support PEEK-LOCK mode of Service Bus from Azure Spring Boot JMS libraries

Query/Question
How to enable the PEEK-LOCK mode of Azure Service Bus from Azure Spring JMS support, which allow users to explicitly settle a message?
The default ack mode of Spring JMS is AUTO_ACKNOWLEDGE which automatically acknowledges messages before / after the message has been successfully processed by listener execution according to the default / simple MessageListenerContainer implementation. And due to the JMS listener and JMS template uses the default and simple message listener container respectively, so their default ack behavior are different as well.
According to the introduction of CLIENT_ACKNOWLEDGE, this mode allows client to explicitly acknowledge a message which is consistent with PEEK-LOCK mode. So how should it be used with JmsTemplate and JmsListener?

The possible solution:

For JmsTemplate, there is an open API to set the session ack mode:JmsTemplate#setSessionAcknowledgeMode(Session.CLIENT_ACKNOWLEDGE);

And use the execute method with a SessionCallback to consume a message and acknowledge.
For JmsListener, there are two scenarios:

Use the native Spring Jms message listener to consume and acknowledge messages. In this case, the DefaultMessageListenerContainer will be used which will also acknowledge messages after the successful listener execution for the CLIENT_ACKNOWLEDGE mode. So I doubt that users still cannot manually acknowledge a message, we should verify if customized acknowledgment could be supported in this way.
Customize the message listener and then consume and acknowledge messages in the onMessage method. In this case, another customzied bean of DefaultMessageListenerContainer should be provided to accept this message listener and also set the ack mode to client. We should check if this solution could work as expected.

Uses can not explicitly settle a message, cause the spring jms framework wrap it automatically. But Users can explicitly redeliver the message by throw a new Exception while configure the spring.jms.listener.acknowledge-mode=CLIENT.
https://docs.spring.io/spring-framework/docs/4.3.9.RELEASE/javadoc-api/org/springframework/jms/listener/AbstractMessageListenerContainer.html

"sessionAcknowledgeMode" set to "CLIENT_ACKNOWLEDGE": Automatic message acknowledgment after successful listener execution; best-effort redelivery in case of a user exception thrown as well as in case of other listener execution interruptions (such as the JVM dying).
All we need here to configure the spring.jms.listener.acknowledge-mode=CLIENT

And in the MessageConsumer onMessage method, you can redeliver the message by make a user Exception. Because the Spring JMS framework wrap the ack automatically for users.

What is the behavior of using JmsTemplate#execute and override the MessageListener#onMessage to manually ack a message?

What is the behavior of using JmsTemplate#execute and overriding the MessageListener#onMessage to manually ack a message?

This way is to ack automatically without mannually ack.
jmsTemplate.execute(new SessionCallback<Object>() {
           @Override
           public Object doInJms(Session session) throws JMSException {

               MessageConsumer consumer = session.createConsumer(jmsTemplate.getDestinationResolver().resolveDestinationName(session, queueName, false));
               try {
                   Message message = consumer.receive(1);
                   if (message != null) {
                       User user = (User) ((ObjectMessage) message).getObject();
                       LOGGER.info("Received message from queue: {}", user.getName());
                   }

               }
               catch (Exception e) {
                   return null;
               }
               finally {
                   consumer.close();
               }
               return null;
           }
       }, true);

The possible solution:

For JmsTemplate, there is an open API to set the session ack mode:
JmsTemplate#setSessionAcknowledgeMode(Session.CLIENT_ACKNOWLEDGE);

And use the execute method with a SessionCallback to consume a message and acknowledge.

For JmsListener, there are two scenarios:

Use the native Spring Jms message listener to consume and acknowledge messages. In this case, the DefaultMessageListenerContainer will be used which will also acknowledge messages after the successful listener execution for the CLIENT_ACKNOWLEDGE mode. So I doubt that users still cannot manually acknowledge a message, we should verify if customized acknowledgment could be supported in this way. Besides, to set the ack mode, the property of spring.jms.listener.acknowledge-mode could be configured.
Customize the message listener and then consume and acknowledge messages in the onMessage method. In this case, another customzied bean of DefaultMessageListenerContainer should be provided to accept this message listener and also set the ack mode to client. We should check if this solution could work as expected.

Using the listener container, we need to care the mode of transaction. If it is in a transaction, ack will not take effect when exception occurs. Only when the transaction complete successfully, the ack takes effect then. That means the sending, receiving and ack operation are all managed by the transaction.

Spring JMS framework provide two implementations for AbstractMessageListenerContainer, i.e. DefaultMessageListenerContainer and SimpleMessageListenerContainer.
For the auto-acknownledge mode, the behavior is different for these two containers as presented above of that after or before the execution of the listener. In addition to this, the DefaultMessageListenerContainer uses pulling style of consumption while the SimpleMessageListenerContainer uses pushing style of consumption. (MessageConsumer.receive() and MessageConsumer.setMessageListener()).

API
consume type
after or before

DefaultMessageListenerContainer
pull
before

SimpleMessageListenerContainer
push
after

Conclusion:
To explicityly ack a message using the JmsTemplate and JmsListener.
.  For JmsTemplate

Setup the ack mode

jmsTemplate.setSessionAcknowledgeMode(Session.CLIENT_ACKNOWLEDGE);

Execution runner configuration

@Configuration
public class SimpleConsumerWithTemplate {
    private static final Logger LOGGER = LoggerFactory.getLogger(SimpleConsumerWithTemplate.class);

    private static final String QUEUE_NAME = "que001";

    @Autowired
    private JmsTemplate jmsTemplate;

    @Bean
    public ApplicationRunner runner() {
        return new ApplicationRunner() {

            @Override
            public void run(ApplicationArguments args) throws Exception {
                jmsTemplate.execute(new SessionCallback<Object>() {
                    @Override
                    public Object doInJms(Session session) throws JMSException {

                        MessageConsumer consumer =
                            session.createConsumer(jmsTemplate.getDestinationResolver().resolveDestinationName(session,
                                QUEUE_NAME, false));
                        try {
                            Message message = consumer.receive(1);
                            if (message != null) {
                                User user = (User) ((ObjectMessage) message).getObject();
                                LOGGER.info("Received message from queue: {}", user.getName());
                                message.acknowledge();
                            }

                        } catch (Exception e) {
                            return null;
                        } finally {
                            consumer.close();
                        }
                        return null;
                    }
                }, true);
            }
        };

    }
}

.  For JmsListener
In our default message listener container, we set the sessionTransacted to be true, that means we guarantee redelivery in case of a user exception. To explicitly ack the message, we can customize one listener container factory and set the sessionTransacted to be false like beblow:
    @Bean
    @ConditionalOnMissingBean
    public JmsListenerContainerFactory<?> jmsListenerContainerFactory(
        DefaultJmsListenerContainerFactoryConfigurer configurer, ConnectionFactory connectionFactory) {
        DefaultJmsListenerContainerFactory jmsListenerContainerFactory = new DefaultJmsListenerContainerFactory();
        configurer.configure(jmsListenerContainerFactory, connectionFactory);
        jmsListenerContainerFactory.setPubSubDomain(Boolean.FALSE);
        configureCommonListenerContainerFactory(jmsListenerContainerFactory);
        jmsListenerContainerFactory.setSessionTransacted(false);
        return jmsListenerContainerFactory;
    }

And then in the logic listener POJO, we ack mannuly like below:
@Service
public class QueueReceiveService {

    private static final String QUEUE_NAME = "que001";

    private final Logger LOGGER = LoggerFactory.getLogger(QueueReceiveService.class);

    @JmsListener(destination = QUEUE_NAME, containerFactory = "jmsListenerContainerFactory")
    public void receiveMessage(Message message) throws JMSException {
        User user = message.getBody(User.class);

        LOGGER.info("Received message from queue: {}", user.getName());
        message.acknowledge();
    }

}

close for solved.


MSBuild should preserve stacktraces when ToolTask exe throws an exception

From @jaredpar:
Why is it that MSBuild hides exception stack traces when a ToolTask exe throws an exception?
It takes easy to identify issues and turns them into bugs that can only be identified with a binary logger / verbose log
Classic example in this bug https://github.com/dotnet/roslyn/issues/25286
Here an experienced developer sees a compiler crash and has to throw their hands in the air because the error code is worthless. Yet binary log trivially shows the problem here.

MSBuild doesn't know anything about stack traces. It isn't hiding them from you.
ToolTask itself is quite general. It can be configured to treat the tool's standard out and standard error streams as different levels of importance. This is important because some tools are very chatty, while others produce output only in error cases--in the former case, the task author probably wants to push the message priority down so it's only captured in high-verbosity logs, while in the latter it might be interesting to raise the priority.
In this case, the .NET Framework emits unhandled exception stack traces to stderr, which is by default
a) parsed for error strings in the MSBuild/VC++/C# style and otherwise b) logged at "normal" verbosity. Replaying the binary log with a /v:normal logger attached includes the stack traces, but they weren't surfaced from Jenkins because the console logger (piped to the Jenkins result page) was set to Verbosity=minimal.
It's my understanding that the Roslyn compilers never emit to standard error intentionally. If that's true, diagnosing problems like this could be assisted by the task in a few ways:

Overriding LogStandardErrorAsError to return true would ensure that these stack traces get logged as errors, visible at all MSBuild verbosities.
Overriding StandardErrorLoggingImportance to return High would ensure that anything written to csc's stderr would be logged at MSBuild's Minimal and higher verbosities.

Another possibility at the MSBuild level would be a feature request like #3056, but I'm not sure that's reasonably possible in MSBuild.

It's my understanding that the Roslyn compilers never emit to standard error intentionally.

That is correct.

If that's true, diagnosing problems like this could be assisted by the task in a few ways:

Why is this not the default? Has MSBuild ever considered adding a derivation of ToolTask named ManagedToolTask that has more sensible defaults? The current default means that ToolTask authors need to opt into reasonable behavior (seriously doubt many know to).

Are there any negative / unintended effects we should be wary of with such a change?

Not that I can think of. Anything the CLR emits to stderr without the application itself doing it seems like it'd justify an error.

Okay. Let's give it a whirl.

Hmm. This doesn't seem to get us to the end goal. The exception text, at least on my developer builds, is never actually printed out. It' gets intercepted by Watson (possibly?). So weird.

But it appears in the log, still?

At @nguerrera I tried on core and I'm getting the behavior I would expect now. The stack trace is printed to the command line now when invoked from MSBuild (after this change). Not sure why Desktop is different. Either way this does appear to be the direction we need to go.
BTW: stack overflows in the compiler take a long time to print to the CMD console.


error when building the project: 'this' is not allowed before super()

Hi,
Building the code as instructed here
https://github.com/aurelia/validation/#building-the-code
fails with
SyntaxError: c:/tmp/proj/cloned/aurelia/validation/src/validation/validation-rules.js: Line 143: 'this' is not allowed before super()

because following line
https://github.com/aurelia/validation/blob/master/src/validation/validation-rules.js#L143
is in a callback function that is given as an argument to the constructor of superclass.
@janvanderhaegen added this callback (with problematic line) 3 weeks ago with commit:
https://github.com/aurelia/validation/commit/5499ab6f59b719b7efc6c5e9d44510b8dfc3987d#diff-94ed0400a42b76c71f45ce4101d2255fR143
I'm wondering if I've done smth wrong myself or is the project really broken already for 3 weeks (broken already before the last release)? Could it be, that it works for someone because of using some older babel version?

@janvanderhaegen It sounds like the compiler you are using is out of date and not compliant with the latest ES6 spec. Please update the version of Babel used on the validation library, fix all errors and do another release.

Will check the versions used.
Not sure if re-release is needed (problem reported is when building the code, not when using the library). Either way, new release is coming this weekend anyways and will make sure this issue is resolved.

Updated everything in a clean workspace and got the same error.
Moved offending callbacks to a static method and it works (https://github.com/aurelia/validation/commit/eb07bff6a016a40e0cdff9cd00d7328eacce886c).  IMHO this is a bug in the latest compiler, not in our code ;-)


Implement list-units

Hello,
Is it possible to implement list-units to retrieve list of units ?
Best regards

Closed by fa15432

@henri9813 please use version v1.0.7

Thanks !
Best regards


Adding comments to the code if needed

Summary
Comments are needed to make our code generally more readable.
Requirements

Every file we made should have certain comments to illustrate its functionality

Focusing on the "why" and not "what" or "how". The code should be mostly understandable by itself.


Make abstract pusher an abstract service

Since this is an abstract template, make the service abstract.

doest it work on symfony2.3 ?

It should - https://github.com/symfony/symfony/blob/2.3/src/Symfony/Component/DependencyInjection/Definition.php#L573

:+1:


Custom schedulers

Here's a PR which does two things:

Adds a feature to allow the user to provide a callable in the 'schedule' key - this should return a boolean stating whether or not to run the task. This should provide lots of flexibility (my particular use case was to be able to say 'first Thursday every month')

Reorganises the README slightly to try and provide a more natural place for the new feature's documentation to fit

I'm not 100% sure if the DateTime example is correct since I've never used it.
Thanks,

@hellogerard I don't think this will work because the code which calls ScheduleChecker::isDue() casts the 'config' value to string first. The string casting needs to be moved inside ScheduleChecker.

Please ignore my comment, I remembered the code incorrectly :)


when test failed

HI,there.
I like this library.
But I have a question.
My XCUItest often fail because of some reason.
For example if test run 3 times, test fails once.
Then,when test failed,remaining test don't run.
If possible,I would like test to run.
Even if one of tests failed.
Is it possible?
My config is here.
{
   "xctestrun-path": "build/Build/Products/xxxxxxxxxxxx.xctestrun",
   "num-sims": 1,
   "failure-tolerance": 15,
   "only-retry-failed": true,
   "headless": true,
   "reuse-simulator": true,
   "output-dir": "./output/",
   "screenshots-directory": "./screen/"
}

There has been quite some updates on Bluepill, is this still a problem for you @shiratsu ?


Large discrepancies in reported cases between spreadsheet and data source

I can't help but notice that the uCov numbers for Alameda County (CA) are extremely high right now. And while I should probably be pretty cautious, given that the model hasn't been updated for the Delta variant yet, it still seems like things are out of whack.
I looked at the "cases in past week" numbers in my spreadsheet (which has a "Date Last Updated" = Jul-24-2021, and "Is Import Broken" = FALSE), and compared them to the underlying data sources: July 17th and July 24th data from JHU CSSE.
52 of the 58 counties matched exactly, but six of the 58 had disagreements:

uCov
JHU CSSE
delta

Alameda
4879
1973
2906

Contra Costa
1464
1685
-221

Kings
167
179
-12

Los Angeles
13900
15533
-1633

Marin
166
176
-10

San Francisco
952
976
-24

So it looks like Alameda County's rate is being overreported by almost 250%.

Thanks for reporting this. We'll look into it.

Data source issue. On July 22 the confirmed case count unexpectedly jumps ~4k higher, then "goes down" by 3.5k on July 23.

Alameda: daily cumulative cases: [91028, 91197, 91546, 91743, 91937, 92091, 92372, 92580, 92584, 92973, 93361, 97459, 93953, 94345]

To reliably repro, I set now = datetime(2021, 7, 25, 12, 0, 0, 0) - timedelta(days=1) in calc_effective_date().
Fetching https://raw.githubusercontent.com/CSSEGISandData/COVID-19/master/csse_covid_19_data/csse_covid_19_daily_reports/07-24-2021.csv... read 3988 objects
Alameda: line is JHUDailyReport(FIPS=6001, Admin2='Alameda', Province_State='California', Country_Region='US', Lat=37.64629437, Long_=-121.8929271, Combined_Key='Alameda, California, US', Confirmed=94345, Deaths=1272, Recovered=0, Active=0)
Fetching https://raw.githubusercontent.com/CSSEGISandData/COVID-19/master/csse_covid_19_data/csse_covid_19_daily_reports/07-23-2021.csv... read 3988 objects
Alameda: line is JHUDailyReport(FIPS=6001, Admin2='Alameda', Province_State='California', Country_Region='US', Lat=37.64629437, Long_=-121.8929271, Combined_Key='Alameda, California, US', Confirmed=93953, Deaths=1272, Recovered=0, Active=0)
Fetching https://raw.githubusercontent.com/CSSEGISandData/COVID-19/master/csse_covid_19_data/csse_covid_19_daily_reports/07-22-2021.csv... read 3988 objects
Alameda: line is JHUDailyReport(FIPS=6001, Admin2='Alameda', Province_State='California', Country_Region='US', Lat=37.64629437, Long_=-121.8929271, Combined_Key='Alameda, California, US', Confirmed=97459, Deaths=1322, Recovered=0, Active=0)
Fetching https://raw.githubusercontent.com/CSSEGISandData/COVID-19/master/csse_covid_19_data/csse_covid_19_daily_reports/07-21-2021.csv... read 3988 objects
Alameda: line is JHUDailyReport(FIPS=6001, Admin2='Alameda', Province_State='California', Country_Region='US', Lat=37.64629437, Long_=-121.8929271, Combined_Key='Alameda, California, US', Confirmed=93361, Deaths=1272, Recovered=0, Active=0)

This is in the same area of code as https://github.com/microcovid/microcovid/pull/896. (also note that the 6 days discrepancy will be addressed in https://github.com/microcovid/microcovid/pull/904 but I'm not touching it for now).

Thanks for the sleuthing. Maybe we need to throw an elliptical filter on the data?

I checked all 6 counties that Blake mentioned against the above PR and they're an exact match for the JHU CSSE data.


[stable/efs-provisioner] Add support for priorityClasses

Signed-off-by: Art3mK<EMAIL_ADDRESS>
What this PR does / why we need it:
This PR allows user to specify PriorityClass for efs-provisioner pods
Checklist
[Place an '[x]' (no spaces) in all applicable fields. Please remove unrelated fields.]

[x] DCO signed
[x] Chart Version bumped
[n/a] Variables are documented in the README.md

ping @whereisaaron

/assign @lachie83

/cc @whereisaaron

Hi @Art3mK, I'd love to help, but although I authored the chart I don't have any access to maintain it. You'll have to try and find a repo member to help with this change sorry.

/lgtm

https://github.com/helm/charts/pull/9127#issuecomment-449474388
@Art3mK you might need this same workaround @kppullin discussed above to not create the deployment during CI tests, since the tests can’t provide an EFS API to test against.

Hey @whereisaaron, thanks for the hint! I've just copied the same workaround here. @paulczar, could you, please, add lgtm again?

/retest pull-charts-e2e

/test pull-charts-e2e

/ok-to-test

/lgtm