migrate workflow

i am migrating all our workflows over to a new github actions self-hosted runner environment

this is happening gradually to ensure things work as expected

this should substantially improve build times and mitigate issues plaguing the existing static environment (disk space / package issues etc)

arc is actions runner controller, this particular image is based off of ubuntu 20.04

once we have completely deprecated the legacy build environment we can look at creating some more granular build options (e.g. ubuntu small/medium/large)

looks like missing its missing cmake

thanks - just added to the custom image here: https://github.com/MystenLabs/sui-operations/pull/167
will repeat tests


The output of pulling image is redirecting to stderr

I think all outputs should go to stdout, but some go to stderr, is it by design?
[root@dhcp-136-62 ~]# cat test.sh
#!/bin/bash
exec 1> ./test.stdout
exec 2> ./test.stderr
buildah from busybox
[root@dhcp-136-62 ~]# bash test.sh
[root@dhcp-136-62 ~]# cat test.stdout
busybox-working-container
[root@dhcp-136-62 ~]# cat test.stderr
Getting image source signatures
Copying blob sha256:f70adabe43c0cccffbae8785406d490e26855b8748fc982d14bc2b20c778b929
 706.22 KiB / 706.22 KiB [==================================================] 1s
Copying config sha256:8ac48589692a53a9b8c2d1ceaa6b402665aa7fe667ba51ccc03002300856d8c7
 1.46 KiB / 1.46 KiB [======================================================] 0s
Writing manifest to image destination
Storing signatures

No, it's not supposed to do that.

@rhatdan it seems like we are using os.Stderr as ReportWriter which prints all the progress into stderr. Was there a reason for that?

I think this is for scripting.
ctr=$(buildah pull fedora)
You don't want $ctr to have all of the pull information in it.

Well, I am a little bit torn here.
Docker prints to stdout, while wget and curl redirecting the progress to stderr.
I am not sure what is the right thing to do here but knowing this made me think this is not as bad as I thought.
WDYT?

I think buildah is going the correct thing for the redirection of the container name.  So I am going to close this issue as not a bug.


Get rid of HackedLogOn

Just so I won't forget to do that after https://github.com/SteamRE/SteamKit/pull/217 gets merged.

Pull request merged, awaiting SK2 1.7 release now.


[NEW]: ASX faces more RBA, ASIC scrutiny after collapse of blockchain project

Date
15/12/2022
Description
Another blockchain project comes unstuck - this time at the Australian Stock Exchange operator.
Links
https://www.smh.com.au/business/companies/asx-faces-more-rba-asic-scrutiny-after-collapse-of-blockchain-project-20221215-p5c6je.html
Agreement

[X] I irrevocably agree to release my contribution under the CC-BY 3.0 License

Attribution name
No response
Personal link
No response

https://web3isgoinggreat.com/?id=australian-securities-exchange-scraps-its-250-million-seven-year-long-blockchain-project


Amend charter with 3 changes following TSC vote in Feb 2021

What it says on the tin.

@mergifyio backport rolling foxy dashing

This pull request has been mentioned on ROS Discourse. There might be relevant details there:
https://discourse.ros.org/t/ros-2-tsc-meeting-minutes-2021-02-18/19102/1


Shimmer makes widget transparent on web mobile

Works fine on web desktop. On web mobile, the widget is transparent and only the shimmer is visible
Using Flutter v 3.22.1

this package has issues on html web renderer
I encountered this too

Is anyone else experiencing the same issue and found a solution?


BigDecimal.ZERO not considered a "decimal"

Hello, ran into a bit of an issue today, migrating from Pact 3.6.11 to 4.0.4 (for JDK 11 support).
It does seem that the new core matchers, specifically for numbers, will not consider BigDecimal#ZERO to be a decimal?
Specifically the issue is in the following snippet :
fun matchDecimal(actual: Any?): Boolean {
  val result = when {
    actual == 0 -> true
    actual is Float -> true
    actual is Double -> true
    actual is BigDecimal && actual.precision() > 0 -> true
    actual is JsonPrimitive && actual.isNumber -> decimalRegex.matches(actual.toString())
    else -> false
  }
  logger.debug { "${valueOf(actual)} (${typeOf(actual)}) matches decimal number -> $result" }
  return result
}

Which does check for BigDecimal, but in conjunction with a precision > 0 when BigDecimal#ZERO is defined as follows (at least in OpenJDK 11)
    // Constants
    /**
     * The value 0, with a scale of 0.
     *
     * @since  1.5
     */
    public static final BigDecimal ZERO =
        ZERO_THROUGH_TEN[0];

    /**
     * The value 1, with a scale of 0.
     *
     * @since  1.5
     */
    public static final BigDecimal ONE =
        ZERO_THROUGH_TEN[1];

    /**
     * The value 10, with a scale of 0.
     *
     * @since  1.5
     */
    public static final BigDecimal TEN =
        ZERO_THROUGH_TEN[10];

Which causes an issue because the previous matcher (in 3.6.11 at least) was as follows:
NumberTypeMatcher.NumberType.DECIMAL -> {
  logger.debug { "comparing type of ${valueOf(actual)} to a decimal at $path" }
  if (actual !is Float && actual !is Double && actual !is BigDecimal && actual != 0) {
    return listOf(mismatchFactory.create(expected, actual,
      "Expected ${valueOf(actual)} to be a decimal number",
      path))
  }
}

where just being the BigDecimal type was enough to match the "decimal" PACT kind.
I suppose this might have been asked before, but I wasn't quite able to find info on how you would recommend proceeding? (assuming this is voluntary, that is)
Best regards

Ah yes that's fine!


[WIP] Make OrderedWriter work better with sparse RoaringBitmaps

Solves #269 by making OrderedWriter work with both types of data (dense or sparse)
This PR still needs benchmarks.

@rafael-telles Can you get back to @richardstartin ?

@richardstartin , I considered this too, but I decided not to have 2 classes because the user would need know which class to used based on his usage.
Maybe we can have 3 OrderedWriters: SparseOrderedWriter(what you are purposing) , DenseOrderedWriter(the original) and AdaptiveOrderedWriter(what I implemented).

@richardstartin What do you think?

I had the idea for this feature using the library to build a mask for document start positions in a binary file archive, while this isn't RoaringBitmap's sweet spot, I needed something quick, reasonably concise, that could be iterated over in both directions, to mark the positions in a mapped file.  I saw that building array containers dominated the profile, but the documents were always at least 512B. So in this case, I would absolutely know that I couldn't have more than 4096 elements per container, and the idea behind this feature was to be able to exploit that precise situation:

it wouldn't support out of order (in the lower 16 bits) writes (OrderedWriter actually does, and this is exploited in RoaringBitmap.bitmapOfUnordered to allow use of only a partial radix sort on the higher order bits prior to building.)
it would just throw an exception if you get your calculations wrong etc.

For a one-size-fits-all implementation I think OrderedWriter is good as it stands, and I didn't anticipate the need to change or penalise any use of it. So I prefer the idea of two separate implementations because:

I expect this implementation to cause performance regressions
I think this implementation takes up too much memory for its use case
I expect this implementation to break RoaringBitmap.bitmapOfUnordered
I thought it was reasonable to have two implementations: one that always works, and another that is fast when you are 100% certain your data is sparse

Is it possible to reconsider the decision not to provide two sibling implementations?

@richardstartin Do we have a way to measure an eventual performance regression at this time?

There are benchmarks for this. I can run them on my laptop to give a rough estimate.

@richardstartin If you could give instructions, maybe @rafael-telles could run the benchmarks himself and get an idea about the performance issues that you anticipate.
I think it is always better to reason about hard numbers rather than vague estimations.

There is a benchmark called WriteSequential.incrementalUseOrderedWriter which times how long it takes to build bitmaps for a range of different densities. You can run it from RoaringBitmap/jmh with
bash ./run.sh WriteSequential.incrementalUseOrderedWriter
I ran it on master and got these results:
Benchmark                                    (randomness)    (size)  Mode  Cnt      Score       Error  Units
WriteSequential.incrementalUseOrderedWriter           0.1     10000  avgt    5     19.971 ±     0.292  us/op
WriteSequential.incrementalUseOrderedWriter           0.1    100000  avgt    5    264.715 ±     6.455  us/op
WriteSequential.incrementalUseOrderedWriter           0.1   1000000  avgt    5   2679.880 ±   136.150  us/op
WriteSequential.incrementalUseOrderedWriter           0.1  10000000  avgt    5  26165.874 ± 11343.465  us/op
WriteSequential.incrementalUseOrderedWriter           0.5     10000  avgt    5     19.697 ±     0.495  us/op
WriteSequential.incrementalUseOrderedWriter           0.5    100000  avgt    5    272.462 ±    49.170  us/op
WriteSequential.incrementalUseOrderedWriter           0.5   1000000  avgt    5   3032.112 ±   850.442  us/op
WriteSequential.incrementalUseOrderedWriter           0.5  10000000  avgt    5  25669.909 ±  1425.179  us/op
WriteSequential.incrementalUseOrderedWriter           0.9     10000  avgt    5     20.371 ±     1.350  us/op
WriteSequential.incrementalUseOrderedWriter           0.9    100000  avgt    5    272.265 ±    29.171  us/op
WriteSequential.incrementalUseOrderedWriter           0.9   1000000  avgt    5   2676.791 ±   127.749  us/op
WriteSequential.incrementalUseOrderedWriter           0.9  10000000  avgt    5  24693.047 ±  1438.060  us/op

And on your branch I saw:
Benchmark                                    (randomness)    (size)  Mode  Cnt      Score      Error  Units
WriteSequential.incrementalUseOrderedWriter           0.1     10000  avgt    5     28.352 ±    1.057  us/op
WriteSequential.incrementalUseOrderedWriter           0.1    100000  avgt    5    333.004 ±   17.180  us/op
WriteSequential.incrementalUseOrderedWriter           0.1   1000000  avgt    5   3342.633 ±  215.375  us/op
WriteSequential.incrementalUseOrderedWriter           0.1  10000000  avgt    5  33244.195 ± 1944.698  us/op
WriteSequential.incrementalUseOrderedWriter           0.5     10000  avgt    5     28.253 ±    1.161  us/op
WriteSequential.incrementalUseOrderedWriter           0.5    100000  avgt    5    331.922 ±    6.457  us/op
WriteSequential.incrementalUseOrderedWriter           0.5   1000000  avgt    5   3347.846 ±  196.953  us/op
WriteSequential.incrementalUseOrderedWriter           0.5  10000000  avgt    5  33982.642 ± 3035.831  us/op
WriteSequential.incrementalUseOrderedWriter           0.9     10000  avgt    5     28.461 ±    0.528  us/op
WriteSequential.incrementalUseOrderedWriter           0.9    100000  avgt    5    332.411 ±   14.606  us/op
WriteSequential.incrementalUseOrderedWriter           0.9   1000000  avgt    5   3306.950 ±  242.813  us/op
WriteSequential.incrementalUseOrderedWriter           0.9  10000000  avgt    5  33292.460 ± 1312.226  us/op

