docs: Use HTTPS Git clone command instead of SSH in installation documentation

Summary of Changes
Changed git clone command to use HTTPS instead of SSH, so that Windows users can follow along with the documentation. This alternative command will also work the same for Mac and Linux users.
Tests
No new tests are needed.
Documentation
Changed git clone command to use HTTPS instead of SSH, so that Windows users can follow along with the documentation. This alternative command will also work the same for Mac and Linux users.
CheckList
Make sure you have checked all steps below to ensure a timely review.

[x] PR title addresses the issue accurately and concisely. Example: "Updates the version of Flask to v1.0.2"

In case you are adding a dependency, check if the license complies with the ASF 3rd Party License Policy.

[x] PR includes a summary of changes.
[x] PR adds unit tests, updates existing unit tests, OR documents why no test additions or modifications are needed.
[x] In case of new functionality, my PR adds documentation that describes how to use it.

All the public functions and the classes in the PR contain docstrings that explain what it does

thanks, could you fix the DCO issue?

thanks, could you fix the DCO issue?

Done 👍


Features should be taggable as underground, at level, or elevated

And this should be represented in the map

When imported from OSM, this info is set with the tunnel tag

This could be a little more complex: Tracks could be at level -2, -1, 0, 1, 2. If level == 0, it means it's at level, if it is at 1 is elevated. If it is < 0, it's underground. This level should be used to set the rendering order of the lines (with and order by in the features_collection_query).


missing number in text output of

Describe the issue
In Section 4.6 of RFC-to-be-9599, the
 tag contains two
 tags, but the "2" for the second
 tag does not appear in the text output.
Input:

Desired output:

(which is how it looks in the HTML and PDF outputs)
Actual output (not desired):

Various workarounds have been tried by the author and the RPC without success.
Code of Conduct

[X] I agree to follow the IETF's Code of Conduct

HTML on Safari (both macOS and iOS) is not looking good either:

Renders correctly on Firefox and Google Chrome.

@mchurch-rpc, As a workaround text content inside
 can be encapsulated with a <t> tag.
For example:

approximate
    preservation of the presence (and therefore timing) of congestion
    marks on the L2 frames used to construct an IP packet;

        <t>at high frequency of congestion marking, approximate
          preservation of the proportion of congestion marks arriving
          and departing;
        </t>

        <t>at low frequency of congestion marking, approximate
          preservation of the timing of congestion marks arriving and
          departing.
        </t>

Another option is to use type="%p%c" in inner
^1.
Example:

    approximate preservation of the presence (and therefore timing) of congestion marks on the L2 frames used to construct an IP packet;

        at high frequency of congestion marking, approximate preservation of the proportion of congestion marks arriving and departing;

        at low frequency of congestion marking, approximate preservation of the timing of congestion marks arriving and departing.

Output:
   1.  approximate preservation of the presence (and therefore timing)
       of congestion marks on the L2 frames used to construct an IP
       packet;

       2.a  at high frequency of congestion marking, approximate
            preservation of the proportion of congestion marks arriving
            and departing;

       2.b  at low frequency of congestion marking, approximate
            preservation of the timing of congestion marks arriving and
            departing.

Another example of this bug is


CMake Template Progress

[x] googleTest: gtest_discover_tests
[ ] Ctest: add_test https://cmake.org/cmake/help/v3.27/guide/tutorial/Installing and Testing.html
[ ] Catch: https://cliutils.gitlab.io/modern-cmake/chapters/testing/catch.html

Consider add C Test Module
https://cmake.org/cmake/help/v3.27/guide/tutorial/Installing and Testing.html

Consider add Catch Test Module
https://cliutils.gitlab.io/modern-cmake/chapters/testing/catch.html

Explore LCOV
https://dr-kino.github.io/2019/12/22/test-coverage-using-gtest-gcov-and-lcov/


Zuul filters not being replaced from ApplicationContext between tests

http://stackoverflow.com/questions/38622886/spring-boot-test-with-zuul-filters-is-not-picking-up-new-instance-of-bean
As the stackoverflow states I was able to resolve the issue temporarily by adding a @DirtiesContext to each test class and that allowed my tests to pass. The overall concern is that between test classes where Zuul filter beans were being recreated that the Zuul processing didn't pickup those new filters and instead continued to used the first instantiated versions of the filters.

We use @DirtiesContext regularly. That's how the spring context works in it's testing framework.

The concern I have is that there is no indication that I should have used @DirtiesContext until I spend a few hours diving into the fact that multiple instances of my Filter bean were being created and that the Zuul processing wasn't picking up that new instance in subsequent test classes. in talking with @philwebb he was concerned about having to use @DirtiesContext to get around my problem. What are the guidelines on this in relation to @SpringBootTest. The information I was given is that, where possible, the application context is cached between separate test classes. It would seem that in this situation the caching of the Zuul processing beans is what caused the issue as the underlying Filters that those beans used have been replaced with new instances in the context.

Without looking at a sample that shows the issue it's very hard to offer advice. My gut instinct is that the @Before/@After rules that change LiveMigrationRoutes somehow confuse Zuul. Perhaps it has some caching and isn't aware that the world has shifted beneath its feed?
@spencergibb  I'm not familiar enough with Zuul to say what's going on here but you might be able to use a TestExecutionListener if some state in the bean needs to get removed after each test.

I ran into this issue in Spring Boot 1.5.13.  In short, an application context refresh does not refresh the filter registry in the com.netflix.zuul code.
FilterProcessor.runFilters gets its filter list from the FilterLoader singleton, which in turn pulls from the FilterRegistry singleton.  Note that FilterRegistry.put uses Map.putIfAbsent to add filters.  So even though the ZuulRefreshListener executes when the test framework refreshes the Spring application context (see ZuulServerAutoConfiguration.java) and ultimately calls FilterRegistry.put with new filter instances, FilterRegistry.put does not replace the old filters with the new ones.
Applying @DirtiesContext did not work for me.  Instead, I worked around this issue by manually removing the old filter from the registry before running my Zuul tests:
    @BeforeClass
    public static void beforeClass() {
        FilterRegistry filterRegistry = FilterRegistry.instance();
        // note that you may need to purge additional filters for your tests
        filterRegistry.remove("preDecorationFilter");
    }

The recommended approach is to use the workaround suggested by @steve-stogner

I find even this does not work because another singleton, FilterLoader, keeps its own cache of filters in a ConcurrentHashMap called hashFiltersByType. On the first call, when this is empty, it gets the filter from FilterRegistry, but on subsequent calls it takes it from this cache, so even removing and re-putting the filter to the FilterRegistry does not work.


Canvas file reference lost when Loading/Saving

Hi,
Whenever Loading / Saving a canvas, there is that backup mechanic which create the LastSession.asset. This asset creation leads to losing the reference to the original asset for the currently edited canvas. Although its not a problem when saving. It displays the wrong information inside the Editor

Might be confusing for the end-user when editing multiple canvas.
Best Regards

Yep that was only caused in the last rewrite of the cache system and planned to fix this but yet did not found time for it...
The problem is that the canvas name is always the name of the saved file. We could save it with it's original name so we would have to store additional information about the cache.
I can take a look how to fix this:)

I temporarily cached the name to bypass that side effect indeed.
keep up the good work

Cool! Maybe you can create a pull request? :)

Would this happen to be the same issue that causes these errors:

Planning on restoring some parts of the Cache System we had long ago, which basically saved the last canvas with it's name and stored the name in a string in the registry through editorprefs. It did work but when I changed it to lastsession.asset I did not realize at that point it would replace the name:/

Has been fixed in 8b065cd :)


Cleaned up package.json as per issue #926

Fixes #926: Cleaned up package.json
Description
Updated packages, removed old dependencies, moved devDependencies to dependencies as outlined by @stevengum
Specific Changes
Updated the following packages:

@types/jsonwebtoken: 7.2.8 => 8.3.2
@types/lodash: 4.14.116 => 4.14.134
@typescript-eslint/eslint-plugin: 1.4.2 => 1.10.2
@typescript-eslint/parser: 1.4.2 => 1.10.2
coveralls: 3.0.2 => 3.0.4
eslint: 5.15.1 => 5.16.0
mocha: 5.2.0 => 6.1.4
ms-rest-azure: 2.5.9 => 2.6.0
replace-in-file: 3.4.2 => 4.1.0
sinon: 6.3.4 => 7.3.2
tslint-microsoft-contrib: 5.2.1 => 6.2.0
typedoc: 0.12.0 => 0.14.2
typedoc-plugin-external-module-name: 1.1.3 => 2.1.0
typedoc-plugin-markdown: 1.1.15 => 2.0.6
typescript: 2.7.2 => 3.5.2

Removed old dependencies

ms-rest-js => @azure/ms-rest-js

Moved dependencies

Moved devDependencies to dependencies
Only have one version of typescript

Added dependency

Added tslint since we had unmet peer dependencies from tslint-microsoft-contrib

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.:x: pandasa123 sign nowYou have signed the CLA already but the status is still pending? Let us recheck it.

Hey @stevengum, sorry I missed this! I double checked and didn't see breaking changes

@stevengum I did that but the package-lock.json is the same as the one I already committed apparently

@pandasa123 thanks for the contribution!


[CRAZED Resource Pack] Bank UI

I want to start off by saying that I absolutely love this resource pack, but I have a very minor OCD related issue lol.. I was wondering if the overlapping of the buttons at the bottom of the bank tab windows could be fixed. Aside from that everything else is flawless!

Most pack creators will be reachable in the #feedback channel in the discord. You can leave a screenshot with the Bank UI problem in there and hopefully they'll respond with a fix!

Oh okay, thank you so much! @nickyGyul


Better paging when random reads go backwards

When reading data from outside the buffer, BufferedIndexInput always resets
its buffer to start at the new read position.  If we are reading backwards (for example,
using an OffHeapFSTStore for a terms dictionary) then this can have the effect of
re-reading the same data over and over again.
This commit changes BufferedIndexInput to use paging when reading backwards,
so that if we ask for a byte that is before the current buffer, we read a block of data
of bufferSize that ends at the previous buffer start.
Fixes #12356

I've only implemented this on readByte() so far, as that seems to be the method that is effected most.  Random reads of short, int and long values are mostly done when binary searching which is a much less adversarial case than step-by-step backwards reading.
I ran a wikimedium10k benchmark using NIOFSDirectory for both baseline and competitor, and got the following results:
  TaskQPS baseline      StdDevQPS my_modified_version      StdDev                Pct diff p-value
       BrowseDayOfYearTaxoFacets     2514.67      (5.2%)     2202.60      (7.0%)  -12.4% ( -23% -    0%) 0.000
       BrowseDayOfYearSSDVFacets     4397.09     (10.1%)     3875.61     (13.3%)  -11.9% ( -31% -   12%) 0.001
            BrowseDateTaxoFacets     2974.26      (6.5%)     2641.17      (6.0%)  -11.2% ( -22% -    1%) 0.000
     BrowseRandomLabelSSDVFacets     1189.01      (4.1%)     1067.62      (6.2%)  -10.2% ( -19% -    0%) 0.000
     BrowseRandomLabelTaxoFacets     1601.99      (5.7%)     1438.85      (6.2%)  -10.2% ( -20% -    1%) 0.000
           BrowseMonthTaxoFacets     2524.45      (8.1%)     2273.63      (7.1%)   -9.9% ( -23% -    5%) 0.000
            BrowseDateSSDVFacets     1754.54     (10.7%)     1616.39      (8.4%)   -7.9% ( -24% -   12%) 0.009
                          IntNRQ     1604.64      (7.7%)     1485.48      (8.9%)   -7.4% ( -22% -    9%) 0.005
           BrowseMonthSSDVFacets     4473.87     (11.2%)     4179.28     (10.4%)   -6.6% ( -25% -   16%) 0.053
                         Prefix3      568.51      (3.9%)      982.22     (14.0%)   72.8% (  52% -   94%) 0.000
                     MedSpanNear      262.90      (2.4%)      490.78     (10.3%)   86.7% (  72% -  101%) 0.000
                        Wildcard      496.50      (3.3%)     1031.86     (17.1%)  107.8% (  84% -  132%) 0.000
               HighTermMonthSort      583.14      (4.4%)     1263.09     (19.9%)  116.6% (  88% -  147%) 0.000
             MedIntervalsOrdered      353.37      (2.3%)      767.89     (11.9%)  117.3% ( 100% -  134%) 0.000
                     LowSpanNear      254.88      (3.1%)      624.77     (16.6%)  145.1% ( 121% -  170%) 0.000
                        PKLookup       10.23      (1.7%)       25.13      (8.6%)  145.6% ( 133% -  158%) 0.000
                      OrHighHigh      307.39      (3.1%)      762.93     (18.4%)  148.2% ( 122% -  175%) 0.000
                       OrHighMed      384.51      (3.3%)      958.60     (19.5%)  149.3% ( 122% -  178%) 0.000
                      HighPhrase      304.14      (2.9%)      765.04     (14.6%)  151.5% ( 130% -  174%) 0.000
                    HighSpanNear      317.72      (3.1%)      804.30     (18.0%)  153.1% ( 127% -  179%) 0.000
                     AndHighHigh      398.97      (3.4%)     1012.15     (21.7%)  153.7% ( 124% -  185%) 0.000
           HighTermDayOfYearSort      582.77      (2.7%)     1495.18     (23.5%)  156.6% ( 126% -  187%) 0.000
                        HighTerm      798.23      (2.8%)     2094.10     (22.5%)  162.3% ( 133% -  193%) 0.000
                 MedSloppyPhrase      414.51      (2.7%)     1089.03     (28.6%)  162.7% ( 127% -  199%) 0.000
                         Respell       68.25      (2.2%)      187.81     (14.7%)  175.2% ( 154% -  196%) 0.000
                          Fuzzy2       14.66      (1.7%)       41.38     (13.1%)  182.3% ( 164% -  200%) 0.000
                HighSloppyPhrase      331.71      (2.1%)      946.59     (22.2%)  185.4% ( 157% -  214%) 0.000
             LowIntervalsOrdered      823.97      (2.7%)     2387.93     (19.5%)  189.8% ( 163% -  217%) 0.000
                         MedTerm      770.00      (4.3%)     2234.31     (30.4%)  190.2% ( 149% -  234%) 0.000
                       LowPhrase      358.61      (3.0%)     1080.46     (26.5%)  201.3% ( 166% -  238%) 0.000
                       OrHighLow      365.95      (2.8%)     1106.13     (23.3%)  202.3% ( 171% -  235%) 0.000
                      AndHighMed      352.26      (2.5%)     1135.10     (26.1%)  222.2% ( 189% -  257%) 0.000
            HighIntervalsOrdered      295.50      (2.7%)      971.90     (32.3%)  228.9% ( 188% -  271%) 0.000
                       MedPhrase      317.77      (2.7%)     1083.18     (29.9%)  240.9% ( 202% -  281%) 0.000
                         LowTerm      932.40      (2.8%)     3290.65     (24.1%)  252.9% ( 219% -  287%) 0.000
                          Fuzzy1       37.84      (1.6%)      137.03     (17.0%)  262.1% ( 239% -  285%) 0.000
                 LowSloppyPhrase      313.05      (3.1%)     1253.27     (30.8%)  300.3% ( 258% -  344%) 0.000
                      AndHighLow      404.61      (2.6%)     1947.42     (38.5%)  381.3% ( 331% -  433%) 0.000

I'm not sure what's happening to slow down the facets implementation, so I will dig further into that, but it's a clear win for terms-based queries.

Updated to include readShort/Int/Long as well.  I was wondering if the interaction between different readXXX paging methods was causing the facet slowdown, but it seems to be real:
TaskQPS baseline      StdDevQPS my_modified_version      StdDev                Pct diff p-value
     BrowseRandomLabelSSDVFacets     1173.63      (6.2%)     1020.59      (9.8%)  -13.0% ( -27% -    3%) 0.000
           BrowseMonthSSDVFacets     4522.06      (7.9%)     4060.36     (12.3%)  -10.2% ( -28% -   10%) 0.002
           BrowseMonthTaxoFacets     2669.49      (7.2%)     2397.32      (7.4%)  -10.2% ( -23% -    4%) 0.000
            BrowseDateSSDVFacets     1761.73     (12.7%)     1582.48     (13.0%)  -10.2% ( -31% -   17%) 0.012
     BrowseRandomLabelTaxoFacets     1592.70      (6.8%)     1454.41     (11.3%)   -8.7% ( -25% -   10%) 0.003
            BrowseDateTaxoFacets     2934.99      (7.1%)     2689.84      (8.3%)   -8.4% ( -22% -    7%) 0.001
       BrowseDayOfYearTaxoFacets     2480.61      (7.5%)     2304.31      (9.3%)   -7.1% ( -22% -   10%) 0.008
       BrowseDayOfYearSSDVFacets     4192.62      (9.8%)     3897.13     (10.2%)   -7.0% ( -24% -   14%) 0.026
                          IntNRQ     1172.01      (7.2%)     1104.12      (6.1%)   -5.8% ( -17% -    8%) 0.006
                        HighTerm     1336.10      (5.1%)     2027.68     (18.3%)   51.8% (  27% -   79%) 0.000
                        Wildcard      598.31      (3.9%)      955.95     (16.2%)   59.8% (  38% -   83%) 0.000
                      HighPhrase      225.44      (2.7%)      402.62     (15.8%)   78.6% (  58% -   99%) 0.000
                         Respell      103.12      (2.2%)      208.00     (10.2%)  101.7% (  87% -  116%) 0.000
                    HighSpanNear      299.66      (3.1%)      626.32     (25.2%)  109.0% (  78% -  141%) 0.000
                 MedSloppyPhrase      423.66      (3.6%)      903.18     (20.7%)  113.2% (  85% -  142%) 0.000
                         MedTerm     1113.95      (4.3%)     2447.59     (19.3%)  119.7% (  92% -  149%) 0.000
                HighSloppyPhrase      305.08      (3.2%)      685.40     (25.8%)  124.7% (  92% -  158%) 0.000
               HighTermMonthSort      541.93      (3.4%)     1274.43     (21.0%)  135.2% ( 106% -  165%) 0.000
                      OrHighHigh      310.93      (2.8%)      739.48     (22.4%)  137.8% ( 109% -  167%) 0.000
                         Prefix3      499.55      (3.3%)     1189.55     (17.7%)  138.1% ( 113% -  164%) 0.000
             MedIntervalsOrdered      452.98      (3.0%)     1102.66     (23.0%)  143.4% ( 114% -  174%) 0.000
                        PKLookup       10.48      (1.2%)       25.52     (13.9%)  143.6% ( 127% -  160%) 0.000
           HighTermDayOfYearSort      581.53      (3.5%)     1459.01     (25.1%)  150.9% ( 118% -  185%) 0.000
                     MedSpanNear      320.53      (3.4%)      812.85     (19.6%)  153.6% ( 126% -  182%) 0.000
                     AndHighHigh      321.86      (2.4%)      822.05     (24.0%)  155.4% ( 125% -  186%) 0.000
                       OrHighMed      365.66      (2.3%)      970.56     (19.6%)  165.4% ( 140% -  191%) 0.000
            HighIntervalsOrdered      312.18      (2.7%)      843.86     (26.8%)  170.3% ( 137% -  205%) 0.000
                     LowSpanNear      414.08      (2.7%)     1120.42     (26.5%)  170.6% ( 137% -  205%) 0.000
                       OrHighLow      371.86      (2.3%)     1010.30     (26.7%)  171.7% ( 139% -  205%) 0.000
                          Fuzzy2       15.13      (2.0%)       42.98     (17.2%)  184.0% ( 161% -  207%) 0.000
                       LowPhrase      546.26      (2.8%)     1591.06     (20.7%)  191.3% ( 163% -  221%) 0.000
                      AndHighMed      484.28      (1.6%)     1479.76     (26.3%)  205.6% ( 174% -  237%) 0.000
                       MedPhrase      348.29      (2.9%)     1195.46     (28.4%)  243.2% ( 205% -  282%) 0.000
                 LowSloppyPhrase      346.96      (2.9%)     1213.98     (31.2%)  249.9% ( 209% -  292%) 0.000
             LowIntervalsOrdered      392.74      (2.7%)     1415.39     (28.0%)  260.4% ( 223% -  299%) 0.000
                         LowTerm      766.17      (3.2%)     3113.86     (40.9%)  306.4% ( 254% -  361%) 0.000
                          Fuzzy1       25.43      (1.7%)      109.24     (24.0%)  329.6% ( 298% -  361%) 0.000
                      AndHighLow      389.62      (2.4%)     2053.68     (48.1%)  427.1% ( 367% -  489%) 0.000

wikimedium1m is much happier for facets, and frankly ridiculous for AndHighLow
            TaskQPS baseline      StdDevQPS my_modified_version      StdDev                Pct diff p-value
            BrowseDateSSDVFacets       17.76      (7.3%)       17.97      (6.2%)    1.2% ( -11% -   15%) 0.587
       BrowseDayOfYearSSDVFacets       72.94      (5.4%)       74.08      (3.6%)    1.6% (  -7% -   11%) 0.281
     BrowseRandomLabelSSDVFacets       50.47      (5.5%)       51.35      (5.7%)    1.7% (  -8% -   13%) 0.326
           BrowseMonthSSDVFacets      108.47     (17.3%)      110.40      (9.5%)    1.8% ( -21% -   34%) 0.685
     BrowseRandomLabelTaxoFacets       51.54      (3.7%)       52.59      (3.6%)    2.0% (  -5% -    9%) 0.080
            BrowseDateTaxoFacets       56.20      (3.9%)       57.53      (3.0%)    2.4% (  -4% -    9%) 0.031
       BrowseDayOfYearTaxoFacets       57.25      (4.0%)       58.64      (3.7%)    2.4% (  -5% -   10%) 0.046
                          IntNRQ      150.45      (4.4%)      154.86      (3.4%)    2.9% (  -4% -   11%) 0.018
           BrowseMonthTaxoFacets       85.36      (3.8%)       90.76      (4.9%)    6.3% (  -2% -   15%) 0.000
            HighIntervalsOrdered       13.33      (5.4%)       15.07      (4.4%)   13.1% (   3% -   24%) 0.000
                HighSloppyPhrase       28.66      (4.8%)       38.67      (5.6%)   34.9% (  23% -   47%) 0.000
             MedIntervalsOrdered       22.66      (5.0%)       31.38      (5.4%)   38.5% (  26% -   51%) 0.000
           HighTermDayOfYearSort       66.67      (4.0%)       94.27      (6.3%)   41.4% (  29% -   53%) 0.000
                     MedSpanNear       44.36      (4.9%)       64.94      (5.4%)   46.4% (  34% -   59%) 0.000
                 MedSloppyPhrase       35.30      (5.0%)       52.90      (6.4%)   49.8% (  36% -   64%) 0.000
                      OrHighHigh       37.42      (4.6%)       57.81      (5.1%)   54.5% (  42% -   67%) 0.000
                       LowPhrase       55.41      (5.6%)       95.52      (6.3%)   72.4% (  57% -   89%) 0.000
                      AndHighMed       70.03      (4.0%)      122.34      (7.5%)   74.7% (  60% -   89%) 0.000
                       MedPhrase       43.35      (5.3%)       76.52      (6.8%)   76.5% (  61% -   93%) 0.000
                      HighPhrase       46.63      (4.7%)       86.27      (6.4%)   85.0% (  70% -  100%) 0.000
                       OrHighMed       49.73      (4.4%)       92.06      (6.8%)   85.1% (  70% -  100%) 0.000
                    HighSpanNear       42.46      (4.5%)       79.91      (6.6%)   88.2% (  73% -  103%) 0.000
                 LowSloppyPhrase       51.32      (4.8%)       97.60      (7.8%)   90.2% (  73% -  107%) 0.000
                     AndHighHigh       38.56      (4.3%)       75.29      (6.4%)   95.2% (  81% -  110%) 0.000
                       OrHighLow       45.05      (5.2%)       88.33      (7.1%)   96.1% (  79% -  114%) 0.000
                         MedTerm      137.02      (5.3%)      269.88      (8.1%)   97.0% (  79% -  116%) 0.000
                        HighTerm      120.45      (5.0%)      246.27      (9.2%)  104.5% (  85% -  125%) 0.000
                        Wildcard       39.54      (4.5%)       84.47      (7.9%)  113.6% (  96% -  132%) 0.000
               HighTermMonthSort      331.29      (5.6%)      751.47      (8.7%)  126.8% ( 106% -  149%) 0.000
                         LowTerm      113.12      (4.6%)      301.60     (11.0%)  166.6% ( 144% -  190%) 0.000
                     LowSpanNear       61.77      (4.6%)      175.88     (11.0%)  184.7% ( 161% -  209%) 0.000
                         Prefix3       74.16      (5.1%)      252.59     (14.2%)  240.6% ( 210% -  273%) 0.000
             LowIntervalsOrdered       70.67      (4.8%)      246.61     (11.6%)  249.0% ( 221% -  278%) 0.000
                         Respell        6.50      (4.4%)       25.56     (16.5%)  293.2% ( 260% -  328%) 0.000
                          Fuzzy1        3.64      (4.5%)       15.91     (17.7%)  337.5% ( 301% -  376%) 0.000
                          Fuzzy2        1.75      (4.4%)        8.24     (17.1%)  371.7% ( 335% -  411%) 0.000
                        PKLookup        1.81      (4.0%)       10.82     (21.1%)  497.9% ( 454% -  544%) 0.000
                      AndHighLow       82.63      (4.7%)      516.40     (24.9%)  524.9% ( 472% -  582%) 0.000

