Graduating GEP-726 (Path Redirects and Rewrites) to standard

What type of PR is this?
/kind feature
What this PR does / why we need it:
This GEP has met the criteria for graduating to standard channel, as documented in https://github.com/kubernetes-sigs/gateway-api/issues/726#issuecomment-1419894406. This PR updates the GEP, documentation, and API types to reflect that.
Which issue(s) this PR fixes:
Fixes #726
Does this PR introduce a user-facing change?:
GEP-726: Path Redirects and Rewrites has graduated to the standard channel.

/hold for consensus

Good catch, thanks @shaneutt! Missed that the first time but removed now. Removing hold since I think we've had enough approvals, next LGTM should merge this.
/hold cancel

/lgtm


Has development stopped?

I've been trying to get Cage working on Pi OS Lite (64bit), to display on the official 7" touchscreen connected to a Raspberry Pi 4.  The lack off success coud be with the OS, my incompetence, or the fact that Cage hasn't been updated for a very long time. So I don't know if this is an issue with Cage that needs to be fixed, but it would be nice to know if any more updates can be expected.

Development hasn't stopped. I just have very little time to allocate to this project. I try to do my best to look at PRs.

Good to know.  The first thing I noticed:  Bookwork Lite does create a ~/.config folder, so one needs a mkdir before the touch.  Second thing: the test using wayfarer just produces a load of errors.  That's as far as I got.

Also: the Debian repro is 1 point behind.


Fix Image in Readme, Use readonly not disabled for input

Small fixes.

Fix ShareDrop Image in Readme
Use readonly not disabled for input - You cannot use .focus on a disabled input however you can on a readonly input.

Thanks!

@szimek :+1:


Investigator entry image

How did you add the image of the investigator miniatures to the entry spot in your scenarios? Is that something you did manually? Or am I overlooking something?

(I hope you don't mind all my questions.)

No problem, it is a token type. You have to add it and remove it again.

PS you can copy the other scenarios using the editor then have a look at how they work.


Uint64BE(buffer, offset, value) signature

int64-buffer accepts the constructor arguments of  Uint64BE(buffer, offset, value) which makes less memory copy compared to using .toBuffer().copy().

Thanks!


Fixed AutoFormatting types that do not have converters

:white_check_mark: Build ExtendedXmlSerializer <IP_ADDRESS>-qhopkdlo completed (commit https://github.com/ExtendedXmlSerializer/home/commit/19d069a9ed by @Mike-E-angelo)
Install it by running the following command in Package Manager Console:
Install-Package ExtendedXmlSerializer -Version <IP_ADDRESS>-qhopkdlo -Source https://ci.appveyor.com/nuget/extendedxmlserializer-preview

Problems with the above command?  You may be running into this known issue here:
https://github.com/NuGet/Home/issues/7189

:white_check_mark: Build ExtendedXmlSerializer <IP_ADDRESS>-dpweropx completed (commit https://github.com/ExtendedXmlSerializer/home/commit/1f24d7f822 by @Mike-E-angelo)
Install it by running the following command in Package Manager Console:
Install-Package ExtendedXmlSerializer -Version <IP_ADDRESS>-dpweropx -Source https://ci.appveyor.com/nuget/extendedxmlserializer-preview

Problems with the above command?  You may be running into this known issue here:
https://github.com/NuGet/Home/issues/7189


FloatLab: make integer portion a 128-bit _BitInt when possible

A 128-bit will allow left-shifting after prepare_for_arithmetic() as far as necessary to match exponents
-- will it? or will we need 256 bits?

Doing so similarly for the fraction will allow student to choose left-or-right shift

Technically, we only need 49 bits in the integer portion -- after left-shifting one operand by 25 additional places, the other operand will be entirely lost in rounding. But we're trying to avoid forcing students to detect that they can stop before the exponents match.


Cannot able move snake in any other direction in mobile 📱

I think there is no feature in this game to move the
direction of the snake in mobile version, so any one can solve it.

I didn't initially intend for it to work on mobile as this side project is just a random hack I did on a weekend. But if anyone is willing to add that functionality, it would be great. Just fork this repo then send a PR. Same for the bugs.


All relative links in the rhai book are broken

All relative links in the rhai book available at https://rhai.rs/book/ point to non-existing locations.
As evident right from the home page of the book where the image (pointing to /images/logo/rhai-banner-transparent-colour.svg) doesn't show but also from other internal links on all pages (at least all that I clicked on) point to nowhere (e.g. /engine/debugging/debugger.html).
I'm pretty sure the problem is a missing /book in the URI path, so instead of /engine/debugging/debugger.html, the correct path would should /book/engine/debugging/debugger.html. Not sure how and when that got lost, though, probably the tooling changed.

Thanks for bringing this up. I probably forgot the setting.

It is fixed. Please check it.

Happy to confirm it's fixed now.


dashboard: in-built variable for rate interval

In Grafana 7.2 $__rate_interval for Prometheus rate() requests was introduced [1]. This patch replaces user-specified $rate_time_range variable with in-built $__rate_interval.
Since $__rate_interval should be enough to cover all rate cases, this patch also removes all code traces of rate time range configuration.

https://grafana.com/blog/2020/09/28/new-in-grafana-7.2-__rate_interval-for-prometheus-rate-queries-that-just-work/

Closes #127

This variable is also do not forbid to create alerts on panels.


[solidjs-pod] Add and setup Mock Service Worker

Needs to be hooked up to vitest or jest so we can test components that fetch data from the graphql api
We probably want to hook MSW up to Storybook similar to next-react-query-tailwind. This way we can use the mocked responses to power the component stories.
We can use mock responses for queries from next-react-query-tailwind showcase

Yeah, provided there is a component that fetches data.


Generic Thermostat: add support for climate.turn_on/climate.turn_off

Description:
Added support for turning a generic_thermostat device on and off via climate.turn_on and climate.turn_off services. This makes certain automations a lot easier to write.
Turning it on would be a bit ambiguous (and require looking up its state prior to being turned off), but luckily, it currently supports only a single operation mode in addition to OFF: either COOL or HEAT. So the async_turn_on method simply switches the operation mode to the first mode in the operation_list, which is, by definition, the only supported mode.
In the future, if support for multiple modes is added (as has been attempted before, with an AUTO mode), the logic will have to be revised.
Checklist:

[X] The code change is tested and works locally.
[X] Local tests pass with tox. Your PR cannot be merged unless tests pass

For the mode_auto part, please take a look #15678


[Fix] TaskFileCompleted emits by flushFiles many times per file

Issue Description:
flushFiles emits TaskFileCompleted as many times as the length of pieceIndices.length
What is the fix:

[x] Emit TaskFileCompleted event only once per file
[x] Add test

@moham96 hi! Consider the PR please.


fix: dart frog can't read env variables passed on command line.

Description
As a developer I want to be able to pass environment variables when running the server in dev mode, or the built one, passing those variables in the command. For example:
FOO=BAR dart_frog dev

or
FOO=BAR dart build/bin/server.dart

import 'package:dart_frog/dart_frog.dart';

Response onRequest(RequestContext context) {
  return Response(
    body: 'Welcome to Dart Frog!${String.fromEnvironment('FOO')}',
  );
}

Steps To Reproduce

Create a server with an endpoint with the above snippet
Try running the server with the commands above
The env var is empty.

Expected Behavior
The env var should have been "rendered" on the response.

Currently, when env variables are specified you can access them via Platform.environment

Like @felangel mentioned, using Platform.environment works. I got curious on why Platform.environment while String.fromEnvironment doesn't, so I went on to understand why.
It seems that String.fromEnvironment only reads declarations provided by the compilation or interpretation process (like the dart-define used on Flutter)
So this is a non-issue, just a confusion from my part.
With that said, I believe this is a confusion that may occur to more people, so I wonder if we should have something in our docs mentioning that String.fromEnvironment shouldn't be used in a Dart frog app. Wdyt?


Not able to install asn1.js-rfc2560 v4.0.1

Hi,
I'm running into an issue with a package that uses your module. I'm able to install v4.0.0 fine, but when I try to install the recently released 4.0.1, I receive
npm ERR! node v4.2.2
npm ERR! npm  v2.15.1
npm ERR! code ETARGET
npm ERR! notarget No compatible version found<EMAIL_ADDRESS><5.0.0'
npm ERR! notarget Valid install targets:
npm ERR! notarget ["1.0.0","1.0.1","1.0.2","1.0.3","1.2.1"]
npm ERR! notarget
npm ERR! notarget This is most likely not a problem with npm itself.
npm ERR! notarget In most cases you or one of your dependencies are requesting
npm ERR! notarget a package version that doesn't exist.
npm ERR! notarget
npm ERR! notarget It was specified as a dependency of 'asn1.js-rfc2560'
Looks like the new package.json has an invalid dependency

"asn1.js-rfc5280": "^4.4.0"

Having this issue, too.

Having this issue also.  Looks like the pull request fixes it...

I'm also having this issue, and the dependency isn't mine (it's a dependency of a dependency) so I can't npm install until this is fixed as a patch.

Yikes, sorry for this! The fix has been already landed and a new version has been released. So sorry to break your builds!


Add node selection ability for webhook helm tests

Add node selection ability for webhook helm tests

Thanks! Release a new version of the chart: https://github.com/piraeusdatastore/helm-charts/releases/tag/snapshot-controller-2.0.1


Android app as a client for kafka

java.lang.NoClassDefFoundError: Failed resolution of: Ljava/lang/management/ManagementFactory;
at org.apache.kafka.common.utils.AppInfoParser.unregisterAppInfo(AppInfoParser.java:73)
at org.apache.kafka.clients.producer.KafkaProducer.close(KafkaProducer.java:1342)
at org.apache.kafka.clients.producer.KafkaProducer.(KafkaProducer.java:466)
at org.apache.kafka.clients.producer.KafkaProducer.(KafkaProducer.java:291)
at org.apache.kafka.clients.producer.KafkaProducer.(KafkaProducer.java:318)
at org.apache.kafka.clients.producer.KafkaProducer.(KafkaProducer.java:303)
at com.example.marsphotos.network.ProducerExample.produce(ProducerExample.java:33)

The error occur when kafka java client running on the android.
Packages required in the build.gradle.kts

implementation("org.slf4j:slf4j-nop:2.0.3")
implementation("org.apache.kafka:kafka-clients:3.3.1")
implementation("com.fasterxml.jackson.core:jackson-databind:2.15.2")

The producer code are showed as following.
`public class ProducerExample {
public static void produce( ) throws IOException {
    Properties p = new Properties();
    p.setProperty("bootstrap.servers", "pkc-lzvrd.us-west4.gcp.confluent.cloud:9092");
    p.setProperty("security.protocol", "SASL_SSL");
    p.setProperty("sasl.mechanism", "PLAIN");
    p.setProperty("sasl.jaas.config", "org.apache.kafka.common.security.plain.PlainLoginModule required username='L6SNLCZPXP2XHFWA' password='Cqmw7vbw2FvZ9WQpsSkDEq9yLubqQwcjE1RrsSoUYQwf5B+8vuZf6HLfnkzSdL6X' ;");

    p.setProperty("client.dns.lookup", "use_all_dns_ips");
    p.setProperty("session.timeout.ms", "45000");
    p.setProperty(ProducerConfig.KEY_SERIALIZER_CLASS_CONFIG, StringSerializer.class.getName());
    p.setProperty(ProducerConfig.VALUE_SERIALIZER_CLASS_CONFIG, StringSerializer.class.getName());
    p.setProperty(ProducerConfig.ACKS_CONFIG, "all");

    final String topic = "topic_kafka";

    String[] users = {"eabara", "jsmith", "sgarcia", "jbernard", "htanaka", "awalther"};
    String[] items = {"book", "alarm clock", "t-shirts", "gift card", "batteries"};
    try (final Producer<String, String> producer = new KafkaProducer<>(p)) {
        final Random rnd = new Random();
        final Long numMessages = 10L;
        for (Long i = 0L; i < numMessages; i++) {
            String user = users[rnd.nextInt(users.length)];
            String item = items[rnd.nextInt(items.length)];

            producer.send(
                    new ProducerRecord<>(topic, user, item),
                    (event, ex) -> {
                        if (ex != null)
                            ex.printStackTrace();
                        else
                            System.out.printf("Produced event to topic %s: key = %-10s value = %s%n", topic, user, item);
                    });
        }
        System.out.printf("%s events were produced to topic %s%n", numMessages, topic);
    }

}`

The error you're encountering when running your app on Android indicates that the java.lang.management.ManagementFactory class is not available in the Android runtime. This is expected because Android uses a different runtime environment than standard Java SE, and Android does not include the full set of Java SE APIs, including JMX (Java Management Extensions) classes.
In Android, you cannot directly use classes and features that are not part of the Android runtime. Therefore, you won't be able to use Apache Kafka's features that rely on JMX, such as ManagementFactory, in an Android app.
If you need to use Kafka in an Android application, you may need to look for a Kafka client library or framework that is specifically designed for Android and doesn't have dependencies on Java SE features like JMX.

Reference:
https://stackoverflow.com/questions/40043532/how-to-use-android-app-as-a-client-for-kafka
https://issues.apache.org/jira/browse/KAFKA-7025


Implement no-var and eqeqeq JavaScript rules

Notes

Let's prefer const or let now that we're working in an ES6 codebase

Any feedback on this one @kevinrobinson / @jhilde? Adding to push more of the reviewing-JS work over to the CI, since "eqeqeq" and "no-var" issues came up on a PR earlier this week. I like the idea of enforcing strict equals so that we can avoid situations like:
1 == '1'
true

@alexsoble Yeah, ++ for adding more linting, either all at once in a big bang using airbnb or whatever else or incrementally.
These seem like the ==/=== changes might not do exactly what we want re: undefined (which would match the == null before, but won't match the === null in changes here).  Might be worth checking those, or changing them to be more strict?
re: let/const, that seems awesome but many of those lets seem like they should be consts?

@kevinrobinson Hey thanks for the review, what I'm thinking here is that these two rules should be broken to separate PRs.


Add PS best practice documentation

If this is supposed to act as PS best practice documentation and also backlog of rules which should be added, I think it would be useful to add names of the rules which verify every item next to it.
e.g.

Returning an object from a Get-TargetResource function  ( ReturnCorrectTypesForDSCFunctions )

this way we will be able to quickly see what rules need to be implemented

Yeah sure, I will add rules that we already have.

I've added links to each rule that we already have implemented.

Looks good. Please merge.

Opened a new pull request. Close this one.


[FLINK-15933][catalog][doc] Update content of how generic table schem…

…a is stored in hive via HiveCatalog

What is the purpose of the change
Update docs as a result of FLINK-15858.
Brief change log

Add descriptions about hive v.s. generic table
Move Supported Types to HiveCatalog page since it's more closely related
Minor updates to the support of TIMESTAMP type

Verifying this change
NA
Does this pull request potentially affect one of the following parts:
NA
Documentation
NA

@bowenli86 @JingsongLi Let me know if you think the change makes sense. Thanks.

@bowenli86 We don't have any console output for "DESCRIBE mykafka;" now. I'll add the output for "DESCRIBE FORMATTED mykafka;" instead.

@bowenli86 Docs updated. Please have another look. Thanks.

@bowenli86 We don't have any console output for "DESCRIBE mykafka;" now. I'll add the output for "DESCRIBE FORMATTED mykafka;" instead.

why we don't have any console output for a table? Seems like a bug?

@bowenli86 We don't have any console output for "DESCRIBE mykafka;" now. I'll add the output for "DESCRIBE FORMATTED mykafka;" instead.

why we don't have any console output for describing a table? Seems like a bug?

Because we have changed to store the generic table schema as properties. So from Hive perspective, the table doesn't have any columns.

@bowenli86 We don't have any console output for "DESCRIBE mykafka;" now. I'll add the output for "DESCRIBE FORMATTED mykafka;" instead.

why we don't have any console output for describing a table? Seems like a bug?

Because we have changed to store the generic table schema as properties. So from Hive perspective, the table doesn't have any columns.

my bad, I thought it's a flink cli...
LGTM, merging


Adds --output  flag for list/get commands

Description
Similar to CLIs like kubectl, permits passing the -o/--output flag to certain list/get commands to specify non-default formats.  Adds json and yaml.
ketch framework list -o json
For each get/list command (app list & info, framework list, builder list, env get), it moves data aggregation into a separate function generate<data>Output, if necessary. Then, output.Write(data, out, flags) is called. AppInfo is special case where there is some additional line-formatted data printed before the column data.
The output package adds JSON, YAML, and Column types to implement the Write interface. It adds a new Column Marshaler (I couldn't find one already available).
Type of change

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] Chore (documentation addition or typo, file relocation)

Testing

[x] New tests were added with this PR that prove my fix is effective or that my feature works (describe below this bullet)
[ ] This change requires no testing (i.e. documentation update)

Documentation

[ ] All added public packages, funcs, and types have been documented with doc comments
[x] I have commented my code, particularly in hard-to-understand areas

Final Checklist:

[x] I followed standard GitHub flow guidelines
[x] I have performed a self-review of my own code
[x] My changes generate no new warnings

Additional Information (omit if empty)
Please include anything else relevant to this PR that may be useful to know.

@aleksej-paschenko I don't have a GREAT use case. At some point I was scripting something and wanted output like ketch framework list -o json | jq '.[0].namespace' (I don't remember what I was doing specifically). It seemed fairly easy to implement and intuitive for people familiar with kubectl.


chore: bdd-nh-import-1577626003 to 0.0.1

chore: Promote bdd-nh-import-1577626003 to version 0.0.1

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approvers:
If they are not already assigned, you can assign the PR to them by writing /assign  in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment


Replace mosquitto image with vernemq

For better consistency with production environment.

Codecov Report

Merging #7 into master will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master       #7   +/-   ##
=========================================
  Coverage     35.07%   35.07%
  Complexity       14       14
=========================================
  Files             6        6
  Lines           134      134
  Branches          1        1
=========================================
  Hits             47       47
  Misses           87       87

Continue to review full report at Codecov.

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


support constructing Panel or Panel4D with scalar data, fixes #8285

this should fix https://github.com/pydata/pandas/issues/8285

ok, pls add a release note (this can go in 0.16.0)

@jreback thanks it's fixed now

@mortada thanks!


Map statuses not present in rpc to the rpc ones

Resolves #71
Before merging, tests have to be added which requires mocking - #83 has to be merged first.

Codecov Report

Merging #89 (8e864e5) into main (a7e6f55) will increase coverage by 0.21%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##             main      #89      +/-   ##
==========================================
+ Coverage   59.84%   60.06%   +0.21%
==========================================
  Files          40       40
  Lines         914      919       +5
  Branches       68       68
==========================================
+ Hits          547      552       +5
  Misses        352      352
  Partials       15       15

Impacted Files
Coverage Δ

...on/starknet/data/types/transactions/Transaction.kt
46.59% <ø> (-0.61%)
:arrow_down:

...knet/data/types/transactions/TransactionReceipt.kt
10.71% <100.00%> (+5.05%)
:arrow_up:

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


Upgrade to gulp4

gulp.task was replaced with module exports, and sync tasks now need to at least return a resolved promise.
No other changes required.

Thanks @mramato.


[BUG] Hover box is blinking for Table Widget for ultra large text

Description
Hover info box starts blinking for table widget for ultra large text.
Video In Action.
Important Details

Version: Cloud
OS: MacOS 10.14.6
Browser: Firefox 80.0.1 (64-bit).

A potential fix for this issue is to add an appropriate position prop to the Tooltip component which renders the full text on hover. Documentation for the original component

Hi @visibleajay , is this issue still open? I would like to work on this.

@Nibba2018 Welcome to Appsmith! 🎉 Go for it! I'd request you to please raise a PR within 2 days.
Also, feel free to participate in Appsmith's Challenge during Hacktoberfest. Feel free to tag your friends and invite them to contribute to the project.

Thanks @mohanarpit !

@mohanarpit @Nibba2018 If open, would like to take this up...

@visibleajay okay go for it.

@visibleajay Assigned

@visibleajay were you able to get around to this fix?

@Nikhil-Nandagopal Thank You for the response. Currently occupied with other work. Need time to do it.

@visibleajay no problem! I'm unassigning you till you find the time :) Looking forward to future contributions

@all-contributors Please add @visibleajay for their invaluable contribution towards bug reporting and documentation.


Script for  Convert JSON to CSV file

Hi @avinashkranjan , Please assign this issue to me under gssoc23 label
Aim

What is the objective of the Script
to convert  JSON to CSV file

Details

What the features will your script have

I m very interested to contribute to this issue Pls assign me this work under the label Gssoc'23.

I have submitted a pull request #1693
Please check
Thanks


bc: name -> pname, version, clarify license

Motivation for this change
Things done

[ ] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[ ] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[ ] Fits CONTRIBUTING.md.

Does this still build without the buildPackages. specifiers? I think since these are nativeBuildInputs they are already handled by callPackage's splicing logic.
https://github.com/NixOS/nixpkgs/blob/275db73475e304c3989539c7ccc66a4e01878575/pkgs/tools/misc/bc/default.nix#L23

I didn't want to touch those and break something. I just did a drive by cleanup while looking through all my packages.


Ensure linter on CI, but do not force it during development

Closed: Development won't continue in this repository.


Run using node20 (not node16)

What
Let's start runs.using: 'node20' in this action.
Why
This action has started failing for us this week, where we're getting errors such as:
TypeError: Cannot read properties of null (reading 'length')
      at getStateLength (/home/runner/_work/_actions/pass-culture-github-actions/gcs-cache/a15865adf837a570fa52671cab4d83baad2aceab/dist/main/index.js:198:27987)
      at shift (/home/runner/_work/_actions/pass-culture-github-actions/gcs-cache/a15865adf837a570fa52671cab4d83baad2aceab/dist/main/index.js:198:27851)
      at Duplexify._forward (/home/runner/_work/_actions/pass-culture-github-actions/gcs-cache/a15865adf837a570fa52671cab4d83baad2aceab/dist/main/index.js:177:11566)
      at PassThrough.onreadable (/home/runner/_work/_actions/pass-culture-github-actions/gcs-cache/a15865adf837a570fa52671cab4d83baad2aceab/dist/main/index.js:177:10980)
      at PassThrough.emit (node:events:519:28)
      at emitReadable_ (node:internal/streams/readable:832:12)
      at process.processTicksAndRejections (node:internal/process/task_queues:81:21)
  Node.js v20.13.1

We also get this warning:

The following actions uses Node.js version which is deprecated and will be forced to run on node20<EMAIL_ADDRESS>For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/

...where they say:

Following on from our warning in workflows using Node16 we will start enforcing the use of Node20 rather than Node16 on the 3rd of June.

@kopax could you take a look? 🙏

It seems this change doesn't fix the problem (it's just what happens automatically behind the scenes inside the runners, that they automatically pick node20 over node16 nowadays).
There is a workaround available for now, setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION: true at the workflow level (sadly not at the step/action level).
Would you be up for looking into why this action doesn't work on NodeJS 20?

By adding source maps...

https://github.com/pagero/gcs-cache/pull/2

...I was able to get a clearer error / stack trace:
  /home/runner/_work/_actions/pagero/gcs-cache/4857aab4515c00e04051f4da50c145f2a1d11019/dist/webpack:/gcs-cache/node_modules/stream-shift/index.js:16
      return state.buffer[0].length
  ^
  TypeError: Cannot read properties of null (reading 'length')
      at getStateLength (/home/runner/_work/_actions/pagero/gcs-cache/4857aab4515c00e04051f4da50c145f2a1d11019/dist/webpack:/gcs-cache/node_modules/stream-shift/index.js:16:1)
      at shift (/home/runner/_work/_actions/pagero/gcs-cache/4857aab4515c00e04051f4da50c145f2a1d11019/dist/webpack:/gcs-cache/node_modules/stream-shift/index.js:6:1)
      at Duplexify._forward (/home/runner/_work/_actions/pagero/gcs-cache/4857aab4515c00e04051f4da50c145f2a1d11019/dist/webpack:/gcs-cache/node_modules/duplexify/index.js:170:1)
      at PassThrough.onreadable (/home/runner/_work/_actions/pagero/gcs-cache/4857aab4515c00e04051f4da50c145f2a1d11019/dist/webpack:/gcs-cache/node_modules/duplexify/index.js:136:1)
      at PassThrough.emit (node:events:519:28)
      at emitReadable_ (node:internal/streams/readable:832:12)
      at processTicksAndRejections (node:internal/process/task_queues:81:21)

Could it be this upstream issue / solution?

https://github.com/mafintosh/duplexify/pull/40

Which is added via @google-cloud/storage, fixed in version 7.8.0:

https://github.com/googleapis/nodejs-storage/pull/2422

Here's a separate PR trying to make that specific change:

https://github.com/pass-culture-github-actions/gcs-cache/pull/2


bugfix:修改单据当前步骤只有一个tab还能点击和新建单据返回icon的跳转

Codecov Report

Merging #284 (f35cda1) into v2.6.x_develop (67cd1e0) will not change coverage.
The diff coverage is n/a.

@@               Coverage Diff               @@
##           v2.6.x_develop     #284   +/-   ##
===============================================
  Coverage           54.50%   54.50%
===============================================
  Files                 446      446
  Lines               27565    27565
===============================================
  Hits                15024    15024
  Misses              12541    12541

Continue to review full report at Codecov.

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


Update ext.kotlin_version to Recent

Fixes #30 Fixes #29

Closing this due to inactivity. If you are interested to follow up would be great. Please reopen then. Thank you.


istio/installer demo gateways fail to get ready

Logs spam waiting for certificates for 2 minutes then  info    Envoy proxy is NOT ready: config not received from Pilot (is Pilot running?): cds updates: 0 successful, 0 rejected; lds updates: 0 successful, 0 rejected. Finally gets ready after a long while.
2019-06-26T21:30:51.627154Z     info    waiting for certificates
2019-06-26T21:30:51.727288Z     info    waiting for certificates
2019-06-26T21:30:51.827426Z     info    waiting for certificates
2019-06-26T21:30:51.927598Z     info    waiting for certificates
2019-06-26T21:30:52.027741Z     info    waiting for certificates
2019-06-26T21:30:52.127888Z     info    waiting for certificates
2019-06-26T21:30:52.228025Z     info    waiting for certificates
2019-06-26T21:30:52.328179Z     info    waiting for certificates
2019-06-26T21:30:52.428306Z     info    waiting for certificates
2019-06-26T21:30:52.528442Z     info    waiting for certificates
2019-06-26T21:30:52.628570Z     info    waiting for certificates
2019-06-26T21:30:52.728713Z     info    waiting for certificates
2019-06-26T21:30:52.828844Z     info    waiting for certificates
2019-06-26T21:30:52.928952Z     info    waiting for certificates
2019-06-26T21:30:53.029083Z     info    waiting for certificates
2019-06-26T21:30:53.129220Z     info    waiting for certificates
2019-06-26T21:30:53.229343Z     info    waiting for certificates
2019-06-26T21:30:53.329475Z     info    waiting for certificates
2019-06-26T21:30:53.429606Z     info    waiting for certificates
2019-06-26T21:30:53.529885Z     info    waiting for certificates
2019-06-26T21:30:53.630054Z     info    waiting for certificates
2019-06-26T21:30:53.730185Z     info    waiting for certificates
2019-06-26T21:30:53.830487Z     info    waiting for certificates
2019-06-26T21:30:53.930636Z     info    waiting for certificates
2019-06-26T21:30:54.030779Z     info    waiting for certificates
2019-06-26T21:30:54.130929Z     info    waiting for certificates
2019-06-26T21:30:54.231062Z     info    waiting for certificates
2019-06-26T21:30:54.331185Z     info    waiting for certificates
2019-06-26T21:30:54.431306Z     info    waiting for certificates
2019-06-26T21:30:54.531427Z     info    waiting for certificates
2019-06-26T21:30:54.631542Z     info    waiting for certificates
2019-06-26T21:30:54.734697Z     info    waiting for certificates
2019-06-26T21:30:54.834855Z     info    waiting for certificates
2019-06-26T21:30:54.938724Z     info    waiting for certificates
2019-06-26T21:30:55.039056Z     info    waiting for certificates
2019-06-26T21:30:55.140045Z     info    waiting for certificates
2019-06-26T21:30:55.240164Z     info    waiting for certificates
2019-06-26T21:30:55.340265Z     info    waiting for certificates
2019-06-26T21:30:55.440597Z     info    waiting for certificates
2019-06-26T21:30:55.540728Z     info    waiting for certificates
2019-06-26T21:30:55.640819Z     info    waiting for certificates
2019-06-26T21:30:55.741041Z     info    waiting for certificates
2019-06-26T21:30:55.841158Z     info    waiting for certificates
2019-06-26T21:30:55.941242Z     info    waiting for certificates
2019-06-26T21:30:56.041372Z     info    waiting for certificates
2019-06-26T21:30:56.142857Z     info    waiting for certificates
2019-06-26T21:30:56.242981Z     info    waiting for certificates
2019-06-26T21:30:56.346736Z     info    waiting for certificates
2019-06-26T21:30:56.450202Z     info    waiting for certificates
2019-06-26T21:30:56.550382Z     info    waiting for certificates
2019-06-26T21:30:56.650602Z     info    waiting for certificates
2019-06-26T21:30:56.750760Z     info    waiting for certificates
2019-06-26T21:30:56.850936Z     info    waiting for certificates
2019-06-26T21:30:56.951110Z     info    waiting for certificates
2019-06-26T21:30:57.051231Z     info    waiting for certificates
2019-06-26T21:30:57.151331Z     info    waiting for certificates
2019-06-26T21:30:57.251501Z     info    waiting for certificates
2019-06-26T21:30:57.351607Z     info    waiting for certificates
2019-06-26T21:30:57.452482Z     info    waiting for certificates
2019-06-26T21:30:57.552621Z     info    waiting for certificates
2019-06-26T21:30:57.652749Z     info    waiting for certificates
2019-06-26T21:30:57.752930Z     info    waiting for certificates
2019-06-26T21:30:57.853086Z     info    waiting for certificates
2019-06-26T21:30:57.953291Z     info    waiting for certificates
2019-06-26T21:30:58.053439Z     info    waiting for certificates
2019-06-26T21:30:58.153569Z     info    waiting for certificates
2019-06-26T21:30:58.253774Z     info    waiting for certificates
2019-06-26T21:30:58.354749Z     info    waiting for certificates
2019-06-26T21:30:58.454883Z     info    waiting for certificates
2019-06-26T21:30:58.555154Z     info    waiting for certificates
2019-06-26T21:30:58.658787Z     info    waiting for certificates
2019-06-26T21:30:58.762756Z     info    waiting for certificates
2019-06-26T21:30:58.863137Z     info    waiting for certificates
2019-06-26T21:30:58.963323Z     info    waiting for certificates
2019-06-26T21:30:59.063453Z     info    waiting for certificates
2019-06-26T21:30:59.163619Z     info    waiting for certificates
2019-06-26T21:30:59.263738Z     info    waiting for certificates
2019-06-26T21:30:59.363859Z     info    waiting for certificates
2019-06-26T21:30:59.463982Z     info    waiting for certificates
2019-06-26T21:30:59.564110Z     info    waiting for certificates
2019-06-26T21:30:59.664273Z     info    waiting for certificates
2019-06-26T21:30:59.764432Z     info    waiting for certificates
2019-06-26T21:30:59.864568Z     info    waiting for certificates
2019-06-26T21:30:59.964661Z     info    waiting for certificates
2019-06-26T21:31:00.064779Z     info    waiting for certificates
2019-06-26T21:31:00.164895Z     info    waiting for certificates
2019-06-26T21:31:00.265020Z     info    waiting for certificates
2019-06-26T21:31:00.365146Z     info    waiting for certificates
2019-06-26T21:31:00.465271Z     info    waiting for certificates
2019-06-26T21:31:00.565486Z     info    waiting for certificates
2019-06-26T21:31:00.665748Z     info    waiting for certificates
2019-06-26T21:31:00.765972Z     info    waiting for certificates
2019-06-26T21:31:00.866137Z     info    waiting for certificates
2019-06-26T21:31:00.966322Z     info    waiting 2m0s for /etc/certs/key.pem
2019-06-26T21:31:00.966370Z     info    waiting 2m0s for /etc/certs/root-cert.pem
2019-06-26T21:31:00.966412Z     info    PilotSAN []string{"spiffe://cluster.local/ns/istio-system/sa/istio-pilot-service-account"}
2019-06-26T21:31:00.966550Z     info    Opening status port 15020

2019-06-26T21:31:00.966826Z     info    Starting proxy agent
2019-06-26T21:31:00.967138Z     info    watching /etc/certs for changes
2019-06-26T21:31:00.967218Z     info    Received new config, resetting budget
2019-06-26T21:31:00.967240Z     info    Reconciling retry (budget 10)
2019-06-26T21:31:00.967266Z     info    Epoch 0 starting
2019-06-26T21:31:01.100535Z     info    Envoy command: [-c /etc/istio/proxy/envoy-rev0.json --restart-epoch 0 --drain-time-s 45 --parent-shutdown-time-s 60 --service-cluster istio-ingressgateway --service-node router~<IP_ADDRESS>~istio-ingressgateway-f986fbb7c-29dfx.istio-system~istio-system.svc.cluster.local --max-obj-name-len 189 --local-address-ip-version v4 --allow-unknown-fields -l warning --component-log-level misc:error]
2019-06-26T21:31:01.839484Z     info    Envoy proxy is NOT ready: failed retrieving Envoy stats: Get http://<IP_ADDRESS>:15000/stats?usedonly: dial tcp <IP_ADDRESS>:15000: connect: connection refused
[2019-06-26 21:31:03.244][20][warning][config] [bazel-out/k8-opt/bin/external/envoy/source/common/config/_virtual_includes/grpc_stream_lib/common/config/grpc_stream.h:86] gRPC config stream closed: 14, no healthy upstream
[2019-06-26 21:31:03.244][20][warning][config] [bazel-out/k8-opt/bin/external/envoy/source/common/config/_virtual_includes/grpc_stream_lib/common/config/grpc_stream.h:49] Unable to establish new stream
2019-06-26T21:31:03.819856Z     info    Envoy proxy is NOT ready: config not received from Pilot (is Pilot running?): cds updates: 0 successful, 0 rejected; lds updates: 0 successful, 0 rejected
2019-06-26T21:31:05.819477Z     info    Envoy proxy is NOT ready: config not received from Pilot (is Pilot running?): cds updates: 0 successful, 0 rejected; lds updates: 0 successful, 0 rejected
2019-06-26T21:31:07.819443Z     info    Envoy proxy is NOT ready: config not received from Pilot (is Pilot running?): cds updates: 0 successful, 0 rejected; lds updates: 0 successful, 0 rejected
2019-06-26T21:31:09.820267Z     info    Envoy proxy is NOT ready: config not received from Pilot (is Pilot running?): cds updates: 0 successful, 0 rejected; lds updates: 0 successful, 0 rejected
2019-06-26T21:31:11.819790Z     info    Envoy proxy is NOT ready: config not received from Pilot (is Pilot running?): cds updates: 0 successful, 0 rejected; lds updates: 0 successful, 0 rejected
2019-06-26T21:31:13.819370Z     info    Envoy proxy is NOT ready: config not received from Pilot (is Pilot running?): cds updates: 0 successful, 0 rejected; lds updates: 0 successful, 0 rejected
[2019-06-26 21:31:14.019][20][warning][config] [bazel-out/k8-opt/bin/external/envoy/source/common/config/_virtual_includes/grpc_stream_lib/common/config/grpc_stream.h:86] gRPC config stream closed: 14, upstream connect error or disconnect/reset before headers. reset reason: connection failure
2019-06-26T21:31:15.820618Z     info    Envoy proxy is NOT ready: config not received from Pilot (is Pilot running?): cds updates: 0 successful, 0 rejected; lds updates: 0 successful, 0 rejected
2019-06-26T21:31:17.820134Z     info    Envoy proxy is NOT ready: config not received from Pilot (is Pilot running?): cds updates: 0 successful, 0 rejected; lds updates: 0 successful, 0 rejected
2019-06-26T21:31:19.825985Z     info    Envoy proxy is NOT ready: config not received from Pilot (is Pilot running?): cds updates: 0 successful, 0 rejected; lds updates: 0 successful, 0 rejected
2019-06-26T21:31:21.819822Z     info    Envoy proxy is NOT ready: config not received from Pilot (is Pilot running?): cds updates: 0 successful, 0 rejected; lds updates: 0 successful, 0 rejected
2019-06-26T21:31:23.819523Z     info    Envoy proxy is NOT ready: config not received from Pilot (is Pilot running?): cds updates: 0 successful, 0 rejected; lds updates: 0 successful, 0 rejected
[2019-06-26 21:31:24.231][20][warning][config] [bazel-out/k8-opt/bin/external/envoy/source/common/config/_virtual_includes/grpc_stream_lib/common/config/grpc_stream.h:86] gRPC config stream closed: 14, upstream connect error or disconnect/reset before headers. reset reason: connection failure
2019-06-26T21:31:25.819484Z     info    Envoy proxy is NOT ready: config not received from Pilot (is Pilot running?): cds updates: 0 successful, 0 rejected; lds updates: 0 successful, 0 rejected
2019-06-26T21:31:27.819968Z     info    Envoy proxy is NOT ready: config not received from Pilot (is Pilot running?): cds updates: 0 successful, 0 rejected; lds updates: 0 successful, 0 rejected
2019-06-26T21:31:29.820128Z     info    Envoy proxy is NOT ready: config not received from Pilot (is Pilot running?): cds updates: 0 successful, 0 rejected; lds updates: 0 successful, 0 rejected
2019-06-26T21:31:31.819908Z     info    Envoy proxy is NOT ready: config not received from Pilot (is Pilot running?): cds updates: 0 successful, 0 rejected; lds updates: 0 successful, 0 rejected
2019-06-26T21:31:33.819625Z     info    Envoy proxy is NOT ready: config not received from Pilot (is Pilot running?): cds updates: 0 successful, 0 rejected; lds updates: 0 successful, 0 rejected
2019-06-26T21:31:35.819689Z     info    Envoy proxy is NOT ready: config not received from Pilot (is Pilot running?): cds updates: 0 successful, 0 rejected; lds updates: 0 successful, 0 rejected
2019-06-26T21:31:37.819500Z     info    Envoy proxy is NOT ready: config not received from Pilot (is Pilot running?): cds updates: 0 successful, 0 rejected; lds updates: 0 successful, 0 rejected
[2019-06-26 21:31:37.871][20][warning][config] [bazel-out/k8-opt/bin/external/envoy/source/common/config/_virtual_includes/grpc_stream_lib/common/config/grpc_stream.h:86] gRPC config stream closed: 14, upstream connect error or disconnect/reset before headers. reset reason: connection failure
2019-06-26T21:31:39.819381Z     info    Envoy proxy is NOT ready: config not received from Pilot (is Pilot running?): cds updates: 0 successful, 0 rejected; lds updates: 0 successful, 0 rejected
2019-06-26T21:31:41.819441Z     info    Envoy proxy is NOT ready: config not received from Pilot (is Pilot running?): cds updates: 0 successful, 0 rejected; lds updates: 0 successful, 0 rejected
2019-06-26T21:31:43.823223Z     info    Envoy proxy is NOT ready: config not received from Pilot (is Pilot running?): cds updates: 0 successful, 0 rejected; lds updates: 0 successful, 0 rejected
2019-06-26T21:31:45.819621Z     info    Envoy proxy is NOT ready: config not received from Pilot (is Pilot running?): cds updates: 0 successful, 0 rejected; lds updates: 0 successful, 0 rejected
2019-06-26T21:31:47.820368Z     info    Envoy proxy is NOT ready: config not received from Pilot (is Pilot running?): cds updates: 0 successful, 0 rejected; lds updates: 0 successful, 0 rejected
2019-06-26T21:31:49.819388Z     info    Envoy proxy is NOT ready: config not received from Pilot (is Pilot running?): cds updates: 0 successful, 0 rejected; lds updates: 0 successful, 0 rejected
2019-06-26T21:31:51.819636Z     info    Envoy proxy is NOT ready: config not received from Pilot (is Pilot running?): cds updates: 0 successful, 0 rejected; lds updates: 0 successful, 0 rejected
2019-06-26T21:31:53.819962Z     info    Envoy proxy is NOT ready: config not received from Pilot (is Pilot running?): cds updates: 0 successful, 0 rejected; lds updates: 0 successful, 0 rejected
2019-06-26T21:31:55.819960Z     info    Envoy proxy is NOT ready: config not received from Pilot (is Pilot running?): cds updates: 0 successful, 0 rejected; lds updates: 0 successful, 0 rejected
2019-06-26T21:31:57.820094Z     info    Envoy proxy is NOT ready: config not received from Pilot (is Pilot running?): cds updates: 0 successful, 0 rejected; lds updates: 0 successful, 0 rejected
[2019-06-26 21:31:58.718][20][warning][config] [bazel-out/k8-opt/bin/external/envoy/source/common/config/_virtual_includes/grpc_stream_lib/common/config/grpc_stream.h:86] gRPC config stream closed: 14, upstream connect error or disconnect/reset before headers. reset reason: connection failure
2019-06-26T21:31:59.819813Z     info    Envoy proxy is NOT ready: config not received from Pilot (is Pilot running?): cds updates: 0 successful, 0 rejected; lds updates: 0 successful, 0 rejected
2019-06-26T21:32:01.819731Z     info    Envoy proxy is NOT ready: config not received from Pilot (is Pilot running?): cds updates: 0 successful, 0 rejected; lds updates: 0 successful, 0 rejected
2019-06-26T21:32:03.819708Z     info    Envoy proxy is NOT ready: config not received from Pilot (is Pilot running?): cds updates: 0 successful, 0 rejected; lds updates: 0 successful, 0 rejected
2019-06-26T21:32:05.819921Z     info    Envoy proxy is NOT ready: config not received from Pilot (is Pilot running?): cds updates: 0 successful, 0 rejected; lds updates: 0 successful, 0 rejected
2019-06-26T21:32:07.819462Z     info    Envoy proxy is NOT ready: config not received from Pilot (is Pilot running?): cds updates: 0 successful, 0 rejected; lds updates: 0 successful, 0 rejected
2019-06-26T21:32:09.820517Z     info    Envoy proxy is ready

Pilot gets stuck on
2019-06-26T21:31:41.147558Z     info    Configuration not synced: first push for [istio/networking/v1alpha3/envoyfilters istio/networking/v1alpha3/sidecars istio/config/v1alpha2/httpapispecbindings istio/rbac/v1alpha1/authorizationpolicies istio/rbac/v1alpha1/rbacconfigs istio/networking/v1alpha3/gateways istio/networking/v1alpha3/serviceentries istio/mixer/v1/config/client/quotaspecs istio/authentication/v1alpha1/policies istio/networking/v1alpha3/virtualservices istio/networking/v1alpha3/destinationrules istio/config/v1alpha2/httpapispecs istio/rbac/v1alpha1/serviceroles istio/rbac/v1alpha1/servicerolebindings istio/rbac/v1alpha1/clusterrbacconfigs istio/mixer/v1/config/client/quotaspecbindings istio/authentication/v1alpha1/meshpolicies] not received

for a bit is why there is a delay.
Then we get some weird errors
2019-06-26T21:35:30.389287Z     error   rbac    failed to initialize authorization policies: had both AuthorizationPolicy and ServiceRoleBinding
2019-06-26T21:35:30.389305Z     error   rbac    failed to initialize authorization policies: had both AuthorizationPolicy and ServiceRoleBinding
2019-06-26T21:35:30.389312Z     error   ads     XDS: Failed to update services: had both AuthorizationPolicy and ServiceRoleBinding

Probably just from the tests I am running though

I think its just slow to start up


typo needed to compare to 'undefined' not undefined

there's a typo in your comments. It happens to be a highly ranking page on google and i copy pasted the incorrect code only to find out it had a typo


Feature/label schema

Description
removed status from product schema
add productStatus, productHealth, state to Product type
add projectStatus, projectHealth, state to Project type
add enum Color - subject to change
add Label schema
add createLabel resolver
Fixes # (issue)
Type of change
Please delete options that are not relevant.

[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update

Change Status

[ ] Complete, but not tested (may need new tests)

How Has This Been Tested?

[ ] Test A
[ ] Test B

Checklist

[x ] My code follows the style guidelines of this project
[ x] I have performed a self-review of my own code
[ ] My code has been reviewed by at least one peer
[x ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes
[ ] There are no merge conflicts

Since this is a change to the schema the README needs to be edited as well to document the changes.


Add preCommand option to support configuring experimental environment by user

It can be used in remote mode by set preCommand in experiment config. It is an optional key with string value.
An example is as below:
...
machineList:
  - ip: ${replace_to_your_remote_machine_ip}
    username: ${replace_to_your_remote_machine_username}
    sshKeyPath: ${replace_to_your_remote_machine_sshKeyPath}
    # Pre-command will be executed before the remote machine executes other commands.
    # Below is an example of specifying python path.
    # If you want to execute multiple commands, please use "&&" to connect them.
    preCommand: export PATH=${replace_to_python_environment_path_in_your_remote_machine}:$PATH
...

export PATH=${replace_to_python_environment_path_in_your_remote_machine}:$PATH. since only this part replace_to_python_environment_path_in_your_remote_machine can be changed, why not directly write this part in this field without export PATH=...

@QuanluZhang The example may not be particularly clear. It is an example for export python path directly, but not only ${replace_to_python_environment_path_in_your_remote_machine} can be changed.
Maybe you want to use
preCommand: source "${replace_absolute_path_recommended_here}/bin/activate" to activate a virtualenv
or
preCommand: source /${replace_to_conda_path}/bin/activate ${replace_to_conda_env_name} to activate a conda env
User can use any commands they need to configure the experimental environment.

@QuanluZhang The example may not be particularly clear. It is an example for export python path directly, but not only ${replace_to_python_environment_path_in_your_remote_machine} can be changed.
Maybe you want to use
preCommand: source "${replace_absolute_path_recommended_here}/bin/activate" to activate a virtualenv
or
preCommand: source /${replace_to_conda_path}/bin/activate ${replace_to_conda_env_name} to activate a conda env
User can use any commands they need to configure the experimental environment.

got it. so it is not specifically for specifying python environment, it is a general command which is executed before trial code. suggest to make it clear how to specify python environment with this command in doc

Indeed, I will add more detailed instructions in the doc.

It can be used in remote mode by set preCommand in experiment config. It is an optional key with string value.
An example is as below:
...
machineList:
  - ip: ${replace_to_your_remote_machine_ip}
    username: ${replace_to_your_remote_machine_username}
    sshKeyPath: ${replace_to_your_remote_machine_sshKeyPath}
    # Pre-command will be executed before the remote machine executes other commands.
    # Below is an example of specifying python path.
    # If you want to execute multiple commands, please use "&&" to connect them.
    preCommand: export PATH=${replace_to_python_environment_path_in_your_remote_machine}:$PATH
...

This preCommand is added per machine, and only works when the machine is set preCommand? In remote mode, the trial is scheduled randomly on different machine, then the trial code will be executed randomly in different preCommand?

It can be used in remote mode by set preCommand in experiment config. It is an optional key with string value.
An example is as below:
...
machineList:
  - ip: ${replace_to_your_remote_machine_ip}
    username: ${replace_to_your_remote_machine_username}
    sshKeyPath: ${replace_to_your_remote_machine_sshKeyPath}
    # Pre-command will be executed before the remote machine executes other commands.
    # Below is an example of specifying python path.
    # If you want to execute multiple commands, please use "&&" to connect them.
    preCommand: export PATH=${replace_to_python_environment_path_in_your_remote_machine}:$PATH
...

This preCommand is added per machine, and only works when the machine is set preCommand? In remote mode, the trial is scheduled randomly on different machine, then the trial code will be executed randomly in different preCommand?

Yes, if user don't set preCommand, the process will run in the default environment as before.
I think the trial code will be executed randomly in different preCommand, this may be mainly caused by different configuration methods in different machines. Like source /YOUR_CONDA_PATH/bin/activate your_env in Linux and call activate your_env in Windows.

Please add UT and/or IT test cases.

Since this preCommand will be added to all commands executed on remote machine, please mention that:  use should not use those commands may make changes to system, like mkdir, touch, etc

remote machine support windows as local / remote system,  have we checked whether it works on windows?

Please add UT and/or IT test cases.

Got it.

Since this preCommand will be added to all commands executed on remote machine, so in doc/config example, please mention that: user should not use those commands may make changes to system, like mkdir, touch, etc

This should indeed remind users. I will add note for it.

remote machine support windows as local / remote system, have we checked whether it works on windows?

Yes, it works on windows.


Serializing ActorRef?

Hi,
Are you planning to make ActorRef serializable when/if you create networking support?
This has been one of the most problematic things for us when creating Akka.NET (port of Akka to .NET).
Polymorphic serialization is hard and depending on serializer and platform not always possible.
(LocalActorRef, DeadLetterActorRef, RemoteActorRef, RouterActorRef etc etc)
In my other actor project https://github.com/rogeralsing/gam, I ditched the ActorRef concept and used a more Erlang like PID which is a simple value that instead of using polymorphism, resolves the underlying actor.
This way, the actor pid can easily be passed across the wire using e.g. protobuf as the serializer.
Just wanted to give a heads up on that one.
Another benefit of the above approach would be the possibility of cross platform Go <-> Rust remoting, hint hint
If you are still going down the ActorRef route, are there some interesting ways that Rust can deal with the above?

+1 for this one. 0mq does this also.


fix typo - questionOperation

https://github.com/apache/incubator-answer/blob/3e6a202d37e7a8f9d8749d656da240e1ab674104/ui/src/components/Operate/index.tsx#L15
This should probably be questionOperation, not questionOpetation

is this issue open for contribution

Thanks for the feedback, we accept any form of contribution, and we will use some tools to check the spelling of words in the future. @rawatsushil  @GlenCarpenter

Thanks for the feedback, we accept any form of contribution, and we will use some tools to check the spelling of words in the future. @rawatsushil @GlenCarpenter

@shuashuai The misspelling was not the reason I reported, it was because further along in the file the variable was spelled differently which caused eslint to flag.  I think this will be caught during PRs moving forward since the github workflows will pre-build the UI package.


Redundant file copies for every pod start

The startup time for a Spin application distributed as an OCI artifact is affected by several copies of the Wasm components and static assets on disk.

first, we write the OCI layers returned by runwasi on disk, in a directory structure that follows Spin's OCI loader: https://github.com/spinkube/containerd-shim-spin/blob/a42715e542a167d7b02a6725cf6d6d0fa96c1912/containerd-shim-spin/src/engine.rs#L104-L141
we then call load_from_cache (https://github.com/spinkube/containerd-shim-spin/blob/a42715e542a167d7b02a6725cf6d6d0fa96c1912/containerd-shim-spin/src/engine.rs#L165), which in turn calls Spin's loader, which copies the files into a temporary directory: https://github.com/fermyon/spin/blob/7f55409a7b75c8dc52bc77fdaa5ba1e71a524b8d/crates/oci/src/loader.rs#L103

Since this time is spent on every pod start, my assumption is that it affects performance, in particular for applications with a higher number of components and assets.
I'd like to see if we can improve this, potentially by implementing a Spin application loader that directly uses the runwasi list of WasmLayers and skips all the copies.

Another idea along these lines that I had would be to implement an In-memory cache provider that would skip the write to disk as well.

Hi @jsturtevant, just trying to understand your suggestion here. are you saying to have these static assets loaded in memory and serve from there?

Yes, they are already in memory via the WasmLayers struct.  There is a concept of a Cache in Spin which currently reads from a specific folder, which is why we write the files to disk.  I thought we might be able to create a new implementation of the cache that reads from the pre-loaded memory instead of writing to disk then reading it again.  This would speed things up a bit by avoiding the IO but may not be ideal in all cases when the there are lots of files.


Add Cors handling to Zuul proxy

Each route could have its own Cors configuration in application.yml instead of having to look in the ZuulHandlerMapping. If ZuulController was itself an implementation of CorsConfigurationSource and looked up configs from the route information it would just work.

Hi,
Any idea when CORS configuration would be possible per route in application.yml file?

It's marked for 1.3.0.RC1 but no-one is working on it, so unless you have some code you want to contribute, my guess is it will slip to 1.3.1.

What's the status of this issue? Is it still open?
If so, what is the current target release version?

It's still open and not targeted for any release.


Add a Declaration File

Hey! I'm hoping to use this renderer for a Typescript project. I'd like to put up a PR with a Typescript declaration file, but let me know if this is not wanted, or not a good idea.

I'd be more than happy to accept a PR for this 👍


Add a PNG Frame over Video using FFMPEG PHP

Hello,
I am able to record a video, but now i need to add a frame over that video using FFMPEG. I have source of Vendor FFMPEG. but unable to add frame, error showing unable to handle the request.
`require_once('vendor/autoload.php');

$probe = FFMpeg\FFProbe::create();

$formatString = $probe
    ->streams('../uploads/ad7ec88da987307a9ea068f6d8d0d49b.mp4')
    ->videos()
    ->first()
    ->get('codec_name');

$className = null;
switch($formatString) {
    case 'h264':
        $className = FFmpeg\Format\Video\X264::class;
    break;
    // add your format codecs here
    default:
        throw new \LogicException("Unknown video format {$formatString}");
}

// open actual video
$ffmpeg = FFMpeg\FFMpeg::create();
$video = $ffmpeg->open('../uploads/ad7ec88da987307a9ea068f6d8d0d49b.mp4');

$format = new $className;

$video->save($format, 'myFancyVideo.mp4');

I just want to add a PNG frame over video. Please share update.
NOTE: I am using Shared hosting.

I just want to add a PNG frame over video.

I'm not sure what you want to do. Do you want to watermark your video or are you trying to make thumbnails out of it?

Yeah, exactly. i want to add watermark to my video. using C# and the process should run in background. because application is public
I tried this
public void AddWaterMark(string orginalVideoPath, string waterMarkPath, string outPutVideoPath)
        {
            string ffmpeg = System.AppDomain.CurrentDomain.BaseDirectory + @"\Tools\\ffmpeg.exe";

            System.Diagnostics.Process ffmpegProcess = new System.Diagnostics.Process();

            System.Diagnostics.ProcessStartInfo startInfo = new System.Diagnostics.ProcessStartInfo(ffmpeg);

            startInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Normal;

            startInfo.Arguments = " -i " + orginalVideoPath + " -i " + waterMarkPath + " -filter_complex \"overlay=10:10\" " + outPutVideoPath;
            try
            {
                System.Diagnostics.Process.Start(startInfo).WaitForExit();
            }
            catch (Exception err)
            {
                MessageBox.Show(err.Message);
            }
        }

Please understand that we do not give support on using FFMpeg Filters in general, but we focus on using this library(with using PHP).

process should run in background. because application is public

There can be a video encoding worker executed in the background ;)
PHP is not limited for serving webpages.


New jmavsim - cooler 3D UI, not yet working

This updates jMAVSim. Right now this triggers a floating point exception in the Firmware. Either because the sim sends garbage initially, or because the timing changes upset PX4. This needs some debugging / inspection in src/modules/simulator/simulator_mavlink.cpp to work out what is going on.

So this is working now. What is missing is fixing "time is negative" warnings. Working on that.

Negative time fixed. Now getting "EKF baro hgt timeout - switching to gps" - fixing that next.


Unclear semantics of CSR instructiono

Current CSR instruction go along the lines of (I've emboldened the confusing part):
The CSRRW (Atomic Read/Write CSR) instruction atomically swaps values in the CSRs and
integer registers. CSRRW reads the old value of the CSR, zero-extends the value to XLEN bits,
then writes it to integer register rd. **The initial value** in rs1 is written to the CSR. If rd=x0, then
the instruction shall not read the CSR and shall not cause any of the side-effects that might occur
on a CSR read.

According to this definition executing something like: CSRRW t0, csr, t0 shall be noop in the sense that the csr is first read and it's value is written to rd (t0) in the example, subsequently t0's value is written to the csr, but because t0 contains the current value of the csr we write the same value.  Clearly this is not the case, instead after the instruction is executed the values of rs1 and csr are swapped if rs1==rd. This is kind of alluded to in the description by saying "The initial value in rs1" is written, so if rs1 == rd then behind the scenes the initial value is saved somewhere, then it's overwritten by the read and finally it's moved into the csr register. Can perhaps the wording be changed to make this semantic more explicit?

The first sentence makes it clear: the instruction atomically swaps the two values. The is no "subsequently"; both are logically read and written at the same time. How it actually gets performed by HW under the covers is not programmatically visible, so it appears simlutaneous. HW may stage the initial value of the CSR and rs1 into a pipeline register or not - programs don't care, as long as there is no way for a program to tell that it has (and you shouldn't be able to).
The interesting part is if the rd is x0, then it's an rs1-> CSR transfer only, so there is no simultaneous CSR->rd transfer,


Wrong namespace for ObjectRepository

Since Doctrine v2, the BC layer was drop so old Doctrine\Common\Persistence\ObjectRepository namespace do not exists anymore and is replaced by Doctrine\Persistence\ObjectRepository.
Because of this change, two classes needs to be changed in order to work on fresh Sylius 1.9.
I don't know how you wants to manage this change because you don't explicitly support Sylius 1.9 for now and it will break the plugin on Sylius <1.9, so I will open a PR and wait for a response.

Hello @DjLeChuck,
We are currently working to manage our compatibility with Sylius 1.9 and will release soon a new version of our plugin.
Thank you :)

Oh nice! So, my PR can be discarded... 😄


Alerting - delegation email

User Story
Fire off a basic, text only email

Epic Title
Alerting/Delegation

T-shirt size:

User Story
"As a user of Next, I want to alert my chosen delegate of their nomination as such via email so that they are prompted to drop what they are doing and quickly respond to my request""

Description
Think iteratively...

This message shall be text only -- no HTML (that can come later)
The content of the message shall be pulled from the delegation setup form.

recipient email
start date
end date
outgoing message (if we have one when we tackle this story -- #1313 )
Count of roles?  List of roles?

messages shall be added to the queue (story #1308) but should be processed immediately since we don't have user preferences for delayed send yet.

Acceptance Criteria/Tests

Basic text message with target content is sent to target recipient within 10 min of delegation setup 'Send' button being pressed.
No 'Approve/reject' button on this message yet,  No deep link back into Next either.  The goal here is to pull content from a form, build a message , add it to the queue and process the queue.

migrated to new tmobile/sawtooth-next-directory repo


Keyerror: 'sub'

This is probably due to an incompatible version of the client and server so the client in the docker image needs to be downgraded.

Fixed in pr #30


not use libtorch for deployment solov2 tensorrt?

hi,professor:
is there any possible for deployment solov2 don't use libtorch? just use tensorrt deserialize api, then write some postprocess code? beacause it has fewer dependence, install libtorch on jetson isn't friendly!
for your build_model , it can create raw tensorrt engine , so the demo can just read it as file,and then create tensorrt context,then deploy,
so, please help!

This is possible in theory, but libTorch is easier to implement.


Fixed escaping of ampersand and adjust descriptions

BTW, I'm travelling and won't be available for a while.

There are a lot of changes in this pull request. @n7s would you be up for submitting separate pull requests for each "type" of change? That will make it easier to review, and will ensure the changes that are straight forward can get merged while we discuss other concerns.


Asciidoctor rendering fails when using Java extensions

It seems that there is still a problem (I tried with 1.5.2...)
With TerminalCommandTreeprocessor:
Hello World

$ echo "Hello, World!"

= Title

$ gem install asciidoctor

By using asciidoctor.convert I get
Exception in thread "main" java.lang.ClassCastException: org.asciidoctor.ast.SectionImpl cannot be    cast to org.jruby.RubyObject
at org.asciidoctor.ast.AbstractBlockImpl.blocks(AbstractBlockImpl.java:52)
at com.imtf.test.asciidoc.TestAsciiDoc.showDoc(TestAsciiDoc.java:301)
at com.imtf.test.asciidoc.TestAsciiDoc.test6(TestAsciiDoc.java:343)
at com.imtf.test.asciidoc.TestAsciiDoc.main(TestAsciiDoc.java:362)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:134)

I also have similar errors with the "gistMacro" and "ManpageMacro" examples:
= Hello
Test

== Sect 2

gist::1234[]

Result:
Exception in thread "main" java.lang.ClassCastException: org.jruby.gen.InterfaceImpl1503916182 cannot be cast to org.jruby.RubyObject
at org.asciidoctor.ast.AbstractBlockImpl.blocks(AbstractBlockImpl.java:52)
at com.imtf.test.asciidoc.TestAsciiDoc.showDoc(TestAsciiDoc.java:301)
at com.imtf.test.asciidoc.TestAsciiDoc.test6(TestAsciiDoc.java:343)
at com.imtf.test.asciidoc.TestAsciiDoc.main(TestAsciiDoc.java:362)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:134)

by combining TreeProcessor and BlockMacroProcessor I get:
Exception in thread "main" org.jruby.exceptions.RaiseException: (TypeError) exception class/object expected
at RUBY.load(/opt/repository/org/asciidoctor/asciidoctorj/1.5.2/asciidoctorj-1.5.2.jar!/gems/asciidoctor-1.5.2/lib/asciidoctor.rb:1362)
at RUBY.load(\n" +
   		"
";

   return createBlock(parent, "pass", Arrays.asList(content), attributes); // No more this.getConfig() as additional parameter!
}

Robert, you are right !
I was using the old code... it works !
Thanks !
I will file an issue for the StackOverflow...

Awesome!
So we can close the issue with 1.6.0?

I did some extra tests and combined with other extensions...
Perfect for me !!
:+1:
Thanks

Great news! Tests save the day again :)

I'm not sure if this belongs to asciidoctorj or to the asciidoctor-maven-plugin issue list.
I would like to use the Treeprocessor. From the docs I read that the configuration in the maven pom should look like mentioned below. But when I run it I get the follwoing Error:
failed: (ArgumentError) asciidoctor: FAILED: D:/devsbb/workspaces/mca2esta/mca2esta-doc/src/main/asciidoc/mca2estaCookbook/McaEsta-Migration_ETS-Workbook.adoc: Failed to parse source, Invalid type for treeprocessor extension: Java::OrgAsciidoctorExtension::Treeprocessor

Is my configuration wrong? And one more question: I was searching for the treeprocessor maven artifact but did not find it. Are all extensions already included in the core?
<plugin>
						<groupId>org.asciidoctor</groupId>
						<artifactId>asciidoctor-maven-plugin</artifactId>
						<version><IP_ADDRESS></version>
						<dependencies>
							<dependency>
								<groupId>org.asciidoctor</groupId>
								<artifactId>asciidoctorj-pdf</artifactId>
								<version>1.5.0-alpha.8</version>
							</dependency>
						</dependencies>
						<executions>
							<execution>
								<id>mca-esta-migration-docs</id>
								<phase>generate-resources</phase>
								<goals>
									<goal>process-asciidoc</goal>
								</goals>
								<configuration>
									<extensions>
										<extension>
											<className>org.asciidoctor.extension.Treeprocessor</className>
										</extension>
									</extensions>
									<attributes>
										<buildVersion>${project.version}</buildVersion>
									</attributes>
									<sourceDirectory>blabla
									</sourceDirectory>
									<outputDirectory>${project.build.directory}/generated-docs/
									</outputDirectory>
									<backend>html</backend>
									<doctype>book</doctype>
									<preserveDirectories>true</preserveDirectories>
								</configuration>
							</execution>
						</executions>
					</plugin>

Are all extensions already included in the core?

Yes.

I think the problem is that you have to define the class name of your concrete extension implementation:
<className>org.asciidoctor.extension.Treeprocessor</className>
org.asciidoctor.extension.Treeprocessor is the base class for all Treeprocessors and your implementation must extend this class.
The classname element in your pom has to to contain the name of that subclass.

Aha. Looks like I misunderstood things. I was looking for something to render a directory tree structure and thought the treeprocessor is what I need. Meanwhile I have found Dan Allans link to https://github.com/allati/asciidoctor-extension-monotree. Thanks.


Get error using nats.ws and angular 17

Observed behavior
get error building project
Could not resolve "crypto"
node_modules/nats.ws/esm/nats.js:4913:24:
  4913 │       crypto1 = require('crypto');
       ╵                         ~~~~~~~~

The package "crypto" wasn't found on the file system but is built into node. Are you trying to bundle for node? You can use "platform: 'node'" to do that, which will remove this error.
Expected behavior
project builds without error
Server and client version
"nats.ws": "^1.26.0",
"@angular": "^17.3.0",
Host environment
No response
Steps to reproduce
create project with ng new, add nats.ws create connection and try to build

You may want to extract the "node_modules/nats.ws/esm/nats.js" file and reference it directly - depending on your bundler it may not correctly select between cjs and esm.

@nickchomey bundle is now an external api, it is still supported - with that said, I am in the middle of an extensive refactoring for the clients, which will split the lib into several - core, jetstream, kv, object store and services. Each will have an esm only option or a node option - the ESM only (via jsr) will do exactly what you want as it will only involve webapis.

Hi guys, still having the same issue with Angular 18:
✘ [ERROR] Could not resolve "crypto"

    node_modules/nats.ws/esm/nats.js:4911:24:
      4911 │       crypto1 = require('crypto');

@nickchomey can you share the forked version please? Or maybe there is other solution?
@aricart I checked, but didn't find nats.ws on jsr, can you share if it's there? maybe with other name?
thanks 🙌🏻

The esm lib shouldn't have a require, as that is not available in browser, so all browser apps would fail. Shims for crypto should be available on npm...

@aricart Yes I agree, I think issue is that nats.ws loads crypto.
I've created a simple project to reproduce the issue:
https://github.com/playerx/nats-issue
Steps I did:

Create a new angular with ng new command
Install and use nats.ws by running: npm i nats.ws

And npm run build fails with the error I mentioned.
If there is a way to avoid loading crypto please let me know.

Not sure if installing shim is the right way to go. I think the main problem is that it loads crypto when it shouldn't.

Adding the following in package.json did the trick:
"browser": {
    "crypto": false
  }

However, I think for the long-term solution nats.ws shoudn't be loading crypto in browser.

Crypto is required for objects tore, and works perfectly in browser...
https://developer.mozilla.org/en-US/docs/Web/API/Crypto

The 3.0 version of the clients breaks the lib into several. Crypto dependency will be on the objectstore module only
Stay tuned

Hi guys, I am also getting the same issue in the latest Angular 18. ng build is throwing the same error:

@playerx's workaround got rid of it, but that should get fixed in nats.ws.


Roll-back cell edit - is that possible?

Hi,
is it possible to roll-back cell edit by storing the old value of an edited cell somewhere
handleEditCell = (oldValue, newValue, row, column) => {
        if(column.dataField === "date_movement"){
            this.old_date_movement = oldValue;
        }
        ...
    };

and re-setting it upon triggering of an event?
Is the only viable way that of re-rendering the component?
I pass data to be rendered in the table as props:
<BootstrapTable
                    keyField="id"
                    data={this.props.data}
                    ...

Should I ask to the parent of this component to resend props to this child component containing the "BootstrapTable", even if props are now actually changed (since I've decided to roll-back changes)?
Hope it is not confusing to you.
thanks

Is the only viable way that of re-rendering the component?

yes, I think I will not implement this feature on react-bootstrap-table2, the only solution just like you said, keep the old value then restore it by rerender table component by triggering some actions.
Feel free to let me know if the problem still remain, thanks

Hi Allen,
Actually, it seems it is possible to access props.data inside a cellCentext and modify it. I managed to do it after a triggering event:
this.table.cellEditContext.props.data[rowIndex]['columns_name_here'] = 'a_value'
I don't know if this is an unwanted feature or a bug, but cell content can be modified programmatically also in this way.
regards


About the results on VOC2012 with 92 examples

Thank you for your expressive and remarkable work and delicate code!! But when I reproducting the results on VOC2012 with 92 examples,I only get 59 with examples,while the reported result is 67.98.Can you offer some suggest? Thank you sincerely!
This is my log file!
seg_20220414_150853.txt
This is my tb about contrastive_loss and  unsupervised loss! they're kind of weired and on an upward trend.

This is my config file. And I run my code in 4 gpu(4*V100),batch_size = 4
dataset: # Required.
type: pascal_semi
train:
data_root: ../../../../../data/VOC2012
data_list: ../../../../../data/splits/pascal/92/labeled.txt
flip: True
GaussianBlur: False
rand_resize: [0.5, 2.0]
#rand_rotation: [-10.0, 10.0]
crop:
type: rand
size: [513, 513] # crop image with HxW size
val:
data_root: ../../../../../data/VOC2012
data_list: ../../../../../data/splits/pascal/val.txt
crop:
type: center
size: [513, 513] # crop image with HxW size
batch_size: 4
n_sup: 92
noise_std: 0.1
workers: 2
mean: [123.675, 116.28, 103.53]
std: [58.395, 57.12, 57.375]
ignore_label: 255
trainer: # Required.
epochs: 80
eval_on: True
optimizer:
type: SGD
kwargs:
lr: 0.001  # 4GPUs
momentum: 0.9
weight_decay: 0.0001
lr_scheduler:
mode: poly
kwargs:
power: 0.9
unsupervised:
TTA: False
drop_percent: 80
apply_aug: cutmix
contrastive:
loss_weight: 0.1
negative_high_entropy: True
low_rank: 3
high_rank: 20
current_class_threshold: 0.3
current_class_negative_threshold: 1
unsupervised_entropy_ignore: 80
low_entropy_threshold: 20
num_negatives: 50
num_queries: 256
temperature: 0.5
saver:
snapshot_dir: checkpoints/base_16
pretrain: ''
criterion:
type: CELoss
kwargs:
use_weight: False
net: # Required.
num_classes: 21
sync_bn: True
ema_decay: 0.99
encoder:
type: u2pl.models.resnet.resnet101
kwargs:
multi_grid: True
zero_init_residual: True
fpn: True
replace_stride_with_dilation: [False, True, True]  #layer0...1 is fixed, layer2...4
decoder:
type: u2pl.models.decoder.dec_deeplabv3_plus
kwargs:
inner_planes: 256
dilations: [12, 24, 36]

Hi, thanks for your approval!
From the loss curve, unsup_loss seems to be a little bit wired.
The contra_loss can be regarded as a regularizer, which is expected to be around 0.2 during the whole training process.
The provided training log seems to be incomplete since it only contains 27 epochs? Could you provide the whole log?
By the way, with only 92 labeled samples, the training procedure is a little bit noisy.
Maybe you could try applying aux_loss, which could be found in: https://github.com/Haochen-Wang409/U2PL/blob/main/experiments/cityscapes/744/suponly/config.yaml#L57-L59

I guess it might beause unsup_loss is around 0.3, which is quite large than the sup_loss in your log file.
Therefore, aux_loss or ohem might help.

Yeap,there're only 27 epochs.Due to the poor performance,I interrupted the training.
Thanks for your helpful suggestion!!  I'll retraining the model with only 92 labeled samples with the config.yaml you provide. Btw,   there's no need to change the value of  relevant parameter about aux_loss (aux_plane: 1024 and   loss_weight: 0.4 )?
Thanks sincerely again!

Yes, just set aux_plane: 1024 and loss_weight: 0.4.
Note that we did not adopt aux_loss or ohem in experiments on VOC.

Hello! I have some question about the split of voc dataset .
When I train the model with classic voc 2012. Should  I change  10582  to 1464  ( line 109 in the  pascal_voc.py  file. )?
What about you when you trains model  on classic voc,Thanks!!

You do not need to change 10582.
In fact, n_sup in here actually means number of unlabeled images, since it is used to build dataloader here.
For semi-supervised settings, usually an epoch is defined as the model have been trained on all unlabeled images.

But I understand that  the classic VOC 2012 dataset is divided into training,validationand test sets including 1,464, 1,449 and 1,456 images, respectively. So the number of unlabeled images  should be 1464 - num_labeled. So this's 1464 not 10582. Meybe I mistake the composition of classic VOC 2012 dataset ? Thanks!

Augmented VOC contains 10582 images in total.
For classical VOC, labeled images are selected from 1464 fine annotated samples and the remaining 9118 images are regarded as unlabeled images. Therefore, number of total images are 10582 rather than 1464.

Augmented VOC contains 10582 images in total. For classical VOC, labeled images are selected from 1464 fine annotated samples and the remaining 9118 images are regarded as unlabeled images. Therefore, number of total images are 10582 rather than 1464.

Augmented VOC contains 10582 images in total. For classical VOC, labeled images are selected from 1464 fine annotated samples and the remaining 9118 images are regarded as unlabeled images. Therefore, number of total images are 10582 rather than 1464.

oo！！I see!! Thank you very much!!

Never mind~!


STAT-47 ⁃ Prevent Access to Tables not Specified in ABI

(Replaces github issue #331)
Dan:
verify the table type matches
verify that a table name can only be used for a single index
verify that the ABI definition doesn't define multiple tables with the same name
These checks can be skipped during replay
Brian:
verify that the ABI definition doesn't define multiple tables with the same name
Already done by setcode call to AbiSerializer ctor, which calls setabi, which compares size of AbiSerializer map of tables to Abi vector of tables.
Brian:
@bytemaster
"verify the table type matches"
There are 2 ways I can see this being done. It could be checked in the store/read_*** wasm_interface intrinsic methods, but this would be a lot of wasted checks, since each wasm store/read only needs to be verified once.
So I am thinking that this needs to be done in the load, and the ModuleInstance analyzed.
"verify that a table name can only be used for a single index"
This really should be "verify that every code's table name can only be used for a single index", right? And then doesn't the fact that we verify that the ABI definition doesn't define multiple tables with the same name and that we "verify that the table type matches" already ensure this?
Also, I am presuming these are only performed if an ABI is provided, are there any checks we want to perform if there is no ABI? Like ensure that table reads and writes are consistent with each other?
Would think that this information has to be available in the processed WASM structure, but having a hard time identifying it. If it isn't we could identify it as we process the WASM.
Brian:
@bytemaster
Needs Clarification:
I am presuming the intent of this is safety (ensuring table access is consistent with ABI), not security, is that correct?
The statement about "these checks can be skipped during replay" sounds like these checks were planned to occur every time the code runs, but this seems to be a cost that shouldn't have to be incurred every time the code runs, vs. either using data in the existing loaded WASM structure (if it is possible) or else added to the WASM structure processing. If I don't get clarification on this I will plan to do the checks as the code is run, since that comment seems to assume this.
If the ABI is not provided, should a "lazy" ABI table definition be constructed as the code is run through, to ensure a table only has one type? Until I hear otherwise, I will assume the answer to this question is "yes".
For "verify that a table name can only be used for a single index", I will not do anything on this till I get clarification on exactly what it means.
Brian:
"verify the table type matches"
Assuming this means that the indextype matches, since that is available in the code, but actually identifying the type involved would require parsing the wast.
Working on tests.
ATC (Acceptance Test Criteria)
#1

Create ABI with duplicate table names
Verify ABI will not load

#2

Attempt to use a table not in ABI
Verify table access fails

#3

Use a valid table that matches ABI
Verify table access works

#4

With a valid table in ABI
Attempt to load with different key type (identify i64 key in ABI) and access with different type (use i64i64i64)
Verify access fails

#5

Repeat #3, #4 with no ABI
ABI is lazy created

➤ Kevin Heifner commented:
This is in review. If it meets Dan's expectations it can be closed.

➤ Kevin Heifner commented:
I will review these changes for merge. Note the 1 story point is only for the review.

➤ Joshua Lavin commented:
[~kevin.heifner] [~corey.lederer] [~admin]] [~thomas.cox]
Not clear on the QA for this issue (and others).  Who will be writing the test cases for these issues?  I had thought this would be with the developer responsible for fixing the issue?  Just want to make sure we're not doubling our efforts.

➤ Kevin Heifner commented:
Unit tests were created as part of the development. All other additional testing, I understood was to be performed by HK.

➤ Bezwada Satyapravin commented:
If I understand correctly, validating this JIRA requires us to implement a test contract that performs actions mentioned in Acceptance Criteria and execute the contract. Please let me know if that is not the case.

➤ Kevin Heifner commented:
That is correct. Unittests that perform similar operations as the ATC have been created and are part of the build. You can see the tests by looking at the diff for this issue:
https://github.com/EOSIO/eos/commit/224e238179bbbcfb17cc72f22b80c2eee8de47f0

➤ Andrianto Lie commented:
I have written sample contracts to verify these 5 cases and assures that they are all working based on the ATC.
The sample contracts can be found here https://github.com/andriantolie/table-test

➤ Andrianto Lie commented:
The sample contracts behaves differently when we tested it on the testnet by the way.
For every action where we expect to be failed, we got the following error instead from the testnet:
status_code == 200: Error code 500
: 10 assert_exception: Assert Exception
valuelen >= keylen: insufficient data passed
    {}
    thread-0  wasm_interface.cpp:70 validate

{"name":"apply","current_validate_context->msg.type":"foocase4"}
    thread-0  wasm_interface.cpp:648 vm_call

{}
    thread-0  wasm_interface.cpp:710 apply

{"context.msg":{"code":"case5","type":"foocase4","authorization":[],"data":""}}
    thread-0  chain_controller.cpp:949 apply_message

{"trx":{"refBlockNum":621,"refBlockPrefix":3998459910,"expiration":"2017-11-03T10:03:01","scope":["case5"],"readscope":[],"messages":[{"code":"case5","type":"foocase4","authorization":[],"data":""}],"signatures":[]}}
    thread-0  chain_controller.cpp:986 process_transaction

{"trx":{"refBlockNum":621,"refBlockPrefix":3998459910,"expiration":"2017-11-03T10:03:01","scope":["case5"],"readscope":[],"messages":[{"code":"case5","type":"foocase4","authorization":[],"data":""}],"signatures":[]}}
    thread-0  chain_controller.cpp:958 apply_transaction

{"trx":{"refBlockNum":621,"refBlockPrefix":3998459910,"expiration":"2017-11-03T10:03:01","scope":["case5"],"readscope":[],"messages":[{"code":"case5","type":"foocase4","authorization":[],"data":""}],"signatures":[]}}
    thread-0  chain_controller.cpp:244 push_transaction

{"c":500,"msg":"10 assert_exception: Assert Exception\nvaluelen >= keylen: insufficient data passed\n    {}\n    thread-0  wasm_interface.cpp:70 validate\n\n    {\"name\":\"apply\",\"current_validate_context->msg.type\":\"foocase4\"}\n    thread-0  wasm_interface.cpp:648 vm_call\n\n    {}\n    thread-0  wasm_interface.cpp:710 apply\n\n    {\"context.msg\":{\"code\":\"case5\",\"type\":\"foocase4\",\"authorization\":[],\"data\":\"\"}}\n    thread-0  chain_controller.cpp:949 apply_message\n\n    {\"trx\":{\"refBlockNum\":621,\"refBlockPrefix\":3998459910,\"expiration\":\"2017-11-03T10:03:01\",\"scope\":[\"case5\"],\"readscope\":[],\"messages\":[{\"code\":\"case5\",\"type\":\"foocase4\",\"authorization\":[],\"data\":\"\"}],\"signatures\":[]}}\n    thread-0  chain_controller.cpp:986 process_transaction\n\n    {\"trx\":{\"refBlockNum\":621,\"refBlockPrefix\":3998459910,\"expiration\":\"2017-11-03T10:03:01\",\"scope\":[\"case5\"],\"readscope\":[],\"messages\":[{\"code\":\"case5\",\"type\":\"foocase4\",\"authorization\":[],\"data\":\"\"}],\"signatures\":[]}}\n    thread-0  chain_controller.cpp:958 apply_transaction\n\n    {\"trx\":{\"refBlockNum\":621,\"refBlockPrefix\":3998459910,\"expiration\":\"2017-11-03T10:03:01\",\"scope\":[\"case5\"],\"readscope\":[],\"messages\":[{\"code\":\"case5\",\"type\":\"foocase4\",\"authorization\":[],\"data\":\"\"}],\"signatures\":[]}}\n    thread-0  chain_controller.cpp:244 push_transaction"}
    thread-0  httpc.cpp:113 call

{"server":"<IP_ADDRESS>","port":8889,"path":"/v1/chain/push_transaction","postdata":{"refBlockNum":621,"refBlockPrefix":3998459910,"expiration":"2017-11-03T10:03:01","scope":["case5"],"readscope":[],"messages":[{"code":"case5","type":"foocase4","authorization":[],"data":""}],"signatures":[]}}
    thread-0  httpc.cpp:117 call

However, I suspect it not to be the problem with the code but because the testnet doesn't have the latest version.

➤ Kevin Heifner commented:
From the line numbers in the previous comment, I can tell this is from the previous week build. This code is NOT the latest from master.

Sync'd the issue back to JIRA and closing.


Bigtable : Adding _state to instance.py

Added _state to Instance class constructor.
Added a property "state".
Updated methods from_pb() and _update_from_pb() to use state.

@sumit-ql Needs conflicts resolved after merge of #5728.

@dpebot Please merge on green.


How do add a new contact using this wrapper?

The example I found in the documentation uses raw curl to add new contacts. I did some reading on the classes and I believe there's a way to add contacts using this wrapper, but I couldn't find any example. The code I have is like this:
require_once 'includes/ActiveCampaign.class.php';

$API_URL = "myurl";
$API_KEY = "myapikey";

$ac = new ActiveCampaign($API_URL, $API_KEY);

$mycontactEmail =<EMAIL_ADDRESS>$mycontactName = "Name Example";

Since I have the object, could some help me telling how it would be to add a new contact?
I will keep reading the code, but an example will make my job faster. :smiley:

Hi, thanks for reaching out. We have an examples script that shows how to add contacts, along with other common requests (using this wrapper). Let us know of any questions! :+1:

Hi @mthommes,
Now I am trying to get the ids of all my lists with this code:

//I am including the ActiveCampaign.class
//Also I defined the following constants in the config.php file

$ac = new ActiveCampaign(ACTIVECAMPAIGN_URL, ACTIVECAMPAIGN_API_KEY);

if (!(int)$ac->credentials_test()) {
	echo "
Access denied: Invalid credentials (URL and/or API key).
";
	exit();
}

//The test works already

$post_data = array(
	'api_action' => 'list_list',
	'api_key' => ACTIVECAMPAIGN_API_KEY,
	'api_output' => 'json',
	'ids' => 'all',
);

var_dump($ac->api("list/list_", $post_data));

But I'm always get the error: Trying to get property of non-object#0
Do you have any ideia of what I might be doing wrong?

Hi, your $post_data doesn't need to be included at all. In fact list_list is a GET method and doesn't require post data. Second, maybe try doing just this: "list/list" (instead of "list/list_" - remove the underscore).
Let us know if that doesn't work still! :smiley:

Sadly, I still the the same error doing var_dump( $ac->api("list/list") );

When I run this code to test the $ac object

$ac = new ActiveCampaign(ACTIVECAMPAIGN_URL, ACTIVECAMPAIGN_API_KEY);

if (!(int)$ac->credentials_test()) {
	echo "
Access denied: Invalid credentials (URL and/or API key).
";
	exit();
}

var_dump(get_class_methods($ac)); //output here

I get its methods
array(6) { [0]=> string(11) "__construct" [1]=> string(7) "version" [2]=> string(3) "api" [3]=> string(16) "credentials_test" [4]=> string(3) "dbg" [5]=> string(4) "curl" }

So I have no idea of what's happening since the including and the calls seem to be right.

Try this:
$ac->api("list/list?ids=all");
Also set this (above the previous line):
$ac->debug = true;

It works when I specified the parameter in $ac->api("list/list?ids=all");. I am getting all the lists.
Also, the first error wasn't coming from the wrapper. The problem was from the definition of my framework that was wrong, sorry.
Thanks for your amazing support.

Glad we could help! :+1:


Exponential behavior when parsing shared term

I have this kore file: https://github.com/radumereuta/k-light/blob/evenLighter/src/test/k/unparametric_examples/imp/imp-rules.kore.info (about 300kB - the result of parsing IMP rules, with lots of sharing in them).
Sometime between June 6 and July 7 there has been a change which makes kore-parser take a HUGE amount of time to run (stopped it after 10 minutes).

Did you mean to point to another kore file? imp-rules.kore.info seems to be ~120k (github says      1638 lines (1625 sloc)  122 KB).
Please provide reproduction steps. Here is what I tried:

$ cd src/main/haskell
$ git checkout master
$ git pull origin
<copy-pasted your file in test.kore>
$ rm .stack-work -r
$ rm kore/.stack-work -r
$ stack build
$ time stack exec kore-parser test.kore -- --no-print-definition --verify --chkattr
Reading the input file TimeSpec {sec = 0, nsec = 33802}
Parsing the file TimeSpec {sec = 0, nsec = 80521002}
Verifying the definition TimeSpec {sec = 0, nsec = 42824721}

real    0m0.222s
user    0m0.464s
sys     0m0.140s
$ ls -l test.kore
-rw-rw-r-- 1 virgil virgil 124451 iul 31 16:45 test.kore

That is the correct file. I estimated the size wrong. It's 122k
A while back:
Version: ba56dd7 Jun 6
Usage: kore-parser imp-rules.kore.info > imp-rules.out
Time: 600 ms
Size of out file: ~8MB

Now:
Version: 9012a89
Usage: kore-parser imp-rules.kore.info > imp-rules.out2
Time: stopped it manually after ~5 minutes
Size of out file: ~25MB
Now that I know of the no print option, I guess I can use it since I don't use the output. But still, something happened in the last 2 months that made the printing much slower.

@u-- @ttuegel could this be due to using the pretty printer?

@dfilaretti It seems that commit 6f5785df0e5ec488d9aed153513653a0ca5746fc introduced the issue.

I'd bet it might be due to the change from
      when willPrint  $ print parsedDefinition

to:
      when willPrint  $ putStrLn (prettyPrintToString parsedDefinition)

It seems such a benign change, though :-)

Ignore that reference, sleep deprived.  I checked @traiansf 's suggestion; it is the issue.

We should have a performance test that runs the kore-parser tool on several inputs...

@traiansf That changes from using Show to using prettyPrintToString. It looks like that just exposed an existing performance problem with prettyPrintToString.

Commenting the last line in betweenParentheses changes the run time from 17 min to 4 min (on my computer). To be clear, I was going from this
betweenParentheses :: PrinterOutput w m => Flags -> m() -> m()
betweenParentheses NeedsParentheses thing = do
    write "("
    thing
    write ")"

to this
betweenParentheses :: PrinterOutput w m => Flags -> m() -> m()
betweenParentheses NeedsParentheses thing = do
    write "("
    thing
    --write ")"

The correct long-term solution is to fix prettyPrintToString. Right now the performance is acceptable for small files and we have a fix when processing large files (i.e. to use --no-print-definition), so we could leave it as-is until the proper solution is in place.
Does anyone object?

I'm already using the no-print option, so I'm ok for now.

PR #169 improves my time to parse and print that test file from 10 minutes to 1 second.