So there's a good 10-25% regression as things stand. As you work on this it would be good to track those numbers.
Also, keep in mind that this PR would break RoaringBitmap.bitmapOfUnordered:
Failed tests:
  UnorderedWriterRandomisedTest.bitmapOfUnorderedShouldBuildSameBitmapAsBitmapOf:48 expected:<{1,2,3,4,56,103,104,105,193,265}> but was:<{2,3,1,56,4,193,105,265,104,103}>
  UnorderedWriterRandomisedTest.bitmapOfUnorderedShouldBuildSameBitmapAsBitmapOf:48 expected:<{83,84,147,167,174,267,312,313,324,421,514,554,600,601,602,622,717,718,736,737,738,833,846,909,910,911,998,1028,1054,1055,1056,1057,1058,1059,1067,1165,1234,1242,1243,1244,1257,1298,1299,1338,1339,1340,1341,1342,1360,1364,1415,1416,1417,1418,1488,1497,1498,1499,1583,1675,1710,1711,1782,1783,1784,1850,1932,2023,2024,2025,2026,2088,2089,2174,2175,2190,2191,2192,2253,2266,2267,2268,2336,2344,2440,2441,2442,2499,2500,2578,2645,2646,2734,2782,2829,2840,2921,2956,3025,3086}> but was:<{2336,1054,601,2191,1417,3025,2442,1257,1415,1418,2440,1675,1782,1165,909,2646,738,910,600,267,1360,2190,1488,1416,1244,1299,2253,1583,2192,2499,2175,2500,1058,2026,83,2782,1497,1234,602,1028,1056,2266,911,2441,84,324,1342,737,1341,2921,2344,1784,2645,2268,998,1338,1298,1340,1059,1055,1339,174,1498,1057,3086,2829,2734,1932,1242,1364,2025,2174,1711,2578,1499,2267,514,736,2023,2024,622,1067,717,554,833,2956,421,167,2840,313,147,1783,2088,1243,718,312,846,1850,1710,2089}>
  UnorderedWriterRandomisedTest.bitmapOfUnorderedShouldBuildSameBitmapAsBitmapOf:48...

Thanks @richardstartin, very useful.

Thanks for the feedback @richardstartin , I will probably be working on it by tomorrow and will share the benchmark results with you guys.

Coverage decreased (-0.2%) to 91.392% when pulling f4201098459cb481b6ecfe96946e343419e9097e on rafael-telles:optimization/ordered-writer into 7a5b3440de141a64d318362f58055ccea52e1f33 on RoaringBitmap:master.

Looks good. What shall we do when the sparse limit is exceeded? I would be inclined to throw an exception, but it might be more popular to be adaptive. With another layer of abstraction I could imagine something like this:

public class SparseOrderedWriter implements OrderedWriter {
...
   DenseOrderedWriter transfer() {
   ...
   }
...
}

public class AdaptiveOrderedWriter implements OrderedWriter {
   SparseOrderedWriter sparseWriter = new SparseOrderedWriter();
   DenseOrderedWriter denseWriter = null;
   boolean sparse = true;

   @Override
   public void add(int value) {
    if (sparse) {
       try {
          sparseWriter.add(value);
      } catch (IllegalStateException e) { // or maybe return a boolean to indicate whether it was possible to add the value or not
         denseWriter = sparseWriter.transfer();
         denseWriter.add(value);
         sparse = false;
         sparseWriter = null;
     }
    } else {
      denseWriter.add(value);
   }
}

So if you don't know your data very well, you use a dense writer (i.e. leave that part the way you have it now). But if as a user you expect your data to be sparse, but don't want to risk unexpected failure, you can have one of these. Profiling JIT compilers with speculative optimisations make this cost free so long as the spill never happens. You get slower but correct code if the values spill, without any weird surprises in production.
Just thinking out aloud. @lemire do you have an opinion on this?

@richardstartin

What shall we do when the sparse limit is exceeded?

The current code looks reasonable, but it might be nice, at a minimum to document the issue a bit: maybe explain with a extra sentence or two how the limit is supposed to be used.

@richardstartin @lemire , I implemented the purposed AdaptiveOrderedWriter and got these benchmark results:
Benchmark                                    (randomness)    (size)  (writerType)  Mode  Cnt      Score      Error  Units
WriteSequential.incrementalUseOrderedWriter           0.1       100         DENSE  avgt    5      2.553 ±    0.060  us/op
WriteSequential.incrementalUseOrderedWriter           0.1       100        SPARSE  avgt    5      0.765 ±    0.010  us/op
WriteSequential.incrementalUseOrderedWriter           0.1       100      ADAPTIVE  avgt    5      0.697 ±    0.013  us/op
WriteSequential.incrementalUseOrderedWriter           0.1       100   UNOPTIMIZED  avgt    5      1.189 ±    0.010  us/op
WriteSequential.incrementalUseOrderedWriter           0.1      1000         DENSE  avgt    5      4.854 ±    0.034  us/op
WriteSequential.incrementalUseOrderedWriter           0.1      1000        SPARSE  avgt    5      2.735 ±    0.037  us/op
WriteSequential.incrementalUseOrderedWriter           0.1      1000      ADAPTIVE  avgt    5      2.682 ±    0.030  us/op
WriteSequential.incrementalUseOrderedWriter           0.1      1000   UNOPTIMIZED  avgt    5     12.481 ±    0.247  us/op
WriteSequential.incrementalUseOrderedWriter           0.1     10000         DENSE  avgt    5     18.929 ±    0.509  us/op
WriteSequential.incrementalUseOrderedWriter           0.1     10000      ADAPTIVE  avgt    5     49.886 ±    0.729  us/op
WriteSequential.incrementalUseOrderedWriter           0.1     10000   UNOPTIMIZED  avgt    5    116.078 ±    3.623  us/op
WriteSequential.incrementalUseOrderedWriter           0.1    100000         DENSE  avgt    5    260.877 ±    3.639  us/op
WriteSequential.incrementalUseOrderedWriter           0.1    100000      ADAPTIVE  avgt    5    314.580 ±    7.360  us/op
WriteSequential.incrementalUseOrderedWriter           0.1    100000   UNOPTIMIZED  avgt    5    895.785 ±   11.013  us/op
WriteSequential.incrementalUseOrderedWriter           0.1   1000000         DENSE  avgt    5   2538.726 ±   71.150  us/op
WriteSequential.incrementalUseOrderedWriter           0.1   1000000      ADAPTIVE  avgt    5   3009.198 ±   80.885  us/op
WriteSequential.incrementalUseOrderedWriter           0.1   1000000   UNOPTIMIZED  avgt    5   8920.691 ±   45.892  us/op
WriteSequential.incrementalUseOrderedWriter           0.1  10000000         DENSE  avgt    5  23483.381 ±  396.549  us/op
WriteSequential.incrementalUseOrderedWriter           0.1  10000000      ADAPTIVE  avgt    5  29962.898 ±  501.423  us/op
WriteSequential.incrementalUseOrderedWriter           0.1  10000000   UNOPTIMIZED  avgt    5  89271.744 ± 3396.370  us/op
WriteSequential.incrementalUseOrderedWriter           0.5       100         DENSE  avgt    5      2.528 ±    0.039  us/op
WriteSequential.incrementalUseOrderedWriter           0.5       100        SPARSE  avgt    5      0.763 ±    0.011  us/op
WriteSequential.incrementalUseOrderedWriter           0.5       100      ADAPTIVE  avgt    5      0.693 ±    0.104  us/op
WriteSequential.incrementalUseOrderedWriter           0.5       100   UNOPTIMIZED  avgt    5      1.229 ±    0.023  us/op
WriteSequential.incrementalUseOrderedWriter           0.5      1000         DENSE  avgt    5      5.186 ±    0.060  us/op
WriteSequential.incrementalUseOrderedWriter           0.5      1000        SPARSE  avgt    5      2.657 ±    0.018  us/op
WriteSequential.incrementalUseOrderedWriter           0.5      1000      ADAPTIVE  avgt    5      2.694 ±    0.084  us/op
WriteSequential.incrementalUseOrderedWriter           0.5      1000   UNOPTIMIZED  avgt    5     12.416 ±    0.241  us/op
WriteSequential.incrementalUseOrderedWriter           0.5     10000         DENSE  avgt    5     18.725 ±    0.231  us/op
WriteSequential.incrementalUseOrderedWriter           0.5     10000      ADAPTIVE  avgt    5     50.881 ±    9.495  us/op
WriteSequential.incrementalUseOrderedWriter           0.5     10000   UNOPTIMIZED  avgt    5    115.826 ±   28.241  us/op
WriteSequential.incrementalUseOrderedWriter           0.5    100000         DENSE  avgt    5    259.951 ±    3.922  us/op
WriteSequential.incrementalUseOrderedWriter           0.5    100000      ADAPTIVE  avgt    5    315.011 ±   15.309  us/op
WriteSequential.incrementalUseOrderedWriter           0.5    100000   UNOPTIMIZED  avgt    5    901.977 ±   25.210  us/op
WriteSequential.incrementalUseOrderedWriter           0.5   1000000         DENSE  avgt    5   2566.468 ±  163.691  us/op
WriteSequential.incrementalUseOrderedWriter           0.5   1000000      ADAPTIVE  avgt    5   3026.714 ±  103.798  us/op
WriteSequential.incrementalUseOrderedWriter           0.5   1000000   UNOPTIMIZED  avgt    5   8960.705 ±  139.529  us/op
WriteSequential.incrementalUseOrderedWriter           0.5  10000000         DENSE  avgt    5  23499.369 ±  865.911  us/op
WriteSequential.incrementalUseOrderedWriter           0.5  10000000      ADAPTIVE  avgt    5  29992.934 ±  577.696  us/op
WriteSequential.incrementalUseOrderedWriter           0.5  10000000   UNOPTIMIZED  avgt    5  89631.385 ± 2808.922  us/op
WriteSequential.incrementalUseOrderedWriter           0.9       100         DENSE  avgt    5      2.526 ±    0.028  us/op
WriteSequential.incrementalUseOrderedWriter           0.9       100        SPARSE  avgt    5      0.707 ±    0.011  us/op
WriteSequential.incrementalUseOrderedWriter           0.9       100      ADAPTIVE  avgt    5      0.687 ±    0.019  us/op
WriteSequential.incrementalUseOrderedWriter           0.9       100   UNOPTIMIZED  avgt    5      1.316 ±    0.020  us/op
WriteSequential.incrementalUseOrderedWriter           0.9      1000         DENSE  avgt    5      4.916 ±    0.071  us/op
WriteSequential.incrementalUseOrderedWriter           0.9      1000        SPARSE  avgt    5      2.670 ±    0.024  us/op
WriteSequential.incrementalUseOrderedWriter           0.9      1000      ADAPTIVE  avgt    5      2.700 ±    0.067  us/op
WriteSequential.incrementalUseOrderedWriter           0.9      1000   UNOPTIMIZED  avgt    5     12.426 ±    0.217  us/op
WriteSequential.incrementalUseOrderedWriter           0.9     10000         DENSE  avgt    5     18.797 ±    0.299  us/op
WriteSequential.incrementalUseOrderedWriter           0.9     10000      ADAPTIVE  avgt    5     50.241 ±    1.039  us/op
WriteSequential.incrementalUseOrderedWriter           0.9     10000   UNOPTIMIZED  avgt    5    106.851 ±    2.418  us/op
WriteSequential.incrementalUseOrderedWriter           0.9    100000         DENSE  avgt    5    260.020 ±    6.968  us/op
WriteSequential.incrementalUseOrderedWriter           0.9    100000      ADAPTIVE  avgt    5    313.778 ±    6.296  us/op
WriteSequential.incrementalUseOrderedWriter           0.9    100000   UNOPTIMIZED  avgt    5    665.057 ±    4.711  us/op
WriteSequential.incrementalUseOrderedWriter           0.9   1000000         DENSE  avgt    5   2532.362 ±   49.249  us/op
WriteSequential.incrementalUseOrderedWriter           0.9   1000000      ADAPTIVE  avgt    5   3035.386 ±   37.467  us/op
WriteSequential.incrementalUseOrderedWriter           0.9   1000000   UNOPTIMIZED  avgt    5   6749.062 ± 1367.867  us/op
WriteSequential.incrementalUseOrderedWriter           0.9  10000000         DENSE  avgt    5  23458.022 ±  968.460  us/op
WriteSequential.incrementalUseOrderedWriter           0.9  10000000      ADAPTIVE  avgt    5  29932.496 ± 1821.584  us/op
WriteSequential.incrementalUseOrderedWriter           0.9  10000000   UNOPTIMIZED  avgt    5  90090.239 ± 5463.192  us/op

Observations:

The current AdaptiveOrderedWriter implementation is as fast as SparseOrderedWriter when it doesn't exceed the limit, as expected
The current AdaptiveOrderedWriter is a bit slower than DenseOrderedWriter when it exceeds the limit, as expected
There are parameters that doesn't work for SparseOrderedWriter (because of the limit), there are not showed on the benchmark output

I think it would be good if we could switch back from Dense to Sparse after flushing the DenseOrderedWriter, so that it would handle better sparse data with a few containers that exceed the limit.
I tried to do this on AdaptiveOrderedWriter:30, but realized now it makes no sense the way I tried.

Heuristics. I would be tempted to not transfer back to sparse in the adaptive version, and expect it to be faster to use a heuristic which treats a bitmap as sparse until proven otherwise, and once it is known that any of it is dense, expect to see more dense sections, and definitely don't expect the next one to be sparse. In dense cases, the adaptive writer should be only slightly behind the dense writer because it should figure out quite quickly that the data is dense.

Interface stability. The existing class isn't being used by any open source users according to github search, so breaking the interface isn't a bad thing, it is used in at least one closed source code base that I am willing to update, but is it worth putting some of this stuff in an experimental package, since the interface is already being broken, and it's going to be quite complicated for someone to figure which of the many writers to use? A simplified interface appeals to me.

Note that we have a unit test failure:

TestOrderedWriter.shouldThrowWhenAddingInReverseOrder[2] Expected exception: java.lang.IllegalStateException

@richardstartin , fixed most of what you pointed out.

Looks OK to me. If there are bugs, it'll be when this starts getting used that they'll really come out.

Based on @richardstartin 's approval, let us merge this! And issue a release.


fontSize

It shrinked the fontsize,which is what I don't want .How to fix it?How can I connect with U?

Hello @liranandroid, your issue is not related to this plugin but to KaTeX.
Please read the KaTeX documentation for more info about fractions: https://katex.org/docs/supported.html#fractions-and-binomials


[client] Rerender not trigger on level up

While level-uping, the Labor > All panel is not rerender.
Expected behavior
Panel could be rerender on level up
Screenshots
https://github.com/BibliothecaDAO/eternum/assets/97087040/5103118f-0d85-491f-a4bc-8912d53bcd0d
Desktop

OS: MacOS
Browser: Chrome
Version: 123.0.6312.87

good pickup - this is changing in 0.5.0 so going to close as whole thing is refactored


Replace "Preferred Infrastructure" with "Preferred Networks."

https://github.com/jubatus/jubatus/issues/906

Thanks!


[Bug]: Manual Override and Sleep Mode does not work as in OpenEVSE UI

The problem
Also, Sleep Mode (new) does not seem to do anything.
Please check my recording:
https://www.dropbox.com/scl/fi/xunx6tg5in8262rp7n64d/OpenEVSE-sleep-override-isssue-240515.mov?rlkey=tco4ktgdv5kh8ah4fgn6arr9r&dl=0
Thanks.
What version of Home Assistant?
core-2024.5.3
What version of OpenEVSE?
8.2.2 & wifi v5.1.0_modified
Diagnostics information
No response
Anything in the logs that might be useful for us?
No response
Additional information
No response

Please don't use the switches for automations, use the service calls.
The one you'll likely be using is openevse.make_claim in Home Assistant.

The toggles are working as they should, "Sleep Mode" means charging is disabled.
When you change the status outside of the scheduled (auto) mode, that's an override, so that turns on.
Here's the API that's being used for reference: https://openevse.stoplight.io/docs/openevse-wifi-v4/e3153e2367cb1-open-evse-wi-fi-api

make_claim is even more confusing as after making a claim from HA I cannot then use OpenEVSE UI to toggle charge…
I guess I overestimated what's possible with OpenEVSE…
After make_claim my timers are gone and UI toggle charge reverses. I guess I should release the claims or something but again I prefer how the button works...

If you are charging based on solar output you should also be using the Solar PV divert, it'll adjust the available amps.
All you should really need to do is automate active and disabled via Home Assistant

If you are charging based on solar output you should also be using the Solar PV divert, it'll adjust the available amps.
All you should really need to do is automate active and disabled via Home Assistant

The Solar PV divert is not what I'm looking for. I want to make sure home batteries charging is prioritized until they are, say, 95% full while consuming solar excess during the charging and then make sue I never discharge the batteries while ,charging. The reason we're using HA is to make all the automations work like we want and not how the manufacturers want us.

The toggles are working as they should, "Sleep Mode" means charging is disabled. When you change the status outside of the scheduled (auto) mode, that's an override, so that turns on.
Here's the API that's being used for reference: https://openevse.stoplight.io/docs/openevse-wifi-v4/e3153e2367cb1-open-evse-wi-fi-api

I disagree because the override and sleep are somehow connected and as you can see on my video I cannot achieve the same state in the UI with integration switches.
Anyway, I think I have my logic done and will test it the following days.
Thank you for your work on this integration - it's always easier even though sometimes not everything is clear.
Perhaps mentioning integration services (openevse.make_claim etc) and providing link to OpenEVSE API in the README would save your time for issues like mine :)