Wouldn't aligning the refill against the buffer size be better in general?
My idea would be to always round down to multiples of buffer size. This would also cause the undelying hardware to read aligned blocks (unless it is a CFS file) and not do multiple reads per buffer size.
I know this might affect other cases positively or negatively, but to me this looks like more what MMapDirectory is doing behind the OS layer.

Wouldn't aligning the refill against the buffer size be better in general?

This is tricky because there are cases when you want to read multiple bytes over a buffer size boundary - eg you can call readLong(1023) and that would require a non-aligned buffer.

I am aware of that. The psgong algorithms of the OS do the same in mmap. If you read 1023 bytes it might need to read 2 pages from disk.
Maybe do something like: if the size to be read is larger than half of buffer size, read jnsligned. Otherwise align.

wikimedium1m with the latest changes seems happy:
                            TaskQPS baseline      StdDevQPS my_modified_version      StdDev                Pct diff p-value
            BrowseDateTaxoFacets       59.83      (5.1%)       59.89      (5.8%)    0.1% ( -10% -   11%) 0.953
                          IntNRQ      225.60      (5.7%)      226.74      (6.0%)    0.5% ( -10% -   12%) 0.784
     BrowseRandomLabelTaxoFacets       53.85      (4.7%)       54.17      (5.7%)    0.6% (  -9% -   11%) 0.719
       BrowseDayOfYearTaxoFacets       60.13      (5.6%)       60.77      (5.2%)    1.1% (  -9% -   12%) 0.533
            BrowseDateSSDVFacets       18.69      (6.9%)       18.93      (8.2%)    1.3% ( -12% -   17%) 0.592
       BrowseDayOfYearSSDVFacets       75.67      (6.3%)       76.99      (7.5%)    1.7% ( -11% -   16%) 0.426
     BrowseRandomLabelSSDVFacets       52.05      (4.2%)       53.00      (5.1%)    1.8% (  -7% -   11%) 0.222
           BrowseMonthSSDVFacets      106.47      (6.7%)      114.22      (7.2%)    7.3% (  -6% -   22%) 0.001
           BrowseMonthTaxoFacets       89.34      (4.4%)       97.02      (7.0%)    8.6% (  -2% -   20%) 0.000
                      HighPhrase       16.58      (4.3%)       19.43      (5.9%)   17.2% (   6% -   28%) 0.000
                     LowSpanNear       19.02      (5.1%)       23.24      (7.3%)   22.2% (   9% -   36%) 0.000
                HighSloppyPhrase       30.08      (4.8%)       40.20      (5.9%)   33.6% (  21% -   46%) 0.000
                 MedSloppyPhrase       29.49      (4.9%)       41.40      (7.3%)   40.4% (  26% -   55%) 0.000
                     MedSpanNear       33.38      (5.3%)       46.97      (8.4%)   40.7% (  25% -   57%) 0.000
                    HighSpanNear       24.43      (5.2%)       34.88      (6.8%)   42.7% (  29% -   57%) 0.000
           HighTermDayOfYearSort       69.66      (5.8%)      106.43     (10.9%)   52.8% (  34% -   73%) 0.000
                      OrHighHigh       39.29      (5.7%)       60.21      (9.7%)   53.2% (  35% -   72%) 0.000
                     AndHighHigh       40.47      (5.5%)       62.89     (10.3%)   55.4% (  37% -   75%) 0.000
            HighIntervalsOrdered       39.09      (4.8%)       61.29      (8.2%)   56.8% (  41% -   73%) 0.000
                       LowPhrase       50.33      (5.5%)       81.72      (9.0%)   62.4% (  45% -   81%) 0.000
                       OrHighLow       47.83      (6.7%)       88.33     (11.7%)   84.7% (  62% -  110%) 0.000
                       MedPhrase       55.53      (5.0%)      107.45     (11.2%)   93.5% (  73% -  115%) 0.000
                         MedTerm      109.26      (5.8%)      213.10     (15.5%)   95.0% (  69% -  123%) 0.000
             MedIntervalsOrdered       40.05      (5.5%)       79.18     (11.5%)   97.7% (  76% -  121%) 0.000
                        HighTerm      124.45      (6.2%)      247.29     (14.5%)   98.7% (  73% -  127%) 0.000
                       OrHighMed       60.81      (5.7%)      122.54     (12.5%)  101.5% (  78% -  126%) 0.000
               HighTermMonthSort      352.94      (4.8%)      789.35     (20.2%)  123.7% (  94% -  156%) 0.000
                         LowTerm      110.88      (5.6%)      256.65     (14.4%)  131.5% ( 105% -  160%) 0.000
                      AndHighMed       59.13      (6.4%)      149.40     (15.8%)  152.7% ( 122% -  186%) 0.000
                        Wildcard       81.60      (6.3%)      210.43     (15.8%)  157.9% ( 127% -  191%) 0.000
                         Prefix3      161.67      (5.6%)      538.22     (23.7%)  232.9% ( 192% -  277%) 0.000
                 LowSloppyPhrase       76.67      (6.1%)      262.56     (20.5%)  242.5% ( 203% -  286%) 0.000
             LowIntervalsOrdered       85.02      (5.4%)      296.94     (22.1%)  249.3% ( 210% -  292%) 0.000
                         Respell        4.45      (5.4%)       17.49     (22.2%)  293.1% ( 251% -  338%) 0.000
                          Fuzzy2        2.58      (5.4%)       11.05     (23.4%)  328.1% ( 283% -  377%) 0.000
                          Fuzzy1        3.71      (5.2%)       18.13     (24.6%)  388.6% ( 341% -  441%) 0.000
                        PKLookup        1.90      (5.6%)       11.05     (32.4%)  481.8% ( 420% -  550%) 0.000
                      AndHighLow      101.98      (6.1%)      644.03     (58.7%)  531.5% ( 439% -  635%) 0.000

Looks fine to me, maybe rename the method maybeRefillBuffer(long,...) to make clear it is used only for positional reads. There's already the refill() method.
How about refill4PositionalRead(long,...)?

I've renamed it to resolvePositionInBuffer as that's what it actually does, with the refilling as a side-effect.

wikimedium10k is a tiny corpus, really just for quick testing that your benchy is setup correctly.  If you look at the QPS of each task they are ridiculously high :)
In the future it's better to run on at least wikimedium10M or wikimediumall.


What is the training parameters of RepViT while using Timm repository？

Thanks. You could refer to https://github.com/THU-MIG/RepViT/blob/8ef1a71e299fc02ea5eaf201039f310313a66b96/main.py#L30-L186 for all training parameters.

Thanks! How long does it take to train the model using 8 RTX3090 GPUs? Do I need to modify the training parameters using 4 GPUs?

@jameslahm Thanks! How long does it take to train the model using 8 RTX3090 GPUs? Do I need to modify the training parameters using 4 GPUs?

How long does it take to train the model using 8 RTX3090 GPUs?

It costs ~34 hours to train RepViT-M1 using 8 RTX3090 GPUs.

Do I need to modify the training parameters using 4 GPUs?

No need.


Autocompleting a property returns to the start of the line

Using v10 at the moment, and on an autocomplete the cursor moves back to the start of the line. If this is intentional, would it be possible to get a setting to turn this off? I would like to be able to continue editing the line after autocompleting something.

Thanks for the report, that’s not intended. I’ll try to take a look, but it might take a while, since I’ll be on vacation for a week, starting tomorrow.


Diagram readability

Please redraw that diagram with better contrast so that it can be read easily.
The black on red and blue under Authentication are almost unreadable for someone with perfect eyesight.
Thanks,

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

ID: 0d4322e1-463a-ac81-32da-036adc71ef24
Version Independent ID: d05a3e14-1868-2d19-ba02-77e1493af7a4
Content: Power Apps portals connectivity to a Microsoft Dataverse environment - Power Apps
Content Source: powerapps-docs/maker/portals/admin/connectivity.md
Service: powerapps
GitHub Login: @neerajnandwana-msft
Microsoft Alias: nenandw

Thank you for reaching out and the feedback, will update the diagram soon.


nft plot  can used in flax ?

who can tell me.....

not yet.

hopefully in the near future, keep us posted if anyone finds out if it changes.   I stopped flax farming to focus on chia pooling.

I am using NFT plots, no problem. FLAX sees them perfectly.

I am using NFT plots, no problem. FLAX sees them ### perfectly.

And if you win a block, you'd only get 0.25 xfx, instead of the full 2 xfx. The remaining is lost in blockchain space.

that's too bad.   i won't even bother farming at that rate,  hopefully a fix will come in the coming weeks.

I completely posted this in the wrong git:( oops.. posted in the chia git initially..
I'm not even seeing the 0.25xfx from won blocks:(
per discussions, an NFT reward should get at least 0.25.. I'm not even getting that -
2021-07-28T02:52:23.376 harvester flax.harvester.harvester: INFO 6 plots were eligible for farming fb00e0f53e... Found 1 proofs. Time: 5.78068 s. Total 1706 plots 2021-07-28T02:52:23.387 farmer flax.farmer.farmer : ERROR Invalid proof of space {'challenge': '<removed>', 'plot_public_key': '<removed>', 'pool_contract_puzzle_hash': '<removed>', 'pool_public_key': None, 'proof': '<long string - removed>', 'size': 32}

wallet reads 0:( it's happened last 3 times I've 'won' a block..

Hey @diomark, we're working on a proper fix, but many others have reported the 0.25 reward to work. May I know whether you imported the wallet corresponding to the key for your portable plot?

I did - the menumonic key used to setup the flax wallet is the same as the one for my chia wallet. I confirmed this last week with the chia keys and flax keys commands (same keys)

I just won a block and only relieved the .25 flax.   So sadly the issue is yet to be fixed.  I have to win 8x now to get a full payout of a normal win.


Update .gitignore

This will remove some files from archives and third party applications that are not necessary to run the script.

Thanks!


Remove information about cordova-android

This messages is applicable only to cordova-android version 3.0 or lower, which could be considered ancient by now.
That message produce noise in the build output
Platforms affected
Only build time
Checklist

[ ] Reported an issue in the JIRA database
[ ] Commit message follows the format: "CB-3232: (android) Fix bug with resolving file paths", where CB-xxxx is the JIRA ID & "android" is the platform affected.
[ ] Added automated test coverage as appropriate for this change.

Heh, I just created #30 about this. Please close it when this is merged :)


GPU acceleration

Currently, the execution time of the training on GPU goes at the same speed or slower than on CPU.
This is unexpected and might be due to communications between CPU and GPU if the data loaders are not stored on the GPU. To be checked...

It seems that the CPU is just going fast on small architectures.


fix eq of two bool tensors on Torch backend

Fixes #1524
This also makes our torch backend to match our GPU backends when working with non-float types:torch.tensor([10], dtype=torch.int32).sqrt() (expected to return int32(3), was float32(3.1623)).

Changes made in tinygrad/:
------------------------------------------------------------
files                             insertions       deletions
------------------------------------------------------------
tinygrad/ops.py                            4               6
tinygrad/runtime/ops_torch.py              1               1
------------------------------------------------------------
total                                      5               7
------------------------------------------------------------
lines added in the tinygrad folder: -2


[Bug]: Interpolant 'interpolating_function' upper bound while using current input mode

PyBaMM Version
23.2
Python Version
3.9.13
Describe the bug
My reasearch focus on how parameter "Separator thickness [m]" (Ls) affects model states and outputs. My current input is US06.csv provided from pybamm.  When i enlarge the value of Ls, the simulation runs well. However, when i decrease the value of Ls, even if as small as 0.001Ls, simulation starts reporting error [Interpolant 'interpolating_function' upper bound].

When i simulates experiments ranther than current input, the simulation do not report any error. Discussion #2714 says the same bug can be fixed by using correct OCP curve, but I don't think that's the point as my simulation works well during experiment mode .
My former simulation results where Ls is kept as its original value in 9 parameter set show that my current setting will not bring the battery close to being fully charged or fully discharged.

Actually, according to some sensitivity analysis research results, Ls have have little impact on output Voltage V. In other words, this bug has nothing to do with the OCP curve.
Former pybamm version (just like 22.11) exists the same problem.

Steps to Reproduce
Local Visual Studio Code
Current mode
## Initial
import pybamm

model_dfn = pybamm.lithium_ion.DFN()

## current load
import pandas as pd   # needed to read the csv data file

# Import drive cycle from file
dynamic_load_name = "TEST"
drive_cycle = pd.read_csv("C:/Users/MGY/AppData/Local/Programs/Python/Python39/Lib/site-packages/pybamm/input/drive_cycles/" + dynamic_load_name + ".csv", comment="#", header=None).to_numpy()    #same as US06.csv
capacity_needed = sum(drive_cycle[:, 1]) / 3600

## timing
import time
start1 = time.perf_counter()

## Solve
sims = []

parameter_set_names = ['Ai2020','Chen2020','Ecker2015','Marquis2019','NCA_Kim2011','OKane2022','ORegan2022','Prada2013','Ramadass2004']
parameter_set_nums = len(parameter_set_names)

params_values_origin = {}
simplify_param_value_origin = {}
max_C = {}

for j in range(0, parameter_set_nums):
    parameter_set_name = parameter_set_names[j]
    params_values_origin[j] = pybamm.ParameterValues(parameter_set_name)
    if parameter_set_name == 'Prada2013':
      params_values_origin[j]["Current function [A]"] = 1.1
      params_values_origin[j]["Nominal cell capacity [A.h]"] = 1.1
      params_values_origin[j]["Initial concentration in negative electrode [mol.m-3]"] = 13584
      params_values_origin[j]["Initial concentration in positive electrode [mol.m-3]"] = 35
      params_values_origin[j]["Positive electrode porosity"] = 0.26
      params_values_origin[j]["Positive electrode active material volume fraction"] = 0.5846
      params_values_origin[j]["Positive particle radius [m]"] = 5e-08
    if parameter_set_name == 'Ramadass2004':
      params_values_origin[j]["Current function [A]"] = 1.75
      params_values_origin[j]["Nominal cell capacity [A.h]"] = 1.75

    # current
    drive_cycle_used = drive_cycle.copy()
    # This means if US06 is performed for 6 times, 0.4 nominal capacity will be charged
    drive_cycle_used[:, 1] = drive_cycle[:, 1] * params_values_origin[j]["Nominal cell capacity [A.h]"]*0.4 / capacity_needed / 6
    max_C[j] = max(drive_cycle_used[:, 1]) / params_values_origin[j]["Nominal cell capacity [A.h]"]

    # Create interpolant
    timescale = params_values_origin[j].evaluate(model_dfn.timescale)
    current_interpolant = pybamm.Interpolant(drive_cycle_used[:, 0], drive_cycle_used[:, 1], timescale * pybamm.t)

    # Set drive cycle
    params_values_origin[j]["Current function [A]"] = current_interpolant

    params_values_origin[j]["Separator thickness [m]"] = 5e-7                     ## change Ls here

    solver_used = pybamm.CasadiSolver(mode="fast")
    sim = pybamm.Simulation(model_dfn, parameter_values=params_values_origin[j], solver = solver_used)
    sim.build(initial_soc=0.5)
    sim.solve()
    sims.append(sim)

    print("parameter_set " + str(j) + " solved," + str(time.perf_counter() - start1) + "seconds used.")

## timing
end = time.perf_counter()
print("求解时间为", end-start1, 'seconds')

Experiment mode
## Initial
import pybamm

model_dfn = pybamm.lithium_ion.DFN()

## timing
import time
start1 = time.perf_counter()

## Solve
sims = []

simplify_param_names = ["Cation transference number","Separator thickness [m]","Positive electrode conductivity [S.m-1]","Negative electrode conductivity [S.m-1]"]
simplify_param_nums = len(simplify_param_names)
simplify_situa_nums = [1,1,1,1]
simplify_param_values = [[0.999],[5e-7],[1e3],[1e11]]

parameter_set_names = ['Ai2020','Chen2020','Ecker2015','Marquis2019','NCA_Kim2011','OKane2022','ORegan2022','Prada2013','Ramadass2004']
parameter_set_nums = len(parameter_set_names)
params_values_origin = {}
simplify_param_value_origin = {}

for i in range(0, simplify_param_nums):
  simplify_param_name = simplify_param_names[i]
  simplify_situa_num = simplify_situa_nums[i]

  for j in range(0, parameter_set_nums):
    parameter_set_name = parameter_set_names[j]
    params_values_origin[i,j] = pybamm.ParameterValues(parameter_set_name)
    if parameter_set_name == 'Prada2013':
      params_values_origin[i,j]["Current function [A]"] = 1.1
      params_values_origin[i,j]["Nominal cell capacity [A.h]"] = 1.1
      params_values_origin[i,j]["Initial concentration in negative electrode [mol.m-3]"] = 13584
      params_values_origin[i,j]["Initial concentration in positive electrode [mol.m-3]"] = 35
      params_values_origin[i,j]["Positive electrode porosity"] = 0.26
      params_values_origin[i,j]["Positive electrode active material volume fraction"] = 0.5846
      params_values_origin[i,j]["Positive particle radius [m]"] = 5e-08
    if parameter_set_name == 'Ramadass2004':
      params_values_origin[i,j]["Current function [A]"] = 1.75
      params_values_origin[i,j]["Nominal cell capacity [A.h]"] = 1.75
    simplify_param_value_origin[i,j] = params_values_origin[i,j][simplify_param_names[i]]
    params_values_used = params_values_origin[i,j]

    # All of following 3 exp can work well
    # experiment_used = pybamm.Experiment(
    #   [
    #     (
    #     "Discharge at 1 C until " + str(params_values_used["Lower voltage cut-off [V]"]) + " V",
    #     )
    #   ] * 1, period='1 minute'
    # )

    # experiment_used = pybamm.Experiment(
    #   [
    #     (
    #     "Charge at 1 C until " + str(params_values_used["Upper voltage cut-off [V]"]) + " V",
    #     "Hold at " + str(params_values_used["Upper voltage cut-off [V]"]) + " V" + " until 0.1 C"
    #     )
    #   ] * 1, period='1 minute'
    # )

    experiment_used = pybamm.Experiment(
      [
        (
        "Discharge at 2 C until " + str(params_values_used["Lower voltage cut-off [V]"]) + " V",
        )
      ], period='0.1 minute'
    )

    for k in range(0,simplify_situa_nums[i]+1):
      if k > 0:
        params_values_used[simplify_param_name] = simplify_param_values[i][k-1] # change Ls here
      solver_used = pybamm.CasadiSolver(mode="safe", dt_max=0.0001)
      sim = pybamm.Simulation(model_dfn, parameter_values=params_values_used, experiment = experiment_used, solver = solver_used)
      sim.build_for_experiment(initial_soc=1)
      sim.solve()
      sims.append(sim)

    print("simplify_param " + str(i) + " parameter_set " + str(j) + " solved," + str(time.perf_counter() - start1) + "seconds used.")

## timing
end = time.perf_counter()
print("Time for solving is", end-start1, 'seconds')

Relevant log output
No response

This issue appears to have been resolved in the most recent release (PyBaMM 23.5 running on Python 3.11.5). On that version the current-mode code sample runs to completion without error on multiple attempts. Note that this did require a minor modification to the provided script as timescale has been removed from PyBaMM since the issue was submitted (timescale * pybamm.t becomes pybamm.t).
For further context, I was able to recreate the current-mode problem using the older PyBaMM (23.2) and Python (3.9.13) versions, which produced a Solver failed because the following interpolation bounds were exceeded… error. However, I was not able to recreate a successful solve of the experiment-mode script: experiments 1 and 3 produced the same error as the current-mode script, while experiment 2 (Charge at 1 C) produced a different error (All steps in the cycle ('Charge at 1 C until 4.2 V', 'Hold at 4.2 V until 0.1 C') are infeasible due to exceeded bounds at initial conditions.). These results were consistent across multiple runs.
Repeating the analysis on the latest PyBaMM and Python release, current-mode runs to completion, while Experiment 2 of the experiment-mode script continues to report the previously mentioned error (All steps in the cycle ('Charge at 1 C until 4.2 V', 'Hold at 4.2 V until 0.1 C') are infeasible due to exceeded bounds at initial conditions.).
I believe the original issue (error in current-mode) has been resolved in the most recent build, so recommend closing this issue. If the above mentioned problem with Experiment 2 is considered a bug in the software (rather than the experiment specification) then this should be opened as a separate issue.


get Follow-Button label from ui-text and default to "Follow"

The Follow button Label wasn't localized with the ui-text value, now it is with default to "Follow".
The colon from the end of the ui-text value of follow_label is being removed by the liquid filter remove: ":"

Thanks for the PR!


Fix typo

Evi:

@changeworld : Thanks for your contribution! The author, @yegu-ms, has been notified to review your proposed change.


average-of-digits-by-recursion

Why:

Closes #5380
What's being changed:
Added TS file with a recursion function to calculate an average of digits of a number.

mistake


Prepare and submit Sprint 7 Report Materials

Sprint 7 report
Sprint 7 video

Closing manually due to having addressed this with another pull request


[Benchmarking][CI] Conbench reports are failing, it fails to install 'tpch' on R benchmark tests

Describe the bug, including details regarding any error messages, version, and platform.
The conbench reports have started to fail on main for the last couple of days with the following error:

                    ['',
 'Attaching package: ‘arrowbench’',
 '',
 'The following object is masked from ‘package:base’:',
 '',
 '    %||%',
 '',
 'Error in `dbSendQuery()`:',
 '! rapi_prepare: Failed to execute statement INSTALL tpch; LOAD tpch;',
 "Error: IO Error: Failed to install 'tpch'",
 "The file was built for DuckDB version 'v1.1.3', but we can only load "
 "extensions built for DuckDB version '19864453f7'.",
 'Backtrace:',
 '     ▆',
 '  1. ├─arrowbench::run_bm(...)',
 '  2. │ ├─withr::with_options(list(arrow.use_altrep = FALSE), ctx <- '
 'bm$setup(...))',
 '  3. │ │ └─base::force(code)',
 '  4. │ └─bm$setup(...)',
 '  5. │   ├─arrowbench::BenchEnvironment(...)',
 '  6. │   │ └─base::list2env(list(...))',
 '  7. │   │   └─base::new.env(hash = hash, parent = parent, size = size)',
 '  8. │   └─arrowbench::get_input_func(...)',
 '  9. │     └─arrowbench::ensure_source("tpch", scale_factor = scale_factor)',
 ' 10. │       └─known$locator(...)',
 ' 11. │         └─arrowbench:::ensure_tpch(...)',
 ' 12. │           └─arrowbench::generate_tpch(scale_factor)',
 ' 13. │             └─arrowbench:::query_custom_duckdb(...)',
 ' 14. │               └─arrowbench:::ensure_custom_duckdb()',
 ' 15. │                 └─arrowbench:::install_duckdb_tpch()',
 ' 16. │                   ├─DBI::dbExecute(con, "INSTALL tpch; LOAD tpch;")',
 ' 17. │                   └─DBI::dbExecute(con, "INSTALL tpch; LOAD tpch;")',
 ' 18. │                     ├─DBI::dbSendStatement(conn, statement, ...)',
 ' 19. │                     └─DBI::dbSendStatement(conn, statement, ...)',
 ' 20. │                       ├─DBI::dbSendQuery(conn, statement, ...)',
 ' 21. │                       └─duckdb::dbSendQuery(conn, statement, ...)',
 ' 22. │                         └─duckdb (local) .local(conn, statement, ...)',
 ' 23. │                           '
 '└─duckdb:::rethrow_rapi_prepare(conn@conn_ref, statement)',
 ' 24. │                             ├─rlang::try_fetch(...)',
 ' 25. │                             │ ├─base::tryCatch(...)',
 ' 26. │                             │ │ └─base (local) tryCatchList(expr, '
 'classes, parentenv, handlers)',
 ' 27. │                             │ │   └─base (local) tryCatchOne(expr, '
 'names, parentenv, handlers[[1L]])',
 ' 28. │                             │ │     └─base (local) '
 'doTryCatch(return(expr), name, parentenv, handler)',
 ' 29. │                             │ └─base::withCallingHandlers(...)',
 ' 30. │                             └─duckdb:::rapi_prepare(conn, query)',
 ' 31. └─base::.handleSimpleError(...)',
 ' 32.   └─rlang (local) h(simpleError(msg, call))',
 ' 33.     └─handlers[[1L]](cnd)',
 ' 34.       └─duckdb:::rethrow_error_from_rapi(e, call)',
 ' 35.         └─rlang::abort(msg, call = call)',
 'Execution halted']

An example can be seen here:
https://conbench.ursa.dev/benchmark-results/0673ffaf222d770e80003777230aa384/
Component(s)
Benchmarking, Continuous Integration

Ok, I think this was a temporary instability with duckdb. Do you still have access to any of the buildkite machines? Or even the logs where this job gets setup? I suspect this will start working again if we delete the installed version of duckdb and it installs the newest release. But it would be good to confirm that.

I don't have access. @assignUser @amoeba do any of you have access to buildkite?

It looks like duckdb gets installed from CRAN in that pipeline,
_bk;t=1732246009018Installing 52 packages: utf8, fansi, crayon, diffobj, fs, xfun, yaml, highr, evaluate, fastmap, base64enc, htmltools, rappdirs, sass, mime, memoise, jsonlite, jquerylib, cachem, Rcpp, pkgconfig, pillar, stringi, generics, tibble, stringr, dplyr, waldo, praise, pkgload, brio, tinytex, knitr, fontawesome, bslib, png, here, RcppTOML, timechange, DBI, tidyr, blob, tzdb, testthat, rmarkdown, reticulate, lubridate, hms, duckdb, distro, decor, dbplyr
...>8...
_bk;t=1732246009019trying URL 'https://cloud.r-project.org/src/contrib/duckdb_1.1.3.tar.gz'
...>8...
_bk;t=1732246009028duckdb      (NA -> 1.1.3   ) [CRAN]

I think we can all see this log output: https://buildkite.com/apache-arrow/arrow-bci-benchmark-on-arm64-t4g-2xlarge-linux/builds?query=2e1ddf5069731d2b908b18d851b2389973cc988c.
Does that give us anything to go off of? I wasn't able to track down the origin of the pipeline itself but I could keep looking if needed.

I can confirm those logs are accessible.

I think this is a more widespread problem with DuckDB R's 1.1.3 release to CRAN (1, 2). I see that there's a 1.1.3-1 version on CRAN now and arrowbench:::install_duckdb_tpch() succeeds for me locally with that version. I'm guessing they had an issue with the first submission and that our failure is transient.

Thanks for digging on that! I suspected something like that, but didn't find that patch (subpatch even???) release! Yeah once our runners start installing the newest version. I'll monitor this for a few days and confirm but will close it if things look good.
Thank you again, @amoeba

:heavy_check_mark:
https://buildkite.com/apache-arrow/arrow-bci-benchmark-on-arm64-t4g-2xlarge-linux/


Fix for connection string containing a double quote

Details how to handle quotation marks are given at https://docs.microsoft.com/en-us/dotnet/api/system.data.oledb.oledbconnection.connectionstring?view=dotnet-plat-ext-3.1#remarks .
I have tried password containing a = they do not have to be doubled.
This fixes #459 for me.

Thanks a lot! Merged :-)


Implement pinned memory

Please merge #1709 before this PR.

First impression
It seems that this PR is attractive; the disadvantage of this PR is the increase of allocation time, but in many cases where we use cupy for large-scale computation and need to allocate memory more than one megabyte, it significantly reduces the total time.
I will read it in detail :)

Are there any reasons why setStream and getStream do not use with nogil: statement?

In conclusion, I think that this code itself looks good and is OK to merge.
My feeling is that it is very hard to read the whole comment due to the lack of the comments.
I think it is good to describe more comments regarding the objective of the code and its meaning.
It is important for the other persons to maintain your code, fix bugs, and make it improve.
As this is a large PR, I cannot decide whether it is OK to merge. I asked few guys to read the whole code. After the guys agree on that, I would like to merge this attractive PR.

======================================================================
ERROR: test_free_all_free (test_pinned_memory.TestSingleDeviceMemoryPool)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/tmp/chainer/tests/cupy_tests/cuda_tests/test_pinned_memory.py", line 102, in test_free_all_free
    self.pool.free_all_free()
AttributeError: 'cupy.cuda.pinned_memory.PinnedMemoryPool' object has no attribute 'free_all_free'

======================================================================
ERROR: test_free_all_free2 (test_pinned_memory.TestSingleDeviceMemoryPool)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/tmp/chainer/tests/cupy_tests/cuda_tests/test_pinned_memory.py", line 113, in test_free_all_free2
    self.pool.free_all_free()
AttributeError: 'cupy.cuda.pinned_memory.PinnedMemoryPool' object has no attribute 'free_all_free'

======================================================================
ERROR: test_free_all_free_without_malloc (test_pinned_memory.TestSingleDeviceMemoryPool)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/tmp/chainer/tests/cupy_tests/cuda_tests/test_pinned_memory.py", line 128, in test_free_all_free_without_malloc
    self.pool.free_all_free()
AttributeError: 'cupy.cuda.pinned_memory.PinnedMemoryPool' object has no attribute 'free_all_free'

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

@gwtnb @unnonouno @okuta  I manually confirmed that the current branch surely resolves the above issues except for NullStream.
i) Can you continue the review?
ii) In terms of NullStream, I think either is fine. Please make an agreement.

Good. Then I would like to merge this one 👍


Use read-only cache dir.

Output of restic version
restic 0.13.1 compiled with go1.18 on linux/amd64
What should restic do differently? Which functionality do you think we should add?
Restic must have read-write access to cache directory. I would like to make the suggestion of adding the possibility to use cache directory in read-only mode.
What are you trying to do? What problem would this solve?
I'm using restic to backup VMs from a hypervisor. All the VMs are LVM disks. Every VM has his dedicated LVM cache partition. Hypervisor has RW access to that partition and uses it when restic is executed from the hypervisor to populate that partition with cache information. I would like to use that partition from the VM in read-only mode to speed up restorations and reduce calls to the backend. That is not possible nowadays.
I found a thread in the restic forum where this exact topic shows up:
https://forum.restic.net/t/unable-to-open-cache-when-doing-a-backup/782/4
It seems like the only purpose to have read-write access to cache directory is to create the CACHEDIR.TAG file.
This is the related error:
root@vm~# bin/restic snapshots --cache-dir /var/cache/restic-ro-mounted/
repository 7b769550 opened successfully, password is correct
unable to open cache: chtimes /var/cache/restic-ro-mounted/7b7695506c4da1caf4d1d089ff770d5ab15ad03bc8a4ab26c52b3a55d1c358cc: read-only file system

Did restic help you today? Did it make you happy in any way?
Restic makes my life a lot easier, for sure.

restic bumps the cache directory timestamps to mark a cache directory as still in use. Most of the code would probably still work if a cache directory is read-only, but there's a serious performance impact if the cache is incomplete and restic can't cache the metadata of a snapshot.
Can't you just use an overlayfs with the global cache directory as base layer and an upper layer for each VM?

Thanks Michael, I wouldn't consider that option. I guess it could work, I'll give a try :)


How do I run a specific stage in my Release pipeline using CLI?

[Enter feedback here]
It seems az pipelines run doesn't work with any of the Release Pipelines.  We use specific stages in our Release Pipeline to run automated tests and deploy code to various test environments.  This functionality is needed to invoke specific stages from CLI.

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

ID: 2a2123ca-5408-8f93-6f5c-93fe74684523
Version Independent ID: 7a03fe73-da7f-9b5a-38e7-ef51d85d49fd
Content: az pipelines
Content Source: latest/docs-ref-autogen/ext/azure-devops/pipelines.yml
GitHub Login: @rloutlaw
Microsoft Alias: routlaw

pipelines

Hello. Is there an update on this functionality?

devops service team should take a look

@yonzhan What is happening here? It is quite important for us to be able to select the stages to be run in our pipelines.

@adamnybergelli  I mean az pipelines CLI commands are owned by devops service team. They should look into this issue.

@yonzhan thanks, and how to I reach that team?

There is msftbot commented above to route to the appropriate team.

any update on this? @narula0781, @ashishonce, @romil07

any update on this? @narula0781, @ashishonce, @romil07

The following is a workaround to deploy a single stage, using the Azure Devops CLI and the Azure Devops REST API
NOTE: This has only been tested using the new YAML pipelines.

First, get the ID for the pipeline you want to automate:

az pipelines list --query "[].{ID: id, Name:name}" --output tsv

Once you have the pipeline's ID, get the list of builds for the pipeline to get the build ID of the build you want to run:

az pipelines build list --definition-ids <Pipeline ID> --query "[].{Name:definition.name,Uri:uri}" --output tsv
The build list from the previous command will have a Uri column with the following signature:
vstfs:///Build/Build/

Call the Devops REST API to retry a stage:
NB: Documentation for the API call: https://docs.microsoft.com/en-us/rest/api/azure/devops/build/stages/update?view=azure-devops-rest-6.0

NB: Used this tutorial to get the resources needed to call the API through Powershell (Thank you, Olivier Miossec! @omiossec):  https://dev.to/omiossec/getting-started-with-azure-devops-api-with-powershell-59nn
NB: I used the Developer Tools in Chrome to view the request when clicking the "ReRun" button on a build.  The URL in the Network tab for the call gave me the ProjectGuid and BuildStage:
Full Script:
$BuildId = <Build ID>

