in rest api  request the param limit is executed more times than expected

when I use rest api load data,  set the param limit
limit=2147483647 the total size is 1594, cost time is more than 2h
but when I set limit=50, the total size is alse 1594, the cost time is  less than 7min

PR #1739


Integrate into a Proxy so can support any language and a server side queue implementation

Embed into rest proxy, and have clients request messages to process, with the concurrency and committing handled as per usual by PC.
This enables the PC to be used from any language / environment.

Closing Issue


Relationships and the jsonapi 1.0 standard doesn't match.

Hi,
I'm using your library in a project with Ember (and ember data) as a FrontEnd Framework , which incude a jsonapi extension.
Well, ember data parse the relationships as the standard 1.0 specification, but your library doesn't fit to it.
First off all, your library always returns the relations as an array of data objects, but the specification sais that the relationships of a model have to be a data object with as many objects (type and id) as records in the query.
Example:
laravel5-jsonapi:
{   "data": [     {       "type": "channels",       "id": "1",       "attributes": {         "company_id": "1"       },       "links": {         "self": {           "href": "http://localhost:55555/channels/1"         }       },       "relationships": {         "company": [           {             "data": [               {                 "type": "companies",                 "id": "1"               }             ]           }         ],         "platforms": [           {             "data": [               {                 "type": "platforms",                 "id": "1"               }             ]           },           {             "data": [               {                 "type": "platforms",                 "id": "1"               },               {                 "type": "platforms",                 "id": "2"               }             ]           }         ] ...etc etc
instead of
{   "data": [     {       "type": "channels",       "id": "1",       "attributes": {         "company_id": "1"       },       "links": {         "self": {           "href": "http://localhost:55555/channels/1"         }       },       "relationships": {         "company": {           "data": [             {               "type": "companies",               "id": "1"             }           ]         },         "platforms": {           "data": [             {               "type": "platforms",               "id": "1"             },             {               "type": "platforms",               "id": "2"             }           ]         } ...etc etc
I will correct it in the DataLinksHelper.php file, please consider to change it.
Another problem, and bigger, is than the output of the relationships node must match with the nature of the relation, for example, if the model has a relation with belongsTo, the output always will be a property data as an object (not an array) with the type and id properties of the relation:
Example:
"relationships": {         "company": {           "data": {             "type": "companies",             "id": "1"           }         },...etc
If the relaion is multiple record (such a hasMany) the output allwais have to be an array (also if the query only returns one object)
Example:
{ "relationships": {         "platforms": {           "data": [             {               "type": "platforms",               "id": "1"             }           ]         }...etc
OR
 {"relationships": {         "platforms": {           "data": [             {               "type": "platforms",               "id": "1"             },             {               "type": "platforms",               "id": "2"             }           ]         }...etc
You can see the specification here:
http://jsonapi.org/format/#fetching-relationships

If you've got a PR I'm willing to accept it :+1:

I ran into the same problem, looking forward to your PR @rmarinleal :)

Still haven't had time... to fix it. PR would be awesome @rmarinleal

The commit above only addresses the first problem described in this issue

Any fix solving issues for this is very welcomed

Late at night, but I could get in the computer. Checking it @OskarD. Will update :)

Alright. Just fix the test. Replace test with the json expected:

    /**
     *
     */
    public function testItWillSerializeToJsonApiAComplexObject()
    {
        $mappings = HelperMapping::complex();
        $mapper = new Mapper($mappings);

        $expected = <<<JSON
{
   "data":{
      "type":"post",
      "id":"9",
      "attributes":{
         "title":"Hello World",
         "content":"Your first post"
      },
      "links":{
         "self":{
            "href":"http://example.com/posts/9"
         },
         "comments":{
            "href":"http://example.com/posts/9/comments"
         }
      },
      "relationships":{
         "author":{
            "links":{
               "self":{
                  "href":"http://example.com/posts/9/relationships/author"
               },
               "related":{
                  "href":"http://example.com/posts/9/author"
               }
            },
            "data":{
               "type":"user",
               "id":"1"
            }
         },
        "comments": {
            "data": [
                {
                    "type": "comment",
                    "id": "1000"
                }
            ]
        }
      }
   },
   "included":[
      {
         "type":"user",
         "id":"1",
         "attributes":{
            "name":"Post Author"
         },
         "links":{
            "self":{
               "href":"http://example.com/users/1"
            },
            "friends":{
               "href":"http://example.com/users/1/friends"
            },
            "comments":{
               "href":"http://example.com/users/1/comments"
            }
         }
      },
      {
         "type":"user",
         "id":"2",
         "attributes":{
            "name":"Barristan Selmy"
         },
         "links":{
            "self":{
               "href":"http://example.com/users/2"
            },
            "friends":{
               "href":"http://example.com/users/2/friends"
            },
            "comments":{
               "href":"http://example.com/users/2/comments"
            }
         }
      },
      {
         "type":"comment",
         "id":"1000",
         "attributes":{
            "dates":{
               "created_at":"2015-07-18T12:13:00+00:00",
               "accepted_at":"2015-07-19T00:00:00+00:00"
            },
            "comment":"Have no fear, sers, your king is safe."
         },
         "relationships":{
            "user":{
               "data":{
                  "type":"user",
                  "id":"2"
               }
            }
         },
         "links":{
            "self":{
               "href":"http://example.com/comments/1000"
            }
         }
      }
   ],
   "links":{
      "self":{
         "href":"http://example.com/posts/9"
      },
      "first":{
         "href":"http://example.com/posts/1"
      },
      "next":{
         "href":"http://example.com/posts/10"
      },
      "comments":{
         "href":"http://example.com/posts/9/comments"
      }
   },
   "meta":{
      "author":{
         "name":"Nil Portugués Calderó",
<EMAIL_ADDRESS>      },
      "is_devel":true
   },
   "jsonapi":{
      "version":"1.0"
   }
}
JSON;
        $post = HelperFactory::complexPost();

        $transformer = new JsonApiTransformer($mapper);
        $transformer->setMeta(
            [
                'author' => [
                    'name' => 'Nil Portugués Calderó',
                    'email' =><EMAIL_ADDRESS>                ],
            ]
        );
        $transformer->addMeta('is_devel', true);
        $transformer->setSelfUrl('http://example.com/posts/9');
        $transformer->setFirstUrl('http://example.com/posts/1');
        $transformer->setNextUrl('http://example.com/posts/10');

        $this->assertEquals(
            \json_decode($expected, true),
            \json_decode((new JsonApiSerializer($transformer))->serialize($post), true)
        );
    }

Fixed

I don't think this solves the second part of the issue:

Another problem, and bigger, is than the output of the relationships node must match with the nature of the relation, for example, if the model has a relation with belongsTo, the output always will be a property data as an object (not an array) with the type and id properties of the relation:
Example:
"relationships": { "company": { "data": { "type": "companies", "id": "1" } },...etc
If the relaion is multiple record (such a hasMany) the output allwais have to be an array (also if the query only returns one object)
Example:
{ "relationships": { "platforms": { "data": [ { "type": "platforms", "id": "1" } ] }...etc
OR
{"relationships": { "platforms": { "data": [ { "type": "platforms", "id": "1" }, { "type": "platforms", "id": "2" } ] }...etc
You can see the specification here:
http://jsonapi.org/format/#fetching-relationships

Hello,
Sorry for not answer before, we are having many perfomance problems with the jsonapi's standard and the implementation of it with this library.
When diving in the code, I can say it's a good idea in theory, but when you apply the library to a database with several relations (for example, one object have 5 belongs and 7 hasmany relations) the output can easyly make more than 200 petitions to the Database, it'll be increased when you ask for a list of models (in a database with 40 tables and less than 20k records, wich I consider a vary small database you will get an out of memory in all petitions).
We are working in changing the library's idea, implementing the query with "joins" instead of using single gets of models, but it's a hard work.
If at last we obtain a good result, I'll comment it to you.
Thanks for answer and your patient

@rmarinleal feedback and examples based on your edge case are welcomed :+1:

This bug has not been fixed. It just shifted from working only with belongsTo relationships to only working with hasMany relationships.

@directrix1 would help if you provide a fix or code


Create automated tests for testing downgrade of versions

Describe the proposal
Create automated tests for testing downgrade of versions
Release Note

RELEASE NOTE:

currently done  https://github.com/dapr/cli/blob/master/tests/e2e/upgrade/upgrade_test.go#L57


Pace build optional CI

As climate models developed at NOAA and NASA are leveraging DaCe more and more for their performance backend, we have seen multiple occurrence of major/minor version breaking downstream.
This optional GitHub action is an attempt to reduce those breakage by allowing the DaCe ecosystem to pull on a vetted version of the Pace climate model and run a subset of the regression tests that should exercise enough DaCe to catch a good amount of errors.
NASA takes responsibility to keep this CI clean and working along. All non-DaCe issues should be pinged on @FlorianDeconinck.
All data and model are under open source licenses.

@phschaad @BenWeber42
As discussed, here's an attempt at bringing a CI that exercise a fraction (Remapping) of the model.
This shouldn't be merged up until we all agree on the general principle and execution time.

If we think it'll be good to have it in the regular suite we can tailor what we extract from the model.
Basically you have 3 big one-rank test (in descending order of complexity):

Remapping (<- this is the one in the PR)
Tracer advection
D_SW

And then we have 2 bigger and more complex test that need 6 ranks (because of halo exchanges):

FVDynamics (basically the entire dynamical core)
Acoustics

FVDynamics is a bit of beast. The inner Acoustics loop would cover about 75% of the code, so it might be the best ratio code coverage/time.
On the other side, for a lighting fast test D_SW is a the cornerstone of the acoustics loop and often the buggier code.
My only concern is that already installing the entire py stack is not fast. I'll come back with some numbers.

Agreed. You can force a mpirun --oversubscibe but depending on the quality of the hardware this might not be a real option...
I'd say we can get a decent code coverage with the single rank tests and as we implement more model code under DaCe we can also refine those to cover more patterns.
The multi-rank might not even be a good idea to do it DaCe side. After all, on our side for every major version of DaCe we need to run full coverage, including science testing. At that stage, something with a webhook from this repo to ours triggering a job on our HPC makes more sense. Let's call it future endeavor ;)

Okay here's a proposal based on timing on my box which is not that great.
Timing for dace:gpu backend runtime:

Remapping: 3mn37s
D_SW: 4mn38s
Riem_Solver_C: 0mn45s

Overall 9mn on top of the install of the stack, so potentially around 15mn for a pretty sturdy test.
What do you think?

Alright @BenWeber42 / @phschaad
I've updated the script to run in order from faster to slower: RiemSolverC, D_SW and then Remapping.
The workflow is on workflow_dispatch for now. I propose if code is fine enough to merge this, so we can trigger it in GitHub and if timings are decent we can then PR a master/ci-fix trigger

This seems like a good strategy, yes - Thank you!


_ALARMS_ENDPOINT should also decode json response

The other two endpoints to json decode the netdata response but the alarms are retrieved as text only. This should be changed to do the same thing, i.e. changing data = await response.text() into data = await response.json()
I'm happy to submit a PR but I'm not sure how you would like to handle the fact that this breaks backward compatibility. Please advise.

Looks like a bug. Yes, that should be fixed.


map_partitions tries to partition a pd.DataFrame given as argument to a mapped function

Hello and, again, welcome to the Aperture Science Computer-Aided Enrichment Centre.
Consider following function which I want to map on my ddf's partitions:
def foo(df_partition, df_constant):
    if len(df_constant) == 0:
        raise ValueError("Constant df shouldn't be empty.")
    return df_partition

It takes a partition as a first argument and some other pandas.DataFrame as a second one.
But it appears that dask tries to be smart somehow and - as I suppose - tries to partition this constant dataframe. Following code produces an error:
import dask.dataframe as dd
import pandas as pd
import numpy as np

def foo(df_partition, df_constant):
    if len(df_constant) == 0:
        raise ValueError("Constant df shouldn't be empty.")
    return df_partition

ddf = dd.from_pandas(pd.DataFrame({'A': np.arange(10), 'B': np.arange(10)}), npartitions=2)
constant_df = pd.DataFrame({'X': np.arange(5)})

res = ddf.map_partitions(foo, constant_df, meta=ddf)
res.compute()

Here's the traceback:
---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
<ipython-input-2-6e720e7387a5> in <module>()
     12
     13 res = ddf.map_partitions(foo, constant_df, meta=ddf)
---> 14 res.compute()

~/anaconda3/envs/dask-bug/lib/python3.6/site-packages/dask/base.py in compute(self, **kwargs)
     97             Extra keywords to forward to the scheduler ``get`` function.
     98         """
---> 99         (result,) = compute(self, traverse=False, **kwargs)
    100         return result
    101

~/anaconda3/envs/dask-bug/lib/python3.6/site-packages/dask/base.py in compute(*args, **kwargs)
    204     dsk = collections_to_dsk(variables, optimize_graph, **kwargs)
    205     keys = [var._keys() for var in variables]
--> 206     results = get(dsk, keys, **kwargs)
    207
    208     results_iter = iter(results)

~/anaconda3/envs/dask-bug/lib/python3.6/site-packages/dask/threaded.py in get(dsk, result, cache, num_workers, **kwargs)
     73     results = get_async(pool.apply_async, len(pool._pool), dsk, result,
     74                         cache=cache, get_id=_thread_get_id,
---> 75                         pack_exception=pack_exception, **kwargs)
     76
     77     # Cleanup pools associated to dead threads

~/anaconda3/envs/dask-bug/lib/python3.6/site-packages/dask/local.py in get_async(apply_async, num_workers, dsk, result, cache, get_id, rerun_exceptions_locally, pack_exception, raise_exception, callbacks, dumps, loads, **kwargs)
    519                         _execute_task(task, data)  # Re-execute locally
    520                     else:
--> 521                         raise_exception(exc, tb)
    522                 res, worker_id = loads(res_info)
    523                 state['cache'][key] = res

~/anaconda3/envs/dask-bug/lib/python3.6/site-packages/dask/compatibility.py in reraise(exc, tb)
     58         if exc.__traceback__ is not tb:
     59             raise exc.with_traceback(tb)
---> 60         raise exc
     61
     62 else:

~/anaconda3/envs/dask-bug/lib/python3.6/site-packages/dask/local.py in execute_task(key, task_info, dumps, loads, get_id, pack_exception)
    288     try:
    289         task, data = loads(task_info)
--> 290         result = _execute_task(task, data)
    291         id = get_id()
    292         result = dumps((result, id))

~/anaconda3/envs/dask-bug/lib/python3.6/site-packages/dask/local.py in _execute_task(arg, cache, dsk)
    269         func, args = arg[0], arg[1:]
    270         args2 = [_execute_task(a, cache) for a in args]
--> 271         return func(*args2)
    272     elif not ishashable(arg):
    273         return arg

~/anaconda3/envs/dask-bug/lib/python3.6/site-packages/dask/dataframe/core.py in apply_and_enforce(func, args, kwargs, meta)
   3190
   3191     Ensures the output has the same columns, even if empty."""
-> 3192     df = func(*args, **kwargs)
   3193     if isinstance(df, (pd.DataFrame, pd.Series, pd.Index)):
   3194         if len(df) == 0:

<ipython-input-2-6e720e7387a5> in foo(df_partition, df_constant)
      5 def foo(df_partition, df_constant):
      6     if len(df_constant) == 0:
----> 7         raise ValueError("Constant df shouldn't be empty.")
      8     return df_partition
      9

ValueError: Constant df shouldn't be empty.

What's interesting, when I change constant_df's size to 6 or more, the problem disappears:
constant_df = pd.DataFrame({'X': np.arange(6)})
res = ddf.map_partitions(foo, constant_df, meta=ddf)
res.compute()

No errors here, works as expected.
I don't know if it has something to do with ddf's partition size; I couldn't find any rule about this.
Also, when I pass a non-empty list instead of a constant dataframe, everything is alright.
My system configuration is:

Python 3.6.3 (Anaconda [GCC 7.2.0] on Linux Mint)
dask 0.15.4
pandas 0.20.3
distributed 1.19.3 (but shouldn't be relevant)

Regards
Michal

I'm looking a bit further, but as a cheap workaround:
# pass `constant_df` as a keyword argument
res = ddf.map_partitions(foo, df_constant=constant_df, meta=ddf)
res.compute()

Internally in map_partitions, dask pre-processes the positional arguments, converting pandas.dataframes to single-partition dask.dataframes, and then aligning them. I suspect there are good reasons for this, but I'll see what breaks if I remove that. This pre-processing is not applied to keyword arguments, so your function works as expected. You may want to leave a comment about why df_constant needs to be a keyword argument ;)
PS: typically, meta is a concrete pandas dataframe, not a dask.dataframe. I suspect you know this, but just in case.

@TomAugspurger did this get resolved or is this still live?

I think a documentation note explaining how positional arguments are treated differently from keyword arguments would close this.

I'm going to close this since I just merged https://github.com/dask/dask/pull/6628 and it includes some docs improvements as well as a new mechanism for broadcasting rather than repartitioning.


chore(core): reduce go mod version req

hmm this should have been marked fix(core). Since it is marked as a chore, release-please didn't generate releases for the internal libs. :-/


ConnectionResetError: [Errno 104] Connection reset by peer Aborted (core dumped)

I just changed the batch size from 4 to 2, everything else stayed the same. and I got this issue, could you please give me some help in how to solve this problem? (I trained the model in a 2080ti)

This seems to be a bug in our code; I will fix this bug within a few days. However, based on our experience, setting the batch size to 2 (one image per domain) is likely to make adversarial training unsuccessful for DETR-Based networks, and this is not just with our method but appears to be the case with other methods as well. We recommend ensuring at least two images per domain.

Thanks for your reply. I tried to keep the batchsize to be 4, but out of memory. Hope for your update if it is a bug. @h751410234

I suspect that this error might be related to the batch size setting. I will try to replicate and fix this error in the coming days. Could you please tell me whether this error occurred right at the beginning of the training or during a specific stage of the process?

It's at the beginning of the training. and I think I located the problem at line 85.

I changed the config file to set the batch size = 2 and then trained our model. I have successfully trained for 4 epochs without any issues. Based on the new error image you provided, it seems that the number of categories in your dataset exceeds the number set in the config (set to 4 in the xView to DOTA config file, which includes 3 categories + background).
I suggest checking if there is an issue with the number of categories in your prepared dataset.
751410234
@.***
---- Replied Message ----
@.>Date6/16/2024<EMAIL_ADDRESS>@.>SubjectRe: [h751410234/RemoteSensingTeacher] ConnectionResetError: [Errno 104] Connection reset by peer Aborted (core dumped) (Issue #1)
It's at the beginning of the training. and I think I located the problem at line 85.
22.png (view on web)
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you were mentioned.Message ID: @.***>

I changed the config file to set the batch size = 2 and then trained our model. I have successfully trained for 4 epochs without any issues. Based on the new error image you provided, it seems that the number of categories in your dataset exceeds the number set in the config (set to 4 in the xView to DOTA config file, which includes 3 categories + background).
I suggest checking if there is an issue with the number of categories in your prepared dataset.

So, you mean that I need to select the three categories of Dota and  xView mentioned in the paper in data preperation stage. Did I get this right?

Yes, the dataset needs preprocessing. I have specified the categories to be selected (airplanes, storage tanks, ships) and the processing method in the experimental section of the paper.

Thanks for your reply. I thought it would be done in the training phase before. I will change the annotations later.

And I have a small question. How much of the GPU is occupied when batchsize is equal to 2? I wonder if it will be able to  run on a 2080ti?

During the training process, the usage of GPU memory fluctuates. It may be around 15GB.

I got it. Thanks a lot.


Feature: ProcessManager/Saga

I want to use aggregate and consumer to implement process manager. Can I add this feature to flux? Or I should do this in a separate repository to keep the project simple.

Hi, as you said, flux at the moment is simple so would prefer to keep it that way, better to do it in a seperate repo.

OK, got it. Thanks!


Update .travis.yml to test under PHP 7+

Add more recent versions of PHP to the build at Travis.
Fix build errors under PHP 7+. Example error.

@schmittjoh would you have a minute to review this PR? Just a line of code changed, should be a piece of cake. Thank you.

I prefer to keep the lock file. This is in particular useful for small libraries that do not see commits so that we have a known good state and reduce the risk of suddenly failing tests.

OK, I’ll get it back in a moment.

See, the problem with the commited lock file is that it has the very recent version you were able to install under currently used PHP version, which is 7.2 in my case. Hence you can see most builds on earlier versions are failing with "Your requirements could not be resolved to an installable set of packages".
Now we have two options:

We can add a platform requirement into composer.json, so it would always assume the code will only run under PHP 5.4, and select packages accordingly. This is a major drawback because there are backward-incompatible changes every versions of PHP, so packages that were working fine in PHP 5.4 could be suddenly failing under PHP 7.3. Also, you couldn't test with more recent versions, only with what you have locked to.
We can remove composer.lock, which I believe is the best practice for libraries these days.

What do you prefer?

The problem was in sortWith that uses usort which does not guarantee that elements come in specific order. And there's this commit which specifically mentions that usort may be affected, which commit went into PHP 7.0 release.
And indeed if I swap $a and $b in the input data, this specific assertion checks out all right. So now I changed them to be strings instead, and now we sort them explicitly. This way no matter in which order arguments are coming, output will be the same.
All tests are green.

@schmittjoh is there anything else you'd like to change here?

@schmittjoh any chance this could be merged?


react/prop-types validation broken using this.props[someVar]

This line below fails:
if (this.props[propertyName]) {

with
warning  'propertyName' is missing in props validation  react/prop-types

Using:     "esprima-fb": "^15001.1.0-dev-harmony-fb",

Is that an eslint warning? esprima doesn't give warnings like that.

I think that's coming from https://github.com/yannickcr/eslint-plugin-react

@zpao Thanks I reported it there!


Foundry command line client

A python (debatable) client for the Raster Foundry APIs.
Requires configuration with an API key, set either through an environment variable, ~/.foundry config, or the like.
Commands
foundry ls
This command will list the names of a user's image layers.
foundry show [layer-name]
This command will describe the layer. If the layer has a processing status, show the user that fact, with a percentage complete if available through the API.
Otherwise, show the metadata described in #5.
foundry import [layer-name] [image uris]*
Import the set of images described in the URIs as a layer in the user's Raster Foundry account.
URIs can be local files or s3 URIs (to start).
foundry rm [layer-name]
Deletes a layer from Raster Foundry.

We're liking http://click.pocoo.org/4/ a lot at Planet Labs, makes for a nice command line without much work.

If the application is going to be primarily API driven, it may be worth using something like Swagger to generate an API client in python (or any language) without too much work and making it easy to keep the client in sync with the application.

+1 for something like Swagger. API client maintenance can easily become a huge burden, and an API framework like Swagger can help mitigate that.
Not knowing much about the requirements, I'm going to blindly throw in a vote for Go as the API client language. Go is not the perfect language for everything, but it is an attractive choice for command line clients. We write code once and can emit static binaries for several platforms (Windows, OS X, Linux, etc.).

Go is definitely super nice for distribution on a wide variety of platforms - +1.

I'd be interested in doing it in Go. I've wanted to have a reason to use it for something, and I agree that it seems really portable and clean for this sort of thing.


python API does not match API

https://github.com/bigdatagenomics/adam/blob/master/adam-python/bdgenomics/adam/rdd.py#L28
Still has RDD API descriptions, but RDDs have been removed

Only the API doc, right?

Ya, the strings just have to be updated to be read by readthedocs

Thanks, perhaps we'll be using that 0.26.0a0 version soon then ;)

I actually don't think you will need to change the version. We can just fix the docs and they should automatically pull. I can look into this.

ok, thanks for your Py-wisdom.  :)


Allow users to adjust the height of embed Dartpad

From a recent UX study, users complained that sometimes the height of an embedded is too small. Since users use various screen size, it's hard to have one exact value that fits for all users. We would like an option that enable users to resize the editor by dragging.
cc: @legalcodes

The size of the iframe is controlled by the page that contains me, so this would need to be a change in flutter.dev/dart.dev rather than one in DartPad. It's a good idea, though.

@RedBrogdon what's the best way to change it in the embedding page?


Convert rand code to new threading API

Replace the CRYPTO_LOCK_RAND and CRYPTO_LOCK_RAND2 locks with new thread
API style locks.

ping @ghedo. @richsalz already +1'd this, so I'm going to merge this real soon unless you say stop!

@ghedo - I'm going to tackle engine next...will you get RSA blinding done in time?

Merged.


Columns (hover) - simplify if possible?

If possible, simplify the Columns hover variation markup. Additionally check, if it can be combined with the dark variation as well.

closing this for now. will reopen if necessary.


[test-triage] RV_DM DV tests regression

Hierarchy of regression failure
Block level
Failure Description
DV report: https://reports.opentitan.org/hw/ip/rv_dm/dv/latest/report.html
One of the error is reproduced below
UVM_ERROR (rv_dm_scoreboard.sv:250) [scoreboard] Check failed sba_item.rdata[*] == data (* [*] vs * [*]) has 43 failures:

    Test rv_dm_delayed_resp_sba_tl_access has 17 failures.

        0.rv_dm_delayed_resp_sba_tl_access.92260838651323754703339443316968198659693509786406195942730057076667697458602
        Line 260, in log /container/opentitan-public/scratch/os_regression/rv_dm-sim-vcs/0.rv_dm_delayed_resp_sba_tl_access/latest/run.log

          UVM_ERROR @  18242776 ps: (rv_dm_scoreboard.sv:250) [uvm_test_top.env.scoreboard] Check failed sba_item.rdata[0] == data (0 [0x0] vs<PHONE_NUMBER> [0x5b97fa97])
          SBA item:
          item: (sba_access_item@5465) { bus_op: BusOpRead  size: SbaAccessSize8b  addr: 'h0  wdata: -  readonaddr: 'hX  readondata: 'hX  autoincrement: 'h0  rdata: { [0]: 'h0  } is_busy_err: 'h0  is_err: SbaErrNone  timed_out: 'h0  }
          SBA TL item:
          req: (cip_tl_seq_item@5413) { a_addr: 'h0  a_data: 'h0  a_mask: 'hf  a_size: 'h2  a_param: 'h0  a_source: 'h0  a_opcode: 'h4  a_user: 'h247aa  d_param: 'h0  d_source: 'h0  d_data: 'h5b97fa97  d_size: 'h2  d_opcode: 'h1  d_error: 'h0  d_sink: 'h1  d_user: 'hd2d  a_source_is_overridden: 'h0  a_valid_delay: 'h0  d_valid_delay: 'h0  a_valid_len: 'h0  d_valid_len: 'h0  req_abort_after_a_valid_len: 'h0  rsp_abort_after_d_valid_len: 'h0  req_completed: 'h0  rsp_completed: 'h0  tl_intg_err_type: TlIntgErrNone  max_ecc_errors: 'h3  }

This is likely to be caused by #21634
Steps to Reproduce

GitHub Revision: d3942ca074
Seed:  --build-seed<PHONE_NUMBER>6198790995583629940734127463564215244480240139741775999763579929205

Tests with similar or related failures
No response

@rswarbrick Could you please update this after your rv_dm improvements have been merged?

I'm pleased to say that this is looking a lot better now. Last night's run had a pass rate of 67.97%. Not that impressive, but better than the 59.77% that this issue tracked a regression from.
Getting the number to actually look good is a separate problem, but is separately tracked in #22742.


Docuwiki wasn't reachable

Adding onto my other comment, if you open up an issue I can help troubleshoot why Dokuwiki was unreachable for you initially. If you do, please give me your traefik.toml, docker-compose.yml, and container logs. Thanks!


zones are taken from existing shoot for patch operations

Description
Changes proposed in this pull request:

zones are taken from existing shoot for patch operations
...
...

Related issue(s)

closed in favor of https://github.com/kyma-project/infrastructure-manager/pull/479


264 body decoding

Fixes #264
Switches body parameter substitution to use encoded parameters.  Resolves issue where some characters (+ %..) would end up double decoded if existing in parameters.

NetflixOSS » feign » feign-pull-requests #144 SUCCESS
This pull request looks good

denominator tests pass.. so I think we're good. nice fix!
mind squashing these into a single commit with message
Switches body parameter substitution to use encoded parameters

Resolves issue where some characters (+ %..) would end up double decoded if existing in parameters.

Fixes #264

NetflixOSS » feign » feign-pull-requests #146 SUCCESS
This pull request looks good

gracias!

out in the wild, in v8.9.0

thanks for the help with this!


Fix typo in feature-gates.md

This is a Bug Report

Problem:

Typo exists: Derecated
Wrong bullet character is used:
https://github.com/kubernetes/website/blob/670ae1a6de2f4453165cbc607e1ed90125347580/content/en/docs/reference/command-line-tools-reference/feature-gates.md?plain=1#L813-L820

Proposed Solution:

Derecated => Deprecated
=  => -  (in L818)

Page to Update:

https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/#:~:text=--,Derecated,-1.17
https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/#:~:text=%3D GracefulNodeShutdownBasedOnPodPriority

File to Update:
https://github.com/kubernetes/website/blob/main/content/en/docs/reference/command-line-tools-reference/feature-gates.md

/triage accepted
I believe this can be a good first issue
/good-first-issue

/assign

hey @jihoon-seo , Would you kindly point me to where did u find the term "Derecated". It would wrap things up faster:)

@Mouly22 @ikramulkayes Sorry, but this issue seems an individual task. Thank you for wanting to contribute, you can have a look at other issues and try them if you wish. Thank you
/unassign @Mouly22
/unassign @ikramulkayes

Hey @anubha-v-ardhan I am sorry but I have already updated in https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/#:~:text=--,Derecated,-1.17 this page

@Mouly22 @ikramulkayes Sorry, but this issue seems an individual task. Thank you for wanting to contribute, you can have a look at other issues and try them if you wish. Thank you /unassign @Mouly22 /unassign @ikramulkayes

@anubha-v-ardhan  okay, mate. Looking forward to the next issue to work on.

@ShivamTyagi12345 Happy to help 😅


Make it easier to resize panes

VSCode Version: 1.6.1
OS Version: Ubuntu 16.04

This is a feature request:
On Ubuntu, you can easily resize any window by holding down alt, center click the mouse and drag. The window resize based on which of the corners or sides is closest. (You can test the functionality in windows with AltDrag). This makes resizing windows SO fast, you don't have to "aim" for a precise edge of the window, you just go very approximately and it will resize like you want. This is a huge help when you want to have multiple windows open on a single page.
So, the feature I would like to have is to be able to resize the panes more quickly than I can now. When I'm working with 2 or especially 3 panes opened, I find myself resizing the panes often. I want to see more of the code I'm working on currently, but I like to keep the other panes there for the references to functions/tests/etc I'm calling. When I'm finished working on that file, I resize the panes and start working in another pane. If I could hold alt, center click my mouse close to a pane edge to resize the panes, (or something similar) it would save me a lot of time.
Thanks!

@sam-n-johnston how about "Minimize other editor groups" from the command palette and when you click to other editors they automatically maximize and minimize the others?

This doesn't really solve it. I have trouble using the minimized editor groups because I can see too little of the code. Personally, I need a bit more than twice the width of the minimized window to be able to see a useful amount of code (even with shft+scroll, it doesn't cut it). So it's essentially the same as having them all in one group and ctrl-tab it. My eyes have to jump and re-adapt to the new code that's being displayed when one is expanded,  the same as when I change with ctrl-tab.

If I could hold alt, center click my mouse close to a pane edge to resize the panes, (or something similar) it would save me a lot of time.

Can you explain more how this would work or help in your case?

Here's a rough example of how I use my screen real-estate. It allows me to comfortably code on two windows and having a third pretty big one for viewing.

In this screenshot, I was trying to resize the pane for example, and (this happens to me often), I accidentally added a debug break point. I usually don't like to have to be this precise with the mouse cursor for actions I find myself doing often. For example, when closing a tab, I prefer to center click anywhere on the tab rather than hit that tiny "x". If there were a really quick way to resize panes, I would find myself doing it much more often.
(This is just how Ubuntu does it, it could be another way)
So instead, you could hold alt, center click drag in the red regions and it would resize the pane. No need to be really precise, yet you can resize the panes at will really quickly

@sam-n-johnston ok I see so basically a way to turn into a mode where you can resize panes without interacting with the editor at all. Would it help to have keybindings that allow for resizing in increments maybe be a better approach?

Yeah, that could work. For example, key bindings to increase the size of pane #x by y%, while the other panes will reduce to accommodate (but not the explorer/folder pane, as it is usually fixed).
Tough this would make resizing the bottom pane and left pane hard/weird no? You would need a key-binding to make it enlarge and another one to make it smaller.
When I'm debugging for example and I need to see the value of an object, I usually augment the size of the debug pane, but when I'm in my explorer/folder view, I want it as small as possible usually. I do the same thing when running unit tests in the terminal view (big when running tests, small when normal console). So were getting at like 7 key-bindings to control the width of the panes if you have 3 opened (1 for each editing pane, 2 for the folder pane and 2 for the terminal/bottom pane).
Maybe I'm not seeing another type of key-bindings that could do the job better?

Contribution volunteer...
Development Environment:
OS: Windows 7 Professional SP1 (VM under OSX)
Python: ActiveState 2.7.5
Visual Studio 15 Community \ C++ Tools \ SDK 8.1
VS Code: 1.10.1 (Code OSS Build environment)
VS Code Insiders 1.10.0 2-27 build: (Test environment)
VS Code: master clone 2-28 and 3-1  development tests (including sidebar resize implementation)
Node: 6.9.1
NPM:  3.10.8
Disabled/Voice Programming Environment:
Dragon Individual Professional 14 (voice\ dictation platform)
NatLink COM Python/Dragon ExtensionApi
Dragonfly grammar library ExtensionApi
VSC UserSnippets and user extensibility extensions
@bpasero (I infer from post that you deal with these issues mostly workbench keyboard et cetera)
@Tyriar (you have an issue with contrasts on UI elements - I'm also experimenting on this)
@joaomoreno (you fielded my first bug fix submittal - all of two double quotes ;-)
I have been setting myself up for contributions over the last couple of weeks.
this is an issue that I was already starting to work on before seeing someone else's issue
post.  I'm very interested in contributing especially on accessibility issues.
I am disabled with ALS ,however I am fortunate enough to still have my voice.
therefore my user method is entirely voice programming. Before ALS I worked
in software firmware and hardware development for over thirty five years...
right now VSC code is one of the main reasons I can still do some work.
it's the most accessibility friendly editor I found (just recently in fact).
I already have a base working implementation for sidebar resize I would like to pull and submit.
I based my implementation as best I could on the models existing
in code such as togglesidebarvisibility. they are basic methods extendable
to the panel part as well. I allow layout to do the math and other part management.
I am sure I may need some architecture adjustments to conform with the rest of the code.
As a voice programming user unfortunately sash control, scrollbars or any control icons
are terribly difficult to use they require many mouse grid voice commands to zoom in.
keyboard control is everything, as long as there are shortcuts (ideally better than tap stops)
it's possible to make decent voice commands , even compound commands.
I'm also looking at contributing for some UX issues like button control and color contrast.
I'd like to help make VSC the most accessible program possible !
For sidebar and panel resizing what should my next step be? Just fork clone and pull?
Cheers Christopher

sorry for the dictation errors...too hard to correct everything ;-)

@cleidigh thanks for your interest in helping out and we are happy to hear that you can use VS Code 👍 . I think continuing via a pull request would be the best thing to do :-).
Maybe we could also first discuss what you are planning to work on specifically. We also have a number of requests for being able to resize a sash (the divider between editors and sidebar and panel) using just the keyboard.

Absolutely agree about plan first.
Besides making sure the architecture is correct,
I think there's some related issues such as the sashes
you mention. also issue #21669   for navigation commands
around the workbench is related because decisions there
in terms of focus and keyboard shortcuts should jive.
I promise I'll do my best to RTFM and do code inspection
before peppering you guys with questions... but in the beginning
some will be necessary:
can you define exactly what the sash regions/functionality
are? I know I can use the mouse to drag a border and
change the size of a workbench part. I also saw
you added the double-click on sash to size to minimum
the sidebar. what do you mean by expanding the sash size?
increasing the active click window?
Here are the things I thought I would start with:

keyboard resize of relevant workbench parts (sidebar,panel at a minimum)
include reset to default sizes
conform to upcoming features and other relevant issues

Here are the things I learned/thought of as relevant issues:

should the commands be global or based on focus (I started with a simple global approach)
can you use the same commands for the sidebar and panel
I used the concept of expand and contract with an assumed main axis
I took this makes sense for sidebar and panel but maybe not all parts
it might be necessary to contemplate new parts or maybe a secondary sidebar?
that would make part focus   more relevant
should the resize increment be user configurable (I just started with a fixed increment)

For future work (keyboard scrolling, css/UI accessibility improvements)
Do I include these in the pull request?
would you like a summary/set of file changes of my prototype
to comment on/tear apart ;-)
ready to get started...

@cleidigh very good questions. my initial reaction to being able to resize the sash via keybinding is that maybe there is a global command to let the sashes show up as elements you can navigate to when you press the tab key? And then when you tab through all the sashes that are visible you can use the arrow left / arrow right key to move them for resizing? We could expand this to let Enter behave like double click on the sash.
Something like this:

user executes command "Resize views" (or similar)
all the sashes of the workbench that currently exist become visible and the first one gets focus
pressing the tab key allows to navigate around the sashes
pressing the arrow keys allow to resize them

I just realize that this might be hard to implement because in order for the sashes to get keyboard focus they would need a tabindex=0 property, but then tabbing around you would actually tab to all the other elements that have this property (quite a bit). Alternatively we could have a global command "Resize sidebar" and this one would just show some affordance to make the side bar resizable using arrow keys. Maybe that is easier.

@bpasero
To be fair I reread the original post, @sam-n-johnston  is asking for
an improvement in sash panel resizing. His proposed
solution from Ubuntu sounds good and could just be
an expansion on the sash target with alt key.
this does not address the inability of a keyboard only
approach (currently a keyboard only user cannot do any
panel resize) Bottom line - these are two different UX problems or issues.

A keyboard resize effectively accomplishes both goals
albeit without a mouse but two hands on the keyboard

I did a quick survey of the sash code it seems all mouse
oriented.  I think your ultimate dismissal of keyboard tab stops
make sense (too many tab stops already)  let the sash
be mouse user feature... I would be happy to look
at that feature later when I increase my capability.

I assert that all parts are not equal, editor is paramount
sidebar and panel deserve resize predominantly when either as focus
If one is editing it's easy to toggle them off or  contract
with this added functionality...
I propose the following:

Two key bindings expand part, contract part (Concept not necessarily actual names)

key bindings based on part focus (potential reduction of key collisionss)

expansion or contraction follow main axis of part and orientation

eg sidebar has focus, expand moves border right if on left
or left if sidebar on right
eg panel has focus expand moves border up...
editor focus: expand moves right border right (h. layout)
top up (v. layout) or opposite if single editor
approach still works if a new part eg secondary sidebar
is added in the future

Possible (mnemonic) key bindings:
[expand part]:   ctrl+alt+shift+ >
[contract part]: ctrl+alt+shift+ <
[expand part]:   ctrl+alt+shift+ x
[contract part]: ctrl+alt+shift+ c
[expand part]:   ctrl+alt+shift+ )
[contract part]: ctrl+alt+shift+ (
[restore default part size]: ctrl+alt+shift+ d
[restore default part size]: ctrl+alt+shift+ r

Potential Future Issues:

A part with no "primary axis" (expanding contract ambiguous)

couple of corrections...

three commands (add the reset one), not necessarily key bindings
probably don't need default key bindings, let users decide

@cleidigh I like the idea of making these commands work on the currently focused part, that is a very elegant solution! I also agree that it makes it easier to just have commands for expand and shrink, should also make your life easier in the pull request :-).

@bpasero
I have been working on more code familiarization, found a bug in SCM and work to better understand code. I have a fork and a new branch ready to go and start.
I have been looking at @misoguy navigation feature , as well as your comments and others for reference.
couple of questions:

should I create a new issue specifically addressing keyboard versus  this mouse control issue ?
newbie question: do I do the pull request only after I have something working to commit
or is the PR the official discussion starting point ? with subsequent commits
I was thinking of having the size change be user configurable - thoughts?

I think talking in this issue is fine 👍 . You can start the PR anytime you like. I am not sure about the size change needed to be user configurable, I would first maybe start without it. Having this inside the actions.ts file is probably ok to begin with.
In the end, WorkbenchLayout  is the owner of the resize sashes (that is how we call them, see Sash) between sidebar and editor and panel and editor. Then, EditorGroupsControl is the owner of the sashes for the editors. Have you thought about how to programmatically change the sash sizes in these 2 areas?

@bpasero
should I make a new issue that is keyboard centric or do the PR on this issue.
I will give you an overview of my current partial implementation.
right now I am struggling with development/debugger repository issues
I just posted an issue on that, it's preventing me from doing forward progress

@cleidigh I just created https://github.com/Microsoft/vscode/issues/22645, it is more specific towards your scenario.

I think the work @cleidigh did with increasing focused view size does the trick for now.
So closing this one as we are not planning any action around this in the next 12 months.


Estimating how much it takes to label a short clip

Sanna is labelling a 10s clip and getting back with feedback on:

the guide
edge cases -> how often? what did she decide?

@sannatitus gaves us super good feedback from the first labelling of tracks. Below her comments. I added some of my thoughts in bold.

Time

it took 27hrs for a 10s clip (614 frames)

Output

there are two .jsons:

04.09.2023-04-Right_RE_test_corrected_ST.json is the 'untouched' VGG-only .json where many _ are still present.
The 04.09.2023-04-Right_RE_test_corrected_ST_underscores-removed.json is post-script where all _ should have been removed (I reloaded it into VGG and checked visually and all looks ok)

She wrote her own separate script (🤩 ) to remove _ track IDs, it is in \ceph\zoo\users\stitus\crab-tracks-labeljson-vgg_fix.py if we need it)

The final 04.09.2023-04-Right_RE_test_corrected_ST_csv.csv is extracted post __ removal script(!!!) (so using `04.09.2023-04-Right_RE_test_corrected_ST_underscores-removed.json)

tracks

In total, there are 90 reliable track IDs annotated, but you'll notice in VGG drop down that some numbers are listed twice at the bottom (not sure why this is happening, as I followed the github suggestions on just copying/pasting from other frames). I don't think these are duplicates as they add up to 614, but it would be worth double checking.  ---> we should double check as she says, we noticed sometimes the VIA interface distinguished between IDs because some had double quotes or other symbol around them
There are a handful of track IDs (~5 crabs) who are present throughout the entire escape yet missing one label (613/614 frames labelled - can't find the missing, sorry!). ---> we should find these missing ones
There are a few who appeared in-frame later or entered their burrows (hence have <614 labels naturally).
Also confirming that I removed any bounding boxes around previously entered burrows & dead crabs (there were 2 carcasses labelled).

Thoughts on labelling procedure

Edge was very reliable except I often wasn't able to delete within VGG
The largest issue I noticed was the loss and sometimes re-labeling of IDs (i.e., crab track X would remain for a large number of frames and sandwich a handful of single unlabeled frames, or it's identified as X then it isn't recognized for a few, then it's relabeled as track Y, then it isn't recognized for a few frames, then it's relabeled as track Z) ---> maybe increasing the continuity parameter of SORT helps? we should inspect carefully, it may make thinks worse too
Where possible I kept the lowest number, so crabs 1-73, 75-78, 87, & 89 should (hopefully) reflect the same individuals as the frame 1 annotations produced by the algorithm before fixing. I then attempted to maintain consecutive numbers. ---> next time we need to tell her that the important thing is that the numbers are unique, it doesn't matter which numbers (right?). Seems like an extra mental load. Or we could consider renumbering into consecutive numbers programmatically after labelling.
For some reason 74 was not annotated by the algorithm, so track ID 74 is now a new crab that I labelled & identified (that the algorithm missed entirely and I felt like it should have caught it) ---> maybe we can inspect why this one was missed?
There were a number of small crabs that it missed and I started to label them (you may see some small bounding boxes that are now labelled as _ ), but then felt like I couldn't see them with 100% certainty on all frames. I'd rather miss some crabs than accidentally label shadows etc., so I opted not to add them.
Track IDs 79, 80, 81, 82, 83, 84, 85, 86, 88, & 90 were simply higher track IDs (e.g., a crab was identified for the first time in frame ~400 as ID 215) that were re-numbered for the sake of continuity.

Thoughts on processing of tracks before/after manual labelling

For future iterations, maybe we could include some sort of spatial limit informed by temporal shifts (i.e., moving 1000 pixels between consecutive frames is too fast to be one crab);  --->  compute speed of the box centroid for a track ID, and filter out frames that move too fast?
often a crab's nearby neighbour would adopt its label.  ---> I think this one is difficult to fix... maybe a larger IOU helps? So that boxes really have to overlap a lot to be assigned the same ID
Also, we could automatically delete any bounding boxes which don't move significantly (i.e., carcases).  ---> this is a nice idea but probably we need a very conservative threshold (how long should it be not moving for us to consider it dead?)
The most prominent issue (sporadic 'sandwich' loss of track IDs or relabeling as fresh numbers) could be mitigated by double checking frames who lose a number. Sort of like how DLC can filter out all frames with a CI<95% etc., this could help verify whether a crab actually exited the frame (on the sides or entering a burrow), or the track ID was just lost/relabelled.


Unused arguments

This might not really be a GoTk3 question, but I will try here first.
Let's say I have a function like this, in this case I am not actually using the argument entry:
func (p *page2) onKeyPressed(entry *gtk.Entry, event *gdk.Event) {
	keyEvent := gdk.EventKeyNewFromEvent(event)

	if keyEvent.KeyVal() == keyValF1 {
		p.hint.SetText(getLongHint())
	}
}

I believe I can't remove the entry argument, because I am using the event argument. So what would be the idiomatic way here to get rid of the GoLands warning? Just fake a use of the parameter? And yes, I hate warnings, I want to get rid of them all. But there are situations, like above, where I don't know what to do.

Replace entry *gtk.Entry with _ *gtk.Entry?

Lol, it was that easy? I did not know that you could do that in a function declaration, I thought it was for variable declarations only...I feel kind of stupid now :-)


Text widgets need more customization

Since that would be too much, We will not provide each property that a Text widget has as an extra parameter on each slide. Users can still replace a widget entirely using the replacement widget.

[ ] Look into which text widget properties should be able to be adjustable and add those as parameters
[ ] Expand documentation on new parameters

This should also be a issue for Fluttershow Keynote


[API] Query upper limits from the API

We can query for object data, but upper limits are stripped out from the lightcurves (they leave in a different database).
Action item: Make an API service to query the upper limit database based on objectId (clientU).

Done in  #134


TODO: Software Requirements/Model

A first attempt at creating some software requirements for discussion

Required
Suggested
Nice to have

User can open/import a MIDI file

MIDI track can be displayed for verification
MIDI track can be transposed
MIDI track can be edited e.g notes moved, added, deleted
MIDI track can be played

Similar functionality to the this: Musicboxmaniacs Create

MIDI instrument can be chosen for playback

User can export to a file format suitable for laser cutting

User can define dimensions for:

Strip width
Note distance
Hole dimensions

User can indicate where to cut/join strips
User can select location for file export

User can choose between different strip types e.g 15, 20, 30 notes (other)
User can choose different file formats

DXF
SVG
PDF
Image
GCode

Terrific!
The super-first attempt could be a midi file with only one track, with 3 notes, like C, D, E, and see in plain text on the web page:

the midi events and the note of these events (MIDI have 2 events per note, one when the note starts, and one when the note ends) [we will only use the event "note start", since the music box doesn't have a note duration ^_^ ]
the timestamp of this events (when they happens in the "timeline")

then...

with a graphic library (i think SVG could be a good first attempt, 'cause is well supported and viewable in plain text) put some circle inside a rectangle, on the screen!


Statement on first line in top-level statements file is treated incorrectly when partial class Program definition is present

Environment
VS Code version: 1.95.2, e8653663e8840adaf45af01eab5c627a5af81807, x64
C# Extension version: v2.55.21
Steps to reproduce

Create or open any C# project.
Open or create a top-level statements (Program.cs) file.
Add the following code:int i;

partial class Program;

Observe int i; being treated incorrectly; it is "folded away":

Expected Behavior
The statement on the first line is not treated incorrectly like this.
Actual Behavior
The statement is in an extra "container", navigating to the line with the cursor hides the cursor behind that container. The contents of the line can still be edited. Clicking the container does not yield a response.

To add a use-case for a partial class Program definition in a top-level statements file: it allows for defining partial properties and methods that can be used in the top-level code:
// ...

partial class Program
{
    [GeneratedRegex(@"...")]
    private partial Regex MyRegex { get; }
}

documentSymbols response from the repro code.
[Trace - 3:43:50 PM] Received response 'textDocument/documentSymbol - (3888)' in 2ms.
Result: [
    {
        "glyph": 7,
        "children": [
            {
                "glyph": 51,
                "children": [],
                "name": "<Main>$",
                "detail": "<top-level-statements-entry-point>",
                "kind": 6,
                "range": {
                    "start": {
                        "line": 0,
                        "character": 0
                    },
                    "end": {
                        "line": 3,
                        "character": 0
                    }
                },
                "selectionRange": {
                    "start": {
                        "line": 0,
                        "character": 0
                    },
                    "end": {
                        "line": 3,
                        "character": 0
                    }
                }
            }
        ],
        "name": "Program",
        "detail": "Program",
        "kind": 5,
        "range": {
            "start": {
                "line": 2,
                "character": 0
            },
            "end": {
                "line": 2,
                "character": 22
            }
        },
        "selectionRange": {
            "start": {
                "line": 2,
                "character": 14
            },
            "end": {
                "line": 2,
                "character": 21
            }
        }
    }
]

Testing with a class name other than Program.
for example:
int i;

partial class Test;

The response is
[Trace - 3:55:28 PM] Received response 'textDocument/documentSymbol - (7764)' in 14ms.
Result: [
    {
        "glyph": 7,
        "children": [],
        "name": "Test",
        "detail": "Test",
        "kind": 5,
        "range": {
            "start": {
                "line": 2,
                "character": 0
            },
            "end": {
                "line": 2,
                "character": 19
            }
        },
        "selectionRange": {
            "start": {
                "line": 2,
                "character": 14
            },
            "end": {
                "line": 2,
                "character": 18
            }
        }
    }
]

Program being "special" brings along the <Main>$: <top-level-statements-entry-point> symbol which isn't entirely useful here.

Thinking about this more, the <Main>$: <top-level-statements-entry-point>  symbol is correct. The problem here is the range of the Program symbol which should be the entire document.

Tested this in VS proper and there are no issues with Sticky Scroll. My hunch is that VS Code is using a combination of documentSymbol and foldingRange for their sticky scroll.


Tests ignore assertions, unless I intentionally break them by commenting out a callback

So I am brand new at Javascript, my only language before this was Ruby. I have written API tests with Cucumber and Ruby for years, but now I am trying to figure out UI tests for an angular app using Protractor and Cucumber.js. I have the framework set up and the test steps run are passing, but falsely so.
Here is a snippet of my step definitions, with a few edits to change data in assertions and the string for the assertion is intentionally wrong to trigger a failure. They run and are passing, but only because it ignores the assertion. I don't see it actually doing anything in the browser, but if I put in console.log messages I do see them in the console. However, if I comment out the last callback, then I can see it run in the browser and it actually checks the assertions and fails as it should.
And if I don't put that timeout in the first step, then the whole thing errors out at the first step with "Error: function timed out after 5000 milliseconds"
Why?!? Thanks!!
Protractor 5.3.0 with Cucumber 4.0.0 and protractor-cucumber-framework 4.2.0
Given('I am on the home page', {timeout: 30000}, (callback) => {
    browser.waitForAngularEnabled(false);
    browser.get(browser.params.env.int).then(callback);
});

Then('the log in form is displayed', callback => {
    expect(element(by.id('email')).isPresent()).to.eventually.be.true;
    expect(element(by.id('password')).isPresent()).to.eventually.be.true;
    callback();
});

When('I enter my user name', callback => {
    element(by.name('email')).sendKeys('my_addy@example.com');
    expect(element(by.id('email')).getAttribute('value')).to.eventually.equal('something that does match');
    callback();
});

When('I enter my password', callback => {
    element(by.name('password')).sendKeys('blah');
    callback();
});

When('I click the log in button', callback => {
    element(by.buttonText('Log In')).click();
    callback();
});

Then('I am on the X page', callback => {
    expect(browser.getCurrentUrl()).to.eventually.contains('Y');
    // callback();
});

You're calling your callbacks before any of the asynchronous operations (almost all Protractor operations area asynchronous and so its chai's expect.eventually) is able to finish.
You have 3 options here:

Use the Promise version of steps (drop the callback from step definition) and do return expect(...) on last assertion in every step
Do .then(callback) on last operation in every step (as you have it in your given)
Switch to async/await


Add information about DCO and other important requirements

I thought I had approved this. I guess my merge is my approval. :)


Added ability to create tasks in folders and enumerate them

Added:

ScheduleBuilder<Frequency>.in_folder() method
ScheduleGetter struct

Updated:

Examples
windows crate

Remarks
I wanted to try to use this crate in a project but needed to be able to put the tasks in a specified folder so that they would be easier to manage later on, so I tried adding that functionality with an in_folder() method on ScheduleBuilder. It works by checking if the folder already exists, and creating it if it doesn't, then putting the task into that folder.
I also took the liberty of updating the windows crate to the newest version, and fixing all the errors that came because of that (mostly just some structs moving around, adding a reference that wasn't needed before, .into() not inferring the correct type)
ScheduleGetter is for the purpose of being able to read tasks after they've been added, but I'm not quite sure if this functionality should be in this crate or another. Right now it just returns an IRegisteredTask as opposed to an actual Schedule so it still depends on windows to be of any use.

I wanted to try to use this crate in a project but needed to be able to put the tasks in a specified folder so that they would be easier to manage later on, so I tried adding that functionality with an in_folder() method on ScheduleBuilder. It works by checking if the folder already exists, and creating it if it doesn't, then putting the task into that folder.

Thank you for taking an interest in improving planif. I think that the users of planif would find being able to specify a folder for tasks useful.

ScheduleGetter is for the purpose of being able to read tasks after they've been added, but I'm not quite sure if this functionality should be in this crate or another. Right now it just returns an IRegisteredTask as opposed to an actual Schedule so it still depends on windows to be of any use.

"In the beginning".. I had thought about whether or not to add the ability to read tasks and then modify them. At the time I had decided reading and/or modifying existing tasks from the Windows Task Scheduler to be outside of the scope for the MVP (Minimum Viable Product).
At this time I believe a case could be made to add this functionality to the crate. I would, however, request that this feature be in its own PR. To be transparent, I don't think the current iteration of ScheduleGetter fits well with the crate's design but if changes were brought to the implementation I wouldn't object to adding the functionality to the crate.
If you could please remove the ScheduleGetter implementation in this PR. Afterwards, if you are up for it, you can open a new PR for SchedulerGetter and we could discuss the specifics of making it fit with the overall design of planif.
Again, thank you @poopsicles for your work and time.

Thanks for replying @mattrobineau, I really appreciate it.
Alright, I've reverted my ScheduleGetter commit and moved it to a new branch...I'll make another PR shortly


bluetooth: Added Device Disconnect sample

R=@jeffposnick @g-ortuno

Seems :+1: from a JS/HTML perspective. I can't comment on the Bluetooth API usage.

I'll merge it for now.
@g-ortuno let me know if there's anything that can be improved.


axmol v2.0.0 -  cpp-tests crashes on windows

axmol version: v2.0.0
devices test on: win10
developing environments

NDK version: r23c
Xcode version: 14.2
Visual Studio:

VS version:  2022 (17.7.4)
MSVC version: 1929, 1934, 19.35, 19.36, 19.37
Windows SDK version: 10.0.22621.0

cmake version:  3.25.2
Steps to Reproduce:

compile and run cpp-tests
Press "Start Auto Test"
Application crashes on second test "Texture2d" Screenshot from debugger

Is v2.0.0 ready for production or it is better to stay with v1.0.0

axmol version: v2.0.0

Is that based on the v2.0.0 tag?
If you navigate to the test that caused the crash manually (don't use auto-test), does it still crash?  Exactly which test causes the crash?
I couldn't reproduce this issue with the latest dev branch snapshot, so perhaps it's something that was already fixed.

Yes. I used V2.0.0 tag
Yes. It still crashes manually.
I checked latest version e9f093916e6aaf0ac6810c28bf11b7b084745e59 and I still have the same crash
Steps:

Checkout latest version

$ git checkout dev
$ git pull
$ git log | head
...
e9f093916e6aaf0ac6810c28bf11b7b084745e59
...

start build.ps1 without any parameters

build1k: PowerShell 5.1.19041.3031 on Microsoft Windows 10.0.19045.0
build1k:
Name                           Value
----                           -----
dll                            False
xt                             cmake
d                              G:\dev\axmol
sdk
p
xc                             {}
cc
prefix                         G:\dev\axmol\tools\external
xb                             {--target, HelloCpp, --config, Debug}
a                              x64

build1k: proj_dir=G:\dev\axmol, prefix=G:\dev\axmol\tools\external
build1k: Using glslcc: G:\dev\axmol\tools\external\glslcc\glslcc.exe, version: 1.9.3
build1k: Using cmake: C:\Program Files\CMake\bin\cmake.exe, version: 3.27.7
build1k: Using nuget: G:\dev\axmol\tools\external\nuget\nuget.exe, version: 5.5.1
build1k: Building target win32 on windows with toolchain msvc ...
build1k: CONFIG_ALL_OPTIONS=-A x64, Count=2
-- Building for: Visual Studio 17 2022
-- Selecting Windows SDK version 10.0.19041.0 to target Windows 10.0.19045.
-- The C compiler identification is MSVC 19.37.32824.0
-- The CXX compiler identification is MSVC 19.37.32824.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: C:/Program Files/Microsoft Visual Studio/2022/Community/VC/Tools/MSVC/14.37.32822/bin/Hostx64/x64/cl.exe - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: C:/Program Files/Microsoft Visual Studio/2022/Community/VC/Tools/MSVC/14.37.32822/bin/Hostx64/x64/cl.exe - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- GLSLCC_OUT_DIR=G:/dev/axmol/build_x64/runtime/axslc
-- GLSLCC_FIND_PROG_ROOT=G:/dev/axmol/tools/external/glslcc
-- GLSLCC_FRAG_SOURCE_FILE_EXTENSIONS=.frag;.fsh
-- GLSLCC_VERT_SOURCE_FILE_EXTENSIONS=.vert;.vsh
-- CMAKE_HOST_SYSTEM_VERSION: 10.0.19045
-- CMAKE_SYSTEM_VERSION: 10.0.19045CMake Warning at cmake/Modules/AXConfigDefine.cmake:48 (message):

  Forcing set CMAKE_C_STANDARD to 99 when winsdk < 10.0.22000.0
Call Stack (most recent call first):
-- CMAKE_VS_WINDOWS_TARGET_PLATFORM_VERSION: 10.0.19041.0
  cmake/Modules/AXBuildSet.cmake:47 (include)
  CMakeLists.txt:46 (include)

-- CMAKE_C_STANDARD=99
-- Building axmol with c++20
-- Using Windows MSVC generate axmol project, MSVC_VERSION:1937
-- The ASM compiler identification is MSVC
-- Found assembler: C:/Program Files/Microsoft Visual Studio/2022/Community/VC/Tools/MSVC/14.37.32822/bin/Hostx64/x64/cl.exe
-- The ASM_NASM compiler identification is NASM
-- Found assembler: C:/Users/Mariusz/AppData/Local/bin/NASM/nasm.exe
-- CMAKE_HOST_SYSTEM_NAME:Windows
-- CMAKE_SYSTEM_NAME:Windows
-- CMAKE_GENERATOR_PLATFORM:x64
-- CMAKE_SYSTEM_PROCESSOR:AMD64
-- CMAKE_CXX_COMPILER_ID:MSVC
-- FUZZ_MSVC=TRUE, FULL_CLANG=
-- PROJECT_NAME:axmol
-- PROJECT_SOURCE_DIR:G:/dev/axmol
-- _AX_ROOT:G:/dev/axmol
-- CMAKE_MODULE_PATH:G:/dev/axmol/cmake/Modules/
-- PROJECT_BINARY_DIR:G:/dev/axmol/build_x64
-- ENGINE_BINARY_PATH:G:/dev/axmol/build_x64/engine
-- ARCH_ALIAS:x64
CMake Warning (dev) at core/CMakeLists.txt:87 (message):
  AX_USE_GL=ON, AX_USE_METAL=OFF, AX_GLES_PROFILE=300
This warning is for project developers.  Use -Wno-dev to suppress it.

-- AX_ENABLE_VLC_MEDIA=OFF
-- Found Git: C:/Program Files/Git/cmd/git.exe (found version "2.36.1.windows.1")
,,,,

Open build_x64\axmol.sln
Run in debugger Cpp-test
Press Press "Start Auto Test" or press "Texture2d" (second test on the list) - crash

I can't reproduece this issue

compiler bug?, clean and rebuild may solve your problem

I clean/rebuild multiplie times. It works fine for V1.0.0 it fails on V2.0.0 and latest.
"Illegal instructions" means that compiled code is not compatible with my CPU ...
It looks like my CPU (Intel(R) Xeon(R) CPU           X5670  @ 2.93GHz ) does not support vmovss
		construct_block_size_descriptor_2d(x_texels, y_texels, can_omit_modes, mode_cutoff, bsd);
00007FF732D79AD7  mov         rax,qword ptr [bsd]
00007FF732D79ADC  mov         qword ptr [rsp+20h],rax
00007FF732D79AE1  vmovss      xmm3,dword ptr [mode_cutoff]

If that works for V1.0.0 and does not for V2.0.0 my guess would be that thirdparty\astcenc latest changes does not support older CPUs

If that works for V1.0.0 and does not for V2.0.0 my guess would be that thirdparty\astcenc latest changes does not support older CPUs

Unless I'm mistaken, both V2.0.0 and V1.0.0 are using the exact same version of astcenc.  Perhaps it's a configuration issue?

Yes, the version of astcenc is same

Maybe your cpu not support instruction vmovss?

My cpu works:

Could something have changed in Axmol 2.0.0 with the cmake configuration to accidentally detect incorrect support for those instructions?

@crazyhappygame  please check your cmake output:

AVX instruction sets are not supported on the Intel Xeon CPU X5670, so if it's somehow detecting that they are, then that would be the issue.

Yes: https://ark.intel.com/content/www/us/en/ark/products/47920/intel-xeon-processor-x5670-12m-cache-2-93-ghz-6-40-gt-s-intel-qpi.html vmovess is a avx instruction

Yes .I have:
-- Found ZLIB: G:/dev/axmol/thirdparty/zlib/prebuilt/win32/x64/zlib.lib (found version "1.3")
-- Found PNG: png (found version "1.6.40")
CMake Warning (dev) at thirdparty/astcenc/CMakeLists.txt:89 (message):
  ASTC_ISA_SIMD=avx2
This warning is for project developers.  Use -Wno-dev to suppress it.

The problem is likely to be in this file: https://github.com/axmolengine/axmol/commits/dev/thirdparty/CMakeLists.txt
A lot of changes were made to it between Axmol v1.0.0 to v2.0.0, and it's where the instruction set configuration seems to be set up.

Yes .I have:
-- Found ZLIB: G:/dev/axmol/thirdparty/zlib/prebuilt/win32/x64/zlib.lib (found version "1.3")
-- Found PNG: png (found version "1.6.40")
CMake Warning (dev) at thirdparty/astcenc/CMakeLists.txt:89 (message):
  ASTC_ISA_SIMD=avx2
This warning is for project developers.  Use -Wno-dev to suppress it.

And  on your machine, the axmol1.0 cmake output ASTC_ISA_SIMD =?

The problem is likely to be in this file: https://github.com/axmolengine/axmol/commits/dev/thirdparty/CMakeLists.txt
A lot of changes were made to it between Axmol v1.0.0 to v2.0.0, and it's where the instruction set configuration seems to be set up.
The correct output for the Xeon X5670 should be: ASTC_ISA_SIMD=sse4.2

Use check_c_source_runs instead check_c_source_compiles should works:
include(CheckCSourceRuns)
    check_c_source_runs("#include <immintrin.h>
        #include <stdint.h>
        int main()
        {
            __m256 m = _mm256_set_ps(0.f, 0.f, 0.f, 0.f, 0.f, 0.f, 0.f, 0.f);
            return (int)*(float*)&m;
        }" AX_HAVE_AVX2_INTRINSICS)

for axmol v1.0.0 on my machine I have:
21:12:08  CMake Warning (dev) at external/axmol/thirdparty/astcenc/CMakeLists.txt:84 (message):
21:12:08    ASTC_ISA_SIMD=sse2
21:12:08  This warning is for project developers.  Use -Wno-dev to suppress it.

Strange: the Detetion SIMD instrinsics really same between axmol 1.0 and 2.0

for axmol v1.0.0 on my machine I have:
21:12:08  CMake Warning (dev) at external/axmol/thirdparty/astcenc/CMakeLists.txt:84 (message):
21:12:08    ASTC_ISA_SIMD=sse2
21:12:08  This warning is for project developers.  Use -Wno-dev to suppress it.

Also, this is strange, since the Intel product page shows this:
Instruction Set Extensions Intel® SSE4.2
So it should be ASTC_ISA_SIMD=sse4.2

seems the vmovss not emit by intrinsics, it was generated by compiler

And if you build x64, should never use SSE2: https://github.com/axmolengine/axmol/blob/1.0/thirdparty/astcenc/CMakeLists.txt#L47
if (NOT DEFINED ASTC_ISA_SIMD)
    if (NOT (ARCH_ALIAS STREQUAL "x86") AND NOT TVOS)
        set(ASTC_HAVE_AVX2_INTRINSICS ${AX_HAVE_AVX2_INTRINSICS})
        set(ASTC_HAVE_SSE42_INTRINSICS ${AX_HAVE_SSE42_INTRINSICS})
        set(ASTC_HAVE_SSE41_INTRINSICS ${AX_HAVE_SSE41_INTRINSICS})
        if (AX_HAVE_NEON_INTRINSICS)
            set(OLD_REQUIRED_FLAGS ${CMAKE_REQUIRED_FLAGS})
            set(CMAKE_REQUIRED_FLAGS "${CMAKE_REQUIRED_FLAGS} -std=c++11")
            check_cxx_source_compiles("#include <arm_neon.h>
                    int main()
                    {
                        int32x4_t ret4 = vdupq_n_s32(0);
                        uint32x4_t v{};
                        float16x4_t f16 = vcvt_f16_f32(v);
                        return vgetq_lane_s32(ret4, 0);
                    }" ASTC_HAVE_NEON_INTRINSICS)
            set(CMAKE_REQUIRED_FLAGS ${OLD_REQUIRED_FLAGS})
            unset(OLD_REQUIRED_FLAGS)
        endif()
    else()
        set(ASTC_HAVE_SSE2_INTRINSICS ${AX_HAVE_SSE2_INTRINSICS})
        message(AUTHOR_WARNING "Skipping AVX2/SSE4/NEON detection for astc-encoder when build target 'x86' and 'tvos'")
    endif()

    ### set ASTC_ISA_SIMD
    if(ASTC_HAVE_AVX2_INTRINSICS)
        set(ASTC_ISA_SIMD "avx2")
    elseif(ASTC_HAVE_SSE42_INTRINSICS)
        set(ASTC_ISA_SIMD "sse4.2")
    elseif(ASTC_HAVE_SSE41_INTRINSICS)
        set(ASTC_ISA_SIMD "sse4.1")
    elseif(ASTC_HAVE_SSE2_INTRINSICS)
        set(ASTC_ISA_SIMD "sse2")
    elseif(ASTC_HAVE_NEON_INTRINSICS)
        set(ASTC_ISA_SIMD "neon")
    else()
        set(ASTC_ISA_SIMD "none")
    endif()

    message(AUTHOR_WARNING "ASTC_ISA_SIMD=${ASTC_ISA_SIMD}")
endif()

You build axmol-1.0 x86 via -A Win32? if true, will only check sse2 and use it

The commit https://github.com/axmolengine/axmol/commit/fcd3312365a2da77f3dec0a6e04b5555248e658a improve SIMD instructions detction, and should fix this issue, note: this is not axmol2 spec issue, when build axmo1 x64 should

Thank you.
For latest version on my machine I see
CMake Warning (dev) at thirdparty/astcenc/CMakeLists.txt:56 (message):
  ASTC_ISA_SIMD=sse4.1

No crashes any more. Thank you!


allowClear option on select2 dropdown

I tried to add the option allowClear to the select2 settings but the "x" button doesn't appear
https://plnkr.co/edit/sVoudSOPCdVyfRjM3Fte?p=preview

@masciugo by the way, about select2Config name, we think that just config will be much better. What do you think? Or may be widgetConfig ?

mmm that's not obvious. Fact is that often but not always there is a third party library that could be set up with its own options like select2. I think its clearer referring to this particular settings directly specifying its name someway but, in general, a widget may have additionally its own settings. Maybe it's too complicated but I would propose something like:
config: {
  select2: {
    allowClear: true
    // ... other select2 lib settings ....
  },
  // otherThirdPartyLib {
  // },
  // widgetSetting1: ...,
  // widgetSetting2: ...
}

I think that we use only one widget per question one time. So we have the context. If we are using select2 then config associated with this library. But if we use widget by type we don't have any clear context... may be  select2Config is good compromise

Fix will be wavilable in the next minor. Here an example https://plnkr.co/edit/r8zspi?p=preview @masciugo could you check it please?

I meant more than one third party libs per widget. But even in this case your solution (_ select2Config_) still works because you just need to add anotherLibConfig if necessary. Other widget settings my be passed as question properties in case of widget activated by type

it seems ok but when used with select2 tags option and create a new option you need to click twice to clear

@masciugo  yes, becasue of tags we've created select2-tagbox widget. It based on checkbox instead of dropdown.

@dmitrykurmanov select2 tags option is for option creation  while select2-tagbox widget is for multiple select. I need to create to create an option in a select2 powered dropdown. To solve the twice-click problem I needed to add
$el.on("select2:unselecting", function (e) {
  question.value = null;
});

in the afterRender widget function


iOS notification appear when app is in foreground

I don't know if it's a problem with the plugin or the way I send the notification, or if I'm missing a parameter. But notifications on iOS appear when the app is in the foreground and background.
I would like them not to appear in the foreground.
Any suggestion?
Thanks in advance.

Did you get this figured out at all?  This medium guide for this project implies it's supposed to be automatically silent while it is in the foreground.. https://medium.com/enappd/firebase-push-notifications-in-ionic-apps-d90c6550fdb7

I'm ran into the same issue the other day. So-called data messages (silent notifications) are working perfectly on Android, but I'm unable to get them working on iOS. They simply don't seem to arrive at all. I tried almost every example I could find online with different parameters, but whenever i remove the "notification" part of the Firebase payload, the iOS notifications stop working completely.

I'm ran into the same issue the other day. So-called data messages (silent notifications) are working perfectly on Android, but I'm unable to get them working on iOS. They simply don't seem to arrive at all. I tried almost every example I could find online with different parameters, but whenever i remove the "notification" part of the Firebase payload, the iOS notifications stop working completely.

Sorry for being late but I have not been able to make the notifications not show in background and foreground at the same time on iOS. As soon as I can solve it I will post it here.

Sorry for being late but I have not been able to make the notifications not show in background and foreground at the same time on iOS. As soon as I can solve it I will post it here.

After researching for a couple of days I have found that my problem is that the APNs alert is always sent, it does not matter if I add the content-available property that is supposed to prevent the alert from being sent.
I still don't know if my problem is with the plugin or the Firebase Admin SDK which is the one I'm using to send notifications.
I am going to do a last test with the postman and the official url of the firebase but in advance I have sent a notification from the firebase itself to iOS and indeed, although the app is in foreground, the push notification is displayed and the APNs alert arrives.
I am more and more sure that the plugin is not controlling in iOS that the push notification does not show if it is already in the foreground.
I appreciate any suggestions.

You are right Rid. The plugin doesn't present anything, it only receives and gives it to the JS context.

It would be nice if you could add something to control it, since in my case I use a chat application with this plugin, on Android I have no problem but you imagine how it is a chat on iOS with all the notifications arriving while the app is open.


is it intentionally checking for version 5?

Hi
Is this code line intentionally checking for version 5 even though most of these plugins are far beyond v6 atm?
https://github.com/codeceptjs/CodeceptJS/blob/a1c9a18ab78d28b3284eba01ed64e00714fcd7b0/lib/plugin/wdio.js#L106
The reason why I'm asking is because this function requires the plugins from /node_modules/@wdio/x-service but the constructor is then called according to the installed service in /node_modules/codeceptjs/node_modules/@wdio/x-service
That  could be fixed by checking if plugins are installed in project node_modules or at least print some error message that user has to install a different version.
I would like to open the pr if you want any help?

Please see the update to issue #2562. In its current state, the wdio plugin parses configuration as per the Webdriverio v5 format:
https://github.com/codeceptjs/CodeceptJS/blob/a1c9a18ab78d28b3284eba01ed64e00714fcd7b0/lib/plugin/wdio.js#L98-L100
Yet , a little later in the plugin's control flow, it tries to be compatible with the Webdriver v6 semantics, but without passing any custom options to the wdio service:
https://github.com/codeceptjs/CodeceptJS/blob/a1c9a18ab78d28b3284eba01ed64e00714fcd7b0/lib/plugin/wdio.js#L108-L111

So this is not by design and should be fixed?


Documentation Review - Outdoor Hotspot -

https://github.com/NebraLtd/Helium-Guides/blob/main/docs/outdoor-hotspot/overview.md#outdoor-helium-hotspot-overview
Specifications

Specification
Nebra Outdoor Hotspot

RRP
£350 ex VAT

Case

Empty Case above
https://github.com/NebraLtd/Helium-Guides/blob/main/docs/outdoor-hotspot/overview.md#antenna-specifications

Specification
470Mhz Model
868 & 915Mhz Models

Frequency Range
420-480
860-930 Mhz

Peak Gain

3 dBi

VSWR

≤1.5

Input Impediance
50 Ohms
50 Ohms

Length

30CM

Empty for 470MHz model above
https://github.com/NebraLtd/Helium-Guides/blob/main/docs/outdoor-hotspot/overview.md#button
The Nebra Indoor Hotspot has a button on the smaller board inside the unit. --> Outdoor
https://github.com/NebraLtd/Helium-Guides/blob/main/docs/outdoor-hotspot/troubleshooting.md#outdoor-hotspot-troubleshooting
Outdoor Hotspot Troubleshooting
If you are having trouble with setting up your hotspot or got a query?, the following tips may help. --> Delete comma
https://github.com/NebraLtd/Helium-Guides/blob/main/docs/outdoor-hotspot/lte-config.md#required-hardware

micro SIM card with ~30GB per month data package --> In the FAQs we have recommended 50GB

https://github.com/NebraLtd/Helium-Guides/blob/main/docs/outdoor-hotspot/quick-start.md#preparing-your-nebra-outdoor-hotspot
If not done already, let us create an issue as a reminder to write this section when ready

Thanks, @fouad-semaan  , Fixed 4 of them and working on adding 470MHz details.

[X]  Empty Case above
[ ] Empty for 470MHz model above
[X] Outdoor
[X]  50GB

I don't get the last one https://github.com/NebraLtd/Helium-Guides/blob/main/docs/outdoor-hotspot/quick-start.md#preparing-your-nebra-outdoor-hotspot
If not done already, let us create an issue as a reminder to write this section when ready, can you elaborate pease.

https://github.com/NebraLtd/Helium-Guides/blob/main/docs/outdoor-hotspot/quick-start.md#preparing-your-nebra-outdoor-hotspot
This section will be written soon.
The content still empty so let us create an issue as a reminder to write it.  @salmanfarisvp

Closing as duplicate of #104


About "pmp-library".

Hey @nschloe,
I was wondering if this one would be a good fit in the Meshing category: http://www.pmp-library.org/
It is not purely meshing but more remeshing actually.
I can create a PR nonetheless!
Cheers,
Thomas

Sure, why not? Best simply create a PR, I can always merge or close it then.

Cool will do!


Keep Cookies in the HTTP Request

I am trying to download a direct link and it requires cookies in the http request. Inetc has cookies, NSCurl removes cookies? How to keep it?

I'm getting https://login.microsoftonline.com/cookiesdisabled when trying to download the direct file. It works in Inetc

For example this works in curl: curl -o test.zip -L -A 'Mozilla' -c cookies.txt -b cookies.txt 'https://example.com/test.zip'


Refactor tab list

API | Common
Supersedes https://github.com/SpongePowered/SpongeAPI/pull/986
Notable changes:

adds canSee(Entity) method to Entity
renames PlayerTabInfo to TabListEntry
removes setGameProfile from TabListEntry

This might be a candidate for a separate PR, but it would be good to have an event fired for Vanilla changes to the tab list (e.g. a player's latency changing). Otherwise, plugins would have to constantly update the tab list to prevent Vanilla changes.

There's no real way to tell what's vanilla and what's not, and injecting to all vanilla locations isn't something I really want to do. If someone wants to ensure latency stays what they want, they should schedule a task.


Added buttons to modify interface metadata

Base on issue #15
Added buttons to add or remove metadata from an interface.
Update:
-It needs the topology PR #85

@Alopalao this PR looks good to me, let's bump version 2022.2.0.b2 for it, could you update the changelog and version accordingly? Make sure also to merge master into this branch and solve the conflict, thanks.
Also, another related thing that I've noticed is that the interface details panel currently is getting mounted maximized by default (it's not a side effect of this PR), but I wonder if we should make it not maximized by default https://github.com/kytos-ng/ui/blob/master/src/components/kytos/switch/Interface.vue#L116, looking in the git history I don't see a particular reason why, and having it not maximized it would make a smoother transitions when selecting and mounting the component. @rmotitsuki any thoughts or suggestions on that, wdyt?

I think it would be better to change it back to false to keep a theme of opening minimized information panels.

Updated changelog.rst on commit cc18643c47ac503a057a2e2f0a6de9c83e0e7d16

NPM build command gives me an error for the version format. The version must be in the format 2022.2.0-b2

@Alopalao let's take the opportunity to leave the interface details minized then too, could you also update that part? Also, apologies for the wrong version format that I specified, let's stick with this one 2022.2.0-b2 that @rmotitsuki suggested just it still compatible with other npm versions.
Thanks, guys.

Maximization option and version updated on commit e0106870698a81c402978fac5feb583ed4bea53b

Maximization option and version updated on commit e0106870698a81c402978fac5feb583ed4bea53b

Excellent. Let's ship this feature, appreciated your contribution @Alopalao.


bug: Android swipe animation

Type: bug
Platform: android 4.4 webview
Type: bug
Platform: android 4.4 webview
Hi, i'm using Ionic Version: 1.0.0-rc.0. It's good working on web, but when i run on real device app didn't show swipe animation, but swipe is working. Maybe i didn't understand the swipe animation process on Android and it must not show that animation on Android?
For example, http://codepen.io/dellingsworth/full/rawNBq/
No swipe/default state -
With swipe animation -
You can repeat that using only browser Google Chrome:

open http://codepen.io/dellingsworth/full/rawNBq/
open development tools - Shift+Ctrl+I
click on mobile icon on top left corner -

select any Android device, for example: nexus 5
reload page
Then i can't see swipe animation. It didn't repeats with WP or iOs - they are working normal. The same bug on real Android device. Do any have the same problem?

Thank you.

Greetings @ildarkayumov!
My sensors indicate that you need to update your issue through our custom issue form. We are now requiring all issues to be submitted this way, to ensure that we have all of the information necessary to fix them as quickly as possible.
Click Here To Update Your Issue
I will have no choice but to close this issue if it is not resubmitted through the form. Please fill out the rest of the form, so that I may use my friendly robot powers to assist you.
Thank you!

My fail...works with refresher - http://ionicframework.com/docs/api/directive/ionRefresher/


Add account_id to template.

Now you can use the 'account_id' variable in templates, in addition
to 'account' and 'region' already existing.
Syntax: {{ account_id }}

Hello @llange, thank you for the PRs.  Can you please sign then contributor agreement here if you have not already done so.
https://docs.google.com/forms/d/19LpBBjykHPox18vrZvBbZUcK6gQTj7qv1O5hCduAZFU/viewform

Hi @jhnlsn , I'm pretty sure I did it before the PRs... Could you check if you have it please ?

@llange you did, thanks


Please tag a new release

So we all can depend on tagged version with cool new features: https://github.com/rakyll/statik/compare/v0.1.0...master

https://github.com/rakyll/statik/tree/v0.1.1 is released.


QGIS plugin deepness devel "This plugin is broken Missing metadata file"

I have attempted to install the Deepness plugin in QGIS.  After installation I get "qgis-plugin-deepness-devel" below the Deepness: Deep Neural Remote Sensing listing. It is in RED.  After clicking on the "qgis-plugin-deepness-devel" the large screen to the right states "This plugin is broken, Missing metadata file  qgis-plugin-deepness-devel"
What is needed to get this plugin installed and working?

Hi @udaf-mcq,
Please describe your workflow and the goal you want to reach.

I use drone imagery to map invasive plant species and other agricultural
scenarios.  I am hoping that Deepness will help locate specific weeds and
other objects (types of irrigation systems, crop type, soil conditions
etc.).  The drone imagery is loaded into WebODm to make orthomosaics of
area of interest (usually 2cm or less pixel resolution).  The orthomosaic
is then loaded into QGIS for evaluation for the subject of interest.  I am
hoping to be able to have Deepness locate the subject of interest in QGIS.
I anticipate that models will need to be produced to train Deepness.  I
will need help to build these models and libraries.
Mark Quilter | Salinity Program Manager / Licensed UAV Pilot
801.201.4397 MOBILE
UTAH DEPARTMENT OF AGRICULTURE AND FOOD
https://ag.utah.gov/ https://www.facebook.com/utahagriculture
https://www.instagram.com/utagandfood/ https://twitter.com/UTagandfood
https://www.youtube.com/user/UtahAgriculture
How was your experience with the Utah Department of Agriculture and Food?
Tell us about your experience through this 2-minute survey!
Follow this link to the survey:
Take the Survey
https://utconcierge.qualtrics.com/jfe/form/SV_cUTRcsmWFFj4rjg
Or copy and paste the URL below into your internet browser:
https://utconcierge.qualtrics.com/jfe/form/SV_cUTRcsmWFFj4rjg
On Fri, Nov 1, 2024 at 7:00 AM Bartosz Ptak @.***>
wrote:

Hi @udaf-mcq https://github.com/udaf-mcq,
Please describe your workflow and the goal you want to reach.
—
Reply to this email directly, view it on GitHub
https://github.com/PUTvision/qgis-plugin-deepness/issues/191#issuecomment-2451833758,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AJCILXIMS4I7Q4DWXZE6XYLZ6N3N7AVCNFSM6AAAAABQ7BQXIKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDINJRHAZTGNZVHA
.
You are receiving this because you were mentioned.Message ID:
@.***>

Hi @udaf-mcq,
You would need to train a model tailored to your needs. In the plugin documentation, you can find a document describing how to do it without programming knowledge.
Regarding the issue you are having with installing the plugin - please describe what operating system are you using, what QGIS version and how you are installing the plugin.

Since my post that you replied to I have been trying to reinstall.  The plugin loads but give error failed to load model.  I was trying to load Detector.
I am on a Windows 10 machine with QGIS 3.34.12-Prizren
Here is the error message from the log file:
traceback: File "C:\Users/mquilter/AppData/Roaming/QGIS/QGIS3\profiles\default/python/plugins\deepness\deepness_dockwidget.py", line 258, in _browse_model_path
self._load_model_and_display_info()
File "C:\Users/mquilter/AppData/Roaming/QGIS/QGIS3\profiles\default/python/plugins\deepness\deepness_dockwidget.py", line 363, in _load_model_and_display_info
self._model = self._load_model_with_type_from_metadata(
File "C:\Users/mquilter/AppData/Roaming/QGIS/QGIS3\profiles\default/python/plugins\deepness\deepness_dockwidget.py", line 334, in _load_model_with_type_from_metadata
model_type_str_from_metadata = ModelBase.get_model_type_from_metadata(file_path)
File "C:\Users/mquilter/AppData/Roaming/QGIS/QGIS3\profiles\default/python/plugins\deepness\processing\models\model_base.py", line 65, in get_model_type_from_metadata
model = cls(model_file_path)
File "C:\Users/mquilter/AppData/Roaming/QGIS/QGIS3\profiles\default/python/plugins\deepness\processing\models\model_base.py", line 37, in init
self.sess = ort.InferenceSession(self.model_file_path, options=options, providers=providers)
File "C:\Users\mquilter\AppData\Roaming\QGIS\QGIS3\profiles\default\python\plugins\deepness\python3.12\onnxruntime\capi\onnxruntime_inference_collection.py", line 419, in init
self._create_inference_session(providers, provider_options, disabled_optimizers)
File "C:\Users\mquilter\AppData\Roaming\QGIS\QGIS3\profiles\default\python\plugins\deepness\python3.12\onnxruntime\capi\onnxruntime_inference_collection.py", line 463, in _create_inference_session
providers, provider_options = check_and_normalize_provider_args(
File "C:\Users\mquilter\AppData\Roaming\QGIS\QGIS3\profiles\default\python\plugins\deepness\python3.12\onnxruntime\capi\onnxruntime_inference_collection.py", line 103, in check_and_normalize_provider_args
set_provider_options(provider, dict())
File "C:\Users\mquilter\AppData\Roaming\QGIS\QGIS3\profiles\default\python\plugins\deepness\python3.12\onnxruntime\capi\onnxruntime_inference_collection.py", line 69, in set_provider_options
warnings.warn(
2024-11-01T15:18:46     WARNING    warning:UserWarning: Specified provider 'CUDAExecutionProvider' is not in available provider names.Available providers: 'AzureExecutionProvider, CPUExecutionProvider'
         traceback: File "C:\Users/mquilter/AppData/Roaming/QGIS/QGIS3\profiles\default/python/plugins\deepness\deepness_dockwidget.py", line 258, in _browse_model_path
          self._load_model_and_display_info()
          File "C:\Users/mquilter/AppData/Roaming/QGIS/QGIS3\profiles\default/python/plugins\deepness\deepness_dockwidget.py", line 363, in _load_model_and_display_info
          self._model = self._load_model_with_type_from_metadata(
          File "C:\Users/mquilter/AppData/Roaming/QGIS/QGIS3\profiles\default/python/plugins\deepness\deepness_dockwidget.py", line 334, in _load_model_with_type_from_metadata
          model_type_str_from_metadata = ModelBase.get_model_type_from_metadata(file_path)
          File "C:\Users/mquilter/AppData/Roaming/QGIS/QGIS3\profiles\default/python/plugins\deepness\processing\models\model_base.py", line 65, in get_model_type_from_metadata
          model = cls(model_file_path)
          File "C:\Users/mquilter/AppData/Roaming/QGIS/QGIS3\profiles\default/python/plugins\deepness\processing\models\model_base.py", line 37, in __init__
          self.sess = ort.InferenceSession(self.model_file_path, options=options, providers=providers)
          File "C:\Users\mquilter\AppData\Roaming\QGIS\QGIS3\profiles\default\python\plugins\deepness\python3.12\onnxruntime\capi\onnxruntime_inference_collection.py", line 419, in __init__
          self._create_inference_session(providers, provider_options, disabled_optimizers)
          File "C:\Users\mquilter\AppData\Roaming\QGIS\QGIS3\profiles\default\python\plugins\deepness\python3.12\onnxruntime\capi\onnxruntime_inference_collection.py", line 463, in _create_inference_session
          providers, provider_options = check_and_normalize_provider_args(
          File "C:\Users\mquilter\AppData\Roaming\QGIS\QGIS3\profiles\default\python\plugins\deepness\python3.12\onnxruntime\capi\onnxruntime_inference_collection.py", line 103, in check_and_normalize_provider_args
          set_provider_options(provider, dict())
          File "C:\Users\mquilter\AppData\Roaming\QGIS\QGIS3\profiles\default\python\plugins\deepness\python3.12\onnxruntime\capi\onnxruntime_inference_collection.py", line 69, in set_provider_options
          warnings.warn(

What model are you trying to load? "Detector" is just a class of models, so I meant the model file path you selected. Can you share the model you used?

C:\Users\mquilter\AppData\Roaming\QGIS\QGIS3\profiles\default\python\plugins\deepness\processing\models\detector.py
The models in the models directory are: init.py, detector.py, model_base.py, model_base.py, model_types.py,
prepocessing_utils.py, recognition.py, regressor.py, segmentor.py, and superresolution.py.

But you need to select a file with the model in the plugin, here: