Remove uses of deprecated constants from packages used by flutter and internal code

Identify and clean up any packages that are used by flutter or by internal code and which still use the deprecated CONSTANTS.  Main issue here: https://github.com/dart-lang/sdk/issues/31813 .

What's the next step here? Is there any further work required for beta 3?

We have 41 packages that use at least one of these constants. Some of them are used by Flutter. We need to get them updated and published...
Not sure where @nex3 is with https://github.com/dart-lang/dart2_constant

Not sure where @nex3 is with https://github.com/dart-lang/dart2_constant

It's released and announced.

It's not clear to me that there is any reason that we need to have these updated and published by Beta-3, since updating the packages is non-breaking to users of the packages (including flutter).  Is there something I'm missing?  Certainly doesn't hurt to get them done ASAP though.
The intersection of @kvemoo's list of packages from the top 200 that need fixing and packages depended on by flutter is enclosed below.  There may be other flutter packages that need fixing that aren't in the top 200 though, so we need to go through and verify at some point.
These packages are used by flutter and need fixing (there may be others):

[ ] analyzer
[ ] async
[ ] barback
[ ] coverage
[ ] dart_style
[ ] image
[ ] intl
[ ] intl_translation
[ ] json_rpc_2
[ ] json_schema
[ ] markdown
[ ] matcher
[ ] process
[ ] quiver
[ ] shelf
[ ] shelf_web_socket
[ ] source_maps
[ ] test
[ ] usage
[ ] vector_math
[ ] yaml

What is the sdk lower bounds where the constants were introduced (or, are all available)?

I see some packages using: sdk: '>=2.0.0-dev.30 <2.0.0'.

I believe the lower-case constants were released in 2.0.0-dev.17.0
I'm already working on the packages that are used by the SDK, but let's see if I can make proper pull requests for them.

Added the list of packages used by the sdk to the TODO list above.

@lrhn any idea when the changes for these packages can land?

@lrhn any updates?

I have pull requests out for all the packages in the above list that need it.
Some are entirely third-party, and I don't know how soon those will be handled. We do not control publishing of those (e.g., mustache4dart, which has a dart2 branch, but no releases of it).
Some packages are internal, and some of those are blocked on review (due to review vacation).
Some have already landed.
It's unclear what our strategy for barback is. It's not planned to be upgraded to Dart 2, so we should remove it from the SDK ASAP since it has no future.
The sooner we make the SDK Dart 2 only, the sooner such issues will be surfaced.

@grouma what's the story on barback?

It's been removed entirely from pub and is no longer supported: https://github.com/dart-lang/sdk/commit/94f45c8876b2c4626462e7327f800fd33c842070

So can we stop pulling barback into the SDK now?

I think if we update pkg:test, yes...I think...
On Tue, May 15, 2018 at 4:07 PM Leaf Petersen<EMAIL_ADDRESS>wrote:

So can we stop pulling barback into the SDK now?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/dart-lang/sdk/issues/32749#issuecomment-389342360,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AABCisXtCRgTsVhXeX-2jjCqlgHDl69rks5ty1-cgaJpZM4TFVOL
.

https://dart-review.googlesource.com/c/sdk/+/55321

Any updates here?

/cc @nex3 @sigmundch @munificent - can you publish watcher/source_maps/markdown with new constants?

I haven't looked into markdown. If @srawlins doesn't reply, I'll take a look.

Oh, Leaf did it.

Any updates on this?  Do we have any further changes needed on packages hosted in the sdk repo?

Here's our packages. googleapis is important for the Flutter folks – I think that's the only one we should worry about...

Once we have a successful roll to flutter this can be closed.

SGTM. I know there are folks in the flutter universe that use the Google
APIs – so it might come up.
On Wed, Jul 25, 2018 at 10:00 AM Leaf Petersen<EMAIL_ADDRESS>wrote:

Once we have a successful roll to flutter this can be closed.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/dart-lang/sdk/issues/32749#issuecomment-407824892,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AABCigfobkIEVgbYSBeYTbrrDl2P4OEBks5uKKQmgaJpZM4TFVOL
.

This is done, we've rolled flutter and internal.

chrome.dart still has instances of JSON.decode:
https://github.com/dart-gde/chrome.dart/issues/278
Not sure if that's high enough priority to re-open this.

There's an open PR for chrome.dart (https://github.com/dart-gde/chrome.dart/pull/272), but the scope of this bug is packages used directly by flutter or internal code which I believe is now complete.


TQDM progress bar broken

System information

Google Colab
tfa-nightly 0.7.0.dev20191219
tqdm 4.41.0

The progress bar just skips to end at the beginning of each epoch and stays there till the epoch completes. The metrics don't update either.
I am using fit_generator.

Hi @devxpy thanks for the report. Could you please provide a minimal reproducible example.
CC @shun-lin code owner.

Hi @devxpy, have you turn off the default progress bar of Keras by passing in the keyword verbose=0 to model.fit?

This is due to using generator with steps_per_epoch=None (default).
Then self.params['steps'] is None and TQDMProgressBar breaks.

got it, I was able to reproduce the issue:
I found the bug and it was when we are training using generator (with fit_generator or fit with generator). It arises from my misunderstanding of how the original progress bar updates itself with generator. At the end of each batch the progress bar is updated by 1 instead of batch_size, and therefore TQDMProgressBar is progressing (incorrectly) batch_size times faster. The change is pretty simple (~2 lines change) deleting the if statement in the beginning of on_epochs_end as both fit and fit_generator will update the progress bar in the same way. I will submit a PR later today. Thanks @RomainBrault

@seanpmorgan when you have time may you review the quick PR? Thanks :)


Add HapGetFrameTextureChunkCount()

Add HapGetFrameTextureChunkCount() to resolve #15

Hi @bangnoise , Many thanks for this patch,
I just merge your version in Smode and it is working perfectly.
All the best

What's that for?

@leavittx frames can be split into chunks to allow multi-threaded decompression for the secondary compressor (Snappy). This function tells you how many chunks a frame is split in to. It isn't required for decoding but some people find it useful to know.


fix [swagger] service tests (allow array of 0 items)

This one is odd. I'm not sure how we never hit this, but the existing code required the array to have >=1 items in it. I think what has happened is:

Every schema we were testing against had at least one warning
The upstream API has stopped returning warnings in the response, or stopped returning them by default

OR

There was a behaviour change in Joi at some point

but it is kinda hard to tell at this point.
I've checked some invalid examples and the upstream API does still seem to be returning errors. We don't need any additional error handling to account for this being []. The handle() code itself was already expecting it as a possible value, but the schema was rejecting it.

Warnings

:warning:
This PR modified service code for swagger but not its test code. That's okay so long as it's refactoring existing code.

Messages

:book:
:sparkles: Thanks for your contribution to Shields, @chris48s!

  Generated by :no_entry_sign: dangerJS against 7da0107738e521b02975e174f10e7ccc031ec2ca


Make queue publish wait timeout configurable

Right now the reporter waits 30" for the first worker to boot and publish the queue. Depending on the codebase this might be too much or too little. Therefore, we should make this configurable via the CLI.
https://github.com/skroutz/rspecq/blob/83bd0c082161861a648312c13c93439684d8ca5f/lib/rspecq/queue.rb#L200

Done https://github.com/skroutz/rspecq/pull/51


First Chart Issue....

It would be nice to redraw and refresh the scale when download or upload is hidden and show more details in graphs. (see screen)

As happens in the project by henrywhitaker3

When the page loads, "today" is selected by default as the time range but all the data is shown instead... The problem occurs for all download/upload, ping, and jitter graphs

Thank you for the excellent work you are doing.
Thanks

Well 💩, guess I need a margarita and to open VS Code again.


Revert injection of HTTPClient

After discussing with members of the Swift Server Workgroup (https://www.swift.org/sswg/ ), I've come to the conclusion that we'll need to revert the Client initializer back to injecting the HTTPClient.
Their recommendations are as follows:

Normally users should have one HTTPClient per app. HTTPClients should be long-lived since they pool the connections for you.
Calling a sync shutdown in a deinit may block the concurrent executor, which can lead to unexpected hangs. Especially if you use your client from an async/await context.

Generally, we would advise creating a single HTTPClient on startup and shutting it down on application close. Automatically shutting it down in deinit leads to patterns where users create HTTPClients over and over which is bad performance-wise since the underlying connection pool can not be shared over multiple executions.

@ronaldmannak for visibility


[HxButton] using Tooltip never fills available width

Adding the Tooltip property to a HxButton prevents the button from filling the available width.
Working example without Tooltip:

    <HxButton Color="ThemeColor.Primary" Icon="BootstrapIcon.EmojiSmile" CssClass="flex-grow-1" />

</style>

Non-working example with Tooltip:

    <HxButton Color="ThemeColor.Primary" Icon="BootstrapIcon.EmojiSmile" CssClass="flex-grow-1" Tooltip="Hello" />

</style>

Is a fix for this possible? Or perhaps even a workaround?

If you use the tooltip built-in to the button, the button gets wrapped in another span that is accessible via TooltipWrapperCssClass.
The reason for this is because we wanted the tooltips to work even for disabled buttons (so you can explain users why is it disabled).
Therefore you need to do the flexbox magic on this span too (btw. if you use .d-grid it is more straightforward as you only need to set the class on the container).
It is documented here https://havit.blazor.eu/components/HxButton#tooltip-wrapper-and-css-classes


typelevel-nix: dev shells for Scala development

I'd like to offer typelevel-nix as a Typelevel project.

Provides a one-liner for individuals to get a fully working dev shell for modern Scala development.  This includes SBT with either a "library JVM" (i.e., 8) or an "application JVM" (i.e., 17), along with sbt and scala-cli.
Composes so projects can create their own flake to specify optional extensions, alternate JVMs, and a direnv integration.
Has a Jekyll integration to run sbt-microsites according to your Gemfile without leaving a trace in your system or local gem path.
Non-nix users can continue to cheerfully ignore it.

If accepted, I will transfer the repo into the Typelevel org.

I approve.

Ship it!

:+1:

Looks like a consensus.  I'll transfer it over.


DO NOT MERGE [BEAM-4495] Website pre-commit job

This PR rolls up https://github.com/apache/beam/pull/5809 and runs website builds and tests inside a Docker container.
Description of #5809:

This adds a new pre-commit job for the website sources in the apache/beam repo. This is a step in the migration effort to move website sources into the main repo and improve automation reliability. See: https://s.apache.org/beam-site-automation
Note that this change doesn't cover automatic staging of the repository. I'll work on that in a follow-up PR.

Running the jobs in a container has these advantages:

Consistency of environment: minimal differences between local dev machine and Jenkins.
Using an existing Ruby container minimizes automation effort and build time.
No need to install Jekyll and other website dependencies locally.

I investigated the following ways of running precommit and postcommit website jobs using Docker.

https://plugins.jenkins.io/docker-custom-build-environment
This plugin has been installed in builds.apache.org's Jenkins service. I couldn't test it locally however, and I wouldn't expect developers working on Jenkins jobs to go through the hassle of Installing and configuring Jenkins on their local machine or VM. I tried using the dockerized-jenkins (in this repo), and while I managed to configure and launch the jobs with the plugin, I still came across the issue of running docker-in-docker. I opted for the solution of running jobs as sibling containers (of the Jenkins container), but the plugin wants to bind mount the repo and /tmp directories to the job container and that doesn't seem to work.
https://github.com/bmuschko/gradle-docker-plugin
I tried this plugin hoping to make managing Docker containers simpler, but it seems to be aimed more at building and publishing images. For instance I was missing the -u flag for docker create.
Calling docker CLI directly.
This is what I settled on. It should work very similarly on dev and Jenkins machines.

Follow this checklist to help us incorporate your contribution quickly and easily:

[x] Format the pull request title like [BEAM-XXX] Fixes bug in ApproximateQuantiles, where you replace BEAM-XXX with the appropriate JIRA issue, if applicable. This will automatically link the pull request to the issue.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

It will help us expedite review of your Pull Request if you tag someone (e.g. @username) to look at it.
Post-Commit Tests Status (on master branch)

Lang
SDK
Apex
Dataflow
Flink
Gearpump
Samza
Spark

Go

---
---
---
---
---
---

Java

Python

---

---
---
---
---

R: @lukecwik

R: @pabloem

Added a few comments. Thanks Udi!

@pabloem I'll try to "run seed job" and verify that the precommit runs on Jenkins. I'll try that tomorrow since builds.apache.org is still down.

run seed job

Run Website PreCommit

Ready to merge once all tests (but Website) pass.
Website test is failing because there are actual missing links, because the copy of website/ here has fallen behind apache/beam-site.

LGTM.


svcli: Support extracting the SignedData blobs from a PE

svcli should learn an -x, --extract flag or similar to dump all of the SignedData blobs it encounters. This would make it easier to use openssl asn1parse and other command-line tools to debug uthenticode.

Could you be a little clearer what it is you want?! What I am wondering is whether you want one of the WIN_CERTIFICATE (incl. the dynamically sized buffer) or something else altogether? Or do you want just the buffer, but including the enclosing "sequence" and minus the padding at the end of WIN_CERTIFICATE?

Just the buffer: the idea would be to dump the raw ASN.1 blob, so that other tools could parse it on their own.

There's one thing here. There can reasonably be more than a single WinCert (after all µthenticode treats it as std::vector<WinCert>). What to do if that's the case?
The assumption of a single such structure makes it easy but incomplete. Yet, it'd be better than nothing. Any suggestions?

Does this look about like what you had in mind?

renamed Makefile to GNUmakefile because it used GNU make-isms anyway and it makes sense to avoid confusion with the many make flavors out there
added SignedData::get_raw_data() to give access to the contained buffer member
added static int is_cout_a_pipe() to avoid writing unintentionally to the terminal
added static int realmain() to do the main job(s!) after parsing options ... this now includes the original printing of info and the newly added extraction of the blob

diff --git a/Makefile b/GNUmakefile
similarity index 100%
rename from Makefile
rename to GNUmakefile
diff --git a/src/include/uthenticode.h b/src/include/uthenticode.h
index 223d662..f742c21 100644
--- a/src/include/uthenticode.h
+++ b/src/include/uthenticode.h
@@ -208,14 +208,19 @@ class SignedData {

   /**
    * @return a new SignedData for any nested signature within this SignedData,
    * or `std::nullopt` if this SignedData has no nested signature.
    */
   std::optional<SignedData> get_nested_signed_data() const;

+  /**
+   * @return a const-reference to the certificate buffer.
+   */
+  std::vector<std::uint8_t> const &get_raw_data() const;
+
  private:
   impl::Authenticode_SpcIndirectDataContent *get_indirect_data() const;

   std::vector<std::uint8_t> cert_buf_;
   PKCS7 *p7_{nullptr};
   impl::Authenticode_SpcIndirectDataContent *indirect_data_{nullptr};
 };
diff --git a/src/svcli/svcli.cpp b/src/svcli/svcli.cpp
index b0be453..91c97aa 100644
--- a/src/svcli/svcli.cpp
+++ b/src/svcli/svcli.cpp
@@ -5,53 +5,93 @@
  *
  * Usage: `svcli <exe>`
  */

 #include <uthenticode.h>

 #include <array>
+#include <fstream>
 #include <iomanip>
 #include <iostream>
+#include <memory>

 #include "vendor/argh.h"

+#if __has_include(<unistd.h>)
+#include <unistd.h>
+#else
+#include <fcntl.h>
+#include <io.h>
+#endif
+
+static bool is_cout_a_pipe() {
+#if __has_include(<unistd.h>)
+  return !isatty(STDOUT_FILENO);
+#else
+  return !_isatty(_fileno(stdout));
+#endif
+}
+
 using checksum_kind = uthenticode::checksum_kind;

-int main(int argc, char const *argv[]) {
-  argh::parser cmdl(argv);
-
-  if (cmdl[{"-v", "--version"}]) {
-    std::cout << "svcli (uthenticode) version " << UTHENTICODE_VERSION << '\n';
-    return 0;
-  } else if (cmdl[{"-h", "--help"}] || argc != 2) {
-    std::cout << "Usage: svcli [options] <file>\n\n"
-              << "Options:\n"
-              << "\t-v, --version\tPrint the version and exit\n"
-              << "\t-h, --help\tPrint this help message and exit\n\n"
-              << "Arguments:\n"
-              << "\t<file>\tThe PE to parse for Authenticode data\n";
-    return 0;
-  }
-
-  auto *pe = peparse::ParsePEFromFile(cmdl[1].c_str());
+static int realmain(argh::parser &cmdl, bool extract) {
+  auto const input_file = cmdl[1];
+  auto *pe = peparse::ParsePEFromFile(input_file.c_str());
   if (pe == nullptr) {
-    std::cerr << "pe-parse failure: " << cmdl[1] << ": " << peparse::GetPEErrString() << '\n';
+    std::cerr << "pe-parse failure: " << input_file << ": " << peparse::GetPEErrString() << '\n';
     return 1;
   }

-  std::cout << "This PE is " << (uthenticode::verify(pe) ? "" : "NOT ") << "verified!\n\n";
+  if (!extract) {
+    std::cout << "This PE is " << (uthenticode::verify(pe) ? "" : "NOT ") << "verified!\n\n";
+  }

   const auto &certs = uthenticode::read_certs(pe);

   if (certs.empty()) {
     std::cerr << "PE has no certificate data!\n";
     return 1;
   }

-  std::cout << cmdl[1] << " has " << certs.size() << " certificate entries\n\n";
+  if (extract) {
+    std::string fname;
+    if (cmdl.size() > 1) {
+      fname = cmdl[2];
+    }
+    if (!is_cout_a_pipe() && fname.empty()) {
+      std::cerr
+          << "Cowardly refusing to write binary data to TTY. Give '-' explicitly to force it.\n";
+      return 1;
+    }
+    const bool want_stdout = fname.empty() || fname == "-";
+    std::ofstream outfile;
+    std::ostream *output;
+    if (!want_stdout) {
+      outfile.open(fname, std::ios::binary | std::ios::out);
+      if (!outfile.is_open()) {
+        std::cerr << "Failed to open '" << fname << "'.\n";
+        return 1;
+      }
+      output = &outfile;
+    } else {
+      output = &std::cout;
+    }
+    for (const auto &cert : certs) {
+      auto signed_data = cert.as_signed_data();
+      if (!signed_data) {
+        continue;
+      }
+      // dump first (valid) WinCert buffer
+      auto const &raw_data = signed_data->get_raw_data();
+      output->write(reinterpret_cast<const char *>(raw_data.data()), raw_data.size());
+      return 0;
+    }
+  }
+
+  std::cout << input_file << " has " << certs.size() << " certificate entries\n\n";

   std::cout << "Calculated checksums:\n";
   std::array<checksum_kind, 3> kinds = {
       checksum_kind::MD5, checksum_kind::SHA1, checksum_kind::SHA256};
   for (const auto &kind : kinds) {
     auto cksum = uthenticode::calculate_checksum(pe, kind);
     if (cksum.has_value()) {
@@ -118,8 +158,33 @@ int main(int argc, char const *argv[]) {
     }

     std::cout << "\tThis SignedData is "
               << (nested_signed_data->verify_signature() ? "valid" : "invalid") << "!\n";
   }

   peparse::DestructParsedPE(pe);
+  return 0;
+}
+
+int main(int argc, char const *argv[]) {
+  argh::parser cmdl(argv);
+  bool extract = false;
+
+  if (cmdl[{"-v", "--version"}]) {
+    std::cout << "svcli (uthenticode) version " << UTHENTICODE_VERSION << '\n';
+    return 0;
+  } else if (cmdl[{"-x", "--extract"}]) {
+    extract = true;
+  } else if (cmdl[{"-h", "--help"}] || argc != 2) {
+    std::cout << "Usage: svcli [options] <file>\n\n"
+              << "Options:\n"
+              << "\t-v, --version\tPrint the version and exit\n"
+              << "\t-x, --extract\tExtract the first certificate blob\n"
+              << "\t-h, --help\tPrint this help message and exit\n\n"
+              << "Arguments:\n"
+              << "\t<input-file>\tThe PE to parse for Authenticode data\n"
+              << "\t[output-file]\tWith -x/--extract the file to dump the buffer into (leave empty "
+                 "or use - for stdout)\n";
+    return 0;
+  }
+  return realmain(cmdl, extract);
 }
diff --git a/src/uthenticode.cpp b/src/uthenticode.cpp
index 4827ad5..9aa0158 100644
--- a/src/uthenticode.cpp
+++ b/src/uthenticode.cpp
@@ -358,14 +358,18 @@ std::optional<SignedData> SignedData::get_nested_signed_data() const {
   auto *nested_signed_data_seq = nested_signed_data->value.sequence;
   std::vector<std::uint8_t> cert_buf(nested_signed_data_seq->data,
                                      nested_signed_data_seq->data + nested_signed_data_seq->length);

   return std::make_optional<SignedData>(cert_buf);
 }

+std::vector<std::uint8_t> const &SignedData::get_raw_data() const {
+  return cert_buf_;
+}
+
 impl::Authenticode_SpcIndirectDataContent *SignedData::get_indirect_data() const {
   auto *contents = p7_->d.sign->contents;
   if (contents == nullptr) {
     return nullptr;
   }

   /* We're expecting a sequence whose type is SPC_INDIRECT_DATA_OID.

PS: I ran it through clang-format.
PPS: I reckon realmain() could be split up further if desired.

Probably also worth to mention. So -x simply changes one aspect: now svcli wants one more positional argument -> the output file name.
It's optional, however. If the output is redirected to a pipe you needn't give anything, if it's not the tool will complain unless you pass - as the output file name to denote stdout.

... or maybe you'd rather give SignedData a method that takes a stream to write the blob into?

@woodruffw could you provide feedback regarding the above? Thanks.

@hugmyndakassi Could you open the diff above as a draft PR? That will be much easier for me to review 🙂
(Sorry for the delay -- I will try to review this next week, time permitting.)

@woodruffw can we close it?

Yep, thanks.


Url encoding in remote image service

Hello again,
This issue is related to #487 There are issues with URL decoding in the remote image service. Here's an example of passing a valid url to remote.axd without encoding it first.
/remote.axd?https://external.xx.fbcdn.net/safe_image.php?d=AQBKGZEQAA7QoMzM&url=http%3A%2F%2Fwww.gotakanal.se%2Fmedia%2F1566%2Fbildspel_1440x780.jpg%3Fanchor%3Dcenter%26mode%3Dcrop%26width%3D1024%26rnd%3D130921477360000000
This results in the following URL being parsed by the service:
https://external.xx.fbcdn.net/safe_image.php?d=AQBKGZEQAA7QoMzM&url=http://www.gotakanal.se/media/1566/bildspel_1440x780.jpg?anchor=center&mode=crop&width=1024&rnd=130921477360000000
Which is incorrect. The encoded querystring of the valid url has now been decoded.
Now you'd think the solution to this would be to first encode the url before passing it to remote.axd
https%3A%2%2Fexternal.xx.fbcdn.net%2Fsafe_image.php%3Fd%3DAQBKGZEQAA7QoMzM%26url%3Dhttp%253A%252F%252Fwww.gotakanal.se%252Fmedia%252F1566%252Fbildspel_1440x780.jpg%253Fanchor%253Dcenter%2526mode%253Dcrop%2526width%253D1024%2526rnd%253D130921477360000000
However, this gives the exact same incorrect result as above.
I'm not sure how to solve this. I think the best solution would be to require that the passed url is encoded. Even though this might be a breaking change, it wouldn't really make a difference since the URL is already decoded (incorrectly) today.

This results in the following URL being parsed by the service:
https://external.xx.fbcdn.net/safe_image.php?d=AQBKGZEQAA7QoMzM&url=http://www.gotakanal.se/media/1566/bildspel_1440x780.jpg?anchor=center&mode=crop&width=1024&rnd=130921477360000000
Which is incorrect. The encoded querystring of the valid url has now been decoded.

I don't follow.. Which parts of the url are incorrectly decoded?
I'm not even sure there is a solution to this. There's no way to determine which parts should and should not be decoded. I use only the built in Microsoft tools to decode the url and I can only do an all-or-nothing approach.
Perhaps you would need to write your own IImageService implementation?

In the first example the url passed to remote.axd is already correct
https://external.xx.fbcdn.net/safe_image.php?d=AQBKGZEQAA7QoMzM&url=http%3A%2F%2Fwww.gotakanal.se%2Fmedia%2F1566%2Fbildspel_1440x780.jpg%3Fanchor%3Dcenter%26mode%3Dcrop%26width%3D1024%26rnd%3D130921477360000000
The url contains a query "url" which needs to be kept encoded for the url to be valid.
We need to treat the whole passed url as a query parameter. So simply decoding it once (instead of the decode loop) should be enough? Doing that would still break the example above, but as I mentioned if we'd first encode the url above and then pass it to remote.axd it would work.
Writing my own service will only work if the url passed to it is untouched, as it is now I think it runs DecodeUrlString before passing it to the service?

Ok coke,
Could you perhaps provide a PR for this? You have the urls to test against and know what to look out for.

I'm looking into it adding a helper for decoding and writing some tests. However when I check the code it seems you decode the whole raw url "http://domain.com/remote.axd?http://someurl/?width=640&height=640" Is there a reason for this instead of just decoding the passed url "http://someurl/" in the example?

Thanks 👍
Yeah, if the passed url is encoded then Response.Url is incorrect only containing a partial url.

Yeah, I see this is about fixing #478 I don't really see a good way of supporting that kind of URL without (as now) breaking other valid urls. Also the fix that's in place now will not work for all urls, like the one in the example above. I'm adding a workaround for it, but it's not very pretty.

@ZNS I'm assuming I can go ahead and close this now?

Yep


Buttons in time range selection not functioning

Body
The next and previous buttons within the time range selection of the data explorer are unresponsive. Clicking on either button does not trigger any action.
StreamPipes Committer
I acknowledge that I am a maintainer/committer of the Apache StreamPipes project.

Hi @tenthe,
Is it these buttons?

Could you assign this issue to me?

Yes, these are the buttons.


SonarQube cannot start due to JVM creation error

brew config output
HOMEBREW_VERSION: 2.7.7
ORIGIN: https://github.com/Homebrew/brew
HEAD: cd191a7f6c4c8e053336d0ea34a9886b12d06470
Last commit: 5 days ago
Core tap ORIGIN: https://github.com/Homebrew/homebrew-core
Core tap HEAD: 9d698bde1b0369557cfa462dcc07d6168088c67a
Core tap last commit: 88 minutes ago
Core tap branch: master
HOMEBREW_PREFIX: /usr/local
HOMEBREW_CASK_OPTS: []
HOMEBREW_EDITOR: vim
HOMEBREW_MAKE_JOBS: 16
Homebrew Ruby: 2.6.3 => /usr/local/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_2/bin/ruby
CPU: 16-core 64-bit kabylake
Clang: 11.0 build 1103
Git: 2.24.3 => /Library/Developer/CommandLineTools/usr/bin/git
Curl: 7.64.1 => /usr/bin/curl
Java: 11.0.10, 1.8.0_282
macOS: 10.15.7-x86_64
CLT: 1<IP_ADDRESS>
Xcode: N/A
brew doctor output
Please note that these warnings are just used to help the Homebrew maintainers
with debugging if you file an issue. If everything you use Homebrew for is
working fine: please don't worry or file an issue; just ignore this. Thanks!
Warning: A newer Command Line Tools release is available.
Update them from Software Update in System Preferences or run:
softwareupdate --all --install --force
If that doesn't show you any updates, run:
sudo rm -rf /Library/Developer/CommandLineTools
sudo xcode-select --install
Alternatively, manually download them from:
https://developer.apple.com/download/more/.

[X] The brew doctor above contains no "Warning" lines.

What were you trying to do (and why)?
I'm trying to run SonarQube using Homebrew
NOTE: My organization currently prevents me from updating from updating to the just-released CLT update. I'm running clang version 1<IP_ADDRESS> instead of the latest 1<IP_ADDRESS>.
What happened (include all command output)?
When I start up SonarQube (either background or foreground), it fails due to a JVM creation error (below). It appears that the SonarQube formal depends on OpenJDK 15.0.1 (https://formulae.brew.sh/formula/sonarqube#default), but that JDK version does not support a memory management argument SonarQube uses (UseConcMarkSweepGC). The officially supported OpenJDK version for SonarQube is 11: https://docs.sonarqube.org/latest/requirements/requirements/#header-3. I suspect this issue would also affect the sonarqube-lts formula since it uses the same OpenJDK dependency.

sonar console
Running SonarQube...
wrapper  | --> Wrapper Started as Console
wrapper  | Launching a JVM...
jvm 1    | Wrapper (Version 3.2.3) http://wrapper.tanukisoftware.org
jvm 1    |   Copyright 1999-2006 Tanuki Software, Inc.  All Rights Reserved.
jvm 1    |
jvm 1    | 2021.02.02 09:21:12 INFO  app[][o.s.a.AppFileSystem] Cleaning or creating temp directory /usr/local/Cellar/sonarqube/<IP_ADDRESS>680/libexec/temp
jvm 1    | 2021.02.02 09:21:12 INFO  app[][o.s.a.es.EsSettings] Elasticsearch listening on [HTTP: <IP_ADDRESS>:9001, TCP: <IP_ADDRESS>:52876]
jvm 1    | 2021.02.02 09:21:12 INFO  app[][o.s.a.ProcessLauncherImpl] Launch process[[key='es', ipcIndex=1, logFilenamePrefix=es]] from [/usr/local/Cellar/sonarqube/<IP_ADDRESS>680/libexec/elasticsearch]: /usr/local/Cellar/sonarqube/<IP_ADDRESS>680/libexec/elasticsearch/bin/elasticsearch
jvm 1    | 2021.02.02 09:21:12 INFO  app[][o.s.a.SchedulerImpl] Waiting for Elasticsearch to be up and running
jvm 1    | Unrecognized VM option 'UseConcMarkSweepGC'
jvm 1    | Error: Could not create the Java Virtual Machine.
jvm 1    | Error: A fatal exception has occurred. Program will exit.
jvm 1    | 2021.02.02 09:21:12 WARN  app[][o.s.a.p.AbstractManagedProcess] Process exited with exit value [es]: 1
jvm 1    | 2021.02.02 09:21:12 INFO  app[][o.s.a.SchedulerImpl] Process[es] is stopped
jvm 1    | 2021.02.02 09:21:12 INFO  app[][o.s.a.SchedulerImpl] SonarQube is stopped
jvm 1    | 2021.02.02 09:21:12 ERROR app[][o.s.a.p.EsManagedProcess] Failed to check status
jvm 1    | java.lang.RuntimeException: thread waiting for the response was interrupted
jvm 1    | 	at org.elasticsearch.client.RestClient.extractAndWrapCause(RestClient.java:818)
jvm 1    | 	at org.elasticsearch.client.RestClient.performRequest(RestClient.java:259)
jvm 1    | 	at org.elasticsearch.client.RestClient.performRequest(RestClient.java:246)
jvm 1    | 	at org.elasticsearch.client.RestHighLevelClient.internalPerformRequest(RestHighLevelClient.java:1613)
jvm 1    | 	at org.elasticsearch.client.RestHighLevelClient.performRequest(RestHighLevelClient.java:1583)
jvm 1    | 	at org.elasticsearch.client.RestHighLevelClient.performRequestAndParseEntity(RestHighLevelClient.java:1553)
jvm 1    | 	at org.elasticsearch.client.ClusterClient.health(ClusterClient.java:130)
jvm 1    | 	at org.sonar.application.es.EsConnectorImpl.getClusterHealthStatus(EsConnectorImpl.java:56)
jvm 1    | 	at org.sonar.application.process.EsManagedProcess.checkStatus(EsManagedProcess.java:89)
jvm 1    | 	at org.sonar.application.process.EsManagedProcess.checkOperational(EsManagedProcess.java:74)
jvm 1    | 	at org.sonar.application.process.EsManagedProcess.isOperational(EsManagedProcess.java:59)
jvm 1    | 	at org.sonar.application.process.ManagedProcessHandler.refreshState(ManagedProcessHandler.java:220)
jvm 1    | 	at org.sonar.application.process.ManagedProcessHandler$EventWatcher.run(ManagedProcessHandler.java:285)
jvm 1    | Caused by: java.lang.InterruptedException: null
jvm 1    | 	at java.base/java.lang.Object.wait(Native Method)
jvm 1    | 	at java.base/java.lang.Object.wait(Object.java:321)
jvm 1    | 	at org.apache.http.concurrent.BasicFuture.get(BasicFuture.java:82)
jvm 1    | 	at org.apache.http.impl.nio.client.FutureWrapper.get(FutureWrapper.java:70)
jvm 1    | 	at org.elasticsearch.client.RestClient.performRequest(RestClient.java:255)
jvm 1    | 	... 11 common frames omitted
wrapper  | <-- Wrapper Stopped

What did you expect to happen?
SonarQube should've finished starting up
Step-by-step reproduction instructions (by running brew commands)
brew update
brew install sonarqube
sonar console

For anyone else affected by this issue, a workaround is to ensure your JAVA_HOME is set to a JDK 11 installation and then run /usr/local/Cellar/sonarqube/<IP_ADDRESS>680/libexec/bin/macosx-universal-64/sonar.sh console


release 2.1.0 breaks chef 11.X compatibility

Cookbook version
2.1.0
Chef-client version
11.X
Scenario:
recipes fail to compile on 11.X due to compat_resource checks in the required ohai version
Steps to Reproduce:
run recipes depending on this cookbook with chef 11.X
Expected Result:
issue a major release, or revert breaking changes

On 2016-09-07 I released the 2.0 version of this cookbook. That version removed support for Chef 11. This latest 2.1 release is utilizing more Chef 12 functionality that will probably hard break support for Chef 11. The support had already been removed in a major released though with a very large warning in the changelog and a post to the discourse mailing list. Chef 12 has been out for just about two years at this point. All of our community cookbooks support 12.1 or later so if you're still on 11 you're either going to have to stop upgrading cookbooks or upgrade the client.


dependency updates

Current dependencies on/for this PR:

main

PR #31   👈

This stack of pull requests is managed by Graphite.


Document required descriptor set annotations

Shader resources and uniform buffers have to be declared using a particular descriptor set order in the shader source to be usable with Vulkan. (Is this also true for Metal?) We should document this in the header so that people don't have to look at the examples to find them.

Can confirm that Metal definitely needs some special documentation for expected resource order. Uniforms, readonly storage buffers, read-write storage buffers, and vertex buffers all share the same "buffer" address space and are expected to be in a particular order. Similarly, readonly/read-write storage textures and regular textures share a mutual "texture" address space.
I'll write up the Metal docs once the Vulkan docs have been added in, since I imagine they'll share the same comment block.


Add Binance Mainnet and Testnet

Closes #74

the factories are live on the new networks, it would be nice to merge this PR to master and publish the new package imo.

I can confirm this for BSC mainnet, but not for the testnet (https://testnet.bscscan.com/address/0x914d7Fec6aaC8cd542e72Bca78B30650d45643d7)

Ok I also submitted it for BSC testnet

thank you @rmeissner for merging this. Since I see you are the maintainer in the npm registry, could you please publish the package (if not already on it) ? Thank you a lot.


Add an intial value

I would be nice to add the availability to set an initial address as parameter.

@mouradkherouf consider using dart define

Hi @mouradkherouf, Thanks for filing the issue. I am quite not sure what you are referring to as the initial address, Please update the issue description clearly explaining the issue and the solution you are proposing.

Thanks for your fast reply,
In fact I have partners accounts with the address of their restaurant.*, so when they want to update their account, I'd like to give them the possibility to change their address but, with your actual library, I didn't find a way to initialize the address field with the one that was saved in the database.

Wow! that's very cool, But I am sorry I still don't understand what library are you referring to, You will need to be more specific with the issue, Also if its a proposal for a third party plugin as it sounds based on the description then you should be filing that in their dedicated repository.

Sorry, the library is : GooglePlaceAutoCompleteTextField

Thanks for the update @mouradkherouf but there isn't any such plugin probably you are referring to google_places_flutter which is a third-party plugin, Issues related to it must be filed in its dedicated repository. Closing as this is not really an issue with flutter.


Create classes_and_objects.md

Description 📜
added documentation on classes and objects
Fixes #901

Type of change 📝

[x] Documentation (Content Creation in the form of codes or tutorials)

Domain of Contribution 📊

[x] C/CPP

Checklist ✅

[x] I follow Contributing Guidelines & Code of conduct of this project.
[x] I have performed a self-review of my own code or work.
[x] I have commented my code, particularly in hard-to-understand areas.
[x] My changes generates no new warnings.
[x] I'm GWOC'21 contributor

@Suvraneel sir please review my documentation.

@Suvraneel I have updated the readme file can you please review and merge it?

@gunjan-g I have changed the location of file can you please review and merge it?

@jaissumi1402 Just 1 Index line in Classes and objects/readme.md

@Suvraneel that index line is already there. I think someone else has contributed this topic before me.

@Suvraneel now is it okay?

@jaissumi1402  Great work ❤  :octocat:

Thankyou so much @Suvraneel @gunjan-g for your guidance :)

Thankyou so much @Suvraneel @gunjan-g for your guidance :)

😄

@jaissumi1402 @gunjan-g @Suvraneel my PR regarding these topics was already merged in the repo.

@jaissumi1402 @gunjan-g @Suvraneel my PR regarding these topics was already merged in the repo.

https://github.com/girlscript/winter-of-contributing/pull/1157 link of the previous PR


fix: ActionSet is no longer hidden when using keyboard nav

issue: #177
Testing

Launch dev-console-app
Try tabbing through each component
It should look like this:

https://user-images.githubusercontent.com/90475219/141528903-7c13262b-6bd3-4e34-8a7f-b3005623a7ea.mov

Updated with Alan's changes:
https://user-images.githubusercontent.com/90475219/142259940-9e80a9b8-6423-4eeb-bbe5-0295c73c1551.mov


Add documentation for patrol build and patrol test

This PR:

resolves #1080
resolves #1101
resolves #1068

@bartekpacia Should the example script also be updated as part of this PR? https://github.com/leancodepl/patrol/blob/master/packages/patrol/example/run_ios_testlab is where I started when I tried to implement it in my project

Yup, it should.
I plan to do it tomorrow, but if you'd like to contribute it, I'd be happy :)

I would love to, but I'm not managing to run the test either locally or on FTL (running into https://github.com/leancodepl/patrol/issues/862#issuecomment-1477085698), so I wouldn't trust myself to open a PR with a script I can't test


{IoT} Adds IoT Operations extension v0.6.0b1

Notes for this release can be found here:
https://github.com/Azure/azure-iot-ops-cli-extension/releases/tag/v0.6.0b1

This checklist is used to make sure that common guidelines for a pull request are followed.
Related command

General Guidelines

[ ] Have you run azdev style <YOUR_EXT> locally? (pip install azdev required)
[ ] Have you run python scripts/ci/test_index.py -q locally? (pip install wheel==0.30.0 required)
[ ] My extension version conforms to the Extension version schema

For new extensions:

[ ] My extension description/summary conforms to the Extension Summary Guidelines.

About Extension Publish
There is a pipeline to automatically build, upload and publish extension wheels.
Once your pull request is merged into main branch, a new pull request will be created to update src/index.json automatically.
You only need to update the version information in file setup.py and historical information in file HISTORY.rst in your PR but do not modify src/index.json.

IoT


[2.x] Metals cannot import build using BSP

Not really a bug in sbt itself.
steps

Open any sbt 2.x project in VSCode
Run Metals: switch build server command and choose sbt

problem
It fails to import the build because of the generated project/metals.sbt: failed resolution of sbt-metals
expectation
It should import the build.

Maybe this is also more of a Metals issue than sbt, but it would be nice if we can get Metals support without adding extra plugins that might change the build semantics. Like is it safe for someone to publish a JAR if Metals plugin is installed?


E0013 - Error Message	No shares found for block

2014-10-16 20:23:03 - CRIT --> Cronjob is currently disabled due to errors, use -f option to force running cron.
2014-10-16 20:23:12 - INFO --> |      Block | ID    |        Username |           Valid |      Invalid |   Percentage |          Payout |        Donation |             Fee |           Bonus |
2014-10-16 20:23:12 - CRIT --> No shares found for this block, aborted: 1789033
What brought this to my attention along with the error message is that NONE of my miners has any unconfirmed credits - everything credits were showing up as confirmed even though lot of blocks had been found and those block were showing up an unconfirmed
not sure how to fix this - any guidance would be appreciated

How to mark the Mark the block as paid as paid?

In the database, UPDATE blocks and change the accounted to a 1. However, this just makes the next block as No found shares after running the cron doesn't fix the issue. Searching for answer myself. :)


Exception: filename collision: when uploading remote-files with the same basename

I would like to see a change in how remote-files are saved locally, preferably using a checksum over the file content or similar.
I am uploading files from a remote where the basenames sometimes are the same and with the currently implementation of _download_data in cvat/apps/engine/task.py the upload fails with a filename collision even though the files themselves are different.
Using a checksum over the file would additionally allow reuse of the uploaded data over different tasks/jobs if desired.

It was already requested by another user to save such images with full url path or something like that (http://example.com/a/b/mypic.png -> /example.com/a/b/mypic.png). Probably we can provide a parameter into REST API to follow the approach.

Alright. Sounds like a way forward!


Fix component discovery issue

#3808 caused an issue where components occasionally weren't being discovered by the LSP editor. This was because of a threading issue in the ProjectSnapshotManager (PSM) constructor. To summarize, the root of the problem was:

In the new LSP editor, the PSM constructor was called using the special PSM thread implemented in #3808.
The constructor fired off the PSM constructor's triggers in a fire-and-forget fashion.
Due to the fire-and-forget, the triggers sometimes weren't initialized until after this line was invoked. That line is intended to send notifications of which documents are open, but since the triggers may not be finished initializing, there may be no one to notify.

As a solution, we now initialize the triggers on a case-by-case basis. If we're already on the PSM thread (as is the case in the new LSP editor), we initialize the triggers inline. If we're not on the PSM thread (as in the case in the old editor), we queue the triggers on the PSM thread. (Thanks to Taylor for the idea!)

@NTaylorMullen I think I previously mentioned this approach wasn't working because of a KeyNotFoundException, but the exception turned out to be totally unrelated and seems to be fixed in newer builds. 😄

The macOS test is repeatedly failing but it seems appears unrelated since it's a version conflict error, and I didn't change any versions in the PR. Will merge in!


Improve handling for Path auto-select or use Path Input component

depends-on: spring-projects/spring-shell#474
What needs to be done
The auto-completion added with #261 is already helpful.
But the handling can be improved to allow faster navigation through the filesystem.
Before spending time on this it makes sense to see if the new Path Input solves this and can be used instead.
scan <tab>
The scan auto-completion

never shows files
takes . as current dir
shows all dirs in current dir
and .. if current dir has parent dir

current
>scan --projectRoot <cursor>
expected
>scan <cursor>
.                  ..                 ./.rewrite-cache   ./src              ./target

scan .<tab>
expected
>scan .<cursor>
.                  ..                 ./.rewrite-cache   ./src              ./target

scan ..<tab>
current
Currently, there's a space added instead of a / which requires user input to replace the space with /  when navigating dirs
scan ..** ** <cursor>
expected
`scan ../<cursor>`
..                 ../dir1         ../dir2                  ../etc

https://user-images.githubusercontent.com/56278322/182410264-1eacbe83-6dd1-4d73-aba3-efbf5a96d5b3.mp4

Took a quick look at PathInput, as it seemed promissing, but it has some hardcoded assumptions about it's usage, with existing directories an immediate error; (reported here).
Unless there's a quick answer & solution through Spring Shell I guess the best bet is to refine the current value provider.

Played around a bit with the value provider as well; it can be slightly improved by leaving out hidden directories
diff --git a/applications/spring-shell/src/main/java/org/springframework/sbm/shell/ScanValueProvider.java b/applications/spring-shell/src/main/java/org/springframework/sbm/shell/ScanValueProvider.java
index 52585d7..645bb0b 100644
--- a/applications/spring-shell/src/main/java/org/springframework/sbm/shell/ScanValueProvider.java
+++ b/applications/spring-shell/src/main/java/org/springframework/sbm/shell/ScanValueProvider.java
@@ -35,8 +35,9 @@ class ScanValueProvider implements ValueProvider {
         String prefix = input.substring(lastSlash + 1, input.length());

         BiPredicate<Path, BasicFileAttributes> matchingPrefix = (p, a) -> p.getFileName() != null
-                && p.toFile().isDirectory()
-                && p.getFileName().toString().startsWith(prefix);
+                && a.isDirectory()
+                && p.getFileName().toString().startsWith(prefix)
+                && !p.getFileName().toString().startsWith("."); // Stops suggesting hidden folders
         try (Stream<Path> stream = Files.find(dir, 1, matchingPrefix, FOLLOW_LINKS)) {
             return stream
                     .map(Path::toString)

I tried adding ../ to the list of suggested options, but that does not work as expected/desired. A space is added after selecting that option, requiring another backspace before parent directory siblings are suggested.
diff --git a/applications/spring-shell/src/main/java/org/springframework/sbm/shell/ScanValueProvider.java b/applications/spring-shell/src/main/java/org/springframework/sbm/shell/ScanValueProvider.java
index 52585d7..c96acb6 100644
--- a/applications/spring-shell/src/main/java/org/springframework/sbm/shell/ScanValueProvider.java
+++ b/applications/spring-shell/src/main/java/org/springframework/sbm/shell/ScanValueProvider.java
@@ -38,8 +38,9 @@ class ScanValueProvider implements ValueProvider {
                 && p.toFile().isDirectory()
                 && p.getFileName().toString().startsWith(prefix);
         try (Stream<Path> stream = Files.find(dir, 1, matchingPrefix, FOLLOW_LINKS)) {
-            return stream
-                    .map(Path::toString)
+            return Stream.concat(
+                    Stream.of("../"), // Inserts unwanted space after selection
+                    stream.map(Path::toString))
                     .map(CompletionProposal::new)
                     .toList();
         } catch (IOException e) {

I tried adding ../ to the list of suggested options, but that does not work as expected/desired. A space is added after selecting that option, requiring another backspace before parent directory siblings are suggested.

This space gets always appended (0:20 in the video)?
So I think that's unrelated to the added two dots but I didn't investigate.
We'd probably want to check if dir has a parent or if it is /  and the .. should not be shown.
But naively I am hoping that if we'd remove the appended space, things should work as "expected"?

Not sure if we'd be able to remove the appended space at present; I'm hoping https://github.com/spring-projects/spring-shell/discussions/474 turns up something we can use immediately. Until then I guess the improvements above already limit the current suggestions.

Let's wait then and see what spring-projects/spring-shell#474 brings.

Think we can pick this up again.

Hi @timtebeek
thanks for keeping this in your mind.
I have an open branch where I replaced the old shell with the new Spring Shell using UI components and WebSocket communication. I am uncertain if I'll be able to bring this to main before December.
But if this is merged back it would be great to integrate it.
Would you like to look into it? Otherwise, we can look at it when my branch is merged?

Let's wait for your branch to merge first then; I'll be only holiday myself starting next week until the end of the year, so anyone welcome to pick this up in the meantime. :)

Let's wait for your branch to merge first then; I'll be on holiday myself starting next week until the end of the year, so anyone welcome to pick this up in the meantime. :)

Enjoy your well-deserved holiday @timtebeek ! 🌴

It seems there's now a new PathSearch component in spring-shell that might fit in well here.
What was the status of the spring-shell component branch you mentioned before @fabapp2 ?


Add reregister script

Needs testing on doing the ISCN registration. Otherwise seems good.

Okay, tested and working on ISCN.


Support for custom spl-token mints

I want to add support to the recently merged feature of custom spl-token into the metaplex cli (https://github.com/metaplex-foundation/metaplex/pull/388). but I am getting the following error:
  Program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA invoke [1]     Program log: Instruction: MintTo     Program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA consumed 2879 of 200000 compute units     Program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA success     Program cndyAnrLdpjq1Ssp1z8xxDsB8dxe7u4HL5Nxi2K5WXZ invoke [1]     Program log: Custom program error: 0x8d     Program cndyAnrLdpjq1Ssp1z8xxDsB8dxe7u4HL5Nxi2K5WXZ consumed 15248 of 200000 compute units     Program cndyAnrLdpjq1Ssp1z8xxDsB8dxe7u4HL5Nxi2K5WXZ failed: custom program error: 0x8d
The environment key REACT_APP_TREASURY_ADDRESS that usually generates the error 0x8d is the one that created the candy machine. Without this changes and with a candy machine without spl-token it works fine.
I used the mint_one_token cli command as a reference resulting in this code:
 export const mintOneToken = async (
  candyMachine: CandyMachine,
  config: anchor.web3.PublicKey, // feels like this should be part of candyMachine?
  payer: anchor.web3.PublicKey,
  treasury: anchor.web3.PublicKey
): Promise<string> => {
  const mint = anchor.web3.Keypair.generate();
  const token = await getTokenWallet(payer, mint.publicKey);
  const { connection, program } = candyMachine;
  const metadata = await getMetadata(mint.publicKey);
  const masterEdition = await getMasterEdition(mint.publicKey);

// CODE ADDED FOR Proof of Concept
// ----------------------------------------------------
  const splTokenAccountKey = new anchor.web3.PublicKey("MINTER_SPL_TOKEN_ACCOUNT_PUBKEY");

  const remainingAccounts = [];
  remainingAccounts.push({ pubkey: splTokenAccountKey, isWritable: true, isSigner: false });
  remainingAccounts.push({ pubkey: payer, isWritable: false, isSigner: true });
// ----------------------------------------------------

  const rent = await connection.getMinimumBalanceForRentExemption(
    MintLayout.span
  );

  return await program.rpc.mintNft({
    accounts: {
      config,
      candyMachine: candyMachine.id,
      payer: payer,
      wallet: treasury,
      mint: mint.publicKey,
      metadata,
      masterEdition,
      mintAuthority: payer,
      updateAuthority: payer,
      tokenMetadataProgram: TOKEN_METADATA_PROGRAM_ID,
      tokenProgram: TOKEN_PROGRAM_ID,
      systemProgram: anchor.web3.SystemProgram.programId,
      rent: anchor.web3.SYSVAR_RENT_PUBKEY,
      clock: anchor.web3.SYSVAR_CLOCK_PUBKEY,
    },
    signers: [mint],
    remainingAccounts,   // CODE ADDED FOR PoC
    instructions: [
      anchor.web3.SystemProgram.createAccount({
        fromPubkey: payer,
        newAccountPubkey: mint.publicKey,
        space: MintLayout.span,
        lamports: rent,
        programId: TOKEN_PROGRAM_ID,
      }),
      Token.createInitMintInstruction(
        TOKEN_PROGRAM_ID,
        mint.publicKey,
        0,
        payer,
        payer
      ),
      createAssociatedTokenAccountInstruction(
        token,
        payer,
        payer,
        mint.publicKey
      ),
      Token.createMintToInstruction(
        TOKEN_PROGRAM_ID,
        mint.publicKey,
        token,
        payer,
        [],
        1
      ),
    ],
  });
} ```

There's a fork with support for this in the community. I'll ping them to see if they can make it a pull request

Great. I you can share the fork link I will appreciate it. To start testing it. Thanks!

Here's the community fork I was referring to. In case it unblocks you:
https://github.com/crispheaney/candy-machine-mint/commit/6553b42c20124886f98f11d996f4bb15ee847f32

Awesome. looking forward to this support. I hope this gets integrated very soon

@levicook Any ETA when this will be merged. Thanks a lot much appreciated


Spin up time is very high. Can we optimize it?

Hey Nikola!
I'm using your image in CircleCI. I noticed the spin up time on subsequent requests is very high (1 minute). Saw their docks, and it seems there may be some options to optimize and cache the image, but I think maybe that's something u have to setup?

I don't have any idea with docker, so if you can help that would be epic! https://circleci.com/docs/docker-layer-caching
Pst: Thanks tons for building this, seriously, I was blocked and you unlocked me. It's fun cause don't know Docker and your solution was so clean.

Sorry for the late reply, completely missed your message.
The images tagged as latest can be quite large, which will affect spin up time. Have you tried the alpine-node-16 tag? If you've tried that, is it still slow?
And thank you for the praise. I originally created the Docker image because I needed to work around some limitations in Bitbucket Pipelines, and thought I might as well share it. :-) Glad someone else finds it useful.

thanks, tried alpine and worked! closing it.

Hi Ferreiro,
Just a heads up. I've restructured the Docker hub repo a bit and removed the alpine tags. This is because I've changed the way the image is generated.
The end result is still the same, and the images are even smaller than the former alpine equivalents.
This may break your build, unless your CI tool has cached the image, but changing the image to nikolajdl/gcloud-sdk-nodejs:lts should fix it right away.


Making YAHPO benchmarks available in benchmarking/common/benchmark_de…

…finitions/. Refactoring to accommodate more benchmarks. Also some bug fixes, and a comparison test (test still WIP)
Issue #, if available: 372 (does not fix it so far)
Description of changes:
This is the first part of making all YAHPO benchmarks available and running experiments on them. It includes:

Refactoring of benchmarking/commons, especially benchmarking/commons/benchmark_definitions, in order to accommodate the YAHPO benchmarks
benchmarking/nursery/benchmark_dehb is also running YAHPO lcbench
Cleaned up requirements.txt for the setups in nursery
Replace Dict -> dict in blackbox_repository code
syne_tune/blackbox_repository/conversion_scripts/scripts/yahpo.md provides overview of YAHPO scenarios
syne_tune/blackbox_repository/conversion_scripts/scripts/yahpo_import.py:
Some important changes
tst/blackbox_repository/test_comparison.py: Comparison test covering fcnet and lcbench. This is still WIP, in the sense
that differences are too big (esp for fcnet). In any case, this test will be skipped in the CI, because it needs the blackbox files

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

One comment about fcnet. We can of course take "yahpo-fcnet" out, because we are quite happy with our non-surrogate benchmark.
The reason I looked at it here, because I wanted to do this comparison.


Shipping with CSS templates out of the box

@williaster
Also the modal becomes opacity 50% while editing css and moving the mouse out of the modal.

@mistercrunch this seems okay overall to me, but how are you thinking about this in relation to the overall bootstrap theme? Seems like we can ship that for devs that want to customize bootstrap vars, and use this as an easier interface for updating styles int he browser itself?
also what library is used to check the .css syntax in the modal? it was making suggestions for me like "this rule is too specific" that were actually wrong!

Oh, so the wrong suggestion would be coming from ace I guess, we can probably shut this feature down or help fixing ace.
The theming is to allow people to customize the look and feel of individual dashboards by applying templates and modifying them. That css lives on top of the bootstrap theme and only affects individual dashboards. Live updating is a cool feature I think that makes iterating on designs quick.

:+1:


[Feature Request]: Stack Overflow style question an answer forum.

Describe the feature you'd like

Ability to ask a general question and have responses to the question perhaps linking to a specific bookstack resource.
Ability to rate the responses and comment on. Ostensibly a slimed down version of Stack Overflow for internal business use.
Ability to integrate this with Microsoft Teams. Initial question posted to Teams group chat. Option to open a new question in bookstack using message content,  and push the response to this message as an answer to that question.

Describe the benefits this feature would bring to BookStack users
Ability to capture very small pieces of information that are often posed in a question format that do not warrant a full writeup.
Additional context
No response

Thanks for the request @peep24. This is something that was actually suggested when I originally introduced BookStack to CT 6 years ago!
While I can see how this could be useful, I'm going to have to close this off as out of scope.
A Q&A system fundamentally targets a different use-case with different user flows and processes to that of BookStack. Not only would this weaken the definition of what BookStack is, it will greatly widen the surface area of support, requests and maintenance within a project where resources are already quite limited. To keep the project's existence viable we have to set the bounds of the project scope at some level, which this exceeds.
You could kind of emulate some of this within BookStack at some level already. Maybe have a book or chapter for Q&A's, Then a page get's opened for a question, with answers posted as comments. You could even use the recently added webhooks (In combination with something like "Power Automate") to post new questions to teams. Responses from teams will be tricky to handle, although likely technically possible via our REST API.

Thanks @ssddanbrown. Your completely right its out of scope for Bookstack. I just feel like there is a need for a question answer forum that can be set up for a given organisation, and capture this kind of collaborative problem solving.  As per usual my ideas are too nebulous and lack clarity of direction. I could build this out, but to be honest I'm working on other things right now that excite me more.


Add information about source that caused an event

We have today causation that we capture. Causation is for the purpose of auditing.
We need a second record of what caused an event for other purpose and it should also be part of the index, as we will use it actively for AggregateRoots to check if there are events for an Aggregate during rehydration.
We want to capture it as an object with type and details - this would then give us
{
    "type": "AggregateRoot",
    "details": "MyAwesomeAggregateRoot"
}

We've changed strategy and #1445 replaces this with the formalization of streams


run DockerSuite.TestRunWithBlkioInvalidWeight failed in localhost

I found  "WARN[0000] Your kernel does not support cgroup blkio weight " in docker daemon debug info
Maybe this testcase should add a requirement that an environment supports cgroup blkio weight?

Hi!
Please read this important information about creating issues.
If you are reporting a new issue, make sure that we do not have any duplicates already open. You can ensure this by searching the issue list for this repository. If there is a duplicate, please close your issue and add a comment to the existing issue instead.
If you suspect your issue is a bug, please edit your issue description to include the BUG REPORT INFORMATION shown below. If you fail to provide this information within 7 days, we cannot debug your issue and will close it. We will, however, reopen it if you later provide the information.
This is an automated, informational response.
Thank you.
For more information about reporting issues, see https://github.com/docker/docker/blob/master/CONTRIBUTING.md#reporting-other-issues

BUG REPORT INFORMATION
Use the commands below to provide key information from your environment:
docker version:
docker info:
uname -a:
Provide additional environment details (AWS, VirtualBox, physical, etc.):
List the steps to reproduce the issue:
1.
2.
3.
Describe the results you received:
Describe the results you expected:
Provide additional info you think is important:
----------END REPORT ---------
#ENEEDMOREINFO

Add a requirement for this make sense just as we do on test cpu-quota https://github.com/docker/docker/blob/master/integration-cli/docker_cli_run_unix_test.go#L253
Working on a PR.

Closing as it looks like this was added here: https://github.com/docker/docker/commit/ddf220a1d3af71519e742b2a5e6e31701eeb51f4


[NOD-1231] Fix references to kaspad

Rebuild after update in master

Rebuild after update in master

Rebuild after update in master

Rebuild after update in master


Fix memory leaks in vector and map converters #795

This PR fixes the memory leak produced in the Python interface reported in #795.
I have test myself that there is no more memory leaks in vector and map converters.
To validate it, I used the following code:
import numpy as np
import crocoddyl
import pinocchio
import example_robot_data
import time

def test1():
  model = crocoddyl.ActionModelUnicycle()
  model.r = [10,1]
  u0 = np.array([0., 0.])
  x0 = np.array([-1., -1., 1.])
  data = model.createData()
#  problem = crocoddyl.ShootingProblem(x0, [model], model, [data], data)
  duration = 0.
  while duration < 10.:
    t0 = time.time()
    problem = crocoddyl.ShootingProblem(x0, [model] * 10, model, [data] * 10, data)
    ddp = crocoddyl.SolverDDP(problem)
    ddp.solve([x0] * 11, [u0] * 10, 1)
    ddp.xs
    tf = time.time()
    duration += tf - t0

def test3():
  talos_arm = example_robot_data.loadTalosArm()
  robot_model = talos_arm.model

  state = crocoddyl.StateMultibody(robot_model)
  runningCostModel = crocoddyl.CostModelSum(state)
  terminalCostModel = crocoddyl.CostModelSum(state)
  Mref = crocoddyl.FramePlacement(robot_model.getFrameId("gripper_left_joint"),
                                  pinocchio.SE3(np.eye(3), np.array([.0, .0, .4])))
  goalTrackingCost = crocoddyl.CostModelFramePlacement(state, Mref)
  xRegCost = crocoddyl.CostModelState(state)
  uRegCost = crocoddyl.CostModelControl(state)

  runningCostModel.addCost("gripperPose", goalTrackingCost, 1)
  runningCostModel.addCost("xReg", xRegCost, 1e-4)
  runningCostModel.addCost("uReg", uRegCost, 1e-4)
  terminalCostModel.addCost("gripperPose", goalTrackingCost, 1)

  actuationModel = crocoddyl.ActuationModelFull(state)
  dt = 1e-3
  runningModel = crocoddyl.IntegratedActionModelEuler(
    crocoddyl.DifferentialActionModelFreeFwdDynamics(state, actuationModel, runningCostModel), dt)
  runningModel.differential.armature = np.array([0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.])
  terminalModel = crocoddyl.IntegratedActionModelEuler(
    crocoddyl.DifferentialActionModelFreeFwdDynamics(state, actuationModel, terminalCostModel), 0.)
  terminalModel.differential.armature = np.array([0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.])

  T = 250
  q0 = np.array([0.173046, 1., -0.52366, 0., 0., 0.1, -0.005])
  x0 = np.concatenate([q0, pinocchio.utils.zero(robot_model.nv)])

  duration = 0.
  while duration < 10.:
    t0 = time.time()
    problem = crocoddyl.ShootingProblem(x0, [runningModel] * T, terminalModel)
    problem.runningModels[0].differential.costs.costs
    tf = time.time()
    duration += tf - t0

if __name__ == '__main__':
  test1() # test2

and I run it using mprof as follows:
mprof run --include-children python test_memory_leak.py
mprof plot --output memory-profile.png

@gfadini I would be happy if you can check this yourself as well.

Hi @cmastalli, thanks I'll try the tests as soon as possible in the afternoon

Is this also adding some modification to the API? I have this error
  File "/home/gfadini/Desktop/pendulum_benchmark/utils.py", line 327, in plotOCSolution
    nx = xs[0].shape[0]
TypeError: No Python class registered for C++ class Eigen::Matrix<double, -1, 1, 0, -1, 1>

Why you did not use the code of Pinocchio directly? This one has a lot of redundancies, which are not useful at all.

Fixed!

Is this also adding some modification to the API? I have this error
  File "/home/gfadini/Desktop/pendulum_benchmark/utils.py", line 327, in plotOCSolution
    nx = xs[0].shape[0]
TypeError: No Python class registered for C++ class Eigen::Matrix<double, -1, 1, 0, -1, 1>

Sorry, there is no expected any changes in the API. I have fixed it, please pull the latest changes @gfadini.

Ok, I'm on it

I confirm that the memory issue is solved for all the tests that I had set up. Also in the current routine of the optimization I have the memory usage has reached and is not exceeding a fixed treshold

The 19 - pybinds-solvers seems to be failing for me

The 19 - pybinds-solvers seems to be failing for me

All the unittests should pass now

There is still a final problem that I need to solve. Most probably I will finish tomorrow.


Outdated documentation should be removed

This feature has not existed in quite a long while and should be removed, you cannot use "Dynamics CRM Online 2016 Update 1" as customers just use "D365 Online" or "Dataverse" and don't pick the specific version.
Reference: https://github.com/MicrosoftDocs/dynamics-365-customer-engagement/issues/254
Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: b4135115-9eef-e5a3-cdde-41075c6f75ba
Version Independent ID: 811682b4-362b-f18b-9286-ec2ad4055786
Content: Automatic tuning of data query performance with index management - Power Platform
Content Source: power-platform/admin/analyze-improve-data-query-performance.md
Service: power-platform
Sub-service: admin
GitHub Login: @Mattp123
Microsoft Alias: matp

@seanmcne
Taking to internal thread.


[ANALYSIS] Validate setup with OpenTofu

OpenTofu is positioned as alternative and at least until now as a drop-in replacement for Hashicorps Terraform.
Once a beta version of the setup is published (see releases), we should validate our provider against this setup i.e.

Can we provide the provider via the OpenTofu registry setup
Can we use the provider via OpenTofu CLI

Depending on the outcome of the analysis follow-up steps can be discussed

As long as OpenTofu is not available as beta version, this issue is blocked

Hi @lechnerc77 👋
I'm one of the core developers working on the opentofu registry.
In theory everything should just work out of the box, if you hit any issues please feel free to reach out to myself or raise an issue in https://github.com/opentofu/registry
Right now the OpenTofu registry does not have access to everybody's GPG Keys, so we are asking providers to upload their keys to the registry. Instructions on how to do that are here: https://github.com/opentofu/registry#adding-a-public-key.
This is a purely optional step, as we will still allow people to consume the provider through OpenTofu, but just without key validation.

Hi @Yantrio ,
nice to virtually meet you. Thanks for the heads up and the additional information on setting up the registry.
Do you know if there is a official timeline wrt to bringing OpenTofu to beta?

I don't have an official date right now, but work is going quickly.
Our current releases are marked as alpha, but they are ready to be tested. I suspect we may not have a beta phase before a stable release.
For now you can follow our work towards the first stable release here: https://github.com/opentofu/opentofu/milestone/3
We're moving fast and I suspect this should be pretty soon!

Ah okay, I would have assumed a beta phase, but that changes things a bit. Then I will put that into the backlog again. We will probably put that into one of the next two sprints. I will post an update on our result in this issue.

Terraform registry RFC is accepted and on its way to be implemented: https://github.com/opentofu/opentofu/issues/741

GA release is available: https://opentofu.org/blog/opentofu-is-going-ga.
Reevaluation possible.

Revalidated the setup with OpenTofu via a dev container feature and a local setup. No issues, so for GA version 1.6.0 of OpenTofu the provider seems to be compliant.
The process to register the provider is described in the registry repository (https://github.com/opentofu/registry).
Closing this issue and waiting for feedback from our customers and partners if OpenTofu should be officially supported which comes with several organizational follow-up activities from our side.

Hi @lechnerc77 ! Glad to hear everything went okay.
As for registering the provider, this provider was already included as part of our initial opentofu hydration process. And the provider is available to be used today by opentofu users already.
You can find information about your releases here: https://github.com/opentofu/registry/blob/main/providers/s/SAP/btp.json and we will automatically keep this up to date.
However, in the future if you do have any providers to register, you can follow the instructions in the README here: https://github.com/opentofu/registry/blob/main/README.md
There is also instructions there about how you can upload your GPG key so that your providers can be verified 👍
Please feel free to reach out if you do hit any issues.

Hi @Yantrio thanks for the heads-up.
The last time I checked at the very early days of the registry it wasn't there or I looked at the wrong spot.
The verification from our side is then tied to the menrioned internal clarification. Nevertheless I have some questions related to that official support of the provider from our side. Can I reach out to you via the OpenTofu Slack?

Sure, I'll reach out to you with a DM.
The registry truely has come a long way and now is extremely stable and filled with all sorts of great providers and modules :D


(doc) update to<EMAIL_ADDRESS>

<EMAIL_ADDRESS>use jsdelivr.net instead of unpkg.com

Thanks for the PR!
We have been using the old version of docute for so long because I overrode lots of styles in the old version (lazy, in fact 😂).
I'll check this PR later, thanks.

@egoist omg there're all centered!
I prefer the old layout (at lease on large screens):

Noticed the main scrollbar? In the new layout, users could only scroll at the central contents, but they can scroll at everywhere in the old layout.

they can scroll at everywhere in the old layout

Makes sense, I thought centered content is easier to read though 😅 If you don't want this, I can close this PR.

Or tweaking some css...
Oh I think it's hard to restore the old layout by just tweaking css, some UI-related components must be modified too 😔 (e.g. the scrolling listener).

Closed as I think we may not upgrade to docute@3 in short term 😅


feat(healthchecks): add deis healthchecks e2e tests

also needs a commit squash before merge since there's a merge commit in here

@bacongobbler can you check now again?

both comments purely around TODO comments, otherwise LGTM.

Commits still ned squashing here.


Message is not displayed.

@Neutrino79

Message is not displayed after clicking on "Send Message" button

Fixed the Send message success/fail status is not showing
@prathameshkhade


Heuristics for VRPTW

This is a really wonderful collection of heuristics for CVRPs -- great job!
I'm wondering whether there are any algorithms here that are applicable for VRPs with time windows.  Alternatively, do you have any good pointers to descriptions / implementations of heuristics for VRPTWs?
Thanks!
~ Ben

Hi Ben,
be sure to check the alternative open source libraries surveyed in my PhD dissertation: https://jyx.jyu.fi/bitstream/handle/123456789/65790/978-951-39-7826-6_vaitos01112019.pdf#page=154
I do not remember exactly which of them supported TWs, but I think several of them have that feature covered.
Out of the algorithms in VeRyPy, the local search operators could be quite easily be adapted to check also TW constraint violations (now they check for capacity C and the maximum route length L). Few local search (LS) operators (i.e. two-opt and one point move), together with modified savings and sweep with TW support (see Solomon 1987) would allow generating initial solutions and improving those with LS. This would already generate fairly good solutions for some problems. Also, building metaheuristics on top of that would be fairly straightforward. Also, modified sweep and LS ops for TWs would make it possible to use some quite powerful matheuristics in VeRyPy like the Petal set covering algorithm ptl from Foster & Ryan (1976).
BR,
Jussi
Foster, B. A. & Ryan, D. M. 1976. An integer programming approach to the vehicle scheduling problem. Journal of the Operational Research Society 27 (2), 367–384.
Solomon, M.M., 1987. Algorithms for the vehicle routing and scheduling problems with time window constraints. Operations research, 35(2), pp.254-265.

For example, 2-opt would require modifications to (at least) these locations:
https://github.com/yorak/VeRyPy/blob/eaac6e210d861441071565575750a2f0e25dfb72/local_search/intra_route_operators.py#L81
https://github.com/yorak/VeRyPy/blob/eaac6e210d861441071565575750a2f0e25dfb72/local_search/inter_route_operators.py#L129
https://github.com/yorak/VeRyPy/blob/eaac6e210d861441071565575750a2f0e25dfb72/local_search/inter_route_operators.py#L164
Here, one should be sure to take reversing the sequence into account (it might violate some TW constraints). Also, one of the assumptions VeRyPy makes is the symmetric distances. It might work for asymmetric distances, but it has not been extensively tested.

Hi! I agree - it really is a wonderful collection of heuristics!
I wondered whether it would be possible to ad a Time Window constraint as L instead the maximum route length in the parallel savings algorithm?
Bests
P

Yes, for a single algortihm such as Savings that would be rather straightforward. Please see the work of Solomon (1987), where he proposes a savings calculation for VRPTW -> https://pubsonline.informs.org/doi/abs/10.1287/opre.35.2.254

Hi @s184311 and @bkj ,
I decided to take a quick jab towards VRPTW support today. I implemented the constraint check for the parallel savings (in classic_heuristics/parallel_savings.py, but left the savings calculation for you to implement :)
To see what I have been up to, please consider checking out the branch vrptw_savings where you can find the file classic_heuristics/vrptw_savings.py. There is also a simple example script with two customers smoke testing the savings VRPTW functionality in examples/vrptw_savings_test.py. Just remember that you have to add VeRyPy folder to PYTHONPATH, e.g., with the command export PYTHONPATH=$PYTHONPATH:$(pwd) given that you use *Nix/Bash and are in the VeRyPy root folder.
Now, in the callback of vrptw_savings.py:placeholder_vrptw_savings_f(D, ctrs) you can write the calculation of the time window overlapping savings value part s_t! One could probably come up with a savings formula of ones own, but I'd propose referring to the literature. E.g., see Solomon (1987) and Van Landeghem (1988) that both seem relevant. From my quick read it seems Solomon does not give the formula quite directly (no surprises there, welcome to the world of VRP classical heuristic archaeology!), but I hope Van Landeghem (or some other source) is more explicit in describing how to calculate the overlapping of time windows for merge candidates i and j considering the time D[i,j] it takes to travel from i and j. Best of luck and do not hesitate to ask for clarifications or surprise me with a pull request! :D
Solomon, M. M. (1987). Algorithms for the vehicle routing and scheduling problems with time window constraints. Operations research, 35(2).
Van Landeghem, H. R. G. (1988). A bi-criteria heuristic for the vehicle routing problem with time windows. European Journal of Operational  Research, 36(2), 217-226.

Oh the hubris. After a good night sleep I came to conclusion that I underestimated the effort and that the initial attempt was plainly and completely wrong. I've now pushed additional code to the vrptw_savings branch. The current implementation still fails to respect the time window constraints but should be much closer to working properly. I've also included some external constraint checking (in file cvrp_ops.py) that actually tries to verify that the solution is valid.
However, now I really have to abandon this for a while and jump on more acute work. Good luck.

Made few more fixes (see d7cf87b) and now the TW supported savings in vrptw_savings branch produces feasible solutions \o/.


feat: Send Chat Announcements

https://dev.twitch.tv/docs/api/reference#send-chat-announcement

add api parameters, response, func to chat.go
add unit tests

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

9 of 9 (100.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-7.4%) to 92.557%

Totals

Change from base Build<PHONE_NUMBER>:
-7.4%

Covered Lines:
1256

Relevant Lines:
1357

💛  - Coveralls


feat(filters): added distortion and rotation

Pull Request Test Coverage Report for Build 553001105

78 of 79 (98.73%)  changed or added relevant lines in 2 files are covered.
1 unchanged line in 1 file lost coverage.
Overall coverage increased (+0.9%) to 75.456%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

src/core/Player.ts
2
3
66.67%

Files with Coverage Reduction
New Missed Lines
%

src/core/Player.ts
1
38.03%

Totals

Change from base Build 506336036:
0.9%

Covered Lines:
1483

Relevant Lines:
1967

💛  - Coveralls


Possible bug in jax.linearize()

I'm using jax.linearize() to compute pushforwards, and I'm getting the following error:
ValueError: linearized function called on tangent values inconsistent with the original primal values: got ConcreteArray([[-0.65073081 -0.0755682 ]
        [ 0.07366651 -1.6313327 ]]) for primal aval ConcreteArray([[ 1.2067288  -0.5176796 ]
        [ 0.4400338   0.39490446]])

As far as I can tell, this exception is only documented in the code that raises it (in the form of the exception itself, not any comments or any other documentation), and since the tangent and primal avals are the same shape, I'm not sure what's going wrong here. Is this a bug in jax.linearize(), or have I just made a mistake in my code somewhere? If this isn't a bug in jax.linearize(), then why is this exception being raised? (The code indicates that it comes from a TypeError when doing jax.core.lattice_join(primal_aval.at_least_vspace(),tangent_aval))

It's possible that the array types differ in ways not shown in the exception string formatting. In that case, it might be a bug in the system, or it might be a reason to improve the error message. Do you have a minimal code example that reproduces the issue?

It's possible that the array types differ in ways not shown in the exception string formatting. In that case, it might be a bug in the system, or it might be a reason to improve the error message. Do you have a minimal code example that reproduces the issue?

Unfortunately no, it's not possible to provide a minimal example*, but I can answer any questions you may have, like "what type are the inputs" or the such. The functions I'm differentiating can accept a wrapper around DeviceArrays (using register_pytree_node_class()) as well as a regular DeviceArray, but in this case, I verified that all of the inputs are jax.interpreters.xla.DeviceArrays. I suspect that there may be an issue with jax.linearize() as opposed to a bad error message because the shape appears to match the expected shape (and, at least with other JAX functions, an incorrect shape usually produces a more direct error message), but that definitely doesn't rule anything out.
*I'm integrating JAX with Pyadjoint, a library for computing derivatives of finite element code, and this error only happens in one of the more complicated tests I have, so there would probably just be too much code to share to give you a good idea what's going on in a reasonable amount of time. If you'd like access to the code to see what's going on, just ping me at zane(dot)jakobs(at)colorado(dot)edu.

Unfortunately no, it's not possible to provide a minimal example*, but I can answer any questions you may have, like "what type are the inputs" or the such. The functions I'm differentiating can accept a wrapper around DeviceArrays (using register_pytree_node_class()) as well as a regular DeviceArray, but in this case, I verified that all of the inputs are jax.interpreters.xla.DeviceArrays. I suspect that there may be an issue with jax.linearize() as opposed to a bad error message because the shape appears to match the expected shape (and, at least with other JAX functions, an incorrect shape usually produces a more direct error message), but that definitely doesn't rule anything out.
*I'm integrating JAX with Pyadjoint, a library for computing derivatives of finite element code, and this error only happens in one of the more complicated tests I have, so there would probably just be too much code to share to give you a good idea what's going on in a reasonable amount of time. If you'd like access to the code to see what's going on, just ping me at zane(dot)jakobs(at)colorado(dot)edu.

One thing that may be useful: the I'm linearizing about these inputs:
 [DeviceArray([[ 1.2067288 , -0.5176796 ],
             [ 0.4400338 ,  0.39490446]], dtype=float32), DeviceArray([], dtype=float64), DeviceArray([[ 0.40187168, -1.0056375 ],
             [-0.6255251 , -0.50311553]], dtype=float32), DeviceArray([], dtype=float64), DeviceArray([[ 0.22214633, -0.44358113],
             [ 0.6906075 ,  0.2209108 ]], dtype=float32), DeviceArray([], dtype=float64)]

and I get the error when I evaluate the linearized function at
             [-0.63031262,  2.26898622]], dtype=float64), DeviceArray([], dtype=float64), DeviceArray([[-0.20120885, -1.64621181],
             [ 1.02999372,  0.57414381]], dtype=float64), DeviceArray([], dtype=float64), DeviceArray([[ 0.33935116,  0.41166852],
             [ 0.1125535 , -0.19607089]], dtype=float64), DeviceArray([], dtype=float64)]
```  (and each of these has type `jax.interpreters.xla.DeviceArray`)

One thing that may be useful: the I'm linearizing about these inputs:
 [DeviceArray([[ 1.2067288 , -0.5176796 ],
             [ 0.4400338 ,  0.39490446]], dtype=float32), DeviceArray([], dtype=float64), DeviceArray([[ 0.40187168, -1.0056375 ],
             [-0.6255251 , -0.50311553]], dtype=float32), DeviceArray([], dtype=float64), DeviceArray([[ 0.22214633, -0.44358113],
             [ 0.6906075 ,  0.2209108 ]], dtype=float32), DeviceArray([], dtype=float64)]

and I get the error when I evaluate the linearized function at
             [-0.63031262,  2.26898622]], dtype=float64), DeviceArray([], dtype=float64), DeviceArray([[-0.20120885, -1.64621181],
             [ 1.02999372,  0.57414381]], dtype=float64), DeviceArray([], dtype=float64), DeviceArray([[ 0.33935116,  0.41166852],
             [ 0.1125535 , -0.19607089]], dtype=float64), DeviceArray([], dtype=float64)]
```  (and each of these has type `jax.interpreters.xla.DeviceArray`)

Oh, wait, I see the issue, I have a wrong dtype somehow! My bad! This isn't a bug, it's an error message that could be improved.

Oh, wait, I see the issue, I have a wrong dtype somehow! My bad! This isn't a bug, it's an error message that could be improved.

I'm guessing that #7619 fixed this, but it's hard to say for sure without a repro.


Refactor Stage to be an enum (Closes #1877)

Replaces #338

rebase please

FYI I think any member of the repo can click the rebase button. Click the dropdown next to 'Update Branch' and 'Update with Rebase'

I wasn't sure if that was a passive aggressive move or not.  Culturally.  I'm willing to try it so I can give feedback as long as it's not perceived as guache.

I wasn't sure if that was a passive aggressive move or not. Culturally. I'm willing to try it so I can give feedback as long as it's not perceived as gauche.

You assume we know what "gauche" means. 😄

This should integrate with no changes downstream.


what tool  use to export these headers?

https://github.com/limneos/classdump-dyld however it is insanely buggy & crashy on newer version. ive dumped up to 13.0 tvOS on my github.com/lechium repo iirc.


Add logging for partner publish pipeline

@scbedd that is fair we generally should avoid using alias' lol sometimes I just want shorter code in these inline scripts.


CAMEL-19389: camel-cxf - Upgrade to 4.0.2

NB: The failing test is not related to those changes since it already fails on main. I will check it on Monday to have it fixed in main first.


The getting started example only works in with -debug flag on js target

I found out that the very first example in the documentation only display a black canvas in release (FD not -debug).
https://github.com/ncannasse/heaps/wiki/Getting-Started
I tested targeting flash, -debug and release work as expected

Seems to work on my computer. Do you get any console error ?

Yes I forget it (On firefox)
testheaps.js (line 12130, col 16)
TypeError: this.resolver.resolveEnum is not a function
var edecl1 = this.resolver.resolveEnum(name2);

I've got the same result on Chrome.
Are there any compile flag that could add to have a less obfuscated code ?
The line in this context :
		case 106:
			var name2 = this.unserialize();
			var edecl1 = this.resolver.resolveEnum(name2);
			if(edecl1 == null) throw new js__$Boot_HaxeError("Enum not found " + name2);
			this.pos++;
			var index = this.readDigits();
			var tag = Type.getEnumConstructs(edecl1)[index];
			if(tag == null) throw new js__$Boot_HaxeError("Unknown enum index " + name2 + "@" + index);
			var e1 = this.unserializeEnum(edecl1,tag);
			this.cache.push(e1);
			return e1;

It should use Type.resolveEnum, what compilation flags are you using ? which Haxe version ?

Haxe 3.2 (Official), the FD generated hxml is
-lib heaps
-cp src
-js bin/testheaps.js
-main Main

Does it works better with -dce no ?

Yes it does :)

OK, so unless it is an unexpected behavior, I'll edit the wiki so that first example doesn't fail :)


Swipe between base and failed snapshot

Is the way to get in report something like in link below (Show diff view and Show overlay view - where I can swipe on image)?
https://github.com/allure-framework/allure2/blob/main/plugins/screen-diff-plugin/README.md

That is beyond the scope of this plugin. It just generates the diff image. The allure framework in that example also creates a web page and the JS needed to create the onion skin effect

Do you know how achive this effect? I'm interested too


RFC for 3.x

Since Cornerstone3D 2.0 introduced significant changes with extensive migration guides, we chose to limit the scope of required modifications. Here's the list of changes - please share your preferences for version 3.0.

Move all viewports change set event to VIEWPORT_NEW_IMAGE_SET


[DO NOT MERGE - WIP][Doc] Add doc for using the Avro JSON schema definition in Python client

Motivation
Currently, there is a lack of how to use the Avro JSON schema definition in the Python client.
Modifications
Add doc for using custom Avro JSON schema definition in Python client.

Talked with @gaoran10 just now, we are updating the doc, please do not merge this PR now.

Hi @gaoran10 we've added docs in #12914, so I close this PR.


Support children with non-alphabetical keys

Addresses #212

@AndreasMaros Could you please check if the changes in this branch fix the issue for you?

That does indeed do the trick! Thank you, that was quick.


Show categories for class side as well

Right now, we only show categories for instance side. We should show the class side, too.

This one is weird because the logic is there to do this, and it works when clicking on the class, but doesn't show up in the initial coder opened from spotter.

I think we should split the categories by instance-side / class-side, like we do for methods.


Change stopCode to SIGINT in templates

I was wondering if rust could run on a ARM64?
And if the template works on it?

Definitely not the place to ask, @Maddox22222. That would be something that the game developers can answer.


get_exif_for_file does not close file

get_exif_for_file in utils.pil_exif does not close the Image file, leading to "Too many open files" errors when reading a lot of files.
Possible fix:
def get_exif_for_file(file_obj):
    with Image.open(storage.open(file_obj.name), 'r') as im:
        return get_exif(im)

When I implemented something similar to this, I had errors.
I was trying:
def get_exif_for_file(file_obj):
    with file_obj as f:
        im = Image.open(f, 'r')
        return get_exif(im)

But then I found that when we got to filer.models.abstract.BaseImage.save() it does:
self.file.seek(0)

And that raised ValueError: I/O operation on closed file.


[WIP] Update remote storage APIs from 1.8 branch

This PR brings over to master a bunch of work that happened to the remote storage APIs during 1.7/1.8:

Port codec.go over form 1.8 branch (groundwork for Prom2.0 supporting remote read)
remote: Expose ClientConfig type (see #3165)
Port 'Make queue manager configurable.' to 2.0, (see #2991), fixes #3095
Port Metric name validation to 2.0 (see #2975), fixes #2996

I'm still going through the code / PRs to ensure I've got everything, as its not a straight forward port.

:+1:
There's also my two recent changes in the remote read endpoint.

There's also my two recent changes in the remote read endpoint.

Can you point them out to me?  Don't want to get the wrong ones.

#3263 and #3325

Codeclimate just complaining about Seek signature.

We're running this on our cluster and it seems to work, so removing the WIP tag.

Rebasing...

I've gone through everything, only those two comments.

So LGTU?

:+1:


Bump Abacus (include bridge fix)

Changes
Bumps Abacus to a version that includes the new Bridges with fixed dependencies.

Coverage increased (+0.4%) to 90.569% when pulling 9c97021aad73bed9537d9d80202f602dea8798a2 on SAP:bump_abacus_fix_bridges into 4fca1167b3d19a5e4b1a47f14304c08ad6cabc85 on cloudfoundry-incubator:master.


Add Nullstack JSX specification

Still a lot to clear and work to do, it has been something like:

[x] Implemented lifecycle (autocompleting props only when component registered one)
[x] Add support to DOM-injected attributes (e.g. default, source)
[x] Add support to element tag
[x] Update support to Nullstack Events context and Object Events
[ ] Test HTML tags/attributes, remove unsupported
[ ] Test on current examples (e.g. check if docs brings errors) - update if improving
[x] Remove head attributes that Nullstack already controls (proved unneeded&inaccessible)
global fetch needs --lib DOM
when adding something to the context, a custom NullstackContext must be created to acknowledge it

Test if there's something that increases support, e.g. looks like this file enables the attributes autocomplete in functional components even without importing Nullstack:
// tsconfig.json
{
  "compilerOptions": {
    "jsx": "preserve",
    "types": ["nullstack"]
  },
  "exclude": ["node_modules"]
}

cc: @Mortaro @brunolm

Issue!
declare function Recordings(): typeof Home.prototype.renderRecordings

renderRecordings() {
  return <></>;
}

render() {
  return (
    <>
      <Recordings /> {/* ERROR HERE */}
    </>
  );
}

Issue!

Good testing there, @brunolm!
Tested here and looks like a conflict in the declaration, now it is:
declare function Recordings(): typeof Home.prototype.renderRecordings

Which declares a function that returns another, not being a JSX component and being equivalent to:
render() {
  const Recordings = () => this.renderRecordings;
  return (
    <>
      <Recordings /> {/* NULLSTACK ERROR */}
    </>
  );
}

When in reality Nullstack supports as the following:
render() {
  const Recordings = this.renderRecordings;
  return (
    <>
      <Recordings /> {/* FINE! */}
    </>
  );
}

Automatically proposing that the declaration would be as follows:
declare const Recordings: typeof Home.prototype.renderRecordings

(Not my proposition, I'm learning it exactly now :sweat_smile:)

Nice, this works
declare const Recordings: typeof Home.prototype.renderRecordings

I'll check if the documentation matches this.

Looks awesome.
@Mortaro I did some testing and made a PR to update the documentation too.
https://github.com/nullstack/nullstack.github.io/pull/231
Example:
import Nullstack, { N, NullstackClientContext, NullstackServerContext } from 'nullstack'

// declare server functions
interface MyComponent {
  myServerFunction(): void
}

// extend Nullstack's server context
interface SomeServerProps extends NullstackServerContext {
  myServerProp: string
}

// extend Nullstack's client context
interface SomeComponentProps extends NullstackClientContext {
  myClientProp: string
}

// declare render components
declare const SomeComponent: (props: SomeComponentProps) => N.NullstackNode

class MyComponent extends Nullstack {
  // server functions
  static async myServerFunction({myServerProp}:SomeServerProps) {
    console.log(myServerProp)
  }

  // client functions
  myClientFunction() {
    this.myServerFunction()
  }

  // render components
  renderSomeComponent({ myClientProp: myProp }: SomeComponentProps) {
    return <>{myProp}</>
  }

  render() {
    return (
      <div>
        <SomeComponent myClientProp="hello" />
      </div>
    )
  }
}

export default MyComponent


Detail and assistance documents around meeting CNCF requirements for graduation levels

Let's document on the website how to meet the requirements for each CNCF level (sandbox, incubation, graduated). Also include a link to the sandbox form so that they can find how to "get in".

/hold we need to coordinate with the TOC because we have discussed this before with them and our solution may not match what they want to provide.

This task depends on https://github.com/cncf/tag-contributor-strategy/issues/366.
Hold


Combination of species outside the scope of the project

I was trying to enter a species of Opiliones which was originally described in genus Acarus which obviously lies outside Opiliones.
How can I use this genus in the original combination?

Create the original genus as you would any other name.  Link it to Root, if you don't care about the "external" classification, or provide a minimal higher classification (created first) for that name.  The important bit is to provide just enough so that it's obvious to others that this name doesn't fall in your target scope.  Once created you use it in the Original section of New taxon name as you would any other genus.
Root
   Acarus

or
  Root
    Acaridae
       Acarus

or
  Root
     Acari
        Acarus

Thanks, Matt!
It's so obvious.... how I didn't come up with this?
Stay safe!
Adriano
On Wed, Apr 29, 2020 at 11:01 AM Matt<EMAIL_ADDRESS>wrote:

Create the original genus as you would any other name. Link it to Root, if
you don't care about the "external" classification, or provide a minimal
higher classification (created first) for that name. The important bit is
to provide just enough so that it's obvious to others that this name
doesn't fall in your target scope. Once created you use it in the Original
section of New taxon name as you would any other genus.
Root
Acarus
or
Root
Acaridae
Acarus
or
Root
Acari
Acarus
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/SpeciesFileGroup/taxonworks/issues/1465#issuecomment-621229738,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ALBEBDZKQYVK4BWQE2SSVALRPAXMRANCNFSM4MTVPRWQ
.

--
** PROF. DR. ADRIANO BRILHANTE KURY **
Dept. Invertebrados -- Lab. Aracnologia
Museu Nacional, Universidade Federal do Rio de Janeiro
Quinta da Boa Vista s/n, São Cristóvão 20.940-040
Rio de Janeiro - RJ - BRAZIL
Phone (work): +55 (21)-3938-1184
ResearcherID: C-3202-2009
ORCID http://orcid.org/0000-0002-8334-6204. RESEARCH GATE
https://www.researchgate.net/profile/Adriano_Kury/publications/. PUBLONS
https://publons.com/author/1477962/adriano-brilhante-kury#profile. LATTES
CNPq http://lattes.cnpq.br/8917689589103592. GOOGLE  SCHOLAR
http://scholar.google.com.br/citations?user=CjUbE-QAAAAJ&hl=pt-BR. FLICKR
https://www.flickr.com/photos/adrik29/albums/with/72157673927562490.
ARACHNOLAB
http://www.museunacional.ufrj.br/mndi/Aracnologia/aracnol.htm. RATE YOUR
MUSIC http://rateyourmusic.com/~adrik29.
"How can we dance when our earth is turning?
How do we sleep while our beds are burning?"