$AzureDevOpsPAT = "<Personal access token from tutorial above>"
$AzureDevOpsAuthenicationHeader = @{Authorization = 'Basic ' + [Convert]::ToBase64String([Text.Encoding]::ASCII.GetBytes(":$($AzureDevOpsPAT)"))}

$OrganizationName = "<Organization Name>"
$ProjectGuid = "<Project Guid. You may be able to use the ProjectName as well>"
$BuildStage = "<Build Stage>"

$requestBody = @{
state="retry"
}

$requestBodyJson = $requestBody | ConvertTo-Json

$uri = "https://dev.azure.com/$($OrganizationName)/$($ProjectGuid)/_apis/build/builds/$($BuildId)/stages/$($BuildStage)?api-version=6.0-preview.1"

Try
{
	Invoke-RestMethod -Uri $uri -Method patch -body $requestBodyJson -Headers $AzureDevOpsAuthenicationHeader -ContentType 'application/json'
} Catch {
	Write-Host "StatusCode:" $_.Exception.Response.StatusCode.value__
	Write-Host "StatusDescription:" $_.Exception.Response.StatusDescription
}

Once you issue the command, you should be able to see the stage triggered in Azure Devops.

The following is a workaround to deploy a single stage, using the Azure Devops CLI and the Azure Devops REST API
NOTE: This has only been tested using the new YAML pipelines.

First, get the ID for the pipeline you want to automate:

az pipelines list --query "[].{ID: id, Name:name}" --output tsv

Once you have the pipeline's ID, get the list of builds for the pipeline to get the build ID of the build you want to run:

az pipelines build list --definition-ids <Pipeline ID> --query "[].{Name:definition.name,Uri:uri}" --output tsv
The build list from the previous command will have a Uri column with the following signature:
vstfs:///Build/Build/

Call the Devops REST API to retry a stage:
NB: Documentation for the API call: https://docs.microsoft.com/en-us/rest/api/azure/devops/build/stages/update?view=azure-devops-rest-6.0

NB: Used this tutorial to get the resources needed to call the API through Powershell (Thank you, Olivier Miossec! @omiossec):  https://dev.to/omiossec/getting-started-with-azure-devops-api-with-powershell-59nn
NB: I used the Developer Tools in Chrome to view the request when clicking the "ReRun" button on a build.  The URL in the Network tab for the call gave me the ProjectGuid and BuildStage:
Full Script:
$BuildId = <Build ID>

$AzureDevOpsPAT = "<Personal access token from tutorial above>"
$AzureDevOpsAuthenicationHeader = @{Authorization = 'Basic ' + [Convert]::ToBase64String([Text.Encoding]::ASCII.GetBytes(":$($AzureDevOpsPAT)"))}

$OrganizationName = "<Organization Name>"
$ProjectGuid = "<Project Guid. You may be able to use the ProjectName as well>"
$BuildStage = "<Build Stage>"

$requestBody = @{
state="retry"
}

$requestBodyJson = $requestBody | ConvertTo-Json

$uri = "https://dev.azure.com/$($OrganizationName)/$($ProjectGuid)/_apis/build/builds/$($BuildId)/stages/$($BuildStage)?api-version=6.0-preview.1"

Try
{
	Invoke-RestMethod -Uri $uri -Method patch -body $requestBodyJson -Headers $AzureDevOpsAuthenicationHeader -ContentType 'application/json'
} Catch {
	Write-Host "StatusCode:" $_.Exception.Response.StatusCode.value__
	Write-Host "StatusDescription:" $_.Exception.Response.StatusDescription
}

Once you issue the command, you should be able to see the stage triggered in Azure Devops.

Despite of having a "hacky" workaround thanks to @aucinc123, I think this feature should be included in az pipelines release.

Bump for it being VERY useful to be able to simply do the following in the CLI (or a Powershell equivalent):
az pipelines release deploy --definition-name  --stage  --release

...wanted to add a few comments onto last few posts...
Def agree the ability to use cli to run specific stages would be VERY helpful... esp with 'multi-stage' .yaml pipelines that have dependencies (or not for that matter). Additionally, it would be nice to be able to select to run ANY particular stage - not JUST a deployment stage, AND ALSO - take into account CD approvals/checks (associated with environments) - some way to approve from command line IF you have permissions...

Is this still being investigated? I still see a huge need for this

Agreed still a huge need for this. Any updates?

Bump for it being VERY useful to be able to simply do the following in the CLI (or a Powershell equivalent):
az pipelines release deploy --definition-name --stage --release
For those of us whose corporate policy disallows CD, with all deployments having to go through gates, etc, our releases are all "Manual Only" rather than "On Build". I have CLI scripts that run pipelines, that create releases... but I still have to go back to the DevOps website to actually deploy the stage in question, after the release is created.

  These corporates also hire excellent employees that create 20 "microservices" that needs to be deployed with manual approval process and back to happy clicking in the evening to cover up for the time I "wasted" trying to automate this. Microsoft just rocks

yes, please

still waiting)

I found a workaround which is not painfull.
In your pipeline add paratmeter
parameters:
  - name: Build1
    displayName: Build1?
    type: boolean
    default: true

And for stage add condition
stages:
- stage: 'Build1'
  displayName: 'Build1' #Name displayed when viewing in Azure DevOps
  condition: ${{ parameters.Build1 }}
  dependsOn:

CLI supports parameters for pipeline execution. So you can pass this and it works in similar way as with stages selected "normal way".

Is there any update? I am waiting ......

I am looking for az cli pipeline+stage specific triggering as well, specifically being able to execute the cli commands from another pipeline, leveraging the calling account ADO permissions so that we can avoid PAT token generation and management.

If you don't want to increase number of parameters you can use variables defined on pipeline level configuration (Edit pipeline -> Variables)
Then you can set defaults for these each stage variables, like:

When you add new variable enable overwriting it:

In pipeline YAML file condition in stage will look like:
### Dev environment ###
- stage: dev_deployment
  displayName: Dev Deployment
  condition: eq(variables['stage_dev'], 'true')
  ...

### QA environment ###
- stage: qa_deployment
  displayName: QA Deployment
  condition: eq(variables['stage_qa'], 'true')
  ...

Running Dev stage only (Default stage_dev and stage_qa variables):
az pipelines run --organization $ORG --project $PROJECT_NAME --name $PIPELINE_NAME --branch $BRANCH --parameters deploy=true version=1.2.3

Running Dev and QA stages:
az pipelines run --organization $ORG --project $PROJECT_NAME --name $PIPELINE_NAME --branch $BRANCH --parameters deploy=true version=1.2.3 --variables stage_dev=true stage_qa=true

This has just come up as a requirement for us, we will look at some of the workarounds posted, but the general feature seems like a good, obvious candidate for inclusion in the az CLI command.


secure environment docs

New docs for secure environment functionality.
These link to https://github.com/convox/secure-environment/releases where the latest secure-environment build is available and to https://github.com/convox-examples/secure-env-example which has example files and an updated README with more info.
Release Playbook

[ ] Rebase against master
[ ] Code review
[ ] Merge into master
[ ] Verify changes at http://site-staging.convox.com
[ ] Promote release on site-production in the convox/production Rack

 Secure environment docs

Approved in trello by @ddollar


Add SetHTTPCookie

Issue #, if available:
#176
Description of changes:
SetHTTPResponseHeader lacks the ability to add multiple headers with the same key.
Headers with the same key is often for Set-Cookie header. Adding SetHTTPCookie function that invokes http.SetCookie.
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

closed after discussion in #176


Add files via upload

upload information via education
file.zip

@smatco First stage of verification passed, official domain is iisgalilei.eu as far as I verified. This is just an informational note. Pull request is still in the review. I appreciate your patience while waiting for the final decision.

@smatco Pull request merged. Thank you.


application.properties

Hello,
where I can find a list of options for writing a config in application.properties or some more extended example...   I tried to find it something in this repo, but no luck...
thanks a lot guys :)

ohghh my head... I Found it  finally:
https://github.com/jodconverter/jodconverter/wiki/Configuration

sorry for that guys

Ohh perfect thanks very much :-)))


[WIP] Migrate JavaScript to Typescript using ts-migrate

About
This is a proof-of-concept for automatically migrating all JavaScript files to Typescript using ts-migrate.
It is still work in progress and not yet ready to be merged.
Migration steps
These were the steps done on the original repo to do the migration:
npm install --save-dev ts-migrate
npx ts-migrate-full .

Run migrated files
To run the migrated files the *.ts files have to be compiled to *.js first:
tsc # Don't worry about compile errors for now
# Console 1:
npm dev:server
# Console 2:
npm dev

Open issues

.js files should not be generated next to .ts files
Fully integrate Typescript into the build system
... (many other things I did no think of)

More information

https://dev.to/kojikanao/introduce-typescript-to-react-js-project-with-ts-migrate-190h
https://medium.com/airbnb-engineering/ts-migrate-a-tool-for-migrating-to-typescript-at-scale-cd23bfeb5cc
https://github.com/airbnb/ts-migrate

Humm actually the tool hasn't do that much, if I open a class like mqtt client I can convert it to es6 class with a click in vscode and does a better work, also I would expect at least all require to be tranlsated to "import * from"

Humm actually the tool hasn't do that much, if I open a class like mqtt client I can convert it to es6 class with a click in vscode and does a better work, also I would expect at least all require to be tranlsated to "import * from"

@robertsLando Yes, that's right.
I've done some research on how to automate the migration of large code bases and stumbled upon the following resources and tools:

https://medium.com/@cpojer/effective-javascript-codemods-5a6686bb46fb
https://github.com/facebook/jscodeshift
https://github.com/rajasegar/awesome-codemods
https://github.com/cpojer/js-codemod/
https://github.com/5to6/5to6-codemod

Maybe a multi-pass approach would allow us to combine the best of available tools:

Extract JavaScript code from .vue files into separate .js files (just to benefit from the migration tools - may be moved back once they are migrated)
Convert all JavaScript files to modern ES6 modules using appropriate codemods
Migrate JavaScript to TypeScript using ts-migrate
Optional: Move TypeScript code back into .vue files

Here are some experiments that showcase how the JavaScript to ES6 migration could be done but I ran into problems that I was not able to resolve due to the lack of knowledge about how the files in 'lib/' are used:
sudo npm install -g jscodeshift
npm install 5to6-codemod
jscodeshift -t node_modules/5to6-codemod/transforms/cjs.js lib

@ahochsteger I would prefer a cleaner approach, actually as I said this module isn't doing that much IMO, I just see lot annotations and any types everywhere, I thing we could start with the backend migration, file by file, and then move also the  frontend by splitting vue and js content

@ahochsteger I would prefer a cleaner approach, actually as I said this module isn't doing that much IMO, I just see lot annotations and any types everywhere, I think we could start with the backend migration, file by file, and then move also the frontend by splitting vue and js content.
There are vscode tools that do much better

Yes, the automated approach may be overkill for zwavejs2mqtt since there are not that many JavaScript files to migrate.

@ahochsteger I would prefer a cleaner approach to this, something like: https://www.typescriptlang.org/docs/handbook/migrating-from-javascript.html


Running all examples periodically hangs on Windows for Node v5

Checklist

Please ensure the following tasks are completed before filing an issue.

[x] Read and understood the Code of Conduct.
[x] Searched for existing issues and pull requests.
[x] If this is a general question, searched the FAQ for an existing answer.
[x] If this is a feature request, the issue name begins with RFC: .

Description

Description of the issue.

Running make examples on Node.js v5 on Windows periodically stalls. Possibly due to a long running example.
Note: unable to personally reproduce as do not have access to a Windows machine. Came across the bug due to periodically failing builds on AppVeyor.
Related Issues

Does this issue have any related issues?

No.
Questions

Any questions for reviewers?

No.
Other

Any other information relevant to this issue (or feature request)? This may include screenshots, references, stack traces, sample output, and/or implementation notes.

AppVeyor builds periodically fail due to this bug. Bug always occurs on Node v5. Collaborator was able to reproduce the issue on local Windows machine.
Reproduction

