NAT stop working for incomming connections after restart

I wrote Caddy and ipv6nat in a docker-compose file, It works very well. But after I executed the docker-compose restart command, I am still able to ping other v6 addresses from the Caddy container but can't receive any more incoming requests (It was able to receive when userland-proxy enabled, but Caddy couldn't get the real IP address).
 Otherwise there might be duplicated or intefering rules if you restart docker-ipv6nat. Can you test this?

 This would give us the full rules.
Not sure why the 80/443 rules are missing. Is your docker-compose.yml still like in your first post? Could you run ipv6nat with the -debug flag and take a look at the output?

Is your docker-compose.yml still like in your first post?

No, I add a line command: --retry -cleanup -debug after the volumes part of ipv6nat to run with those flags.
The full logs are attached below.
How did you start it the first time? (09:37) Did you start only ipv6nat at that time? Perhaps it could be some kind of race condition when restarting ipv6nat and caddy at the same time.
Could you also test first restarting caddy, then ipv6nat (instead of restarting them at the same time) and also first ipv6nat, then caddy. Just wondering which cases will end up with the correct rules.

The only difference is in the 1st start I used  docker-compose down && docker-compose up -d to destroy whole things and rebuilt them, and in the 2nd I used docker-compose restart.
Caddy should start later than v6nat cause I set depends_on: v6nat for caddy, but not sure if docker will follow this when using restart command.

If I restart them separately, whatever the sequences are, iptables keeps correct ( with full records include 80&443)

Docker Compose seems don't guarantee the sequence of restart:
https://stackoverflow.com/questions/49063920/docker-service-restart-without-order-sequence-when-using-docker-compose-depends
https://docs.docker.com/compose/startup-order/

If I restart them separately, whatever the order are, iptables keeps correct ( with full records include 80&443)

Actually they are same, whenever I restart v6nat, caddy is running normally at these two situations.

Thanks for the tips. At some point, my X-Forwarded-For started showing a docker IPv4 when the request was made in IPv6 again, as if I just didn't had my ipv6nat container up.
I did a docker-compose down on my docker-file with traefik & ipv6nat, commented out ipv6nat, ran docker-compose up, uncommented ipv6nat, and ran docker-compose up again, and now it works :)

@robbertkl Can we close this?


modified Dockerfile

Description
modified gem and bundle commands in Dockerfile
Issues Resolved
Check List

[ ] New functionality includes testing.

[ ] All tests pass ($ rake test).

[ ] New functionality has been documented in the README if applicable.

[ ] New functionality has been thoroughly documented in the examples (please include helpful comments).

[ ] New endpoints supported are updated in the endpoints-support.md file.
[ ] Changes are documented in the CHANGELOG.

the ruby docker build is failing in latest gems. This is a new bug in gems bundle and a work around is provided until the fix is provided.
https://bundler.io/blog/2019/05/14/solutions-for-cant-find-gem-bundler-with-executable-bundle.html


Split up Tools (Official & Community) & Added Glossary

I've had some input (from Ken) that he couldn't find the RPL Calculator provided by the team, even though it was listed as a community tool. That's why this is my proposal; we have 3 main sources of content (Official, Press & Community) & if one of the subsections/categories is present under multiple sources of content, e.g. Explainer Series, then we add some context to it and move items to their correct place. In this PR this translates itself into adding more context to the existing 'Tools' subsection/category, so after this PR we have 'Community Tools' and 'Official Tools'. Under 'Official Tools' users will be able to find the official RPL calculator sheet.
As a minor change, I've also added the official glossary of RocketPool.
Section: Community Tools, Official Tools
Item: Glossary, RPL Calculator
Action: Add/Edit

By submitting this pull request, I promise I've read the contribution guidelines.

OK!


LICENSE missing

Hello,
I noticed that this repository does not have a license file. Could you add one, or specify the license of the source code? The website is a great idea :)
Thank you!

Hi,
Thank you very much for flagging this. We've created one just now.
Cheers!


Add more labels to prometheus output format

Describe the feature:

The prometheus output format should include references to test cases in order to allow more fine grained alerting. The current implementation only contains a summary of test cases for each resource type and a summary across all tests. Since test cases can have different criticality levels, neither of those summaries are sufficient to decide whether a person should be called right now (potentially in the middle of the night) or not.
This has been previously discussed in #607 and my understanding is that it was postponed, but not rejected. There is a valid concern for storage cost, so I don't think this should/must be enabled by default, but rather should be an format option for the prometheus output.
Describe the solution you'd like

The metric goss_tests_outcomes_total should contain additional labels to uniquely identify a single test case or a different metric should be introduced that does exactly that.
Describe alternatives you've considered

My current workaround is an annotation I placed on the prometheus alert for goss tests that links to a runbook which tells the poor soul who has to deal with this to do:
$ ssh ...
$ goss --gossfile ... validate

This returns the failing tests and they can decide whether to fix it right now or go back to bed.

@petemounce would love your thoughts on this?

A format option makes sense to me if this is done at all. Should be off by default.
However, there's a potential workaround to needing this depending on the environment's observability capabilities.
@sebhoss the way we handled dealing with goss failure was twofold:

goss hosted a health check. If too many failures happened, the machine was terminated and replaced by auto scaling. No human was woken up; we filed a ticket-priority alert if this happened "too often" (as in; "important but not paging")
we logged the goss output centrally (with an output that was quiet on success, verbose on failure). The ticket contained the log query to ascertain the failing test(s). We had a way to make the health check pull the machine from service vs terminate it. It was then daytime support work to debug whatever was worth debugging to lower the machine-replacement rate.

Thanks for the feedback!
I'm totally fine with this feature being disabled by default. That said, I think even your setup @petemounce would benefit from it: Instead of terminating machines by counting all failures, you could count pager-priority failures only since there can be failures that do not really impact service availability and terminating machines because of those might not be what you want.
Since this feature is kinda blocking us from adopting goss for more machines/tests in our org, how about I open up a PR and we discuss technical details over there?

Sure, PR welcome. Please include test coverage for the new code path?
(One of our guiding principles is that a machine failure should never wake someone up; the system should be resilient to that, and sand is cheaper than carbon to run. We replace them "quickly enough" that there's no overall impact. We page if service is impacted, which can happen for a number of reasons, machine taint and replacement being one).


Documentation improvments

Signed-off-by: Martin Vala<EMAIL_ADDRESS>

@mvalarh, please document openshift index meaning, especially latest as clone of v4.6. And also that we don't recommend using it as it is not a real latest.
We should document it or reconsider ^

updated

We should consider following changes https://github.com/operator-framework/community-operators/pull/3108/files


⚠ Bofrost.es has degraded performance

In ce22a9e, Bofrost.es (https://www.bofrost.es) experienced degraded performance:

HTTP code: 200
Response time: 1479 ms

Resolved: Bofrost.es performance has improved in adf18af after 9 minutes.


[improvement] Export edited playlist or make them all inactive by default

Would it be possible to allow exporting an edited playlist of a particular provider so it can be backed up with the config files? First thing I do is remove all the right-wing media nonsense like Fox, oan etc., but Pluto as well has an unmanageable list of channels, of which one or two are useful to me. 10x.

The edited playlist should be provided by
http://ip:6007/channels.m3u
http://ip:6007/provider/channels.m3u
http://ip:6007/provider/instance/channels.m3u
This gives M3U playlists down to an instance level if needed.

Solution seems to meet the criteria of the issue. Closing.


[BUG] Failed to read attribute: src/app/codegen-data-model-provider/CodegenDataModelProvider_Read.cpp:341: IM Error 0x00000501: General error: 0x01 (FAILURE)

Reproduction steps
Hello,
I am facing a crash running Matter Linux Energy Management Example for both types:

Energy EVSE
Water Heater

Build
cd ~/connectedhomeip
scripts/activate.sh
cd examples/energy-management-app/linux
gn gen out/debug
ninja -C out/debug

Run
Emulate Water Heater
out/debug/chip-energy-management-app --application water-heater
out/debug/chip-energy-management-app --application evse

Error 1: Water Heater
Error reading attribute:

Cluster=0x0099 (Energy EVSE)
Endpoint=0x1
AttributeId=0x0000_0000

[1725208807.823652][25093:25093] CHIP:DMG: Reading attribute: Cluster=0x0000_0099 Endpoint=0x1 AttributeId=0x0000_0000 (expanded=1)
[1725208807.823736][25093:25093] CHIP:DMG: AccessControl: checking f=1 a=c s=0x000000000001B669 t= c=0x0000_0099 e=1 p=v r=r
[1725208807.823821][25093:25093] CHIP:DMG: AccessControl: allowed
[1725208807.823899][25093:25093] CHIP:DMG: Failed to read attribute: src/app/codegen-data-model-provider/CodegenDataModelProvider_Read.cpp:341: IM Error 0x00000501: General error: 0x01 (FAILURE)
[1725208807.823971][25093:25093] CHIP:TST: Different written length: 714 (Ember) vs 693 (DataModel)
[1725208807.824051][25093:25093] CHIP:-: chipDie chipDie chipDie
Aborted (core dumped)

Error 1: EVSE
Error reading attribute:

Cluster=0094 (Water Heater Management )
Endpoint=0x1
AttributeId=0x0000_0000

[1725214927.289519][27981:27981] CHIP:DMG: Reading attribute: Cluster=0x0000_0094 Endpoint=0x1 AttributeId=0x0000_0000 (expanded=1)
[1725214927.289542][27981:27981] CHIP:DMG: AccessControl: checking f=1 a=c s=0x000000000001B669 t= c=0x0000_0094 e=1 p=v r=r
[1725214927.289565][27981:27981] CHIP:DMG: AccessControl: allowed
[1725214927.289592][27981:27981] CHIP:DMG: Failed to read attribute: src/app/codegen-data-model-provider/CodegenDataModelProvider_Read.cpp:341: IM Error 0x00000501: General error: 0x01 (FAILURE)
[1725214927.289616][27981:27981] CHIP:TST: Different written length: 132 (Ember) vs 111 (DataModel)
[1725214927.289639][27981:27981] CHIP:-: chipDie chipDie chipDie
Aborted (core dumped)

Bug prevalence
Always
GitHub hash of the SDK that was being used
6c6b11f723692855446744c8bbc36ec1c5404512
Platform
other
Platform Version(s)
No response
Anything else?
Log files

Water Heater: chip-energy-management-app-linux-WH.log
EVSE: chip-energy-management-app-linux-EVSE.log

@lboue This should have been fixed by PR #35319.  Is this still an issue on tip?

Thanks for the information. I'll do another test.

@lboue is this still happening?


Unexpected token 'export'

I just updated the '@simplewebauthn/browser' dependency in my NUXT project (from ^3.0.0 to ^3.1.0) and now the pages that require startAttestation from the @simplewebauthn/browser package no longer render.
I get the following error:
webpack:/external "@simplewebauthn/browser"
Missing stack framesJS
Object.@simplewebauthn/browser@1:
(https://prnt.sc/17aah2p)
I don't know how to further debug this error. Let me know if I can provide more information on this error.

@timstrasser Did you check the README because in the latest version, main version is in ES2018 and you have to transpile it by yourself with your bundle system if you want a lower support.

No, indeed I did not check the README. Can you give me any information on how to do this? Or on how to configure NUXT to do this?

@timstrasser as it's explained in the official documentation you can extend webpack config to transpile ESM to CJS by adding some plugin.

Yes, I found it fox NUXT here (https://nuxtjs.org/docs/2.x/configuration-glossary/configuration-build#transpile). :)
Thanks for the quick response!


Add support for block params

=each collection as item index
   p {{item.name}}

becomes
{{#each collection as |item index|}}

{{item.name}}

{{/each}}

For now I'm having the mustache parser output block params as null rather than an empty array, but that's easily changed.  Comments welcome; this is the first time I've messed with a parser.

Would this work with components as well?

yes.  I've got this test on my local branch.
test("block form works for components", function(){
  var emblem = w(
    "= my-component as item",
    "  p {{item.name}}"
  );
  compilesTo(emblem,
    '{{#my-component as |item|}}
{{item.name}}
{{/my-component}}');
});

Could we keep the | characters?
In general, my opinion is that mustache content should be a straight copy into htmlbars as much as possible. There are many places where that is not true today, but I consider those legacy.
When we build custom syntaxes, they make it more difficult for new users to understand what is happening. The syntaxes are less trivial to support, and need documentation.
I'd prefer to see:
=each collection as |item index|
  p {{item.name}}

I'm a big fan of keeping the | characters as well.  This would also make it a bit more readable when you are passing in multiple parameters to a component.

That shouldn't be a problem at all, and I agree. I think part of my reluctance to use them at first was just the roundabout way that I got the parser expressions to work.  Adding the | characters will probably make the parser code simpler rather than more complex.  I'll get on it shortly.

@Bestra you can make the start token as\w+| like it is in Handlebars.

For sure.

@Bestra I presume you plan to back out the changes to the AST and just put the full mustache expression in the AST name?

@mixonic those were my thoughts this morning.  Then I worked 9 hours and completely forgot.  Glad you're way ahead of me  :smile: .

I'm inclined to roll with this, though I do want that warm fuzzy of a +1 from @bantic.

Cool. I'll take a look this morning.

@bestra could you rename the blockParamNames plural rule to the singular? After that this is :+1: from me, thank you!

@bantic I was lucky that the mustache parser code was really easy to understand.    Now I can finally use the new (really useful) hotness in our templates!

Gracias @Bestra :-) Will cut a release soon.

Hi @mixonic - when do you think you'll cut a new release of this?  I'm in upgrade limbo - and this is a blocker :heart:


typo correction and added  version 2009

as per the user report issue #9270 ,  at present, i  corrected the disble to disable only.
i added windows 10 version 2009 and after checking in the group policy editor.
But i could not able to edit the url path, i think i dont have access.

But i could not able to edit the url path, i think i dont have access.

I don't quite follow... which URL do you mean? Is it one in the document, or elsewhere?

Please notice my new PR to your PR branch:

https://github.com/RAJU2529/windows-itpro-docs/pull/4

(ref. https://github.com/MicrosoftDocs/windows-itpro-docs/issues/9270)


flag 'log_prefix' was defined more than once

Hi there! I'm trying to use or-tools in a C++ application, and to do so I'm adding the include and lib directories from the Ubuntu 16.04 binary release to my include-path and library-path, respectively. Everything compiles and links fine, but immediately upon running my application I get:
ERROR: flag 'log_prefix' was defined more than once (in files 'src/logging.cc' and 'src/base/logging.cc').

My application doesn't use gflags, so I'm relatively certain this is coming from the or-tools build. This is especially strange because I'm using the binary distribution; I would have expected everyone to have this problem, not just me. I'm linking against lib/libortools.so using gcc 5.4, and the only header I include from my own code is constraint_solver/routing.h. Thanks for your help!

Just as a test, I removed:
DECLARE_bool(log_prefix);

From include/base/logging.h, and my code no longer compiles, because FLAGS_log_prefix is not defined (as you would expect), so that doesn't fix it

I should also note that I can compile the TSP example just fine:
g++ -fPIC -std=c++0x -O4 -DNDEBUG -Iinclude -Iexamples -DARCH_K8 -Wno-deprecated -DUSE_CBC -DUSE_CLP -DUSE_GLOP  -c examples/cpp/tsp.cc -o objs/tsp.o
g++ -fPIC -std=c++0x -O4 -DNDEBUG -Iinclude -Iexamples -DARCH_K8 -Wno-deprecated -DUSE_CBC -DUSE_CLP -DUSE_GLOP  objs/tsp.o -Wl,-rpath /home/prenav/sbox/ext/or-tools/lib -L/home/prenav/sbox/ext/or-tools/lib -lortools -lz -lrt -lpthread -o bin/tsp
running bin/tsp
bin/tsp
[15:27:46] examples/cpp/tsp.cc:140: Cost 155
[15:27:46] examples/cpp/tsp.cc:152: 0 (0) -> 1 (1) -> 8 (8) -> 3 (3) -> 7 (7) -> 5 (5) -> 2 (2) -> 4 (4) -> 6 (6) -> 9 (9) -> 0 (10)

Any ideas? I'd love to use or-tools but this is making it impossible. Thanks!

Hello,
I have a small remark that might help you. In the or-tools source, we have
"src/base/logging.cc" but not "src/logging.cc", where does the latter  come
from?
It would be helpful if you share with us the compilation command that
you're using.
Regards,
On Mon, Dec 12, 2016 at 9:54 PM, Haldean Brown<EMAIL_ADDRESS>wrote:

Any ideas? I'd love to use or-tools but this is making it impossible.
Thanks!
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/google/or-tools/issues/284#issuecomment-266549649,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ASwpfFeTCK8K8c6LDKQ4vOA72AsX30leks5rHbSJgaJpZM4LHOQl
.

--
driss

Hi @dlahlou,
I came across this thread investigating similar problem when or-tools are used as a dependency. My exact error message is included below. I checked using gdb that the crash happens before the main function is executed.
pmateusz@gwb17102:$ ./test-dantzig-wolfe
ERROR: flag 'log_prefix' was defined more than once (in files 'src/base/logging.cc' and '/home/pmateusz/dev/smart-o2cpp/src/VehicleRouting/dependencies/build/external/glog-prefix/src/glog/src/logging.cc').

I believe the root of the problem is conflict in console flag definition when both or-tools and glog are used as dependencies. Both libraries define log_prefix using a gflags macro which is causing the crash at runtime:
https://github.com/google/or-tools/blob/master/ortools/base/logging.cc#L20
https://github.com/google/glog/blob/master/src/logging.cc#L137
Since glog is very popular this conflict may make or-tools reuse more difficult (patch required). Could you consider moving to glog or making this code fragment optional?

I think this is fixed since OR-Tools is using glog...

Hmmm...
Maybe it's because 2 versions of glog have been installed? Or at least upgraded once ?

This is 4 years old!


identifyCardBrand function always return unknown card type

Describe the bug
identifyCardBrand function always returns an unknown card type. I tried with real cards also but no luck. it always returns an unknown card.
To Reproduce
Steps to reproduce the behavior:

Go to '...'
Click on '....'
Scroll down to '....'
See error

Expected behavior
A clear and concise description of what you expected to happen.
Screenshots

Desktop (please complete the following information):

OS: Windows
Browser - Chrome
Version - Version 89.0.4389.82 (Official Build) (64-bit)

Additional context
Same problem with validateCardNumber function it always returns card as valid.

Thanks for issue!
Today this plugin of v3 is released. This not compatible with v1. All APIs have been revamped. So I will close this issue. If you still have the same problem, please create a new Issue. Thank you.


inserting heap code

heap code

@aaditya2801 contribute here https://github.com/Ishaan28malik/Get-Dev-Resources


FirebaseCore import not working

Description
I'm working on an app in Xcode that uses firebase analytics, and inherently firebase core. However, when I attempt to run the app, I get an error 'no such module 'FirebaseCore'. I've tried everything that I can, no luck. I've even added "pod 'FirebaseCode'" and "pod 'Firebase/Core'" to my pod file but not even that helps. Am I missing something?
Reproducing the issue
Not really sure how to reproduce this...
Firebase SDK Version
9.4.1
Xcode Version
13.3.1
Installation Method
Swift Package Manager
Firebase Product(s)
Analytics, Firestore, Messaging
Targeted Platforms
iOS
Relevant Log Output
No such module 'FirebaseCore'

If using Swift Package Manager, the project's Package.resolved

Expand Package.resolved snippet

Replace this line with the contents of your Package.resolved.

If using CocoaPods, the project's Podfile.lock

Expand Podfile.lock snippet

Replace this line with the contents of your Podfile.lock!

Filling out the full template may help us identify the issue and we may need a reproduction example.  Please clarify if you're using Swift Package manager or CocoaPods.


Error TS2351 "This expression is not constructable" for new SchemaBuilder

We had to update our tsconfig file and this resulted in a new typescript error when creating a new SchemaBuilder.
Code:
export const builder = new SchemaBuilder<{}>(builderOptions);

Error:
error TS2351: This expression is not constructable.
Type 'typeof import("C:/Users/[...]/node_modules/@pothos/core/dts/index")' has no construct signatures.

Changes in our tsconfig:

Changed "module": "commonjs" to "module": "NodeNext"
Added line "moduleResolution": "NodeNext"

Full tsconfig.json:
{
  "compilerOptions": {
    "target": "ESNext",
    "module": "NodeNext",

    "allowJs": true,
    "declaration": false,
    "outDir": "built",
    "maxNodeModuleJsDepth": 10,
    "strict": true,

    "moduleResolution": "NodeNext",

    "allowSyntheticDefaultImports": true,
    "esModuleInterop": true,
    "skipLibCheck": true
  },
  "include": ["src/**/*"],
  "exclude": ["node_modules"]
}

Package versions:
"@pothos/core": "^3.20.0"
"typescript": "^4.8.2"

Repository with error reproduction:
Repository: builder-ts-error-reproduction

Thanks for the report and reproduction!
I spent some time looking at this today, and I am very unclear on how this is supposed to work for packages supporting both esm.
Adding "type": "module" to package.json in pothos lets ts load the types correctly, but would completely break cjs support in pothos.
It also looks like if I duplicate type declaration into the esm directory and remove "types" "exports.types" from package.json things would also work.
This is a potential path forward, but would require 3 copies of the type definitions to be shipped.  I kinda suspect this might be a bug in typescript where they are not properly account for the combination of "nodeNext" with packages that define "exports" for both cjs and esm.
I won't have much time until late next week to dig into this more.  If you have ideas on a path forward I am happy to help implement, but I don't really have a good enough understanding of how all the different config options interact to know how to proceed at the moment.

Got same problem after upgrading to<EMAIL_ADDRESS>The code is perfectly working on 4.8.2
{
  "compilerOptions": {
    "sourceMap": true,
    "outDir": "dist",
    "rootDir": "src",
    "target": "ES2021",
    "module": "Node16",
    "strict": true,
    "lib": ["ES2021"],
    "esModuleInterop": true,
    "skipLibCheck": true
  },
  "exclude": ["prisma", "dist"]
}

After playing around with the error repoduction repo I succeed to make it work by changing this files :
src/index.mts
import { default as SchemaBuilder } from '@pothos/core'; // was import SchemaBuilder from "@pothos/core";

const builderOptions = {
  plugins: [],
};

export const builder = new SchemaBuilder<{}>(builderOptions);

tsconfig.json
{
  "compilerOptions": {
    "sourceMap": true,
    "outDir": "dist",
    "rootDir": "src",
    "target": "es2021",
    "module": "node16",
    "strict": true,
    "lib": ["es2021"],
    "esModuleInterop": true,
    "skipLibCheck": true
  },
  "exclude": ["dist"]
}

BUT it only works up to Typescript version 4.8.2 ! If you install version 4.8.3 you will get
src/index.mts:7:28 - error TS2351: This expression is not constructable.
  Type 'typeof import("C:/Users/mboidin/Documents/Playgrounds/builder-ts-error-reproduction/node_modules/@pothos/core/dts/index")' has no construct signatures.

7 export const builder = new SchemaBuilder<{}>(builderOptions);

Run into the same issue as well. Thanks for sharing.

relevant typescript issue: https://github.com/microsoft/TypeScript/issues/50762
Did some debugging, and it looks like the issue is that in nodeNext mode pothos at its root is a "cjs" package, and the "dts" files inside are treated as cjs in compatability mode.  This makes ts think that the default export is an object with a "default" property, rather than being the builder class itself.

Just published a new version of all Pothos packages that I'm hoping will fix this.  Let me know if that works for you

I can confirme the issue is fixes ;) thanks a lot @hayes

Issue fixed for me but still uncompatible with typescript above version 4.8.2

pushed another update earlier today.  Ended up duplicating the all the .d.ts files into the esm directory.  Not an optimal solution, but it should work across all versions (and hopefully all ts options) now

Hum, now it's not working anymore :/
TSError: ⨯ Unable to compile TypeScript:
src/builder.mts:1:27 - error TS7016: Could not find a declaration file for module '@pothos/core'. <EMAIL_ADDRESS>implicitly has an 'any' type.
Try npm i --save-dev @types/pothos__core if it exists or add a new declaration (.d.ts) file containing declare module '@pothos/core';
1 import SchemaBuilder from '@pothos/core'

looks like the build job is copying files differently in CI than on my machine.  Must be a linux vs osx difference in how cp works.  I think this should be easy to fix, one minute

cp -r dts/ esm/  on osx  works likecp -r dts/* esm/  vs corking like cp -r dts esm/.  New build/release is running now

okay, new version actually has the definition files in the expected locations

Still not working :/

something still seems broken though .

Good old import { default as SchemaBuilder } from '@pothos/core' is working but for unknown reason SchemaBuilder.plugins is typed never[] | undefined

the esm/package.json that marks the esm directory as being "type": "module" got deleted for pothos/core... pushing a fix

okay, I think it's fixed for real this time.  d.ts files are in the right place, the pasckage.json file for the esm directory is restored, the repro from above now works on both 4.8.2 and 4.8.4 (for me at least).  Let me know if you are still running into issues after this

Sorry but, now when implementing SchemaBuilder, the instance is marked as any :/

I've tried a bunch of different combinations of options using the repro repo from above and can't reproduce that, any more info on how to reproduce the any issue?

gql-pothos-issue.zip
Here is a little sample of my own project

thanks, I think I see what's going in.  Looks like some imports int the esm definintions are not working correctly because they are importing directories rather than explicitly asking for dir/index.js

No problemo ;) I love this lib so I'm glad to help.
Seems to be solved this time ;) Well done


environments: Regenerate manifest

Adds OLM Metrics.

Unlike the example PR, changes to the jsonnetfile.lock.json were not made after running ./build.sh.
The changes introduced to the observatorium-template.yaml  file were manually added.

cc @squat do you mind having a look at this, thanks :)

Ah wait, actually this PR is an exact duplicate of https://github.com/observatorium/configuration/pull/133. We can close this as it’s already done :)


Tweak log level

TL;DR
Tweak log level for artifact staging and resource registration.
Type

[ ] Bug Fix
[ ] Feature
[ ] Plugin

Are all requirements met?

[x] Code completed
[ ] Smoke tested
[ ] Unit tests added
[ ] Code documentation added
[ ] Any pending items have an associated Issue

Complete description
Tweak log level for artifact staging and resource registration. Since those processes are usually long, it makes sense to give user more information with info level.
Tracking Issue
NA
Follow-up issue
NA

I hate this DCO thing so much....

Self-merging this tiny change to unblock.


OAuth 2 proxy redirects POST request which have // in path

I have OAuth 2 proxy which has Grafana as an upstream.
Grafana web makes a POST call to a url like this localhost:4180/api/datasources/proxy/2//_msearch?search_type=count . Since the path has a // before _msearch, oauth2_proxy immediately returns a 301 and sends a GET request to the same url which fails my request. Any reason why this might be happening ?

@pawanrawal hmm... This certainly sounds like path normalization, but i'm not sure where that would be happening. Can you share some logs that might show this happening?

I'm also experiencing this issue. Somehow double slashes causes redirects instead of just proxying to upstream

The good news is, Grafana has fixed this problem for the next release.
https://github.com/grafana/grafana/pull/5536

The source of this is deep in golang's ServeMux
https://github.com/golang/go/blame/6a982c390138fb2af49f85c4aeea2bce3222eb20/src/net/http/server.go#L1985
https://github.com/golang/go/blame/6a982c390138fb2af49f85c4aeea2bce3222eb20/src/net/http/server.go#L1941
https://github.com/golang/go/blob/4054769a31f66039f5fd74ca3164e9233f724da8/src/path/path.go#L69

This affects anyone using Oauth2_proxy in front of Mesos/Marathon also.. :(
https://github.com/mesosphere/marathon/issues/3966

RabbitMQ Management plugin is also affected :( :(


feat: update earn page

Question: Should the relative value be display as real percentage? e.g. if user inputs 0.001, then show Relative fee (0.1%) as input label. Or should we generally input as percentage? Is the value in Figma 3% (factor input) or 0.03% (percentage input)?


Recreate changes from hubot-stanley in new repo

original PR https://github.com/StackStorm/hubot-stanley/pull/27

:+1:


Support LIKE in filtering?

Kind of like the IN clause query, will need to scan dictionary to get all the matched dictionary id.

Is this only for prefix search (eg. LIKE 'potato%') or any search (eg. LIKE '%potato%').

if we want to support , we should do  any

Makes sense. Prefix search is doable with a combination greater than/equals and smaller than, but not any search. From checking the SQL92 spec, this is what we'd need to support:

% 0-n characters (eg. LIKE '%ato' matches 'potato' and 'tomato')
_ exactly one character (eg. LIKE '_ean' matches 'Jean' and 'Dean')
ESCAPE clause (eg. LIKE '20!%' ESCAPE '!' matches '20%' but not '20abcd')

The ESCAPE part would need some changes to the grammar, but nothing major. The best way would probably to convert the like clause to a regex on the server-side and find matching dictionary entry IDs, then process the query. This might be slow for large dictionaries.

@fx19880617 want to work on this? Looks straight forward. @jfim do we need to change grammar for this?

This is supported by Pinot. See https://github.com/apache/incubator-pinot/pull/1192


Clarify 'user_project' semantics for API wrapper methods.

Closes #4142.
[ci skip]

Yes, it is defined on the bucket:  blob and notification instances have read-only properties which "borrow" it from the bucket.


[matplotcppcpp] build failure - Cannot link to openGL backend

Host Environment

OS: Windows 10
Compiler: Visual Studio 16.11.3

Steps to reproduce the behavior:
./vcpkg install matplotcppcpp[opengl]
Failure logs
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\shared\minwindef.h(130,1): warning C4005: 'APIENTRY': macro redefinition
1>C:\vcpkg\installed\x64-windows-static\include\glad\glad.h(32): message : see previous definition of 'APIENTRY'
1>ConsoleApplication5.obj : error LNK2019: unresolved external symbol "public: __cdecl matplot::backend::opengl::opengl(void)" (??0opengl@backend@matplot@@QEAA@XZ) referenced in function "void __cdecl std::_Construct_in_place<class matplot::backend::opengl>(class matplot::backend::opengl &)" (??$_Construct_in_place@Vopengl@backend@matplot@@$$V@std@@YAXAEAVopengl@backend@matplot@@@Z)
1>ConsoleApplication5.obj : error LNK2019: unresolved external symbol "public: __cdecl matplot::backend::opengl::~opengl(void)" (??1opengl@backend@matplot@@QEAA@XZ) referenced in function "public: void * __cdecl matplot::backend::opengl::`scalar deleting destructor'(unsigned int)" (??_Gopengl@backend@matplot@@QEAAPEAXI@Z)
1>ConsoleApplication5.obj : error LNK2019: unresolved external symbol "public: static double __cdecl matplot::backend::opengl::get_time(void)" (?get_time@opengl@backend@matplot@@SANXZ) referenced in function main

Build passed but the compiler could not find the correct symbols in the generated .lib file to link the openGL implementations.

@dahubley ，Does this problem still exist?

Closing this issue for now since there is no active thread for a long time. Please feel free to reopen this issue if it is still a problem for you.

I have exactly the same issue with the current master b3e0a1e625a0cc00073efb763e39088e5b75939e. Please reopen this.

@unageek, please provide the full error log.

As @dahubley said above, the problem is that buildtrees\matplotplusplus\x64-windows-*\source\matplot\matplot_opengl.lib is not copied to the installed directory and is not linked against.

Fixed by PR #32227


System python on CentOS 8 is not "python"

Affected Puppet, Ruby, OS and module versions/distributions

Puppet: 6.11.1
Ruby: 2.5.7p206
Distribution: CentOS 8
Module version: 4.0.0

How to reproduce (e.g Puppet code you use)
        class { 'python':
                ensure => 'present',
                pip => 'present',
                virtualenv => 'present',
                use_epel => false,
        }

What are you seeing
Error: Execution of '/bin/dnf -d 0 -e 1 -y install python' returned 1: Error: Unable to find a match
Error: /Stage[main]/Python::Install/Package[python]/ensure: change from 'purged' to 'present' failed: Execution of '/bin/dnf -d 0 -e 1 -y install python' retu
rned 1: Error: Unable to find a match

What behaviour did you expect instead
Python 2.7 is now EOL and so CentOS 8 are pushing a lot of Python 3. Because of the long lifespan of a CentOS release, they've only got versioned Python (python2 and python3) and python as a package doesn't exist.
"system" should be Python 3 on CentOS 8 (and other distros that have similar behaviour)
This would also solve the problem of installing Python as v3 (rather than system) and then having to specify v3 for all virtualenvs as well.

The package pip doesn't exist either. And it's likely there will be other problems.
Unfortunately my time is very limited so I can't address this myself, but it would be great if this module could include CentOS 8 support.


how the example works?

this is not generated but is the contract that is used for the code gen?

this is not generated but is the contract that is used for the code gen?

@gedw99 Yes, you are right! See the example README please.

thanks @RussellLuo
Quite cool architecture. I like its annotations approach and a schema based approach to testing.
Do you have any thoughts on things you want to add and what you want this to evolve as ?

Short-term goal: continuously improve the support for SQL databases.
Long-term goal: possibly add support for NoSQL databases (e.g. Redis or MongoDB).


Flutter module with editable android directory - Gradle can't find local.properties

In an Add2App project made editable with flutter make-host-app-editable, local.properties is not created in the editable android/ module, but rather in the ephemeral .android/ module which is still generated. With local.properties being looked for in the editable module, any command that builds gradle will fail with:
$ flutter build apk --debug
Initializing gradle...                                              0.9s
Resolving dependencies...
* Error running Gradle:
ProcessException: Process "/Users/.../Desktop/eComm/Android/flutter_module/android/gradlew" exited abnormally:

FAILURE: Build failed with an exception.

* What went wrong:
A problem occurred configuring root project 'android'.
> A problem occurred configuring project ':flutter'.
   > SDK location not found. Define location with sdk.dir in the local.properties file or with an ANDROID_HOME environment variable.

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get
full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 0s
  Command: /Users/.../Desktop/eComm/Android/flutter_module/android/gradlew app:properties

Please review your Gradle project setup in the android/ folder.

Since local.properties shouldn't be version controlled, and the only way (that I've found) to get an updated apk is with ./gradlew assembleDebug from the ephemeral module or by temporarily copying local.properties into the editable module and then using flutter build apk as usual, this is becoming a hinderance.
Steps to Reproduce

Set up Android embedding project following Add Flutter to existing apps wiki
cd flutter_module
Make the native modules editable with flutter make-host-app-editable
flutter run or flutter build apk/flutter build aar

Logs
$ flutter run --verbose
[  +30 ms] executing: [/Users/.../Desktop/lcedev/flutter/] git log -n 1 --pretty=format:%H
[  +41 ms] Exit code 0 from: git log -n 1 --pretty=format:%H
[        ] 83a8a575eed882c49b629effedf7c95b6184515d
[        ] executing: [/Users/.../Desktop/lcedev/flutter/] git describe --match v*.*.* --first-parent --long --tags
[  +25 ms] Exit code 0 from: git describe --match v*.*.* --first-parent --long --tags
[        ] v1.8.4-117-g83a8a575e
[   +9 ms] executing: [/Users/.../Desktop/lcedev/flutter/] git rev-parse --abbrev-ref --symbolic @{u}
[   +7 ms] Exit code 0 from: git rev-parse --abbrev-ref --symbolic @{u}
[        ] origin/master
[        ] executing: [/Users/.../Desktop/lcedev/flutter/] git ls-remote --get-url origin
[   +7 ms] Exit code 0 from: git ls-remote --get-url origin
[        ] https://github.com/flutter/flutter.git
[  +62 ms] executing: [/Users/.../Desktop/lcedev/flutter/] git rev-parse --abbrev-ref HEAD
[   +8 ms] Exit code 0 from: git rev-parse --abbrev-ref HEAD
[        ] master
[ +329 ms] executing: /Users/.../Library/Android/sdk/platform-tools/adb devices -l
[  +10 ms] Exit code 0 from: /Users/.../Library/Android/sdk/platform-tools/adb devices -l
[        ] List of devices attached
           emulator-5554          device product:sdk_gphone_x86 model:Android_SDK_built_for_x86 device:generic_x86 transport_id:9
[  +18 ms] executing: /Users/.../Desktop/lcedev/flutter/bin/cache/artifacts/libimobiledevice/idevice_id -h
[  +51 ms] /usr/bin/xcrun simctl list --json devices
[ +276 ms] /Users/.../Library/Android/sdk/platform-tools/adb -s emulator-5554 shell getprop
[  +55 ms] Artifact Instance of 'FlutterWebSdk' is not required, skipping update.
[   +3 ms] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update.
[  +44 ms] Found plugin flutter_crashlytics at
/Users/.../Desktop/lcedev/flutter/.pub-cache/hosted/pub.dartlang.org/flutter_crashlytics-1.0.0/
[   +4 ms] Found plugin flutter_picker at
/Users/.../Desktop/lcedev/flutter/.pub-cache/hosted/pub.dartlang.org/flutter_picker-1.0.13/
[  +82 ms] Found plugin flutter_crashlytics at
/Users/.../Desktop/lcedev/flutter/.pub-cache/hosted/pub.dartlang.org/flutter_crashlytics-1.0.0/
[   +1 ms] Found plugin flutter_picker at
/Users/.../Desktop/lcedev/flutter/.pub-cache/hosted/pub.dartlang.org/flutter_picker-1.0.13/
[  +52 ms] ro.hardware = ranchu
[   +8 ms] executing: [/Users/.../Desktop/eComm/Android/flutter_module/ios/Runner.xcodeproj/] /usr/bin/xcodebuild -project
/Users/.../Desktop/eComm/Android/flutter_module/ios/Runner.xcodeproj -target Runner -showBuildSettings
[+1567 ms] Exit code 0 from: /usr/bin/xcodebuild -project /Users/.../Desktop/eComm/Android/flutter_module/ios/Runner.xcodeproj
-target Runner -showBuildSettings
[   +1 ms] Build settings for action build and target Runner:

               *Removed lengthy xcode build settings to improve readability*

[  +55 ms] Using hardware rendering with device Android SDK built for x86. If you get graphics artifacts, consider enabling software
rendering
           with "--enable-software-rendering".
[  +14 ms] Launching lib/main.dart on Android SDK built for x86 in debug mode...
[  +11 ms] Initializing gradle...
[   +6 ms] Using gradle from /Users/.../Desktop/eComm/Android/flutter_module/android/gradlew.
[  +11 ms] executing: /usr/bin/defaults read /Applications/Android Studio.app/Contents/Info
[  +45 ms] Exit code 0 from: /usr/bin/defaults read /Applications/Android Studio.app/Contents/Info
[        ] {
               CFBundleDevelopmentRegion = English;
               CFBundleDocumentTypes =     (
                           {
                       CFBundleTypeExtensions =             (
                           ipr
                       );
                       CFBundleTypeIconFile = "studio.icns";
                       CFBundleTypeName = "Android Studio Project File";
                       CFBundleTypeRole = Editor;
                   },
                           {
                       CFBundleTypeExtensions =             (
                           "*"
                       );
                       CFBundleTypeName = "All documents";
                       CFBundleTypeOSTypes =             (
                           "****"
                       );
                       CFBundleTypeRole = Editor;
                       LSTypeIsPackage = 0;
                   }
               );
               CFBundleExecutable = studio;
               CFBundleGetInfoString = "Android Studio 3.4, build AI-183.6<IP_ADDRESS>22156. Copyright JetBrains s.r.o., (c)
               2000-2019";
               CFBundleIconFile = "studio.icns";
               CFBundleIdentifier = "com.google.android.studio";
               CFBundleInfoDictionaryVersion = "6.0";
               CFBundleName = "Android Studio";
               CFBundlePackageType = APPL;
               CFBundleShortVersionString = "3.4";
               CFBundleSignature = "????";
               CFBundleURLTypes =     (
                           {
                       CFBundleTypeRole = Editor;
                       CFBundleURLName = Stacktrace;
                       CFBundleURLSchemes =             (
                           idea
                       );
                   }
               );
               CFBundleVersion = "AI-183.6<IP_ADDRESS>22156";
               JVMOptions =     {
                   ClassPath =
                   "$APP_PACKAGE/Contents/lib/bootstrap.jar:$APP_PACKAGE/Contents/lib/extensions.jar:$APP_PACKAGE/Contents/lib/util.jar
                   :$APP_PACKAGE/Contents/lib/jdom.jar:$APP_PACKAGE/Contents/lib/log4j.jar:$APP_PACKAGE/Contents/lib/trove4j.jar:$APP_P
                   ACKAGE/Contents/lib/jna.jar";
                   JVMVersion = "1.8*,1.8+";
                   MainClass = "com.intellij.idea.Main";
                   Properties =         {
                       "idea.executable" = studio;
                       "idea.home.path" = "$APP_PACKAGE/Contents";
                       "idea.java.redist" = Bundled;
                       "idea.paths.selector" = "AndroidStudio3.4";
                       "idea.platform.prefix" = AndroidStudio;
                   };
                   WorkingDirectory = "$APP_PACKAGE/Contents/bin";
               };
               LSApplicationCategoryType = "public.app-category.developer-tools";
               LSArchitecturePriority =     (
                   "x86_64"
               );
               LSMinimumSystemVersion = "10.8";
               LSRequiresNativeExecution = YES;
               NSHighResolutionCapable = 1;
               NSSupportsAutomaticGraphicsSwitching = 1;
           }
[   +2 ms] executing: /usr/bin/defaults read /Applications/Android Studio.app/Contents/Info CFBundleShortVersionString
[  +43 ms] Exit code 0 from: /usr/bin/defaults read /Applications/Android Studio.app/Contents/Info CFBundleShortVersionString
[        ] 3.4
[  +80 ms] executing: /Users/.../Desktop/eComm/Android/flutter_module/android/gradlew -v
[ +708 ms]
                    ------------------------------------------------------------
                    Gradle 4.10.1
                    ------------------------------------------------------------

                    Build time:   2018-09-12 11:33:27 UTC
                    Revision:     76c9179ea9bddc32810f9125ad97c3315c544919

                    Kotlin DSL:   1.0-rc-6
                    Kotlin:       1.2.61
                    Groovy:       2.4.15
                    Ant:          Apache Ant(TM) version 1.9.11 compiled on March 23 2018
                    JVM:          1.8.0_152-release (JetBrains s.r.o 25.152-b01)
                    OS:           Mac OS X 10.14.5 x86_64
[  +11 ms] Initializing gradle... (completed in 0.9s)
[   +1 ms] Resolving dependencies...
[        ] executing: [/Users/.../Desktop/eComm/Android/flutter_module/android/]
/Users/.../Desktop/eComm/Android/flutter_module/android/gradlew app:properties
[ +952 ms]
                    FAILURE: Build failed with an exception.

                    * What went wrong:
                    A problem occurred configuring root project 'android'.
                    > A problem occurred configuring project ':flutter'.
                       > SDK location not found. Define location with sdk.dir in the local.properties file or with an ANDROID_HOME
                       environment variable.

                    * Try:
                    Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run
                    with --scan to get full insights.

                    * Get more help at https://help.gradle.org

                    BUILD FAILED in 0s
[   +5 ms] Resolving dependencies... (completed in 1.0s)
[   +3 ms] * Error running Gradle:
           ProcessException: Process "/Users/.../Desktop/eComm/Android/flutter_module/android/gradlew" exited abnormally:

           FAILURE: Build failed with an exception.

           * What went wrong:
           A problem occurred configuring root project 'android'.
           > A problem occurred configuring project ':flutter'.
              > SDK location not found. Define location with sdk.dir in the local.properties file or with an ANDROID_HOME environment
variable.

           * Try:
           Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with
--scan to get
           full insights.

           * Get more help at https://help.gradle.org

           BUILD FAILED in 0s
             Command: /Users/.../Desktop/eComm/Android/flutter_module/android/gradlew app:properties

[   +4 ms] "flutter run" took 4,490ms.
Please review your Gradle project setup in the android/ folder.

#0      throwToolExit (package:flutter_tools/src/base/common.dart:28:3)
#1      _readGradleProject (package:flutter_tools/src/android/gradle.dart:233:7)
<asynchronous suspension>
#2      _gradleAppProject (package:flutter_tools/src/android/gradle.dart:112:37)
<asynchronous suspension>
#3      getGradleAppOut (package:flutter_tools/src/android/gradle.dart:106:29)
<asynchronous suspension>
#4      AndroidApk.fromAndroidProject (package:flutter_tools/src/application_package.dart:165:23)
<asynchronous suspension>
#5      ApplicationPackageFactory.getPackageForPlatform (package:flutter_tools/src/application_package.dart:47:32)
<asynchronous suspension>
#6      FlutterDevice.runHot (package:flutter_tools/src/resident_runner.dart:359:56)
<asynchronous suspension>
#7      HotRunner.run (package:flutter_tools/src/run_hot.dart:253:39)
<asynchronous suspension>
#8      RunCommand.runCommand (package:flutter_tools/src/commands/run.dart:472:37)
<asynchronous suspension>
#9      FlutterCommand.verifyThenRunCommand (package:flutter_tools/src/runner/flutter_command.dart:490:18)
#10     _asyncThenWrapperHelper.<anonymous closure> (dart:async-patch/async_patch.dart:77:64)
#11     _rootRunUnary (dart:async/zone.dart:1132:38)
#12     _CustomZone.runUnary (dart:async/zone.dart:1029:19)
#13     _FutureListener.handleValue (dart:async/future_impl.dart:126:18)
#14     Future._propagateToListeners.handleValueCallback (dart:async/future_impl.dart:639:45)
#15     Future._propagateToListeners (dart:async/future_impl.dart:668:32)
#16     Future._complete (dart:async/future_impl.dart:473:7)
#17     _SyncCompleter.complete (dart:async/future_impl.dart:51:12)
#18     _AsyncAwaitCompleter.complete (dart:async-patch/async_patch.dart:28:18)
#19     _completeOnAsyncReturn (dart:async-patch/async_patch.dart:294:13)
#20     RunCommand.usageValues (package:flutter_tools/src/commands/run.dart)
#21     _asyncThenWrapperHelper.<anonymous closure> (dart:async-patch/async_patch.dart:77:64)
#22     _rootRunUnary (dart:async/zone.dart:1132:38)
#23     _CustomZone.runUnary (dart:async/zone.dart:1029:19)
#24     _FutureListener.handleValue (dart:async/future_impl.dart:126:18)
#25     Future._propagateToListeners.handleValueCallback (dart:async/future_impl.dart:639:45)
#26     Future._propagateToListeners (dart:async/future_impl.dart:668:32)
#27     Future._complete (dart:async/future_impl.dart:473:7)
#28     _SyncCompleter.complete (dart:async/future_impl.dart:51:12)
#29     _AsyncAwaitCompleter.complete (dart:async-patch/async_patch.dart:28:18)
#30     _completeOnAsyncReturn (dart:async-patch/async_patch.dart:294:13)
#31     AndroidDevice.isLocalEmulator (package:flutter_tools/src/android/android_device.dart)
#32     _asyncThenWrapperHelper.<anonymous closure> (dart:async-patch/async_patch.dart:77:64)
#33     _rootRunUnary (dart:async/zone.dart:1132:38)
#34     _CustomZone.runUnary (dart:async/zone.dart:1029:19)
#35     _FutureListener.handleValue (dart:async/future_impl.dart:126:18)
#36     Future._propagateToListeners.handleValueCallback (dart:async/future_impl.dart:639:45)
#37     Future._propagateToListeners (dart:async/future_impl.dart:668:32)
#38     Future._complete (dart:async/future_impl.dart:473:7)
#39     _SyncCompleter.complete (dart:async/future_impl.dart:51:12)
#40     _AsyncAwaitCompleter.complete.<anonymous closure> (dart:async-patch/async_patch.dart:33:20)
#41     _rootRun (dart:async/zone.dart:1120:38)
#42     _CustomZone.run (dart:async/zone.dart:1021:19)
#43     _CustomZone.runGuarded (dart:async/zone.dart:923:7)
#44     _CustomZone.bindCallbackGuarded.<anonymous closure> (dart:async/zone.dart:963:23)
#45     _rootRun (dart:async/zone.dart:1124:13)
#46     _CustomZone.run (dart:async/zone.dart:1021:19)
#47     _CustomZone.runGuarded (dart:async/zone.dart:923:7)
#48     _CustomZone.bindCallbackGuarded.<anonymous closure> (dart:async/zone.dart:963:23)
#49     _microtaskLoop (dart:async/schedule_microtask.dart:41:21)
#50     _startMicrotaskLoop (dart:async/schedule_microtask.dart:50:5)
#51     _runPendingImmediateCallback (dart:isolate-patch/isolate_patch.dart:116:13)
#52     _RawReceivePortImpl._handleMessage (dart:isolate-patch/isolate_patch.dart:173:5)

$ flutter doctor --verbose
[✓] Flutter (Channel master, v1.8.5-pre.117, on Mac OS X 10.14.5 18F132, locale en-US)
    • Flutter version 1.8.5-pre.117 at /Users/lcollins/Desktop/lcedev/flutter
    • Framework revision 83a8a575ee (5 days ago), 2019-08-10 12:38:20 -0700
    • Engine revision ff49ca1c6e
    • Dart version 2.5.0 (build 2.5.0-dev.1.0 f29f41f1a5)

[✓] Android toolchain - develop for Android devices (Android SDK version 28.0.3)
    • Android SDK at /Users/lcollins/Library/Android/sdk
    • Android NDK location not configured (optional; useful for native profiling support)
    • Platform android-28, build-tools 28.0.3
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1343-b01)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 10.3)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 10.3, Build version 10G8
    • CocoaPods version 1.7.2

[✓] Android Studio (version 3.4)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin version 37.0.1
    • Dart plugin version 183.6270
    • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1343-b01)

[✓] VS Code (version 1.37.0)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.3.0

[✓] Connected device (1 available)
    • Android SDK built for x86 • emulator-5554 • android-x86 • Android 9 (API 28) (emulator)

• No issues found!

@lucascolli I tested on stable and master, and I see a /android/local.properties file. flutter build apk and flutter run seem to work fine.

Closing as resolved


How to destroy an event?

I couldn't find any hints in the document. It'd be great if you can show me how to do it.
Thanks !

// in vue
methods: {
   pressMove(event) {
       // remove tap event
       event.gesture.off('tap')
    }
  // the tap event no longer takes effect after the removal is triggered
   tap(){
    conso.log('tap')
   }
}

//--------------------------------------------------------------------------------------

// in javascript
let  betterGesture= new BetterGesture(document.getElementById('app'), {
       pressMove(event) {
           console.log(event.deltaX)
       }
   })
   // remove
 betterGesture.off('pressMove')

In fact, it is mentioned in the document, and I guess that the document failed to load, causing you to not find this api. Because it is deployed on git-page, sometimes it fails to load due to some problems (network, operator, region), you can try to switch the network or device to see if the document can be loaded.


mistral, openai: allow anthropic-style messages in message histories

tests passing with anthropic, fireworks, mistral, openai https://github.com/langchain-ai/langchain/actions/runs/8727047953


[Followup] Codeunit 12 "Gen. Jnl.-Post Line" - IsHandled pattern for OnBeforeApplyCustLedgEntry event.

Hello,
In https://github.com/microsoft/ALAppExtensions/issues/19201 we requested an IsHandled parameter for event OnBeforeApplyCustLedgEntry.
In the followup issue #21993, we were asked to provide an example why we need the IsHandled parameter.
We have some specific development and based on certain conditions, another custom function is called to create and post specific journal lines.
So, the "Amount To Apply" can be different than zero and it would get through the standard code from ApplyCustLedgEntry as well as through our specific function. We need that IsHandled parameter to avoid getting through the standard code in certain conditions.

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. Please do not reply to this, as we do not monitor closed issues. If you have follow-up questions or requests, please create a new issue where you reference this one.
Build ID: 11076.


fix: cve fix for urllib3

PR summary
changed urllib3 version(1.26.0 -> 1.26.18)

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


HOWTO: Train in Python kata locally

Show how to set up local environment to create Python kata or train on them.

AFA running tests locally, is there a way to easily convert this to something more... meaningful to the user?

Or should I just say don't pay attention to these <X::> things?

There's no built-in way to make nice output for languages using a custom test framework.
You can somewhat improve it by piping it to sed or something similar:
$ run-tests | sed 's/^<\(DESCRIBE\|COMPLETEDIN\)::>//;s/^<IT::>/  /;s/^<\(PASSED\|FAILED\|ERROR\)::>/    /'

should make that
Hi
  Hi
    Test Passed
    1 should equal 2
0.07
0.18

Or write some script to do more fancy stuff.


Improve messaging for Docker timeouts

Follow up for https://github.com/openshift/source-to-image/pull/444
@bparees PTAL

[test]

lgtm [merge]


Empty __init__.py files are ignored

Thanks for this plugin. It is really useful!
We have configured it like so:
accept-encodings = utf-8

But, when creating empty __init__.py file and running flake8 check, there is no error.
Magic comment is missing from __init__.py.
So, this is a bug report.

I think magic comment is not needed for empty files because it does not have any content.
I did it intentionally.

So, can we make it configurable?


fix: Don't create KMS key and related resources for CH by default

[x] Following up from previous change, don't create KMS keys for clickhouse by default.

This PR is included in version 4.21.1 :tada:


The trailing comma of arg list is now valid

The releated issue.

This issue was actually just fixed with the merge of PR #9, I believe. This issue can be closed.

This actually doesn't appear to be fixed in the latest release, but I will work on that this week.

I tried the last version 0.5.0, this issue still exist.

@bollian, can you please tag a new release from master? Commit 8af3261 ("Allow training commas...") was committed after the latest release, and thus hasn't been released yet.


gsync create directory but sync noting

Hello,
i recently use gsync. it's simple and good idea to backup on google drive using  command line. but when i hit sudo gsync -r -t -p -o -g -v --progress --delete -l -s test  drive://backup this create recursive empty directory on drive. console log is

test/
test/socket.io.js
0   0%     0.00B/s    0:00:00
test/index-test.js
0   0%     0.00B/s    0:00:00
test/mocha.opts
0   0%     0.00B/s    0:00:00
test/import.js
0   0%     0.00B/s    0:00:00
test/db/
test/db/client.js
0   0%     0.00B/s    0:00:00
test/db/schema.js
0   0%     0.00B/s    0:00:00
test/support/
test/support/doge.jpg

checkout this please

It´s a known bug (#69)


Quick and dirty CONTRIBUTING.md

I want to get the ball rolling on #109 so that pull requests and issues will be resolved and maintenance can resume.
@spajus and @nevans: any thoughts?

:+1:

:+1:

THANKS!  :)


849 cleanup

This PR includes some cleanup tasks:

Remove unused map marker props
Clarify handling of header row from tabular endpoint response

However I'm pretty sure MapTypeHeaderCounts.tsx can be removed now.

Why not!


Publish Windows binaries

What happened?
Even though libarchive themselves publish a Windows .exe, it expects to dynamic-link against some crypto DLL.
We should build one that's fully self-contained.
Version
HEAD
How to reproduce
No response
Any other information?
No response

Will publish one of these now for libarchive 3.7.5


Error: invalid or corrupt jarfile

I encountered this problem when executing a fat jar built by sbt-assembly. From https://github.com/sbt/sbt/issues/850 , I got a work around solution by using
java -cp app.jar app.Main
After that, I digged a little bit and found that unzipping the fat jar and zip it again,
java -jar app.jar won’t report error
So, I guess it probably has something to do with the zip related code in sbt assembly and jdk1.7 somehow cannot recognize jar file.

@sangszhou, I'm stuck on the same issue. How did you reassemble the fat JAR?

@jramos
I didn't reassemble the fat jar, just changed the way how to execute jar.
java -cp app.jar app.Main works for me.


Create an Aggregate Processor for Single Node Data Prepper

Is your feature request related to a problem? Please describe.
Data Prepper users need a processor that can be utilized for generic stateful aggregation
Describe the solution you'd like
A solution has already been proposed in RFC #699
Tasks

[x] #838
[x] #844
[x] #871
[x] #938
[ ] Add the conclude_when feature to conclude a group when a conditional is met
[x] #1004
[x] #1038

Data Prepper 1.3.0 will not save state for the aggregate processor. This work is postponed and moved into #985 .

I have added the #1130 issue for an enhancement which allows pipeline authors to conclude groups early. The aggregate Process doesn't strictly need this feature. So, we can consider the aggregate feature complete on its own.


Move to TypeScript

Closes #984
Closes #895
This is a PR with a lot of changes. It started as rewriting the editor, in which I started writing the new code in TS (since next supports it pretty seamlessly), which then led to start turning the main process in TS as well. Since it was a big rewrite I also started making other big changes to re-organizing some things. I'll try to sum up the biggest things below since it's a lot of changes to review at once with no context:
~Keep in mind that this is very much WIP, so there's a lot of duplicate files that I haven't fully transitioned, and a lot of debug code and console.logs, but I just wanted to get some eyes on it early.~
General

TS on both renderer/main
~TS common types are duplicated for now as I haven't figured out a way to import them in both without transpiler breaking. But I've left comments on the types that should eventually only live in one place~
Shared TS types are achieved via a Symlink of main/common -> renderer/common

Renderer

New common top-level component in _app.tsx, which:

Disables SSR so we can safely use electron/electron-util
Automatically applies base styles + other utilities like dark mode
Hooks for window args (more info below)
Common functionality for showing the window once initial render has finished

Every new file (or rewritten) is using function exports (instead of Component classes), TS instead of PropTypes and hooks
Every new page (currently just editor) uses unstated-next instead of unstated v1
Hooks for the new "remote-state" which will be explained below in more detail

Main

Full TS rewrite
0 circular dependencies
KapWindow class which:

Extends Browser window and adds common utility we have in all our windows, like next.js route, logic for showing the window when it mounts and now a common way to pass initial window args/state
It needs to be renamed to BrowserWindow, as electron internally has checks like window.constructor.name === 'BrowserWindow'
Handles Dock/Menu for the windows that use it

WindowManager which incorporates all window actions to avoid the numerous circular dependecies
New "remote-states" (more details below)
Conversion logic (ffmpeg commands) rewritten in TS and refactored to expect new source encodings
New logic for removing audio, doing it in the same conversion instead of running one conversion just to remove the audio
Plugin system rewritten in TS, and refactored some logic to make plugins less dangerous and causing less bugs when a plugin has an issue loading (wip)
New classes like Video/Recording/Conversion that depend on each other to make options passing easier and more concrete, instead of passing random objects with 15 properties between every class/window and duplicating utility code (like default naming, encoding, fps etc)

Tests/Linting

XO set up to work with both the JS and the TS files
XO also set up to have a separate set of rules for test files (and mocks)
AVA set to work with typescript (using ts-node)
Mocks rewrote to work with Typescript
All tests rewrote in TS

Remote States
Not sure if that's the best name, but the way I thought of this was firstly for export-options. So the options that populate the editor window (plugins/fps etc) need to be synced, since you can install/uninstall plugins as you have the editor open. This was done in a pretty ugly way, so I wanted something that'd work better with hooks on the renderer side. Then I saw that it could be used in general, so I made it abstract. The way it works, is on the main side, we need a function that takes an argument sendState which it can use to notify that state has changed, and returns an object with two properties. One is getState that a new subscription can use to receive the state at any given point, and an object actions who's properties are functions that can change the state. Then on the renderer side, via a hook, the page can subscribe to one of these states (by name) and they will receive a state automatically updating whenever needed, a method to manually refresh the state and all the actions exported by main as proxy functions, that when called will actually just call the main ones. This is all done in the background with the two remote-state implementations that communicate via ipc and handle subscriptions/state updates/actions. To write new states, we simply write the function explained above for main and call the hook in the renderer. TS should be able to auto generate types for renderer based on the main implementation, but since we don't have common types yet, I needed to replicate the main type to the renderer to get that to work.
The only implementation for the above so far is the editor-options which handles, plugins (share/edit), and fps usage, but I'm planning on using one for conversions and keeping track (since now both editor windows and exports window will need to subscribe) and then for the cropper/action-bar to communicate with each other when I rewrite the cropper.
Any feedback/discussion is welcome. This is the first draft of all of this, and I'm trying to make sure I do it in a way that will help development in the future. Mostly trying to abstract things we do in every window, but slightly differently and it gets hard to manage/update.

From your description, this sounds like a huge improvement on every level. I would recommend targeting just getting something working first, merge this PR, and then do follow-up PRs that perfect/abstract it and turn more things into TS.

Planning on adding something like a Menu for a window, and this class takes care of updating the application menu based on the window being focused/blurred

:+1: This would be much closer to how native apps work.

The new export window looks hot 🙌

If I right-click the menu bar icon and click "About", it doesn't show. Only when I click the icon normally, it then shows.
The menu opens slowly when right-clicking the menu bar icon. And sometimes it doesn't show.
When right-clicking the menu bar icon and choosing "Open Video", the open panel is not focused. You should call App.activate (or whatever it is) before opening the panel.
In the editor, the play/pause button doesn't work.
In the editor, the FPS slider lags when moving it.
In the editor, the "Open in…" item should be "Open In…".
In the export window, the back button doesn't have a "click" state, only hover. It should have a click state, but not hover state.
In the export window: Initiating… => Initializing…
In the export window, we need to indicate to the user that the thumbnail can be dragged. Either through an icon or a popover that shows the first time.
The export window should not have a maximize window button.
When clicking the "red" window close button in the export window, it closes the export right away without any warning. I think we should tell the user that it will continue exporting and be available in the "Export History".
In the export window, when hovering the center "X" button, the mouse pointer should not be a hand.
Pressing Esc key in the export window should have the same effect as clicking the "X" button (in the center).
In the export window, clicking the cancel button "X" causes an unhandled rejection:

Unhandled Promise Rejection
CancelError: Promise was canceled
    at PCancelable.cancel (/Applications/Kap.app/Contents/Resources/app.asar/node_modules/p-cancelable/index.js:95:17)
    at Export.onCancel (/Applications/Kap.app/Contents/Resources/app.asar/dist-js/export.js:53:73)
    at Conversion.cancel (/Applications/Kap.app/Contents/Resources/app.asar/dist-js/conversion.js:85:79)
    at Object.cancel (/Applications/Kap.app/Contents/Resources/app.asar/dist-js/remote-states/conversion.js:43:102)
    at /Applications/Kap.app/Contents/Resources/app.asar/dist-js/remote-states/setup-remote-state.js:41:83
    at IpcMainImpl.listener (/Applications/Kap.app/Contents/Resources/app.asar/node_modules/electron-better-ipc/source/main.js:90:28)
    at WebContents.<anonymous> (electron/js2c/browser_init.js:3851:15)`

In the preferences window, changing the "capture frame rate" is slow. It only updates the dropdown a second after changing it.
When editing the config for a plugin, clicking "Open config file" doesn't do anything.

@sindresorhus everything should be done, except for the one you opened an issue for, and then these:

The menu opens slowly when right-clicking the menu bar icon. And sometimes it doesn't show.

Will try to figure out in a separate PR, probably need to upgrade Electron from 8.x

In the preferences window, changing the "capture frame rate" is slow. It only updates the dropdown a second after changing it.

Right now it's the fastest it'll be, I think it's because of an ipc call every time? (I didn't change it at all) but since I'm about to rewrite Preferences window soon, I'd rather address in that PR
So, let's test this a bit more, and if we don't have any other issues for a bit, we can merge

@skllcrn good catches, and although you forced me to go to light mode which throws me off so much, everything is fixed 😄

This is such a nice improvement to the code quality 👌


Get Mars API working

Will need API key functional and then see what we can get from the API

Did it!


Add snowballing functionality

This pull request adds snowballing functionality to ASReview Datatools. Snowballing means finding incoming (forwards) and outgoing (backwards) citations of works in a dataset. This implementation works by taking an ASReview dataset as input, looking in OpenAlex for the references and then writing that away in a separate output file that could be read by ASReview again.
@J535D165 I'd be happy to hear what you think of this pull request! I added type hinting to my code, but I'm happy to remove it to align it with the rest of the code. There also is no Ruff settings file in this repository yet, so I used the settings I found in asreview main.

snowballing as asreview argument is inconsistent with snowball asreview argument found in docs

Got the following errors for this datafile:
Backward:
asreview data snowballing asreview_result_spatial-and-temporal-patterning-of-emergency-reactive-police-demand.csv snowballed.csv --backward --all
Found OpenAlex identifiers for 1861 out of 3103 records. Performing snowballing for those records.
Starting backward snowballing
Found 0 records
Traceback (most recent call last):
  File "/home/mvansteenbergen/miniconda3/bin/asreview", line 8, in <module>
    sys.exit(main())
             ^^^^^^
  File "/home/mvansteenbergen/miniconda3/lib/python3.11/site-packages/asreview/__main__.py", line 43, in main
    entry.load()().execute(sys.argv[2:])
  File "/home/mvansteenbergen/miniconda3/lib/python3.11/site-packages/asreviewcontrib/datatools/entrypoint.py", line 103, in execute
    snowball(**args_snowballing)
  File "/home/mvansteenbergen/miniconda3/lib/python3.11/site-packages/asreviewcontrib/datatools/snowball.py", line 264, in snowball
    output_data = ASReviewData(output_data)
                  ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/mvansteenbergen/miniconda3/lib/python3.11/site-packages/asreview/data/base.py", line 112, in __init__
    self.max_idx = max(df.index.values) + 1
                   ^^^^^^^^^^^^^^^^^^^^
ValueError: max() arg is an empty sequence

and for forward snowballing:
(base) mvansteenbergen@ideapad:~/asreview_irr/data$ asreview data snowballing asreview_result_spatial-and-temporal-patterning-of-emergency-reactive-police-demand.csv snowballed.csv --forward
Found OpenAlex identifiers for 1576 out of 2729 records. Performing snowballing for those records.
Starting forward snowballing
Traceback (most recent call last):
  File "/home/mvansteenbergen/miniconda3/bin/asreview", line 8, in <module>
    sys.exit(main())
             ^^^^^^
  File "/home/mvansteenbergen/miniconda3/lib/python3.11/site-packages/asreview/__main__.py", line 43, in main
    entry.load()().execute(sys.argv[2:])
  File "/home/mvansteenbergen/miniconda3/lib/python3.11/site-packages/asreviewcontrib/datatools/entrypoint.py", line 103, in execute
    snowball(**args_snowballing)
  File "/home/mvansteenbergen/miniconda3/lib/python3.11/site-packages/asreviewcontrib/datatools/snowball.py", line 264, in snowball
    output_data = ASReviewData(output_data)
                  ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/mvansteenbergen/miniconda3/lib/python3.11/site-packages/asreview/data/base.py", line 112, in __init__
    self.max_idx = max(df.index.values) + 1
                   ^^^^^^^^^^^^^^^^^^^^
ValueError: max() arg is an empty sequence

Thanks for testing! I fixed the first bug, and I'll have a look at what is going wrong for that dataset.

Also happens on dataset_1.ris and dataset_2.ris from the example data in the asreview-data-tools for me. I'll try to see if I can find some other files.
(base) mvansteenbergen@ideapad:~/asreview_test_files$ asreview data snowballing dataset_1.ris snowballed.csv --forward
Found OpenAlex identifiers for 2 out of 3 records. Performing snowballing for those records.
Starting forward snowballing
Traceback (most recent call last):
  File "/home/mvansteenbergen/miniconda3/bin/asreview", line 8, in <module>
    sys.exit(main())
             ^^^^^^
  File "/home/mvansteenbergen/miniconda3/lib/python3.11/site-packages/asreview/__main__.py", line 43, in main
    entry.load()().execute(sys.argv[2:])
  File "/home/mvansteenbergen/miniconda3/lib/python3.11/site-packages/asreviewcontrib/datatools/entrypoint.py", line 103, in execute
    snowball(**args_snowballing)
  File "/home/mvansteenbergen/miniconda3/lib/python3.11/site-packages/asreviewcontrib/datatools/snowball.py", line 264, in snowball
    output_data = ASReviewData(output_data)
                  ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/mvansteenbergen/miniconda3/lib/python3.11/site-packages/asreview/data/base.py", line 112, in __init__
    self.max_idx = max(df.index.values) + 1
                   ^^^^^^^^^^^^^^^^^^^^
ValueError: max() arg is an empty sequence
(base) mvansteenbergen@ideapad:~/asreview_test_files$ asreview data snowballing dataset
_2.ris snowballed.csv --forward
Found OpenAlex identifiers for 6 out of 8 records. Performing snowballing for those records.
Starting forward snowballing
Traceback (most recent call last):
  File "/home/mvansteenbergen/miniconda3/bin/asreview", line 8, in <module>
    sys.exit(main())
             ^^^^^^
  File "/home/mvansteenbergen/miniconda3/lib/python3.11/site-packages/asreview/__main__.py", line 43, in main
    entry.load()().execute(sys.argv[2:])
  File "/home/mvansteenbergen/miniconda3/lib/python3.11/site-packages/asreviewcontrib/datatools/entrypoint.py", line 103, in execute
    snowball(**args_snowballing)
  File "/home/mvansteenbergen/miniconda3/lib/python3.11/site-packages/asreviewcontrib/datatools/snowball.py", line 264, in snowball
    output_data = ASReviewData(output_data)
                  ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/mvansteenbergen/miniconda3/lib/python3.11/site-packages/asreview/data/base.py", line 112, in __init__
    self.max_idx = max(df.index.values) + 1
                   ^^^^^^^^^^^^^^^^^^^^
ValueError: max() arg is an empty sequence

Might be a problem on my end! This is my version information:
(base) mvansteenbergen@ideapad:~/asreview_test_files$ asreview --help
usage: asreview [-h] [-V] [subcommand]

ASReview LAB - A tool for AI-assisted systematic reviews

positional arguments:
  subcommand     The subcommand to launch. Available commands:

                 [asreview 1.3.4] - ASReview LAB - A tool for AI-assisted systematic reviews
                        algorithms
                        auth-tool
                        lab
                        simulate
                        state-inspect

                 [asreview-datatools 0+untagged.83.g0c487f3] - Powerful command line tools for data handling in ASReview
                        data

Thanks! I think I found the bug and made a fix, but I still need to test it a bit.

Excellent! I just ran it and it works for me now.
One other thing I noticed is that if you overwrite a file (you write to snowballed.csv twice) there is no warning.

I am getting the following error when I try to run forward snowballing with asreview 1.6:
Traceback (most recent call last):
File "C:\Users\laure\AppData\Local\Programs\Python\Python38\lib\runpy.py", line 192, in run_module_as_main
return run_code(code, main_globals, None,
File "C:\Users\laure\AppData\Local\Programs\Python\Python38\lib\runpy.py", line 85, in run_code
exec(code, run_globals)
File "C:\Users\laure\Documents\Work related\Snowballing_PR\asreview-datatools\pr_testing\Scripts\asreview.exe_main.py", line 9, in
sys.exit(main())
File "c:\users\laure\documents\work related\snowballing_pr\asreview-datatools\pr_testing\lib\site-packages\asreview_main.py", line 49, in main
entry = base_entries[sys.argv[1]].load()
File "c:\users\laure\documents\work related\snowballing_pr\asreview-datatools\pr_testing\lib\site-packages\importlib_metadata_init.py", line 184, in load
module = import_module(match.group('module'))
File "C:\Users\laure\AppData\Local\Programs\Python\Python38\lib\importlib_init_.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "", line 1014, in _gcd_import
File "", line 991, in _find_and_load
File "", line 975, in _find_and_load_unlocked
File "", line 671, in _load_unlocked
File "", line 783, in exec_module
File "", line 219, in _call_with_frames_removed
File "c:\users\laure\documents\work related\snowballing_pr\asreview-datatools\asreviewcontrib\datatools\entrypoint.py", line 12, in
from asreviewcontrib.datatools.snowball import _parse_arguments_snowball
File "c:\users\laure\documents\work related\snowballing_pr\asreview-datatools\asreviewcontrib\datatools\snowball.py", line 26, in
def forward_snowballing(identifiers: list[str]) -> dict[str, list[dict]]:
TypeError: 'type' object is not subscriptable
Not sure if this error is caused by me or the code?

This has to do with the type annotations I added, in combination with older Python versions. Could you try it again with the fix I just made? If it still doesn't work, maybe try it with Python3.11?

With the fix I get the following error:
Traceback (most recent call last):   File "C:\Users\laure\AppData\Local\Programs\Python\Python38\lib\runpy.py", line 192, in _run_module_as_main     return _run_code(code, main_globals, None,   File "C:\Users\laure\AppData\Local\Programs\Python\Python38\lib\runpy.py", line 85, in _run_code     exec(code, run_globals)   File "C:\Users\laure\Documents\Work related\Snowballing_PR\asreview-datatools\pr_testing\Scripts\asreview.exe\__main__.py", line 9, in <module>     sys.exit(main())   File "c:\users\laure\documents\work related\snowballing_pr\asreview-datatools\pr_testing\lib\site-packages\asreview\__main__.py", line 50, in main     _execute_entry_point(entry, sys.argv[2:])   File "c:\users\laure\documents\work related\snowballing_pr\asreview-datatools\pr_testing\lib\site-packages\asreview\__main__.py", line 28, in _execute_entry_point     entry().execute(args)   File "c:\users\laure\documents\work related\snowballing_pr\asreview-datatools\asreviewcontrib\datatools\entrypoint.py", line 103, in execute     snowball(**args_snowballing)   File "c:\users\laure\documents\work related\snowballing_pr\asreview-datatools\asreviewcontrib\datatools\snowball.py", line 217, in snowball     data = data.df.loc[data.included.astype(bool)] AttributeError: 'NoneType' object has no attribute 'astype'
Will try python 3.11 next

Can you rebase/merge master?

Done!


Default image tags to .Charts.AppVersion

Hey,
A lot of Helm charts out there fall back to the appVersion in Chart.yaml if no tag is given for the Docker image, so that you can update it dynamically using helm package mychart --app-version 1.2.3.
I took a look at _helpers.tpl, but it looks very intricate and no chance of getting a hold of .Charts inside the define "kong.getRepoTag". For now, I am sed'ing the tag to my chart version before helm package. Could there be a nicer solution?
Cheers

Do you think there'd be a need for it? We do populate tags in the default values.yaml, and Helm will use those if you don't provide any value of your own.

It'd be for great help in a CI pipeline. We use custom Docker images and helm package mychart --app-version 1.2.3 makes the chart use the version (containing a git sha) build in a previous CI step.

What would be your end workflow? Would you need to remove the existing default? We'd prefer to keep the defaults in values.yaml. We can't rely entirely on appVersion--there's only one of it, we need to set versions for multiple images, and would like to have both defaults in the same location. Normally those defaults are always set if there's no user-provided value, but I think you can --set image.tag=null to forcibly clear it.
We can probably get rid of kong.getRepoTag. The unifiedRepoTag it lets override the repository/tag is something we added to satisfy an external requirement from another product. That product is now deprecated and won't need support from new chart versions. We'd need to first add a deprecation warning, but could eventually remove support for unifiedRepoTag.
With that removed, you could use a template with access to the top-level values array for the Kong images.
FWIW, you can provide otherwise out of scope variables to a template by constructing a new dict, merging your desired scope into it, and then setting other keys to Helm built-in values or whatever, similar to how we populate inputs for Service templates. The special $ variable should also allow out-of-scope access per the Helm docs, but IIRC it doesn't quite work for some reason.

--set image.tag was actually a good hint. Our use case is basically what people have been describing here: https://github.com/helm/helm/issues/3141.
Maybe we're not talking about the same "default" values. I wanted to point out that in Helm Charts generated with helm create mychart, there is this line in deployment.yaml:
image: "{{ .Values.image.repository }}:{{ .Values.image.tag | default .Chart.AppVersion }}"

So if you don't put image.tag into values.yaml, you can effectively set the tag when packaging with --app-version.

User-supplied values work as overlays: when you helm install myname kong/kong -f myvalues.yaml, Helm effectively starts with the chart's default values.yaml (https://github.com/Kong/charts/blob/main/charts/kong/values.yaml) and replaces values there with values from your values.yaml, leaving any values you haven't explicitly set untouched. Thus, if you do not set image.tag yourself, you get the image.tag value in the default:
11:07:55-0800 esenin $ helm template bread kong/kong --set image.tag=3.3.3 | grep kong:
        image: kong:3.3.3
        image: kong:3.3.3
11:08:01-0800 esenin $ helm template bread kong/kong | grep kong:
        image: kong:3.0
        image: kong:3.0

In the templates, {{ .Values.image.tag | default .Chart.AppVersion }} will use the default only if image.tag is empty, but because of the value in the default values.yaml, it never is. You don't get the default template value even if you haven't set the value:
11:18:21-0800 esenin $ git diff
diff --git a/charts/kong/Chart.yaml b/charts/kong/Chart.yaml
index 476339a..c329773 100644
--- a/charts/kong/Chart.yaml
+++ b/charts/kong/Chart.yaml
@@ -12,7 +12,7 @@ name: kong
 sources:
 - https://github.com/Kong/charts/tree/main/charts/kong
 version: 2.13.1
-appVersion: "3.0"
+appVersion: "4.0"
 dependencies:
 - name: postgresql
   version: 11.1.15
diff --git a/charts/kong/templates/deployment.yaml b/charts/kong/templates/deployment.yaml
index e162da1..df01ec3 100644
--- a/charts/kong/templates/deployment.yaml
+++ b/charts/kong/templates/deployment.yaml
@@ -125,7 +125,7 @@ spec:
       {{- end }}
       {{- if .Values.deployment.kong.enabled }}
       - name: "proxy"
-        image: {{ include "kong.getRepoTag" .Values.image }}
+        image: "{{ .Values.image.repository }}:{{ .Values.image.tag | default .Chart.AppVersion }}"
         imagePullPolicy: {{ .Values.image.pullPolicy }}
         securityContext:
         {{ toYaml .Values.containerSecurityContext | nindent 10 }}
11:18:23-0800 esenin $ helm template bread /tmp/symkong 2>/dev/null | grep kong:
        image: kong:3.0
        image: "kong:3.0"

Using --set image.tag=null didn't work for be because of template errors, though it looks like that's because I only made a basic test change and didn't rewrite all the other templates that rely on that value.


Dropdown menu indicator appears in between words

Expected Behavior
The dropdown menu indicator triangle should appear at the end of the name of the current selection on the block.
Actual Behavior
In some cases, the indicator shows up in between words. Also, the dropdown menu itself is missing the non-unique part of each name.

It happens when all the items in the menu have a word in common, such as the "guitar" in "C guitar", "D guitar", "E guitar", etc.
I'm guessing that this is due to a clever feature of Blockly called Prefix/Suffix Matching, documented here, which factors out repeated words in menu items. Probably we can simply disable it for cases where the menu items come from user generated content.
It's worth considering using this feature to reduce the number of translation strings, if we have any menus with a fixed set of items containing repeated words- in that case, though, we would still want the menu indicator to appear at the end.
Steps to Reproduce
Open https://llk.github.io/scratch-gui/
Add a musical instrument sprite like Bass or Guitar
Look at the Play Sound block
Operating System and Browser
Mac OS 10.11.6 Chrome 56

Is this issue new since the most recent merge?

Looks like this is fixed, now?

I'm using Firefox 52.3.0 (on Debian Testing).
Still maybe worth it to bring up this (from top post), though:

It's worth considering using this feature to reduce the number of translation strings, if we have any menus with a fixed set of items containing repeated words- in that case, though, we would still want the menu indicator to appear at the end.

Thanks @towerofnix- it does seem to be fixed. Looks like we will not need the Prefix/Suffix Matching feature.


[Question] How to replicate RxCpp's defer action?

Hi,
I am trying to familiarize myself with another-rxcpp by trying to port examples from rxcpp to using this library. Among the rxcpp's examples, quite a few of them use "defer" action which is defined as "Returns an observable that calls the specified observable factory to create an observable for each new observer that subscribes." (link: http://reactivex.io/RxCpp/classrxcpp_1_1observable_3_01void_00_01void_01_4.html#ab8dd5d24ab381f227b138cfe22ffc16f).
What steps should I use to compose the same functionality using another-rxcpp as provided by RxCpp's defer action?
Thank you.
Cheers,

Hi,
Thank you for posting.
I will make it from now on.
Please wait a moment!

I tried implementing observable defer. Currently, we are pushing with develop branch. I think it works fine in the test code. I would be grateful if you could check it out.
https://github.com/CODIANZ/another-rxcpp/commit/09c7b5c8131194ab8ccb378bc73069729ebd2d66

I tried implementing observable defer. Currently, we are pushing with develop branch. I think it works fine in the test code. I would be grateful if you could check it out.
09c7b5c

Thank you. I will test it with rxcpp's example and will get back to you on this. On a side note, is there any roadmap or future plan for this library? There is another new library being developed to "replace" rxcpp but using C++20; https://github.com/victimsnino/ReactivePlusPlus/. I am thinking of studying the source code for both libraries and if qualified, to contribute to either of the libraries since I might be heavily using it in the near future. There is a talk on youtube by Kirk Shoop detailing rxcpp's usage on his twitter analysis example (link: https://www.youtube.com/watch?v=1-8gxwGN3S8), and starting at 7.25 minute he discussed about tweet handling performances using callback, promise and subscription from his twitter analysis sample program. If most of the methods from https://reactivex.io/ are implemented, then perhaps I could start porting the RxCpp's examples to start using this library as a start? Or perhaps I could start by contributing some basic documentations first which will be essential for newbies like me.
Cheers,

We are mainly developing payment systems. Payment systems must implement complex asynchronous processing such as Bluetooth devices, internet communication, user input, and each error. And there are strict regulations about speed. So we adopted "RxCpp" and used it for about 7 years.
Initially, "RxCpp" was used only for some logic parts, but the implementation scale has expanded, and now "RxCpp" is used throughout the project.
And then there was a very big problem.
That is, the memory and time consumption at compile time is enormous. (In the worst case, it consumes 10GB of memory and over an hour to compile a single file)
Therefore, we have developed "another-rxcpp" which is a replacement for "RxCpp" so that the code using the existing "RxCpp" can be used as it is. And now, the payment system we are developing has been completely replaced from "RxCpp" to "another-rxcpp" and has passed many tests and was released to the market.
In contrast, "ReactivePlusPlus" intends to replace "RxCpp" with an approach that takes advantage of the features of "C ++ 20". However, it cannot be evaluated because the most important operator "flat_map" of "Rx" does not exist at this time. Personally, I feel that "means" is "purpose".
Our goal is not to make "another-rxcpp". I have no intention of competing with "ReactivePlusPlus". In the future, if "RxCpp" can improve our problem, we will adopt "RxCpp", but at the moment it is unlikely that it will be improved.
We have released it as "another-rxcpp" to help people who are still experiencing the same problems as us. If anyone who needs "another-rxcpp" wants to add more features, we would be happy to implement it. (Of course, participation is also welcome!)


Modular refactor

Moved the IWC components into a modular pattern for (future) ease of component testing/development.
No changes made to client library functionality.
the ozpIwc namespace is no longer  flat, namespacing is used to separate components.
feat(modular): Moved ozpIwc.log to module pattern.
feat(docs): updated YUIDocs on ozpIwc.log.
feat(Grunt): Fixed YUIDocs on build/watch.
feat(modular): Moved ozpIwc.Event & ozpIwc.CancelableEvent to module pattern.
feat(docs): Updated YUIDocs. on ozpIwc.Event & ozpIwc.CancelableEvent.
feat(modular): Moved ozpIwc.util to module pattern.
feat(modular): Moved ozpIwc.AsyncAction to module pattern.
feat(docs): Updated YUIDocs on ozpIwc.AsyncAction.
feat(modular): moved ozpIwc.util.ajax & ozpIwc.AjaxPersistenceQueue to module pattern.
feat(modular): common & unit code now modular.
fix(Grunt): adjusted build order for modular dependencies, will be come more loosly coupled when modules are grouped in a module/submodule pattern.
feat(modular): Moved bus/api components to modular pattern.
feat(modular): reverted PacketRouter to just take in the ozpIwc namespace instead of individual modules until base modular pattern is in place.
feat(modular): moved network code & ozpIwc.policyAuth.* to modular pattern.
feat(modular): moved utils & common modular code to using their respective module & ozpIwc until the module tree is worked out.
feat(modular): Moved transport code to module pattern.
feat(docs): YUIDoc: refactored returns to return.
feat(modular): Moved client and metrics components to module pattern.
feat(modular): moved services to module pattern.
feat(modular): moved PDP PRP PIP to ozpIwc.policyAuth.points.
feat(modular): moved all policies to ozpIwc.policyAuth.policies.
feat(policyAuth): moved ozpIwc.policyAuth.policies.defaultPolicy to private.
feat(policyAuth): Finished reordering components with modular pattern.
feat(policyAuth): Restructured for modularity. Moved static functionality to policyAuth.points.utils.
feat(modular): moved metric related code to ozpIwc.metric namespace.
feat(modular): moved bus/api modules into the base, error, filter, and locks submodules. Updated references in other modules.
feat(api): moved utility methods of base api to private methods.
feat(modular): Moved api's to namespaced modular structure.
feat(modular): Moved Locks api to modular.
feat(modular): Moved network code to ozpIwc.network namespace.
feat(docs): YUIDoc: moved packet format definitions to ozpIwc.packet
feat(modular): moved network, transport, & util code to modular namespaces.
feat(modular): Moved router to transport module.
feat(modular): Moved api static methods to the ozpIwc.api object.
chore(modular): Cleaned up file naming.
feat(modular): Moved modules to depending on modules instead of ozpIwc.
feat(metrics): Moved metrics from a global access to a module param. If not passed metrics not taken (performance gain).
feat(authentication): Moved authentication to param of modules to comply with the structure metrics is using.
feat(testing): Fixed karma wirings and cleaned up tests.

Owf7-adapter will need to be updated to use the new modular structure. Will note on update of adapter required ozp-iwc version from change.


Deploying a Sample Application does not work

I tried worklow describe here
https://developers.redhat.com/blog/2016/06/16/simplifying-asp-net-applications-on-openshift-with-the-asp-net-core-s2i-builder/
git clone https://github.com/openshift-s2i/s2i-aspnet-example
OK
oc new-project ose-dotnet
OK
oc new-app --template=aspnet-s2i –p GIT_URI=https://github.com/openshift-s2i/s2i-aspnet-example
I've obtained this:
--> Deploying template aspnet-s2i
 aspnet-s2i
 ---------
 Application template for asp .NET applications

 * With parameters:
    * Memory Limit=512Mi
    * Application Name=aspnet-app
    * Git URI=https://github.com/openshift-s2i/s2i-aspnet-example
    * Git Branch=master
    * Git Context Directory=app
    * Application hostname=
    * Upstream S2I Image=registry.access.redhat.com/dotnet/dotnetcore-10-rhel7
    * Upstream S2I Image Tag=latest
    * GitHub Webhook Secret=W2HAwCLF # generated
    * Generic Webhook Secret=Cl3TQXov # generated

--> Creating resources with label app=aspnet-s2i ...
imagestream "aspnet-app" created
imagestream "s2i-aspnet" created
service "aspnet-app" created
buildconfig "aspnet-app" created
error: DeploymentConfig "aspnet-app" is invalid: spec.template.metadata.labels: Invalid value: {"app":"aspnet-s2i","deploymentconfig":"aspnet-app"}: selector does not match template labels
route "aspnet-app" created
--> Failed
My configuration:
Windows 10 Aniversary - Lenovo X1 16Go Ram
Docker for Windows Version 1.13.0 (9795) (Default configuration)
openshift launched with following command:
c:>oc cluster up --version=v1.4.0 --routing-suffix=<IP_ADDRESS>.nip.io
Thank's for your help.

Yes, the template seems broken. I didn't have time to fix it yet. It's in progress. The manual steps should work though:
oc new-app registry.access.redhat.com/dotnet/dotnetcore-10-rhel7~https://github.com/redhat-developer/s2i-dotnetcore-ex --name=aspnet-app --context-dir=app
oc expose service aspnet-app

Let me know how that goes.

awesome !!!
Thank's you very much Severin for your reactivity, it works !

Closing as duplicate of issue #13. The template will get fixed using that issue.

I was wrong, #13 is a permission issue. Not a duplicate of this. Anyway, this issue should be fixed with abf637a09a8eb15ece2728a8e1f886152f9ee7e1


Feature/run jenkins as non root user

Thank you for contributing to kubernetes/charts. Before you submit this PR we'd like to
make sure you are aware of our technical requirements and best practices:

https://github.com/kubernetes/charts/blob/master/CONTRIBUTING.md#technical-requirements
https://github.com/kubernetes/helm/tree/master/docs/chart_best_practices

For a quick overview across what we will look at reviewing your PR, please read
our review guidelines:

https://github.com/kubernetes/charts/blob/master/REVIEW_GUIDELINES.md

Following our best practices right from the start will accelerate the review process and
help get your PR merged quicker.
When updates to your PR are requested, please add new commits and do not squash the
history. This will make it easier to identify new changes. The PR will be squashed
anyways when it is merged. Thanks.

Four test cases:
test case 1: current state as-is - results into runAsUser: 0
helm install --debug --dry-run
--name jenkins .

test case 2: Only setting FsGroup does not make sense - results into runAsUser: 0
helm install --debug --dry-run \
--set Master.FsGroup=1000 \
--name jenkins .

test case 3: Valid input - results into runAsUser: 1000
helm install --debug --dry-run \
--set Master.RunAsUser=1000 \
--name jenkins .

test case 4: Valid input - results into runAsUser: 1000 and fsGroup: 1000
helm install --debug --dry-run \
--set Master.RunAsUser=1000 \
--set Master.FsGroup=1000 \
--name jenkins .

I have signed the CLA

@timstoop Sure, I'd like to make it the default.
The only reason to NOT make it the default, is not to change the current behavior.

Agreed, but that wouldn't really break anything, would it?

@timstoop : Hello Tim, it wouldn't break anything when installing the helm chart from "scratch" (new Jenkins instance with new persistent volume).
For those that are having Jenkins already running with the current chart (as root user with uid=0) and who want to "upgrade" to new chart version it will be a breaking change: They have to explicitly set RunAsUser and FsGroup to 0 or change all file permissions on the persistent volume (/var/jenkins_home) from root to jenkins.
I'll prefer making RunAsUser=1000 and FsGroup=1000 the default from security perspective.
What do you think? If you agree, I'll change the PR.