Yes I haven't had much time to update the README just yet, it's on my to do list.

I noticed the thread and I think I'm having similar issue so maybe you can point me to a right solution.
I'm trying to switch between solar_divert and just max_charge. I can do PV->Full turning off PV, but turning PV on also turns on both sleep buttons effectively stopping the charge.
What is the right path here?
P.S. What are claims?

Here's the claims API: https://openevse.stoplight.io/docs/openevse-wifi-v4/221999f7bb3e5-list-evse-claims
Sleep only turns on when the EVSE is either commanded to sleep (via the toggle), or if it's set to an auto schedule and the schedule has it set to disable charging at a specific time.

When I touch divert both sleep follow that with 1s delay

What are your PV divert settings set to in OpenEVSE?

So when you enable PV divert, that system's in control of sleeping the charger based on your settings there.

If you toggle "Solar PV divert" switc,h it disable the self production. In the Web UI you can see that the ECO (Solar Symbol) is gone. This is what to expect when changing the configuration setting of self production.
To change ECO-Mode (disable/enable) you need to take the selection "openevse_divert_mode" and change fast to eco. I just need to remark that this could be done better by using a switch.
I think the most problem ist that the used update intervall for the integration is very so. That's why it's not possible to use the switch at all. For example if I flip the "Manual Override" from ON to OFF it toggle on the web-UI between AUTO-Mode and Disable Charge and the switch always stay in the ON-Position.
It would be great if this switches work like in the web-UI and also uses the same names.

also the update interval would be much faster so the reaction of changing is noticeable

There is no update interval, the OpenEVSE pushes changes to HA.

I just checked again the messages with MQTT-Explorer on the mosquitto broker that runs on my HA. There I can see all data in realtime. But the entities in the integration only change there values every 4-5 minutes. From where did the entities get there values - they are connect with the integration to the openevse IP and capure the data via tha API.

Did the openevse API do push?

Yes it pushes via websocket.

I'm in a similar position trying to relate the operation of the OpenEVSE web page with the various switches and select function in the Home assistant Integration.  I can also report the delay in updating but I think this may be the HA scan rate?  I agree with the comments above about 'eco' and 'fast', it would be easier with a switch (unless you know of future modes)!  At present I think most people either want a fast charge or a managed one.
Sleep mode does not work (as previously commented) - very confusing.
Despite the criticisms, they are not meant negatively, I very much appreciate the work - please continue!

@simonjowett I've been using this integration for quite some time and everything works but you have to use the claims.

HA scan rate?

There is no scan rate, states are pushed from the OpenEVSE over a websocket connection. It's real time.

Sleep mode does not work (as previously commented) - very confusing.

The sleep mode is mostly for backwards compatibility with older OpenEVSEs, please use the claims service call to manage sleep mode more effectively.

I agree with the comments above about 'eco' and 'fast', it would be easier with a switch (unless you know of future modes)!

These are the modes as set in the API. The OpenEVSE team may add additional modes, I'm not sure.
What would everyone suggest a switch be named for this?

I suggest that it should work like in the WebUI. Just leave the dropdown box and put all Mode inside: FAST, ECO, SLEEP. Leave a Switches for ECO-Mode to enable Solar divert and one to activate the Shaper. Write some IF statements to disable the divert and shaper switch when not ECO-Mode is selected in the dropdown. Remove all the rest switches, also the backwards compatibility ones, since they are confusing.

Yes, suggestion above made me understand, why this appeared like a bug to me. Indeed, webUI just have a button

and I was instinctively looking for the same button in HA.

Indeed, webUI just has a button

The API calls don't have an option for "auto", it would make things a bit easier.

In fact Auto means there's no manual override ( ro claim if you use claims ) state property. Toggling Auto on HA will just need to clear this property.

Toggling Auto on HA will just need to clear this property.

Which is what toggling "Manual override" or "Sleep mode" does.

I'm trying to mimic the openevse UI 3 button selectors in home assistant.
It's not possible to do it for now we would need a way to know if there's an override and what state the override has.
Using current manual_override sleep_mode entity won't solve the problem of displaying correct icon colors for enabled and disabled.
Something that would solve it, would be to have a select entity with the 3 states:

Enabled ( override with state property "enabled" )
Auto ( no manual override state )
Disabled ( override wuith state property "disabled )

I'm trying to mimic the openevse UI 3 button selectors in home assistant.
It's not possible to do it easily for now we would need a way to know if there's an override and what state the override has.

Have you tried the action: list_overrides ?

Yes that's what I've done, see my edited topic above.
But it needs a template + an automation to achieve this. Not really UX friendly for some users. :)


[Feature Request]: Sudoku Solver

Is there an existing issue for this?

[X] I have searched the existing issues

Feature Description
providing solution to leetcode problem - 37
Use Case
I would add proper solutions for the problem in three different programing languages i.e C++,Java,and Python with proper documentation
Benefits
Users can access solution to problem 473
Add ScreenShots
No response
Priority
High
Record

[X] I have read the Contributing Guidelines
[X] I'm a GSSOC'24 contributor
[X] I have starred the repository

@Damini2004 Please complete your task otherwise I will close it. and if you have any queries then ask me on our live chat for support: https://codeharborhub.github.io/community/supports#-how-to-get-support


pk_nl not computed with mps == "camb" and tf != "boltzmann_camb"

Slightly odd usage, but if we want to get the camb non-linear power spectrum with a non-camb transfer function, the non-linear matter power spectrum never computes.
cosmo = ccl.Cosmology(Omega_c=0.25, Omega_b=0.05, h=0.67, n_s=0.96, A_s=2.34e-9,
                      transfer_function="boltzmann_class",
                      matter_power_spectrum="camb")
cosmo.compute_nonlin_power()  # doesn't complain
assert cosmo.get_nonlin_power() is None

The reason: it is a very, very inefficient thing to do, and not generally useful. I'd rather not adapt the code to allow this. For testing purposes one can always use the calculator mode.


Fix implicit memory aliasing issues

Two cases detected by gosec v2.17.0 (golangci-lint v1.54.2).
Those cases confirmed, another detected by using the Go 1.21 loopvar=2 GC flag to surface loops which compile differently using the experimental changes to for loop semantics.
fixes GH-916

False positive G101: Potential hardcoded credentials (gosec) linting issues.
Ignoring for now.


shaderc: 2024.0 -> 2024.1

Description of changes
Sorry for the pings in #318574...
Anyway, this depends on #322142 and #322093 being merged first, since they need a strict Shaderc version and these PRs pin it.

Things done

Built on platform(s)

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

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

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

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

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

@ofborg build shaderc

@ofborg build shaderc
(timeout due to dependencies)

FYI, the latest version right now is 2024.3.
I'm not contributing to Nixpkgs anymore, so I'll close this.


API : change begin/end event names

BeginRunEvent -> RunStart
EndRunEvent -> RunEnd
insert_end_run -> insert_run_end
insert_begin_run -> insert_run_start
sundry variable/arg name/doc changes

This will need to have travis kicked to re-start once the mds PR is merged.

Did you do a search of the .enaml files too? or just the .py?

didn't touch the enaml files, but replay still seems to work...one sec

There are not any instances of the word 'begin' left in the repo so I think it is ok


Sway formatter removing generic traits type parameters

E.g.
script;

pub trait From<T> {
    fn from(b: T) -> Self;
    fn into(self) -> T;
}

fn main() {}

becomes
script;

pub trait From {
    fn from(b: T) -> Self;
    fn into(self) -> T;
}

fn main() {}

I'm assuming that trait type parameters are just ignored as this is a new feature.

At the time, I did implement generics as they were available. For any new language features we will need to make formatter issues to accompany them. For instance the recent removal of ~ !

At the time, I did implement generics as they were available. For any new language features we will need to make formatter issues to accompany them. For instance the recent removal of ~ !

That's a very good point. We'll be better at that, potentially via the PR description template I proposed in an issue recently.


Move to karma-runner organization

I'll wait on requesting this until I think the project is stable.

Hey @nickmccurdy, just want to say your work is appreciated! I would just like to know if you plan on making a release any time soon?

Thanks! This is essentially a wrapper around edge-launcher now, though in my experience it seems to be pretty stable.
I haven't been able to release this on npm yet. I'll take another look at publishing it and talk to Karma upstream developers, but for now you should be able to install it through GitHub with npm install --save-dev nickmccurdy/karma-edge-launcher. I wouldn't recommend using this on a production test suite, though.

@Feytality This is now released on npm as karma-edge-launcher.

@nickmccurdy happy to take this into the karma organisation any time you feel it's ready.

@dignifiedquire Thanks! The current status is deployed on npm, pre 1.0, with at least one known bug (Edge doesn't close after the tests finish unlike most launchers). I can help move it over if you're okay with having a somewhat experimental / in development plugin in the organization, otherwise we can wait until 1.0.

Happy to move it over now, just need you to give me admin access to this repo so I can move it. After that I will add you back as an admin on the other side

Ah I see, it won't let me move to karma-runner without that. Do I have to add you as a collaborator, or is it something else?

@nickmccurdy I'm afraid I need moar permissions on here, I think it's called Admin or sth like that, such that I can access the Settings page.

I wasn't able to add you as anything other than a collaborator. If that doesn't work, I think I would either need to join a karma-runner team or trasfder this repository to your personal account so you could transfer it into karma-runner.

Hey @dignifiedquire, are you still interested in this? If so, please let me know what I can do to help. The last  time I tried to add you as a collaborator, it didn't seem like I could do all of it on my end.

I would like to try this again, could I please get repository creation access to @karma-runner?

@nickmccurdy Repository creation access is not needed for that, someone just needs to create a repo for you and add you to the list of people with write access to that repo.
I'll ask around.

I have created https://github.com/karma-runner/karma-edge-launcher and gave @nickmccurdy full access. Let me know if that helps

Thanks for the repository!
It seems like I still can't transfer to the repository (because I don't have repository creation access), which is confusing. Do you think someone in @karma-runner could initiate the transfer instead of me? If this isn't possible I will transfer the commits, open issues, and hooks manually, but it would be nice to maintain all the history with a transfer.

It looks like this has stalled. Any updates?
It would be good to nice to have this moved into the karma-runner organization. We are starting to put it into our build after getting a Windows 10 build agent.

Right now I have the ability to push all the code to the @karma-runner repo, but because I'm not a team member I can't transfer the repo with issues and pull requests in tact. Since there's only one each (besides this issue), I'll try to do this manually. Should be transferred soon.

Moved to karma-runner/karma-edge-launcher and released under<EMAIL_ADDRESS>Please update your GitHub watching, forks, bookmarks, and links as appropriate.


sea-orm-cli generate entity --tables argument doesn't work as described

Description
sea-orm-cli generate entity --tables says that it takes a comma-separated list of tables to generate entities for.
    -t, --tables <TABLES>
            Generate entity file for specified tables only (comma separated)

However, the Clap definition uses Option<String> instead of Vec<String>. All tables after the first comma are ignored.
If the intent is to support multiple tables, the change is small and doesn't harm the single table use case. If the intent is to only generate a single entity, then I think the help should be updated. Either way I'm willing to do the work once I know.
Steps to Reproduce

Create a database with ledger_entries and checks tables
Execute sea-orm-cli generate entity -u <DATABASE_URL> --tables ledger_entries,checks -o src/entities

Expected Behavior
Generates entities for the ledger_entries and checks tables
Actual Behavior
Only generates entity for ledger_entries
Reproduces How Often
Always
Versions
0.10.3
SQLite
Mac OS 12.6

It should be able to support multiple tables AFAIK @billy1624

Hey @johnbcodes, thanks for the report!! I'm not sure why it was originally be implemented this way. The original approach takes a comma separated table name and then conditionally generate entity of those with table name is a substring of the comma separated input.
That means, if you have tables user, user_group and group in your database. Then, given your comma separated input be user. It will generate the entity file for user and user_group tables.
Which isn't what we want!

I just fix the issue on https://github.com/SeaQL/sea-orm/pull/1245

Thank you @billy1624 @tyt2y3!


Replace exif lib

@chrillek @jmooring I have reviewed and also tested this on a Exif project I have, and this all looks great to me -- but if you could, I would appreciate if you also could take this branch for a spin before I merge it ...?

@chrillek @jmooring I have reviewed and also tested this on a Exif project I have, and this all looks great to me -- but if you could, I would appreciate if you also could take this branch for a spin before I merge it ...?

I'm afraid that's a bit beyond my abilities. If there'd be a binary, I could download that and test it.

@bep Regression. No warnings. See:

https://github.com/gohugoio/hugo/pull/8684
https://github.com/gohugoio/hugo/issues/8519

Minimal example:
git clone --single-branch -b hugo-github-issue-8519 https://github.com/jmooring/hugo-testing hugo-github-issue-8519
cd hugo-github-issue-8519
hugo server

I tested https://github.com/gohugoio/hugo/pull/8761/commits/2bd9e91588c59e64bcb3642adc07cee75ed50812 against Phil Harvey's collection of sample images. Of the 6924 images, only 9 gave me problems, so I think we're in pretty good shape.

Error: executing "main" at <.Exif>: error calling Exif: interface conversion: string is not error: missing method Error

Test site
git clone --single-branch -b hugo-github-issue-8761 https://github.com/jmooring/hugo-testing hugo-github-issue-8761
cd hugo-github-issue-8761
hugo

Waiting for a merge of this one: https://github.com/dsoprea/go-exif/pull/63
@jmooring note that the last commit I added means that it will not build for you. Thanks for the extensive test work, some of the errors looks a little odd, but we can live with those. Knowing about them means we can eventually fix them.

Closing this. The upstream library doesn't seem to be actively maintained, and I'm certainly not prepared to take on another one.


WOfS and pretiled ingestion

These changes add functionality for ingesters of data that is already tiled. The metadata is loaded from the GDAL properties of each tile (these properties are not standardised, and will probably be extended if used by future ingesters.). Much of the duplicated code between the existing ingesters is moved into the abstract folder, so the Landsat and Modis ingesters are smaller than before.
The WOfS ingester is a single file at src/wofs_ingester.py (following the naming conventions of other ingesters), and presents the same command line interface as the two existing ingesters.