If this issue is a bug report, what steps are required to reproduce the unexpected output? (If this is a feature request, remove this section.)

In order to reproduce this bug, do the equivalent of the following on Windows:
$ nvm use 5
$ make examples

Expected Results

What are the expected results?  (If this is a feature request, remove this section.)

Examples should successfully run and finish.
Actual Results

What are the actual results? (If this is a feature request, remove this section.)

Command hangs.
Environments

If this issue is a bug report, what environments are affected; e.g., Node v0.4.x, Chrome, IE 11? If Node.js, include the npm version, operating system, and any other potentially relevant platform information. (If this is a feature request, remove this section.)

The following environments are affected:

Windows, Node.js v5

We no longer us AppVeyor and Node.js v5 is an older, unstable Node.js version, so probably not worth investigating.


Test Pipeline for https://github.com/Azure/azure-sdk-for-java/pull/17015

Hi, @han-gao , please resolve the conflict.


can member request upgrade?

hi, can member request for upgrade package?

yeah, if you have several package then client/member can upgrade to higher plan anytime.

We have updated our module lately. Hope it works for you now. If not please open a new issue with as detailed description as possible. Thanks in advance!


feat: opsRule supports workspace config

What type of PR is this?

/kind feature
What this PR does / why we need it:
feat: opsRule supports workspace config
Which issue(s) this PR fixes:

Fixes #
Special notes for your reviewer:
Does this PR introduce a user-facing change?

Additional documentation e.g., design docs, usage docs, etc.:

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

29 of 45 (64.44%)  changed or added relevant lines in 4 files are covered.
7 unchanged lines in 1 file lost coverage.
Overall coverage decreased (-0.1%) to 74.453%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

pkg/modules/generators/trait/ops_rule_generator.go
14
22
63.64%

pkg/modules/patchers/trait/ops_rule_patcher.go
12
20
60.0%

Files with Coverage Reduction
New Missed Lines
%

pkg/cmd/apply/options.go
7
71.94%

Totals

Change from base Build<PHONE_NUMBER>:
-0.1%

Covered Lines:
7286

Relevant Lines:
9786

💛  - Coveralls


Issue #638: Changed Consul reference to Eureka in Eureka Service Discovery documentation

As discussed in issue #638, here's the PR 😃

Thanks!


Compile with emscripten question

Hi, @rohan-sawhney ,
The BFF is so fast and stable for surface parameterization, and I am trying to port it to the frontend for our web application. But there is a big problem when compiling suitesparse with emscripten, because its depdency LAPACK is written in FORTRAN language. With my limited knowledge, I tried some experiments but all faied, and guess it maybe nearly impossible to compile them.
I noticed that you have successfully compiled some c++ libs to web, and especially mentioned that there maybe a update of suitesparse backend for linear-algebra-js. So is there a way to compile it? Do you have some experimence or suggestions?
Another question is, if suitesparse is not working, is there a alternative to replace suitesparse function used in BFF, e.g. Eigen? If exists, how much work need to do replacement and will the performance drop too much?
Thanks!

Hi @sysuyl, this library has support for BFF here built on top of linear-algebra-js which uses Eigen internally. Not as fast  as Suitesparse unfortunately, but for moderately sized meshes the performance hit isn't too noticeable. I would recommend if you can to use emscripten on the latest version of Eigen in linear-algebra-js, since its likely to be faster than the ~3 year old version of Eigen linear-algebra-js is currently using.

Hi @rohan-sawhney ，
Thank you for reply and suggestions. The geometry-processing-js library is amazing, it support parameterization  and also shows that eigen can be a good replacement.
But there is still a problem, I need to compile BFF with some other c++ processing code together to  form a function module. So the direct way maybe replace suitesparse with eigen is this c++ code repository. Is it a hard work to replace with eigen? Can you me some hints or any help?
Thanks!


Fix error when running with Ruby 1.9.x on the server side

Closes #15
Found out that %i[] is for Ruby 2.0 only.
Puppet Server runs JRuby 1.7 which is Ruby 1.9.x and, for some reason, the package provider code is executed by the Server. This means Ruby 2.0 features can't be used in those files.

Thanks for the report and the fix. I'll also update rubocop.yml so this doesn't get changed back


How do I do constructor overloading in civet?

First there is another parsing error on this test file:
class Test
  variable: string[]
  constructor({x: number, z: Nesting, y: SubElement[]})

(yes this isn't a valid class yet without an implementation but the error is a parse error not a syntax error)
test.civet:3:52 Failed to parse
Expected:
	Whitespace /[\s]+/
	JSMultiLineComment "/*"
	CoffeeHereCommentStart /###(?!#)/
	JSSingleLineComment /\/\/(?!\/)[^\r\n]*/
	Equals "="
	NonNewlineWhitespace /[ \t]+/
	InlineComment "/*"
	Comma ","
	ObjectPropertyDelimiter "}"
	EOL /\r\n|\n|\r|$/
Found: "[]})"
ts

And in general I am curious how best to implement overloaded constructors in civet. Didn't see it in the cheatsheet.
I want to allow passing in a single object with all params and passing it params as args, so something like:
class Test < SomeOther
  # In TS i would have to write the clunkier constructor(obj: {x:number, y:number, z:number} = {x: 0, y: 1, z: []}), this is an easy syntax improvement win (although would need an error like "need to define defaults for all values of an object param")
  @(obj: {x: number = 0, y: number = 1, z: number[] = []})
  # do i do @(public x: number = 0, ...) ?
  @(p: number = 0, y: number = 1, z: number[] = [])
      if (y == undefined) {
        let {x, y, z} = p;
      } else {
        let x = p;
      }
      super(x,y)
      this.z = z

(with the parse error I can't tell whether this works or not)
it would be quite amazing if civet could intelligently construct a "unified" implementation from overloads (functions and methods and constructors) that have different types and arities, like so: (the fact that typescript doesn't do this automatically kind of surprises me)
function test(obj: {x: number, y:number=1, z:number[]=[]}): Type
  test(x, y, z)
function test(x: number, y:number = 1, z: number[]=[]): Type
  // ... does something

would turn into something like:
function test(obj: {x:number, y:number, z:number[]} = {y:1, z:[]}): Type;
function test(x: number, y:number=1, z:number[] = []): Type;
function test(xOrObj: number | {x:number, y:number, z:number[]}, y:number=1, z:number[] = []): Type {
  if (y == undefined) {
     // boilerplate destructure
     let {x,y,z} = xOrObj;
     // copies implementation here
     return test(x, y, z)
  }
  // ... does something [copied here]
}

could also make two dummy functions which copy both implementations and call them in place with the correct arity.
function test(xo: number | {x:number, y:number, z:number[]}, y: number=1, z: number[] = []) {
  if (y == undefined) {
    // copy implementation here as IIFE
    return (({x:number, y:number, z:number[]}) => test(x, y, z)})(xo)
  }
  return ((x,y,z) => {
     // ... does something
  })(x, y, z)
}

although of course first option is preferred.
Idk if civet understands types but even doing this for different arities would be a big dev boon

Thanks for the report. The lack of constructor and method overloading in classes currently is a bug and I hope to fix it soon.
There is some discussion about mixed type/value destructuring here: https://github.com/DanielXMoore/Civet/discussions/126 and it is something we are interested in but it is challenging to find a unified syntax that is compatible with existing TypeScript while being simple enough and providing enough value but I think we are getting close. Feel free to add your thoughts to the discussion.
Thanks again and I hope you enjoy programming with Civet!


Server does not check for IP address

for some reason, the server can not check the IP address.
This is the error message that I got from the debug mode.

[WARDEN] ERROR: Failed to connect to IPHub API to check the IP address of Shadowsun!

Set your API key.

The was API key already set.

New update should fix soon.


showSearch cannot be reopened after closing with OS back button

Steps to Reproduce

call showSearch()
hit the OS back button on Android
try to call showSearch() again.

Everything works fine as long as you call close(context, null) inside your SearchDelegate, which is done when tapping the back arrow in the example.
Logs

I/flutter (15760): ══╡ EXCEPTION CAUGHT BY GESTURE ╞═══════════════════════════════════════════════════════════════════
I/flutter (15760): The following assertion was thrown while handling a gesture:
I/flutter (15760): 'package:flutter/src/material/search.dart': Failed assertion: line 55 pos 10: 'delegate._result ==
I/flutter (15760): null || delegate._result.isCompleted': is not true.
I/flutter (15760):
I/flutter (15760): Either the assertion indicates an error in the framework itself, or we should provide substantially
I/flutter (15760): more information in this error message to help you determine and fix the underlying cause.
I/flutter (15760): In either case, please report this assertion by filing a bug on GitHub:
I/flutter (15760):   https://github.com/flutter/flutter/issues/new
I/flutter (15760):
I/flutter (15760): When the exception was thrown, this was the stack:
I/flutter (15760): #2      showSearch (package:flutter/src/material/search.dart)
I/flutter (15760): #3      _HomePageState.build.<anonymous closure> (file:///home/westy92/Source/checkiday-mobile/lib/main.dart:316:15)
I/flutter (15760): #4      _InkResponseState._handleTap (package:flutter/src/material/ink_well.dart:494:14)
I/flutter (15760): #5      _InkResponseState.build.<anonymous closure> (package:flutter/src/material/ink_well.dart:549:30)
I/flutter (15760): #6      GestureRecognizer.invokeCallback (package:flutter/src/gestures/recognizer.dart:102:24)
I/flutter (15760): #7      TapGestureRecognizer._checkUp (package:flutter/src/gestures/tap.dart:161:9)
I/flutter (15760): #8      TapGestureRecognizer.acceptGesture (package:flutter/src/gestures/tap.dart:123:7)
I/flutter (15760): #9      GestureArenaManager.sweep (package:flutter/src/gestures/arena.dart:156:27)
I/flutter (15760): #10     _WidgetsFlutterBinding&BindingBase&GestureBinding.handleEvent (package:flutter/src/gestures/binding.dart:147:20)
I/flutter (15760): #11     _WidgetsFlutterBinding&BindingBase&GestureBinding.dispatchEvent (package:flutter/src/gestures/binding.dart:121:22)
I/flutter (15760): #12     _WidgetsFlutterBinding&BindingBase&GestureBinding._handlePointerEvent (package:flutter/src/gestures/binding.dart:101:7)
I/flutter (15760): #13     _WidgetsFlutterBinding&BindingBase&GestureBinding._flushPointerEventQueue (package:flutter/src/gestures/binding.dart:64:7)
I/flutter (15760): #14     _WidgetsFlutterBinding&BindingBase&GestureBinding._handlePointerDataPacket (package:flutter/src/gestures/binding.dart:48:7)
I/flutter (15760): #15     _invoke1 (dart:ui/hooks.dart:134:13)
I/flutter (15760): #16     _dispatchPointerDataPacket (dart:ui/hooks.dart:91:5)
I/flutter (15760): (elided 2 frames from class _AssertionError)
I/flutter (15760):
I/flutter (15760): Handler: onTap
I/flutter (15760): Recognizer:
I/flutter (15760):   TapGestureRecognizer#25139(debugOwner: GestureDetector, state: ready, won arena, finalPosition:
I/flutter (15760):   Offset(357.0, 54.1), sent tap down)

Analyzing checkiday-mobile...
No issues found! (ran in 16.0s)

[✓] Flutter (Channel dev, v0.5.1, on Linux, locale en_US.UTF-8)
    • Flutter version 0.5.1 at /home/westy92/Source/flutter
    • Framework revision c7ea3ca377 (4 days ago), 2018-05-29 21:07:33 +0200
    • Engine revision 1ed25ca7b7
    • Dart version 2.0.0-dev.58.0.flutter-f981f09760

[✓] Android toolchain - develop for Android devices (Android SDK 27.0.3)
    • Android SDK at /home/westy92/Android/Sdk
    • Android NDK location not configured (optional; useful for native profiling support)
    • Platform android-27, build-tools 27.0.3
    • Java binary at: /home/westy92/android-studio/jre/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-915-b01)
    • All Android licenses accepted.

[✓] Android Studio (version 3.0)
    • Android Studio at /home/westy92/android-studio
    • Flutter plugin version 21.2.1
    • Dart plugin version 171.4424
    • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-915-b01)

[!] VS Code (version 1.23.1)
    • VS Code at /usr/share/code
    • Flutter extension not installed; install from
      https://marketplace.visualstudio.com/items?itemName=Dart-Code.flutter

[✓] Connected devices (1 available)
    • Pixel • FA74C0300048 • android-arm64 • Android 8.1.0 (API 27)

! Doctor found issues in 1 category.

It looks like https://docs.flutter.io/flutter/widgets/WillPopScope-class.html may be helpful.

This hack at least gets things to work for now:
class _MySearchDelegate extends SearchDelegate<String> {
  // ...

  @override
  Widget buildLeading(BuildContext context) {
    return WillPopScope(
      onWillPop: () async {
        close(context, null);
        return false;
      },
      child: IconButton(
        tooltip: 'Back',
        icon: AnimatedIcon(
          icon: AnimatedIcons.menu_arrow,
          progress: transitionAnimation,
        ),
        onPressed: () {
          close(context, null);
        },
      ),
    );
  }

  // ...
}

cc @goderbauer

Thanks for the report. I was able to reproduce it and pushed a fix out for review.


EntityGlowPower/SelfGlowPower fix

Hi there!
I noticed that Apoli used Inject and LocalCapture in WorldRendererMixin to realize the function of modifying entity glow colors from powers, which is rather unnecessary and might cause compatibility problems.
So I made a fix which Inject Entity::getTeamColorValue instead :)
It should work fine in most cases as the only call to this method in vanilla is from WorldRenderer::render (which is where the original mixin targets). It may lead to some problems when other mods use this method for certain function, but I believe the potential impact would be far smaller than before.
I also changed the color logic of both powers:
If use_teams is set to true, custom glowing colors will still work on those entities who don't have a team or whose team doesn't got a team color.
Custom glowing colors from different powers will mix with each other, instead of overriding each other "randomly". I changed the test data to test this: While apoli:glow_in_view has a magenta color (1, 0, 1) and apoli:glow_invisible has a yellow color (1, 1, 0), having both power will make invisible entities outside player's view glow in pink color(1, 0.5, 0.5).
I'm not sure if the original logic was made with certain consideration, so just ignore my change to the color logic if you dislike it ;)

If need be, the hook can be limited to WorldRenderer using java.lang.StackWalker. It's not pretty but it would do the trick.

If need be, the hook can be limited to WorldRenderer using java.lang.StackWalker. It's not pretty but it would do the trick.

Thanks for the advice! :)
This solution should work fine. I commented it out for now though, as it's currently not required.

As the person who added the color functionality, nice changes.


Rework CI/CD

CI platform has became a major limiting factor for a robust development, as was evident during 1.2 release.
As the amount of supported configurations grow, having the full CI test completing in 20+ hrs is unacceptable.
The primary weak point is the current implementation of a self-hosted runner which is a single EC2 instance, managed manually. This approach is obviously not scalable.
Instead, we should consider using docker-based approach with AWS fargate service.
In addition, we should consider doing so not only for the tests running on self hosted, but for all the tests since it will potentially be more scalable (bypassing github concurrency limitations).
Additional improvements to consider
redis-rs CI is taking too much time to finish — need to be shortening and improved:

[ ] Strap unneeded cases: features, sync tests, versions tests etc.
[ ] Fix usage of hard codded ports for server and run in multithreaded.
[ ]  Run tests with cargo nextest

Glide enhancement

[ ] Using cache Rust builds for non Rust changes PR's.
[ ] Some language build and test can be replaced by much faster tools, replacing them will make Glide CI and CD faster.
[ ] Moving macOS runner to be a container of macOS on Ubuntu, saving CI costs. Can be done easily using services field of a job.

EE 7d


All strings returned as "Invalid content id given!"

@acs-ferreira I`ve the same problem. Did you solve your?

I've removed and reinstalled.


Update R doc by roxygen2.

Split it up from https://github.com/dmlc/xgboost/pull/5123 for clarity.

@hetong007 @khotilov @pommedeterresautee Please help taking a look, I'm not familiar with the R ecosystem and not sure about how to maintain these generated documents.

Also @hcho3


Cyryllic words is not recognized for jumping

I don't think there's a good way to achieve this, since these characters are hard to tell if it's a word or just characters, like 树、树木、树木繁茂, that would require a database for all these combinations, and not everyone can agree with, since even dictionaries have updates too. With that said, I'm open for ideas.

In cases of word separation, languages using Latin and languages using Cyrillic differ little. I proposed an implementation in PR by adding Cyrillic characters to the regular expression

@ivanbarsukov Can you please paste the screenshot code here, so I can test.

Sure, file with the code is here:
https://github.com/nextgis/qgis_molusce/blob/master/src%2Fmolusce%2Fmetadata.txt

@ivanbarsukov Released in 0.8.0, please verify.

@ivanbarsukov Released in 0.8.0, please verify that it's working as intended.

Works great. Thank you!


update this plugin to support webpack4

Recently,I updated my webpack version to v4,but I encounter a problem that current extract-text-webpack-plugin does not support webpack 4, so I made a fork to solve this problem, after verifying my change support v4 successfully, I want to create this pull request to the main repository to share  my endeavor. Please contact me if any problem appear

@NealST please use https://github.com/webpack-contrib/extract-text-webpack-plugin/releases/tag/v4.0.0-beta.0 for webpack@4


Custom Tailwind Config

Necessary for solving this issue: https://github.com/gehrisandro/tailwind-merge-php/issues/4

I guess there is nothing to do for me here. As soon as Sandro has a fix for that it's automatically available trough our dependencies. Or did I miss the point here?

Tailwind Merge PHP/Laravel already has the option to supply a config and the solution to the issue is to supply a config. Your  plugin should therefore expose a config file where you can set the config that's used to initialize the tailwind merge object like here: https://github.com/gehrisandro/tailwind-merge-php/issues/4#issuecomment-1711875097

Does publishing the config file (as stated in the Laravel package docs) not work for you? Have not tested but since Statamic uses Laravel under the hood I guess it should work already.

I see, I'll have to test this.

@tobimori did it work?


Omnibus PR closing out some open issues and adds py3.10 to build matrix

Per the title
Please complete the following checklist:

[x] I have read the guidelines in CONTRIBUTING.md.

[x] I have documented all public-facing changes in CHANGELOG.md.

[ ] This pull request includes code, documentation, or other content derived from external source(s). If this is the case, ensure the external source's license is compatible with scikit-bio's license. Include the license in the licenses directory and add a comment in the code giving proper attribution. Ensure any other requirements set forth by the license and/or author are satisfied. It is your responsibility to disclose code, documentation, or other content derived from external source(s). If you have questions about whether something can be included in the project or how to give proper attribution, include those questions in your pull request and a reviewer will assist you.

[x] This pull request does not include code, documentation, or other content derived from external source(s).

Note: REVIEWING.md may also be helpful to see some of the things code reviewers will be verifying when reviewing your pull request.

@mr-c, if you have a moment, could you look at the aarch64 failure? I'm not familiar with this modification to GH actions, and any guidance you might have here would be greatly appreciated

@wasade Looks like a conda issue, which I am less versed in. Maybe the aarch64 build needs updating to Python 3.7+ ?

Thanks @mr-c! I'll bump aarch64 and see what happens :)

For the moment, removing py 3.10 from the build matrix. It looks like h5py >= 3.2 lacks py 3.10 builds, and we're presently pinned on < 3.2 due to h5py/h5py#1880

Posting here for better tracking:
It appears that h5py 3.6 and hdf5 1.12.1 work together just fine, and recent versions of hdf5 inflict a run pin on packages which depend on it (such as h5py) to make sure the missing symbol issue doesn't happen.
python -c 'import h5py'
# no error

There does appear to be python 3.10 versions of these:

Environment from `conda create -n hdf5test -c conda-forge h5py python=3.10`

_libgcc_mutex             0.1                 conda_forge    conda-forge
_openmp_mutex             4.5                       1_gnu    conda-forge
bzip2                     1.0.8                h7f98852_4    conda-forge
c-ares                    1.18.1               h7f98852_0    conda-forge
ca-certificates           2021.10.8            ha878542_0    conda-forge
cached-property           1.5.2                hd8ed1ab_1    conda-forge
cached_property           1.5.2              pyha770c72_1    conda-forge
h5py                      3.6.0           nompi_py310he751f51_100    conda-forge
hdf5                      1.12.1          nompi_h4df4325_104    conda-forge
keyutils                  1.6.1                h166bdaf_0    conda-forge
krb5                      1.19.3               h08a2579_0    conda-forge
ld_impl_linux-64          2.36.1               hea4e1c9_2    conda-forge
libblas                   3.9.0           13_linux64_openblas    conda-forge
libcblas                  3.9.0           13_linux64_openblas    conda-forge
libcurl                   7.82.0               h2283fc2_0    conda-forge
libedit                   3.1.20191231         he28a2e2_2    conda-forge
libev                     4.33                 h516909a_1    conda-forge
libffi                    3.4.2                h7f98852_5    conda-forge
libgcc-ng                 11.2.0              h1d223b6_14    conda-forge
libgfortran-ng            11.2.0              h69a702a_14    conda-forge
libgfortran5              11.2.0              h5c6108e_14    conda-forge
libgomp                   11.2.0              h1d223b6_14    conda-forge
liblapack                 3.9.0           13_linux64_openblas    conda-forge
libnghttp2                1.47.0               he49606f_0    conda-forge
libnsl                    2.0.0                h7f98852_0    conda-forge
libopenblas               0.3.18          pthreads_h8fe5266_0    conda-forge
libssh2                   1.10.0               ha35d2d1_2    conda-forge
libstdcxx-ng              11.2.0              he4da1e4_14    conda-forge
libuuid                   2.32.1            h7f98852_1000    conda-forge
libzlib                   1.2.11            h166bdaf_1014    conda-forge
ncurses                   6.3                  h9c3ff4c_0    conda-forge
numpy                     1.22.3          py310h45f3432_0    conda-forge
openssl                   3.0.2                h166bdaf_1    conda-forge
pip                       22.0.4             pyhd8ed1ab_0    conda-forge
python                    3.10.4          h2660328_0_cpython    conda-forge
python_abi                3.10                    2_cp310    conda-forge
readline                  8.1                  h46c0cb4_0    conda-forge
setuptools                61.2.0          py310hff52083_3    conda-forge
sqlite                    3.37.1               h4ff8645_0    conda-forge
tk                        8.6.12               h27826a3_0    conda-forge
tzdata                    2022a                h191b570_0    conda-forge
wheel                     0.37.1             pyhd8ed1ab_0    conda-forge
xz                        5.2.5                h516909a_1    conda-forge
zlib                      1.2.11            h166bdaf_1014    conda-forge

Not sure why it isn't getting picked up in your earlier tests, but figuring that out might be the easiest way forward.

Oh it looks like when you added 3.10 to the build matrix, things were basically working https://github.com/biocore/scikit-bio/pull/1801/commits/a052fab8f8c06c342faf699aa329e5c8858db51b?
There was an API shift, so if we drop 3.6 and update the tests for the newer h5py encoding-aware version, I think it would be fine?

@mr-c, aarch64 seems unable to find conda. We've tried various flavors of dependencies, do you have a recommendation by chance?

I don't have any recommendations, as I'm not a conda user.
However, I see that recent versions of the conda package itself are only in the conda-forge channel. Perhaps that channel needs configuring?
https://anaconda.org/conda-forge/conda/files?version=4.11.0

Thanks @mr-c, took one more stab.

Failure on aarch64 is a known stochastic error, merging