Looks good to me.
From: Jeremy Hooke<EMAIL_ADDRESS>Sent: Tuesday, 5 May 2015 10:43 AM
To: GeoscienceAustralia/agdc
Subject: [agdc] WOfS and pretiled ingestion (#42)
jeremyh wants to merge 25 commits into develop from jez/water:
These changes add functionality for ingesters of data that is already tiled. The metadata is loaded from the GDAL properties of each tile (these properties are not standardised, and will probably be extended if used by future ingesters.). Much of the duplicated code between the existing ingesters is moved into the abstract folder, so the Landsat and Modis ingesters are smaller than before.
The WOfS ingester is a single file at src/wofs_ingester.py (following the naming conventions of other ingesters), and presents the same command line interface as the two existing ingesters.

You can view, comment on, or merge this pull request online at:
https://github.com/GeoscienceAustralia/agdc/pull/42
Commit Summary

Add initial dataset/ingest for woffs.
Add missing tags to wofs metadata.
Use existing sequence for new DB type ids.
Correct band->tile db mapping
Make base argument parser extensible to avoid repetition.
Start separating out a simpler TiledIngestor type.
Make expected fields explicit in abstract classes.
Separate tile_contents into simpler pieces (unfinished)
Refactor dataset class to allow in-place tile creation.
Note missing foreign key.
Ensure persisted paths are absolute. Record row metadata.
Pre-tiled and gdal-metadata handling is not WOfS-specific.
Support dates both with and without milliseconds.
log dataset information on unexpected failures.
Avoid accessing internal fields directly: pretiled dataset.
Add ingester usage example to README.
Modis ingestions should work from outside data directory.
Don't hard-code log level settings.
Remove WOfS sql: it's tracked with Flyway files now.
Combine WOfS code into one file.
Replace WOfS package with a single WOfS file.
Combine duplicated run-ingest code.
Remove custom filter_datasets() logic from WOfS
Fix path/row filtering via gdal metadata.
Correct gdal extent doc string type.

File Changes

M setup.pyhttps://github.com/GeoscienceAustralia/agdc/pull/42/files#diff-0 (1)
M src/abstract_ingester/init.pyhttps://github.com/GeoscienceAustralia/agdc/pull/42/files#diff-1 (134)
M src/abstract_ingester/abstract_bandstack.pyhttps://github.com/GeoscienceAustralia/agdc/pull/42/files#diff-2 (6)
M src/abstract_ingester/collection.pyhttps://github.com/GeoscienceAustralia/agdc/pull/42/files#diff-3 (63)
M src/abstract_ingester/dataset_record.pyhttps://github.com/GeoscienceAustralia/agdc/pull/42/files#diff-4 (53)
A src/abstract_ingester/pretiled.pyhttps://github.com/GeoscienceAustralia/agdc/pull/42/files#diff-5 (309)
M src/abstract_ingester/tile_contents.pyhttps://github.com/GeoscienceAustralia/agdc/pull/42/files#diff-6 (511)
M src/abstract_ingester/tile_record.pyhttps://github.com/GeoscienceAustralia/agdc/pull/42/files#diff-7 (117)
M src/datacube.pyhttps://github.com/GeoscienceAustralia/agdc/pull/42/files#diff-8 (10)
M src/landsat_ingester/init.pyhttps://github.com/GeoscienceAustralia/agdc/pull/42/files#diff-9 (40)
M src/landsat_ingester/main.pyhttps://github.com/GeoscienceAustralia/agdc/pull/42/files#diff-10 (21)
M src/landsat_ingester/landsat_bandstack.pyhttps://github.com/GeoscienceAustralia/agdc/pull/42/files#diff-11 (2)
M src/modis_ingester/init.pyhttps://github.com/GeoscienceAustralia/agdc/pull/42/files#diff-12 (102)
M src/modis_ingester/main.pyhttps://github.com/GeoscienceAustralia/agdc/pull/42/files#diff-13 (22)
M src/modis_ingester/modis_bandstack.pyhttps://github.com/GeoscienceAustralia/agdc/pull/42/files#diff-14 (2)
A src/wofs_ingester.pyhttps://github.com/GeoscienceAustralia/agdc/pull/42/files#diff-15 (97)

Patch Links:

https://github.com/GeoscienceAustralia/agdc/pull/42.patch
https://github.com/GeoscienceAustralia/agdc/pull/42.diff

—
Reply to this email directly or view it on GitHubhttps://github.com/GeoscienceAustralia/agdc/pull/42.
Geoscience Australia Disclaimer: This e-mail (and files transmitted with it) is intended only for the person or entity to which it is addressed. If you are not the intended recipient, then you have received this e-mail by mistake and any use, dissemination, forwarding, printing or copying of this e-mail and its file attachments is prohibited. The security of emails transmitted cannot be guaranteed; by forwarding or replying to this email, you acknowledge and accept these risks.


Make Noarch

Checklist

[x] Used a personal fork of the feedstock to propose changes
[x] Bumped the build number (if the version is unchanged)
[ ] Reset the build number to 0 (if the version changed)
[x] Re-rendered with the latest conda-smithy (Use the phrase @conda-forge-admin, please rerender in a comment in this PR for automated rerendering)
[x] Ensured the license file is being packaged.

This PR makes this package noarch.

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.

@BastianZim I'm not familiar with the transition to a noarch package.  Do you have a link for the recommended transition?  The build check for CircleCi seems to be the only true failure at this point (🐍 3.11 support will have caused a need to rebase)

Hi @andrew-mcgrath sure, noarch packages are explained here: https://conda-forge.org/docs/maintainer/knowledge_base.html#noarch-python but the overall discussion is in https://github.com/conda-forge/conda-forge.github.io/issues/1840 if you have more questions.
CircleCI can be ignored, that is just a leftover from before. Hopefully a bot can come by at some point.

@conda-forge-admin, please rerender

Hi! This is the friendly automated conda-forge-linting service.
I was trying to look for recipes to lint for you, but it appears we have a merge conflict.
Please try to merge or rebase with the base branch to resolve this conflict.
Please ping the 'conda-forge/core' team (using the @ notation in a comment) if you believe this is a bug.

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.

Webhook deleted here too.

Thank you! Quick question: I asked in the main thread but didn't get an answer: For the potential bot/migrator to clean this up in all feedstocks, are there any examples? I'm happy to try to write one, but there is no info on how to do it.

Apparently the ghost notification won't disappear from the current PR, but should not show up in the coming ones.
Did you check this repo? I haven't written a migrator, but there are several examples: https://github.com/conda-forge/admin-migrations

Merging based on conversation history of CircleCI pipeline allowed to be ignored and that it won't show up in future build references.

Did you check this repo?

Yeah, it's just that some of the CircleCI info is not visible when you're not core. But that is a good list – thanks. Slightly busy right now but when I have a minute, I'll see if I can write something.


Docs.MS Release Updates for azure-data-schemaregistry

Update docs metadata and targeting for release of azure-data-schemaregistry

Docs Build status updates of commit 33989a7:
:clock10: Full build: the average full build time is 83 min(s) 42 sec(s), this is based on the last 695 build(s) for this repository.


Unable to remove @key definition

Note: If your issue/bug is regarding the AWS Amplify Console service, please log it in the
Amplify Console GitHub Issue Tracker

Describe the bug
A clear and concise description of what the bug is.
Trying to remove an @key definition in my model leads to an error: Attempting to mutate more than 1 global secondary index at the same time on the xxx table
Amplify CLI Version
You can use amplify -v to check the amplify cli version on your system
4.29.3
To Reproduce
Steps to reproduce the behavior or terminal output if applicable
create a model with @key and then remove @key definition
Expected behavior
A clear and concise description of what you expected to happen.
Expect no errors when a @key is removed
Screenshots
If applicable, add screenshots to help explain your problem.
Desktop (please complete the following information):

OS: [e.g. Mac/Windows/Ubuntu]
Node Version. You can use node -v to check the node version on your system
Windows, node v14.6

Additional context
Add any other context about the problem here.

@frankclaassen Did you try to remove the @key immediately after adding it?

No, this @key has been in the schema for weeks and I have not had any issues with adding / changing keys one at a time until I updated to the latest version of the CLI. This is a new problem. I was able to add a new @key no problem but trying to delete an old @key throws this error. An no, I am not updating multiple GSI's at once, CLI is confused

Tried reverting back to 4.29.2 and same problem still exists

I feel for you Frank.  I had a similar problem due to inexperience with Dynamodb and GSI's and had to create a new project.  (Not claiming you are inexperienced!) Today I have been very careful pushing changes to my schema making sure to only add one key directive at a time.  Its slow going and I did have one instance where I was prompted that add I was adding multiple GSI's when I'm almost certain I didnt.  Luckily enough I was able to remove the last @key I added and continue on, nearly had heart failure though. So maybe there is some bug that results in the CLI thinking you are adding or mutating multiple GSI's when you are not..I'm on 4.29.3

@myfairshare yeah, knowing amplify framework is very much still evolving, I have been very careful with adding models & keys and haven't had any issues with it in the 4 months or so I have been using it, which is why this issue is very frustrating. My system is in production, hence I can't afford to scrap the current project and create a new project.  Hoping the AWS team will find the issue and resolve it soon.

Do you have only single @key or multiple? If it's the latter then I think this might be related to #5380 I posted a solution there which basically means you can only operate on the last @key for given model. I think a temporary solution for this could be commenting out the @key and not removing the line if its between other @keys but I haven't tested that.

@dsypniewski Yup, seems to be the same problem. Yes, I have multiple @keys on that type and the one I am trying to remove is the first @key defined. I don't want to downgrade to 4.27.3, so will wait for the team to resolve this issue.

@dsypniewski and I tried just commenting the @key out but it gives the same error

Any updates?

@frankclaassen Could you provide a schema to reproduce this? Are you removing @key in only one type?

@SwaySway I was only trying to remove 1 @key, can't remember which key it was anymore as I've added so many new types & keys since opening this issue. Will open a new issue if I experience this problem again


Create instructors partial

The same snippet of code to get instructors on one line is used twice. This calls for another partial

All done


Allow a higher version of the hashie gem

Changes
Allow a higher version of the hashie gem since a new major version came out.
QA should involve testing a new release of the gem locally to make sure it still outputs into Slack. Also, we should test the setup command continues to work.

I've built the gem locally and verified that both the send and setup command continue to work.


New crendentials

If I want to add a new credentails Protocol to Turnstile.
Where can I put this?

It most likely will be in this file:
https://github.com/stormpath/Turnstile/tree/master/Sources/Turnstile/Credentials
What credentials are you thinking of adding?

Closing due to lack of response. Feel free to reopen if needed!


Memoize hashCode for all FirrtlNodes

This PR adds some additional state to every FirrtlNode but speeds up passes that need to hash stuff (like ExpandWhens and CSE)
I benchmarked this branch using my trusty new firrtlbench repo.
Looking at regress/Rob.fir and rocketchip.DefaultL2Config.fir (built with rocket-chip master)
Runtime with current Firrtl master b69e787c0a698b7fb703ccd8d24003f83207e296
[info] BenchmarkVerilogCompiler.measureRob     avgt    5  10.282 ± 0.823   s/op
[info] BenchmarkVerilogCompiler.measureRocket  avgt    5  14.875 ± 1.497   s/op
Runtime with this branch
[info] BenchmarkVerilogCompiler.measureRob     avgt    5   6.975 ± 1.667   s/op
[info] BenchmarkVerilogCompiler.measureRocket  avgt    5  12.722 ± 0.501   s/op
Speedup of 15-30%, not bad!

To illustrate why this has such a large impact, hashCode is called 1,428,192 times on WRef but only 226,259 of those calls are on unique WRefs.

Performance specified as: mean (stdev), both in ms

design
master
this branch

rocket
19.7 (0.43)
19.3 (0.28)

boom
40.4 (0.55)
35.0 (0.31)

hwacha
72.2 (1.6)
67.9 (2.4)

Not as big a win as it was originally unfortunately

Is this still relevant?

I think its worth revisiting/rebenchmarking

Agreed, still want to fix the lazy val -> def thing for IntWidth though

Disregard my comment - changing lazy val to def is too onerous in this organization, and it's minor anyway.

I'm running some benchmarks

As far as I can tell, performance is a wash. I'm going to table this.


ROX-23971: add benchmark table

Description
~Note: this a work in progress~
This PR will add a benchmark table and populate it on startup. The idea is to link the benchmarks with the profiles via the profile_names column.
Benchmarks are loaded and upserted at startup using the json files located in pkg/defaults/complianceoperator/files. For now we just added an example:
{
  "id": "4d0d96f7-3782-41ba-b3b7-c040686a421c",
  "name": "CIS Red Hat OpenShift Container Platform Benchmark",
  "version": "v1.5.0",
  "description": "",
  "provider": "CIS",
  "shortName": "CIS-OCP",
  "profiles": [
    {
      "profileName": "ocp4-cis",
      "profileVersion": "latest"
    },
    {
      "profileName": "ocp4-cis-node",
      "profileVersion": "latest"
    },
    {
      "profileName": "ocp4-cis-1-5",
      "profileVersion": "1.5.0"
    },
    {
      "profileName": "ocp4-cis-node-1-5",
      "profileVersion": "1.5.0"
    },
    {
      "profileName": "ocp4-cis-1-4",
      "profileVersion": "1.4.0"
    },
    {
      "profileName": "ocp4-cis-node-1-4",
      "profileVersion": "1.4.0"
    }
  ]
}

Checklist

[ ] Investigated and inspected CI test results
[x] Unit test and regression tests added
~[ ] Evaluated and added CHANGELOG entry if required~
~[ ] Determined and documented upgrade steps~
~[ ] Documented user facing changes (create PR based on openshift/openshift-docs and merge into rhacs-docs)~

If any of these don't apply, please comment below.
Testing Performed
Here I tell how I validated my change

[x] Manual testing: Deploying ACS and checking the benchmark table is populated
[x] Unit tests pass

Reminder for reviewers
In addition to reviewing code here, reviewers must also review testing and request further testing in case the
performed one does not seem sufficient. As a reviewer, you must not approve the change until you understand the
performed testing and you are satisfied with it.

/retest


Paxel and pickaxe doesn't pickup blocks correctly

Paxels does not pickup vanilla anvils.
(ItemMekanismPickaxe untested bug, assumed to also have same aforementioned bug)
I'm sure there are other blocks that might have similar issues.
Tested this with diamond, iron, obsidian paxels.
1.7.10 - <IP_ADDRESS>

Fixed


Add automated tests

Using protractor?
https://github.com/angular/protractor

https://docs.angularjs.org/guide/unit-testing have a lot of good information!
Jasmine seems good for angular and is used in angularjs documentation.


winget - Argument name was not recognized for the current command: '--download-directory'

Type of issue
Code doesn't work
Feedback
the option "-d, --download-directory	Directory where the installers are downloaded to." that is mentioned on the learn page does not seem to be implemented.
Windows Package Manager v1.8.1911
Copyright (c) Microsoft Corporation. All rights reserved.
Argument name was not recognized for the current command: '--download-directory'
Windows Package Manager (Preview) v1.9.2411-preview
Copyright (c) Microsoft Corporation. All rights reserved.
Argument alias was not recognized for the current command: '-d'
Page URL
https://learn.microsoft.com/en-us/windows/package-manager/winget/download
Content source URL
https://github.com/MicrosoftDocs/windows-dev-docs/blob/docs/hub/package-manager/winget/download.md
Author
@mattwojo
Document Id
ffd25a38-f0e8-bf19-292d-fe609b4deb78

It looks strange... Both --download-directory and -d works for me.
Can you go to Windows Settings - Apps - Installed Apps, enter the Advanced Options for Windows Package Manager Source (winget) V2, and try repairing or resetting it?

If it still couldn't work properly after taking these actions, creating a bug report here at microsoft/winget-cli may be better for you :)

Thanks LiCaoZ,
I just realize that "--download-directory" is an option for download command only and not available for upgrade or install commands (which is ashamed, but that is another story )


Tests failing when shelling out to conda

When running python setup.py test I'm getting the following error when running in a fresh conda environment:
[604.17%] ··· Error running /home/anders/anaconda/envs/asv-test/bin/conda create --yes -p /tmp/pytest-0/test_run_new_all0/env/51ea1b41623d668554f676f8b747c3c1 --use-index-cache python=2.7 pip

If I run that command manually:
 /home/anders/anaconda/envs/asv-test/bin/conda create --yes -p /tmp/pytest-0/test_run_new_all0/env/51ea1b41623d668554f676f8b747c3c1 --use-index-cache python=2.7 pip

It seems to create the env just fine. Wondering if anyone else is having this issue or if it's just something wrong with my setup.

Please give the whole error message --- anaconda will probably print out
a reason why it failed.

Hm I am unable to reproduce the problem today. I must have been doing something weird. Sorry!

Note that the failure may be real but sporadic, e.g. too busy Anacoda package servers or other connection problems.
Another possibility is a race condition inside conda --- some of the tests exercise parallel environment creation. If multiple environment creation commands are launched simultaneously, and conda needs to use some internal caches, and their locking is not properly implemented in the  conda command, then some random-looking problems will probably crop up. I don't know anything about internals of conda, however, so I don't know if this is the case. The error messages it prints might tell something about this.

Thanks, I'll keep that in mind. I didn't save the full message. If I see it again I'll post it.


Add invoke feature to signal

Invoke gives users a way to run an arbitrary function in the call order of a signal.  This can be useful when a small amount of setup work is necessary for a single listener, and that setup work must happen in the call order of the event being registered.
It can also be useful in running a lambda after all other signals have been registered.
One complex use case:
std::string value;
autowiring::signal<void()> onChanged;
onChanged.invoke([&] {
  // Register the handler in the signal's synchronization context.
  onChanged += [&] {
    // This gets invoked after all signal handlers for the current signal are done
    onChanged.invoke([this] {
      std::cout << "All done!" << std::endl;
    });
  };

  // Now we can also take a snapshot of the value the signal might be referencing.
  std::cout << "Value is " << value << std::endl;
});

// This might possibly be how a user would update the value without needing a mutex to do so
std::string newValue;
onChanged.invoke([&, newValue] {
  value = newValue;
});

Looks good, including one or two nice refactors (moving the detail stuff to it's own header)


feat: update container definition including additional parameters to configure

Based on #144
Closes #144

v2.21.0 has been released.


Unpackerr partially fails to use lidarr output path when said path is a full path to a single file.

Example output path from Lidarr: /downloads/Torrents/lidarr/(Download Release)/(Download Release).rar
Error in unpackerr:
[INFO] 2024/01/15 10:04:40 Extraction Started: (Download Release), items in queue: 0
[INFO] 2024/01/15 10:04:43 Extraction Error: (Download Release): os.MkDirAll: mkdir /downloads/Torrents/lidarr/(Download Release)/(Download Release).rar: not a directory

It appears to be working under the assumption that the output path is always a folder, which does not appear to be the case here. Lidarr can have an output path as a single file sometimes?
Or rather, it says it fails to unpack, but if you look in the folder, it's unpacked but it keeps logging errors due to this and keep retrying it for some reason.

Unfortunately torrents that lack folders are not compatible with starr apps. Once unpackerr extracted the music files from that rar file there is no where it can put the files where Lidarr will find and import them. If the download pointed to a folder instead of a file, the extracted content can be put into the folder where the starr app is able to locate it.
I've heard that some torrent clients may have a setting to always create a folder. You may also be able to setup custom formats to avoid release groups that create incompatible torrents. Good luck!

For what it's worth, the latest version of Unpackerr (0.13.0) will extract these items now. Lidarr still wont know how to import them though. Let me know how that works out for you!

For what it's worth, the latest version of Unpackerr (0.13.0) will extract these items now. Lidarr still wont know how to import them though. Let me know how that works out for you!

Sure. That's fine, and reasonably easy to work around by manual importing. I do wish lidarr supported download clients that are set to put everything in a subfolder though.
I'll report back eventually I guess.

The passive voice at the end there makes it sound like you expect me to do something else. Any suggestions?

Oh no, I can hardly expect more to be done on this side when the root cause of the issue is in the *arr apps having no idea how to handle a download client that's creating a subdirectory and just being generally confused.
Just having it unzipped and not treated as an error in unpackerr is sufficient. Even though previously it would somehow unpack it and error out and leave the unpackerr suffixed folder behind.


missing requirement for six

The package seems to require six, but it is not listed in the setup.py file.

Thanks for the issue!


How to get the breakpoint variable value from _settings.scss

Pardon but this is not an issue as much as a technical question.
I am trying to incorporate the values of the set breakpoints in the _settings.scss file. Meaning, I would like to get the pixels I have set here:
$breakpoints: (
  small: 0,
  small-medium: 600px,
  medium: 960px,
  large: 1024px,
  xlarge: 1200px,
  xxlarge: 1440px,
);

Is there a way to use something like @include breakpoint(small-medium) but only nab the 600px value?
Again sorry for using this forum for what might be a newbie question. I couldn't find anything in the documentation. If there is a better place for this question, please advise.

map-get($breakpoints, small)

Thank you so much. That did it.


Diagram updated

Hi @Zakir-Hossine, thanks for this. It looks like you might have accidentally committed an old jossPaper directory in this PR, so I'm going to close it and just add your diagram directly with a coauthor. Thanks again.


Porting to GMSMapView

How hard would it be to port this implementation into GMSMapView?

Closing this for now. Please reopen if there are new ideas on how to implement this. Thanks


Update icon if possible

Hi VS Code PM here 👋
We decided to make your extension featured this month https://marketplace.visualstudio.com/vscode
The issue is that the Marketplace site does not render your icon nicely, since it is very white. Thus the list looks a bit broken.
I was wondering if it would be possible to update the icon so it looks better in the list?
If this is not possible no problem. We will fix the rendering on our side in the future and we can then feature your extension.
Thanks a lot
Isidor

@isidorn that's awesome! I will add a blue tint that is more white/black friendly, do you need it to have an opaque background or is transparent still fine?
CC @nohwnd

@JustinGrote You could also just use the official logo, as a quick fix. I see other logos also have background. https://github.com/pester/Pester/blob/main/images/pester_blue_darker.pdf I don't know what is the best image format to get as a logo, but you can screenshot any size from that pdf that you like, to get something quickly.

Or our org logo https://avatars.githubusercontent.com/u/2376848?s=200&v=4

@nohwnd thanks! Will do.
@isidorn hope to turn this around by end of today

Closed 837a4d52b5a4a8d81391a87ea179e8a42c842ca1

@isidorn looks good to me now. Thanks for the heads up and thanks for the honor!

Awesome!


FlatImages consumes huge amount of memory

Not sure if this is how flatimages works. But I have a flatimage for Command and Conqure zero hour and it consumes 2 GB of ram when it runs. Is this normal. When use wine that is installed using apt it only consumes about 400 MB of ram.

FlatImage itself has low overhead. This might be introduced by bubblewrap to containerize applications, and having to load several libraries into memory that you already have installed on the host (but might have differing versions and be incompatible with your game).


Give CODEOWNERS file an owner in CODEOWNERS

Python's CODEOWNERS already had an entry for the CODEOWNERS file, I'm moving it down to the bottom of the file with the rest of the Eng stuff.

/check-enforcer evaluate


Description
ImprovMX is a free email forwarding service. This extension allows you to create a masked email address quickly, add a new domain, and create an alias and SMTP credentials. An account with ImprovMX and ImprovMX API key is required to use this extension.
Screencast

Checklist

[x] I read the extension guidelines
[x] I read the documentation about publishing
[x] I ran npm run build and tested this distribution build in Raycast
[x] I checked that files in the assets folder are used by the extension itself
[x] I checked that assets used by the README are placed outside of the metadata folder

@pernielsentikaer Thank you for reviewing.
I have made the necessary changes, so you should not encounter the same problem again. Please review and let me know if you have any further feedback. Thank you :)

@pernielsentikaer, good catch! It was a broken validation code.
I have just pushed a fix. Could you please review again? Thank you!


Mismatched glibc version

Running:
make DOCKER_IMAGE=ubuntu:18.04  DOCKER_CPUS="aarch64" DOCKER_TARGETS=all docker-build

and testing one of the resulting binaries on a Coral EdgeTPU dev board, produces the following:
mendel@edgetpu:~$ ./classify_image
./classify_image: /lib/aarch64-linux-gnu/libm.so.6: version `GLIBC_2.27' not found (required by ./classify_image)

Mendel ships with glibc 2.24:
mendel@edgetpu:~$ ldd --version
ldd (Debian GLIBC 2.24-11+deb9u4) 2.24

This is because dev board still has Debian Stretch  (we are going to move to Buster soon). You can build code for dev board by specifying DOCKER_IMAGE=debian:stretch.

This is because dev board still has Debian Stretch (we are going to move to Buster soon). You can build code for dev board by specifying DOCKER_IMAGE=debian:stretch.

Just confirmed this is working

@dmitriykovalev : Do you have an ETA for the Debian Stretch release? It is not included yet at https://coral.ai/software/ but it is mentioned at https://coral.googlesource.com/docs/+/refs/heads/master/Releases.md and https://packages.cloud.google.com/apt/dists and https://coral.googlesource.com/docs/+/refs/heads/release-day/GettingStarted.md .

@gpapan it's released back in November 19 :)
https://coral.ai/news/updates-11-2019/


Add installation / usage instructions to README.md

The README now contains more complete instructions for using it in a modern web development environment (i.e. WebPack).
CDN usage has also been added (as mentioned on https://csstools.github.io/sanitize.css/).
See also #127.

Awesome! Thank you!

You're very welcome, thank you again for motivating me into doing this, however small the contribution is. It made me understand WebPack yet a little better.


UnboundLocalError: local variable 'ext' referenced before assignment

Issue summary
I am trying to install a rom and I get the following error:
roms$ python -m retro.import .
Traceback (most recent call last):
  File "/home/luttkule/anaconda3/envs/rl-test/lib/python3.9/runpy.py", line 197, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "/home/luttkule/anaconda3/envs/rl-test/lib/python3.9/runpy.py", line 87, in _run_code
    exec(code, run_globals)
  File "/home/luttkule/anaconda3/envs/rl-test/lib/python3.9/site-packages/retro/import/__main__.py", line 4, in <module>
    main()
  File "/home/luttkule/anaconda3/envs/rl-test/lib/python3.9/site-packages/retro/scripts/import_path.py", line 21, in main
    known_hashes = retro.data.get_known_hashes()
  File "/home/luttkule/anaconda3/envs/rl-test/lib/python3.9/site-packages/retro/data/__init__.py", line 401, in get_known_hashes
    known_hashes[sha] = (game, ext, os.path.join(path(), curpath))
UnboundLocalError: local variable 'ext' referenced before assignment

This is the content of the directory:
roms$ ls
'Street Fighter II'\'' - Special Champion Edition (Europe).md'  'Street Fighter II'\'' - Special Champion Edition (Europe).zip'

I downlaoded and extracted the rom from https://wowroms.com/en/roms/sega-genesis-megadrive/download-street-fighter-ii-special-champion-edition-europe/26496.html
System information

[Operating system] Ubuntu 20.04
[Python version] 3.9.10
[Gym Retro version] 0.7.1

Thank you.
It seems to me that the import is still not successful:
(rl-test) luttkule@LeLuGPC-u:/mnt/UHDD/git/rl-test/nicholas-renotte/streetfighter/roms$ ls
'Street Fighter II'\'' - Special Champion Edition (Europe).md'  'Street Fighter II'\'' - Special Champion Edition (Europe).zip'
(rl-test) luttkule@LeLuGPC-u:/mnt/UHDD/git/rl-test/nicholas-renotte/streetfighter/roms$ python -m retro.import .
Imported 0 games
(rl-test) luttkule@LeLuGPC-u:/mnt/UHDD/git/rl-test/nicholas-renotte/streetfighter/roms$ python -m retro.import 'Street Fighter II'\'' - Special Champion Edition (Europe).md'
Imported 0 games
(rl-test) luttkule@LeLuGPC-u:/mnt/UHDD/git/rl-test/nicholas-renotte/streetfighter/roms$ python -m retro.import .
Imported 0 games
(rl-test) luttkule@LeLuGPC-u:/mnt/UHDD/git/rl-test/nicholas-renotte/streetfighter/roms$ python -m retro.import Street\ Fighter\ II\'\ -\ Special\ Champion\ Edition\ \(Europe\).md
Imported 0 games

I'm not 100% sure but did you make sure your rom.sha matches the file you downloaded? If not you might need to update/create a rom.sha file.


Diamond Cooler calculation

Do I not understand the definition of "Sandwiched between water coolers"
My reactor is producing the same heat with or without the diamond coolers located in this screenshot.
To me sandwiched between means one on top/bottom or one on left/right.
Does it mean fully encased?   fully encased horizontally or on all axis? i.e. 4 water coolers or 6?

I should make it more clear in the next release - 'sandwiched' means on four sides in the same plane, and 'between' means one either side - thanks for pointing that out :)

Made clear in the upcoming version 2.3 :)


Include types

It would be great if this project included types to improve its compatibility with typed languages such as TypeScript.

Yes such PR would be very appreciated :+1:

I went to have a look at this but it wasn't clear to me how this is being deployed to npmjs, so I could't modify the process to include the types.
What needs to be done is
npx typescript 'src/index.js' --declaration --allowJs --emitDeclarationOnly --outDir dist

as part of the build for deployment.
Then add the following to package.json
"types": "dist/index.d.ts",


Feedback for Migration guide

Please document that if you do a name change of your license after the migration tool has been generated, that you get the following error;
ApplicationException: Error: Unable to resume migration session because company name or serialnumber has changed

Document Details
⚠ Do not edit this section. It is required for docs.superOffice.com ➟ Docs Team processing.

Content Source: sharepoint-documents-migration-steps

Excellent observation @acdavidh !

I just noticed this feedback is on the wrong page, should be for this one:
https://github.com/SuperOfficeDocs/superoffice-docs/blob/main/docs/en/online/migrate/index.md

@acdavidh do you think it should go under the wizard section or requirements? Initially, I placed it in the caution on top of the step page.
Btw I've also added a section for this exception on the troubleshooting page.

@digitaldiina I would add it under the requirements like 'Make sure no name change or serial number is performed while a migration process (either test or production) is active' (or similar)

@digitaldiina Do note you added this info to the sharepoint migration documentation, not the SuperOffice OnSite to SupoerOffice Online documentation migration. (that was what I meant with my comment earlier today that I included the wrong page for this feedback)

@acdavidh gah, I was still in the SharePoint head-space and caught only "migrate/index" without reading the full path. My bad😳.

@digitaldiina Yes, much better 😀
Only minor would be that you could read the 'while OMT is running' part as that it is safe to do in between runs, which it is not (which we found out the hard way 😅)
So for example if you first run the OMT for a test migration, and say a few months later run it again for the final/production migration, you can't change the license name or serial number between those 2 runs.


fix: Show unsupported network UI on reconnect when chainId in wallet is not supported

Description
Show unsupported network UI on reconnect when chainId in wallet is not supported
Type of change

[ ] Chore (non-breaking change that addresses non-functional tasks, maintenance, or code quality improvements)
[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)

Associated Issues
For Linear issues: Closes APKT-xxx
For GH issues: closes #...
Showcase (Optional)
If there is a UI change include the screenshots with before and after state.
If new feature is being introduced, include the link to demo recording.
Checklist

[ ] Code in this PR is covered by automated tests (Unit tests, E2E tests)
[ ] My changes generate no new warnings
[ ] I have reviewed my own code
[ ] I have filled out all required sections
[ ] I have tested my changes on the preview link
[ ] Approver of this PR confirms that the changes are tested on the preview link

@svenvoskamp We should have been this case in wallet.spec.ts but AFAIK through the time it got skipped and removed, if not can we add that to E2E tests as well?

We still have this in wallet.spec.ts. It shows unsupported UI when we switch to a different chain in wallet. This case is hard to test with sample wallet, because it will return an array of chains. We need E2E with browser extension to test this better IMO


Feature Request: Show speeds on Shortlist/Starred pages

Hey Luke,
Thanks for making this extension!
One useful feature addition would be to include a small summary of the NBN info on the user's shortlist/favourites screen. eg. for Domain, it's found at https://www.domain.com.au/user/shortlist, and presents a grid view of starred properties.
For space reasons, maybe you'd have to just go with smaller text like "FTTN 40", "FTTP 90", etc. This would still allow the user to easily compare a dozen options to see which ones give the best speeds, without opening multiple tabs to do so.
Thanks!

Hi,
I like this idea and have created an initial implementation for Realestate.com.au and Domain.com.au. I will fix up some small bugs and hopefully get it up within the next few days.

Cheers,
Luke

Ok this is now live on all platforms.


Update custom kinfraglib

Description
All notebooks were run on an updated environment and all warnings and problems were resolved
Todos
Notable points that this PR has either accomplished or will accomplish.

[x] Resolve all problems (e.g. using display(figure) instead of figure.show())
[x] Resolve all warnings (e.g. using pd.concat instead of append()))
[x] Bug KinFragLib/data/fragment_library_custom_filtered/custom_filter_results.csv contain columns for retro (retro_count, retro_bool) but notebooks suggests that it has those columns -> replace this with a correct file
[x] Changed enamine building block substructure search https://github.com/volkamerlab/KinFragLib/pull/63
[x] New notebook containing code for figures in custom kinfraglib paper https://github.com/volkamerlab/KinFragLib/pull/64

Status

[x] Ready to go

It leads to a warning, therefore all notebooks were changed accordingly

View entire conversation on ReviewNB

I removed to showing part, since - in my opinion - it makes to sense to print this

View entire conversation on ReviewNB


leave condition expression when rule change

Describe the bug
Changing a rule command (keep -> delete) results in all input box cleared.
It's a critical loss if some expression was a result of long effort.
To Reproduce
Steps to reproduce the behavior:

Import & wrangle any dataset.
Edit rules.
Select keep command.
Fill in the condition box.
Change into delete command.
The contents in the box has gone.

Expected behavior
I wish the contents in the input box as possible. (condition -> condition, value -> value)

Won't do


[build-preset] Add no_test variants of all of the buildbot_linux_* pr…

…esets.
The key thing is that these skip all testing except for the integration testing
and thus are perfect for subproject buildbot testing.
The reason why I am doing this is I discovered that dispatch is not using
build-presets. This means that dispatch may not get updated properly (resulting
in integration test failures) when we add new package installation dependencies
(like llvm-cov, llvm-profdata) for the integration tests.
This is functionally the same as dispatch's build today except that we /will/
build lldb. That being said I think it makes sense to build the entire package
for dispatch so if we have any integration issues in between lldb and dispatch
we can test them.
SR-9080

@swift-ci smoke test

preset=buildbot_linux_1604,notest
@swift-ci Please test with preset Linux Platform

Looks like, I can't use multiple mixins = (.

Nope. I just messed up.

preset=buildbot_linux_1604,notest
@swift-ci Please test with preset Linux Platform

preset=buildbot_linux_1604,notest
@swift-ci Please test with preset Linux Platform

@swift-ci smoke test

@swift-ci smoke test

@swift-ci smoke test

preset=buildbot_linux_1604,notest
@swift-ci Please test with preset Linux Platform


ASP.NET Core WebApi performance vs WCF

Hi,
I just started to investigate to use this cool new ASP.NET Core 2.0 WebApi technology for a new service layer, instead of using legacy WCF.
However, my initial tests shows that it's much slower than WCF. Is this expected or are there ways to tweak ASP.NET Core / MVC to perform in par with WCF?
In my tests I created the exact same service operation in WebApi and WCF (SOAP), which returns a simple object with three properties. Using SoapUI for load test, I got more than 4 times slower response times from the REST service compared to the WCF SOAP service (133ms vs 33ms). It didn't matter if the host was IIS, Kestrel or Docker, loaclly or in Azure. I got the same result.
Also tested with different clients like Postman and WPF.
/Staffan

@SWarnberg it's hard to say what the expected performance differences are without knowing all the details. Even small differences in the code can cause huge performance changes.
Can you share the code of your tests (both WCF and ASP.NET Core 2.0) so that we can investigate?

Sure. I created two projects. Both are basically untouched from the default templates, except that I now return a single "User" object. You can download it here: https://1drv.ms/u/s!AjOlUiKuao5Iq2Q53Xz_2xOiqU6f
The interesting thing here is that these projects gets the performance difference as I describe above when using the debugger (both in Debug and Release mode). However, when using Ctrl+F5, the performance in the WebApi is excellent and on par with, or better than, the WCF service.
However, my initial comparison I did before I wrote this post was on Azure, and the WebApi service was hosted with Docker. Is Docker behaving as poor as the debugger?
/Staffan

Thanks for sharing the apps. (BTW it's often easier to push things to GitHub as a public repo so that the code is browseable and linkable, but a ZIP works fine too!)
Running with a debugger attached will do all kinds of odd things because there are some parts of the code that check if the debugger is attached and do "extra" stuff to make it more debugger-friendly, so that could certainly explain some of it.
As to Docker, that's a whole different story.
I recommend checking that the ASP.NET Core app is running in "Production" mode (ASPNETCORE_ENVIRONMENT either not set, or set to "Production").
@natemcmaster - any idea if we've heard anything about perf issues when running in Docker?
cc @davidfowl @rynowak @mikeharder FYI/thoughts

OK, now I also added Docker support and published it to Azure here: http://webapi2020170817082850.azurewebsites.net/api/users.
The average response time I get in a load test is 47ms, which is not as good as my more complex WCF service in Azure (that returns the object from memory cache), which has an average response time of 33ms.

Hmm, I think I may have found the issue here. I just published the simple WCF service to Azure as well, and it performed quite poorly. It turned out that it got created in South Central USA, just as my first REST service. My first WCF service and last REST service was published to Europe where I'm situated. Hence, both those services respond much faster.
Never thought the location was so important.
But still, even though I ensured to have "Production" set, it feels Docker is a bit worse performance-wise. Could it be that it's in beta?

Where were you hosting Docker? On Azure? If so, using which Azure service?

any idea if we've heard anything about perf issues when running in Docker?

No issues I'm aware of. @SWarnberg what is your docker setup? When doing your perf investigations, remember that Docker containers may not have access to the full machine resources. If you're using Linux containers on a Windows server, you're actually running a container inside a VM, and the VM itself will have limited resources.

I'm closing this for now since the major problem was a regional issue with Azure. I can live with the local debugger is slower than debugging WCF services. I'm guessing it will be quicker in future versions.


feat: add pr action

Codecov Report
Base: 14.54% // Head: 14.54% // No change to project coverage :thumbsup:

Coverage data is based on head (eb0ec76) compared to base (a4bc8de).
Patch has no changes to coverable lines.

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #299   +/-   ##
=======================================
  Coverage   14.54%   14.54%
=======================================
  Files         116      116
  Lines       14671    14671
=======================================
  Hits         2134     2134
  Misses      12366    12366
  Partials      171      171

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

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


CSP Headers only being injected when Enable Rule Collection is disabled

This is a fresh install of Fiddler <IP_ADDRESS> on a Windows 7 system. I used the powershell command to pull the DLL today. I'm using Firefox 39.
CSP Headers are only being injected when the Enable Rule Collection on the CSP Rule Collector tab is UNCHECKED. This means I see the CSP errors in the Firefox Developer console only when Rule Collection is disabled. Enabled, there are no errors as no CSP header is being added.
Because Rule Collection is disabled, the URI is never added on the Rule Collector tab.
I found that if I Disabled rule collection, went to Firefox, Began loading a complex page, switched back to Fiddler and enabled Rule Collection, the Extension would capture the CSP error reports and generate a CSP for the traffic that was loaded after I clicked Enable Rule Collection. This of course only creates a partial rule, and attempting to browse to another page with Rule Collection Enabled means new CSP headers are not created for subsequent content.
Is this a bug in the extension? A change to Fiddler?
I repeated this on a Windows 10 system with the same results

I also see this bug with Fiddler4 when running latest Chrome and Firefox. I'm not sure what has changed to have this bug show up. I'll debug.

Looks like it was caused by a bad merge. Not sure how I missed this. Thanks for opening!

Thanks for fixing, it works much better now :) Great plugin btw, incredibly useful! Thanks!


Shaddows don't render correctly on dark backgrounds

I was trying to reproduce this design made on Adobe XD:

But on Flutter I get this:

As it can be seen, on a dark background the shadows lose its blur effect, becoming a solid color circle.
My code is just a simple Scaffold with a backgroundColor: Color(0xff272727),, containing a
FloatingActionButton(
  onPressed: () {},
  child: Icon(Icons.star, color: Colors.white,),
  backgroundColor: Colors.purple,
),

Flutter 1.12.13+hotfix.5 • channel stable • https://github.com/flutter/flutter.git
Framework • revision 27321ebbad (4 weeks ago) • 2019-12-10 18:15:01 -0800
Engine • revision 2994f7e1e6
Tools • Dart 2.7.0

Using current dev 1.20.0-2.0.pre I can't see anymore the single-color shadow.

Seems to be fixed, closing.
@feinstein please comment if I'm wrong and I'll reopen


To promise move

removes lettable version of toPromise
adds toPromise as a permanent member of Observable, since it's an interop point and means of subscription, and not really an "operator".

This enables:
source$.pipe(map(x => x + x), filter(x => x < 10)).toPromise()

Coverage decreased (-0.003%) to 97.453% when pulling 031edca9d22eb54cc25f5d526996c31d95636ffe on benlesh:toPromise_move into 16114fb9944fc09d971a9d32c70104489d0b7157 on ReactiveX:master.

@kwonoj give it another look.

Coverage decreased (-0.003%) to 97.453% when pulling ec3aace81f1f83549a9f0dd2d7a180812125cb41 on benlesh:toPromise_move into 16114fb9944fc09d971a9d32c70104489d0b7157 on ReactiveX:master.


How to draw between layers or hide labels

Hi, I spent some time reading into the source code and I'm not seeing an ability to, for example, draw between 'layers' (e.g. draw under labels, or draw under roads), or hide labels. Is this something that's planned on the roadmap? I almost expected protomaps.LeafletLayer to give me several layers which I can then manage myself. Thanks!

The general approach is for a protomaps.LeafletLayer to return one layer of canvas elements, analogous to a single layer of rasterized basemap tile images. You can specify an array of cartographic rules, either paint rules or label rules, in the constructor to Leaflet Layer. If none is passed, it defaults to the existing fairly ugly set of rules defined here: https://github.com/protomaps/protomaps.js/blob/master/src/default_style/style.ts#L38
I suggest defining different map layers via the Leaflet APIs, as it has a very rich and mature functionality here and is also extensible via plugins. I added two new examples: the first example draws a plain old satellite image Tile layer and then uses protomaps.js to draw only labels on top of it:
https://protomaps.github.io/protomaps.js/examples/labels.html
You can see here on line 50 that I pass an empty array for paint_rules, and label_rules is defined in the same file for only two classes of labels: https://github.com/protomaps/protomaps.js/blob/master/examples/labels.html#L50
Another use case like you mentioned is to "sandwich" arbitrary Leaflet layers, where the bottom bun of the sandwich is basemap areal objects - roads, buildings, lands polygons, etc, and the top bun is labels. Example here: https://protomaps.github.io/protomaps.js/examples/sandwich.html
This is accomplished by creating two protomaps.LeafletLayers and adding the label layer to a custom Leaflet Pane:
https://github.com/protomaps/protomaps.js/blob/master/examples/sandwich.html#L74

What may have happened is I changed the keys from paint_style and label_style to paint_rules label_rules between I think version 0.1 and 0.2. I just updated the code that is part of the download from v0.1.0 to v0.3.3.
To set expectations, I won't be good at sticking to semantic versioning before reaching a 1.0 because the internals are going to be moving around a lot, as I work on the major outstanding issues here: https://github.com/protomaps/protomaps.js/issues

Gotcha, makes sense! Thanks!
On Sat, Jun 5, 2021, 3:47 AM Brandon Liu @.***> wrote:

What may have happened is I changed the keys from paint_style and
label_style to paint_rules label_rules between I think version 0.1 and
0.2. I just updated the code that is part of the download from v0.1.0 to
v0.3.3.
To set expectations, I won't be good at sticking to semantic versioning
before reaching a 1.0 because the internals are going to be moving around a
lot, as I work on the major outstanding issues here:
https://github.com/protomaps/protomaps.js/issues
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/protomaps/protomaps.js/issues/15#issuecomment-855207468,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAMN5TLHLJVELS5OIW6KVNDTRHQALANCNFSM457MEM3A
.


add Ignore-Glob support to filefollow

@traetox PTAL

@traetox PTAAL, added tests and further collapsed logic

make sure add config option to docs.  LGTM