[Help]: Issues writing high resolution los results to netcdf

Describe the problem you met
Thank you for all your help so far. I seem to be having a similar problem to last time with regards to not being able to output a netcdf file from the los displacement measurements. However, this time I believe the issue has been caused by my attempt to increase the resolution of the data from 90 metres to 30 metres. This is causing a significant increase in RAM usage, so much so that the dask worker restarts several times before finally failing. I see with your Yamhi Dam 4th notebook that you export the last date from the xarray. As I need all results between first and last I attempted to iterate through the dates with a simple "for in" loop. However, even with this - I get a similar problem with the worker failing consistently at about 90% when writing a single date. Would you be able to point me in the right direction to resolve this issue? I've made sure to check the shape properly this time and everything looks appropriate (72 dates with lat and long). I've included the script underneath the logs, the log itself is relatively small as I am using your sbas.pickle approach to avoid unnecessary processing. lines 220 to 240 which are currently commented out are my proposed method for iteration through the array.
Same as before I am using your suggestions from your Yamchi Dam example, i.e:

chunk size: 1024
n_worker: 1
Dask increase of timeouts to 60s
Dask Persist/ tqdm_dask for the NetCDF export

Resources:

12th Gen Intel© Core™ i7-12700H × 14 (20 threads)
32GB RAM

OS and software version
OS: Linux Mint (Cinnamon 21.1) with mobigroup/pygtmsar docker (id: a25ad61c3c30)
Log file
inSAR-30m_res_log_test.txt
script.txt
[Please note that if no new responses are made over six months from users, the issue will get closed]
[Also if this is a general question that's not particlarly related to GMTSAR, such as "how to correct atmospheric noise" or "how to intepret my interferogram", consider using the discussions page]

This is a lazy 3D cube created by your code:
sbas_disps = sbas.open_grids(dates, 'disp', func=[sbas.los_displacement_mm])
sbas_disps_total_ll = sbas.intf_ra2ll(sbas_disps.cumsum('date'))

And you saved it into NetCDF but it cannot be saved to GeoTIFF because it is 3D dataset:
delayed = sbas_disps_total_ll.to_netcdf(filename_nc, engine=sbas.engine, compute=False)
tqdm_dask(dask.persist(delayed), desc='Saving Total Displacement as NetCDF')

That's more effective to rearrange the commands and use loop adding the current raster to total sum instead of cumsum('date') call (it is a computationally expensive operation) when you just need a set of 2D rasters:
disp = sbas.open_grids(dates, 'disp', func=[sbas.los_displacement_mm])

# convert coordinate to valid dates
disp['date'] = pd.to_datetime(disp.date)

# save NetCDF files into separate directory
dirname = f'{WORKDIR}.displacement'
!mkdir -p {dirname}
!rm -f {dirname}/displacement*.nc

# for faster processing add new grid to materialized sum of the previous ones
# do not use .cumsum() function on lazy stack to process all the grids
disp_total = None
for (idx, disp_current) in enumerate(disp):
    date = disp_current.date.dt.strftime('%Y%m%d').item()
    if disp_total is None:
        disp_total = disp_current.compute()
    else:
        disp_total += disp_current.compute()
    #print (idx,date)
    filename = f'{dirname}/displacement.{date}.nc'
    sbas.intf_ra2ll(disp_total).to_netcdf(filename, engine=sbas.engine)
    print ('.', end='')

We can optimize the code, add "sbas.intf_ra2ll" call directly to the sbas.open_grids call (disp_ll = sbas.open_grids(dates, 'disp', func=[sbas.los_displacement_mm, sbas.intf_ra2ll])) and so on. Actually, it does not related to PyGMTSAR itself but to a big data processing on Python and I share the examples on my Patreon: https://www.patreon.com/pechnikov
By the way, what is the reason to produce GeoTIF files when NetCDF files can be opened in almost any GIS software like to GDAL, QGIS, etc.?

Thank you for your detailed suggestion, that definitely produces a result where none existed before. However, I'm a little concerned that the different methods to output the netcdf/ geotiff are causing an offset to occur somehow. I'd carried out an export using the lazy grid methodology on a smaller batch of data and got the following result:

However, when using the new methodology, I get a completely different output:

I thought that it may be the coherence stack mask somehow causing less data to be available with a longer time series, however on closer inspection it looks as if the data has "shifted" northwards. See example below:

As you can see there's an exceedingly similar-looking displacement output at slightly different locations. To answer your other question as to why I am attempting to convert the netCDF to geoTIF within the code instead of after the fact - I believe there was a bug in the version of xarray outside of the docker environment and I had problems utilizing gdal or other geospatial packages to resolve the problem at the time. The conversion of a 3D data stack to GeoTIF seemed to be working perfectly with lower resolution imagery and seems to still work when utilizing a high res 2D array. Is there any particular reason why I should not be doing it this way? Do you have any potential suggestions as to why I am experiencing a shift? Many thanks in advance!

You might try the example notebook https://colab.research.google.com/drive/1xhVedrIvNS66jGKgS30Dgqy0S31uJ8gm?usp=sharing
and export disp_total.nc. As it uses the OSM mask, the results should fit well with the OSM map in QGIS:

I had a look at the example notebooks you mentioned above and couldn't see any differences with the way you're geocoding so attempted to replicate my theory on the exact same small (3 full slc images) batch of data. Both output methodologies produced the exact same data grid which fits nicely with the OpenStreetMap layer available on QGIS.
What I am therefore confused about is how changing the total number of dates processed and the master image of the inSAR dataset can cause a geographic shift in my output result. To save on space I removed 6 months of data so would have ended up with a different master image (as at the moment I am not specifically setting one).
Is this something you have experienced before or do you think it may well be a mistake on my part? I know that the critical baseline is an important concept to understand in inSAR theory, but I didn't believe that this could lead to an actual shift in a resulting displacement raster?
Many thanks in advance for your response!

Maybe do you use the same geocode matrix for the different master images? For the complete processing I cannot imagine how the shift is possible.

No, everything is calculated independently for each stack of imagery. I'll run some further tests this week and let you know if I can replicate the problem.


ts-web/core: use client node for playground grpc

depends #54
This seems to need a little something more, with our test hanging when directed at the client node instead of the validator

it works locally, but admittedly I don't start the test as fast as CI does. maybe there's something else we need to wait for

I tried launching it fast manually, and the test fails with consensus: no committed blocks. Maybe we can add a step to wait for the first block

after some more experimentation, I've found that it takes ~30 seconds on my computer for client-0 to connect to the testnet. maybe it's taking longer on CI, where there's a 60 second timeout

I added a WaitReady call, and it works now.


Add download data for July 2017

Codecov Report

Merging #730 into master will increase coverage by 0.13%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master     #730      +/-   ##
==========================================
+ Coverage   86.55%   86.69%   +0.13%
==========================================
  Files          71       71
  Lines        2269     2269
  Branches       83       80       -3
==========================================
+ Hits         1964     1967       +3
+ Misses        305      302       -3

Impacted Files
Coverage Δ

.../core/shared/src/main/scala/io/circe/Decoder.scala
90.37% <0%> (+0.34%)
:arrow_up:

...rc/main/scala/io/circe/numbers/BiggerDecimal.scala
92.35% <0%> (+0.58%)
:arrow_up:

...re/shared/src/main/scala/io/circe/KeyDecoder.scala
100% <0%> (+2.7%)
:arrow_up:

Continue to review full report at Codecov.

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


Do not update /etc/hosts for empty endpoints

There is no need to update the /etc/hosts files
of containers for endpoints which are created/deleted
in a network whose interface list is empty
Signed-off-by: Jana Radhakrishnan<EMAIL_ADDRESS>

LGTM

@mrjana thanks for the fix. since etchosts package already have a good coverage, it would be good to add a test to cover this case ?

@mavenugo added a couple of test cases

LGTM.


renamed IngredientToIngredientAliases

Hey, @0xPranjl I'm going to close this since it's been a while. Feel free to open it back up if you continue working on it!


is can i filter by multiple addresses. if yes mean please share a sample filter for multiple addresses

@msmakhlouf @briankabiro

It might not be possible to use multiple addresses at the moment. A solution could be to have a function that's passed in a list of addresses and then it makes multiple calls to fetch messages using the package.
Also would it be possible to use another filter e.g body to match the messages that you would like? This is if the messages have something in common in the body.


ignores DoMobLoot rule

Seems to ignore the gamerule DoMobLoot when set to false. killing the ghastlings dropped raw ghast meat but i had the rule turend to false.

This will be fixed in upcoming release.


Not working for large deployment

My understanding is that Avi-on's protocol changes based on the deployment being large or small (you can see the Location entity has 'size' field), and the current library only supports small I think.
With my deployment now being large, there's two things that happens:

adding 0x80 + device_id to get the first byte overflows; I suspect that the device_id has to be split across the two bytes (offset by 0x80) now?
connecting to the mesh and sending a packet to a low value device id succeeds, but is not acted upon by the mesh. No reaction by the device.

What can I do to help debug this?

I no longer have these lights so am not able to debug much myself, but the way I originally reverse engineered it was by decoding the Bluetooth data while using the halo home app, have you been able to inspect that at all?

I've managed to capture the two characteristics being written - will see if
I can figure out how to go from there.
Any pointers?
-cheers
On Sun, Jul 23, 2023, 2:17 PM nayaverdier @.***> wrote:

I no longer have these lights so am not able to debug much myself, but the
way I originally reverse engineered it was by decoding the Bluetooth data
while using the halo home app, have you been able to inspect that at all?
—
Reply to this email directly, view it on GitHub
https://github.com/nayaverdier/halohome/issues/5#issuecomment-1646961499,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAA2MAVRQNROXI4LONCWZN3XRWIH5ANCNFSM6AAAAAA2UWXL6A
.
You are receiving this because you authored the thread.Message ID:
@.***>

OK, I'm making progress - here are the three writes that I saw when I changed the brightness of a group from the app:
decoding b4d9f8008086e45a79b77d25ab96876ff7f65f84df5cc1e7e04937
{'seq': 16308660, 'source': 32768, 'encpayload': b'\x86\xe4Zy\xb7}%\xab\x96\x87o\xf7\xf6', 'decpayload': b'\x00\x00s\x00\x15\x00\x00\x00\x17\x07\x17\x00\x00', 'hmac_computed': b'_\x84\xdf\\\xc1\xe7\xe0I', 'hmac_packet': b'_\x84\xdf\\\xc1\xe7\xe0I', 'eof': b'7'}
decoding b5d9f800804d72f1e2dc6c9708c45df7132942809374aeb90ccb37
{'seq': 16308661, 'source': 32768, 'encpayload': b'Mr\xf1\xe2\xdcl\x97\x08\xc4]\xf7\x13)', 'decpayload': b'\x00\x00s\x00\x16\x00\x00\x00\x15\x1c!\x00\x00', 'hmac_computed': b'B\x80\x93t\xae\xb9\x0c\xcb', 'hmac_packet': b'B\x80\x93t\xae\xb9\x0c\xcb', 'eof': b'7'}
decoding b6d9f80080a6f928a65cd5cdbf134c9f482f2c63c20f87f4704f37
{'seq': 16308662, 'source': 32768, 'encpayload': b'\xa6\xf9(\xa6\\\xd5\xcd\xbf\x13L\x9fH/', 'decpayload': b'\x00\x00s\x02\x06\x00\x00\x00\x07\x06\x06\x14\x1a', 'hmac_computed': b',c\xc2\x0f\x87\xf4pO', 'hmac_packet': b',c\xc2\x0f\x87\xf4pO', 'eof': b'7'}

Looks like it's correctly decoded. decpayload is the important bit, try to capture a bunch of writes of different attributes (brightness, on/off, whatever you can) and go through different lights/groups for each one. That should make it easier to see the pattern of where the device id is being encoded and where the other data is being encoded, if you haven't done that already.
If you're able to tag each decrypted payload with what action you did that resulted in it, I can help compare to the current implementation here.

Thanks @nayaverdier ,
Yeah, that's what I'll try - need to renew my adb/wireshark foo though, as it right now takes a lot of work to capture and identify the right packets.

@oyvindkinsey I used this approach to filter down to the relevant packets, might be easier if wireshark is being difficult: https://github.com/nayaverdier/halohome/issues/2#issuecomment-1021921213
IIRC it basically only logs the packets that are useful for debugging like this using that setup.

Ah, right - that makes it so much easier!
Thanks again!
On Mon, Jul 24, 2023, 4:53 PM nayaverdier @.***> wrote:

@oyvindkinsey https://github.com/oyvindkinsey I used this approach to
filter down to the relevant packets, might be easier if wireshark is being
difficult: #2 (comment)
https://github.com/nayaverdier/halohome/issues/2#issuecomment-1021921213
IIRC it basically only logs the packets that are useful for debugging like
this using that setup.
—
Reply to this email directly, view it on GitHub
https://github.com/nayaverdier/halohome/issues/5#issuecomment-1648773027,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAA2MATL2EJT6JMH3YWVCWTXR4DIZANCNFSM6AAAAAA2UWXL6A
.
You are receiving this because you were mentioned.Message ID:
@.***>

b'00 80 73 01 0a 00 00'
b'00 80 73 01 0a 00 00'
b'00 00 73 01 0a 00 00 00 00 00 00 00 00'
b'00 80 73 01 0a 00 6a'
b'00 80 73 01 0a 00 00'
b'00 80 73 01 0a 00 00'
b'00 80 73 01 0a 00 ff'
b'00 80 73 01 0a 00 0c'
b'00 80 73 01 0a 00 00'
b'00 80 73 01 0a 00 ff'
b'00 80 73 01 0a 00 00'
b'00 80 73 01 0a 00 00'
b'00 80 73 01 0a 00 00'
b'00 80 73 01 0a 00 00'
b'00 80 73 01 0a 00 00'
b'00 80 73 01 0a 00 00'
b'00 80 73 01 0a 00 00'
b'00 80 73 01 0a 00 01'
b'00 80 73 01 0a 00 01'
b'00 80 73 01 0a 00 ff'
b'00 80 73 01 0a 00 00'
b'00 80 73 01 0a 00 00'
b'00 80 73 01 0a 00 00'
b'00 80 73 01 0a 00 00'
b'00 80 73 01 0a 00 00'
b'00 80 73 01 0a 00 00'
b'00 80 73 01 0a 00 00'
b'00 80 73 01 0a 00 ff'
b'00 80 73 01 0a 00 00'
b'00 80 73 01 0a 00 00'
b'00 80 73 01 0a 00 00'
b'00 80 73 01 0a 00 08'
b'00 80 73 01 0a 00 ff'
b'00 80 73 01 0a 00 00'
b'00 80 73 01 0a 00 ff'
b'00 80 73 01 0a 00 00'
b'00 80 73 01 0a 00 00'
b'00 80 73 01 0a 00 01'
b'00 80 73 01 0a 00 00'
b'00 80 73 01 0a 00 00'
b'00 80 73 01 0a 00 00'
b'00 80 73 01 0a 00 00'
b'00 80 73 01 0a 00 00'
b'00 80 73 01 0a 00 00'
b'00 80 73 01 0a 00 00'
b'00 80 73 01 0a 00 00'
b'00 80 73 01 0a 00 00'
b'00 80 73 01 0a 00 00'
b'00 80 73 01 0a 00 00'
b'00 80 73 01 0a 00 3c'
b'00 80 73 01 0a 00 00'
b'00 80 73 01 0a 00 00'
b'00 80 73 01 0a 00 00'
b'00 80 73 01 0a 00 00'
b'00 80 73 01 0a 00 00'
b'00 80 73 01 0a 00 01'
b'00 80 73 01 0a 00 00'
b'00 80 73 01 0a 00 00'
b'00 80 73 01 0a 00 97'
b'00 80 73 01 0a 00 00'
b'00 80 73 01 0a 00 00'
b'00 80 73 01 0a 00 00'
b'e8 50 df ad fe 90 be 8a b8 5d b3 57 a6'
b'00 80 73 01 0a 00 00'
b'00 80 73 01 0a 00 00'
b'00 80 73 01 0a 00 00'
b'00 80 73 01 0a 00 00'
b'00 80 73 01 0a 00 00'
b'00 80 73 01 0a 00 00'
b'00 80 73 01 0a 00 00'
b'00 80 73 01 0a 00 00'
b'00 80 73 01 0a 00 00'
b'e8 50 df ad fe 90 be 8a b8 5d b3 57 a5'
b'00 80 73 01 0a 00 00'
b'00 80 73 01 0a 00 00'
b'00 80 73 01 0a 00 00'
b'00 80 73 01 0a 00 00'
b'00 80 73 01 0a 00 6a'
b'00 80 73 01 0a 00 ff'
b'e8 50 df ad fe 90 be 8a b8 5d b3 57 a4'
b'00 80 73 01 0a 00 ff'
b'e8 50 df ad fe 90 be 8a b8 5d b3 57 ab'

I feel like not all the packets are being captured, but I'm more and more convinced that the e8 50 df ad fe 90 be 8a b8 5d b3 57 ** package is simply the target address.

Yeah; the last token is the device_id. Now I just need to figure out how to make such a packet. Getting closer :)
I wonder if it wouldn't be easier simply to try to extract the firmware from one of the bridge devices :D

i'm not able to reconcile the logs I get with my actions; it seems like the logs are incomplete.
Is it correct to say that the nRF logs only show the notifications for these two characteristics updating (as sent from the mesh), and not what the phone actually sent?
I wonder if the addressing is being done via one of the other characteristics provided by the server, there's an 8005 and 8006 showing up for me as well, but those do not support notifications.

I think you're right, the logs do not show what the phone actually sent. I wonder if it's related to your deployment being large now, I don't remember missing any data on my lights. I guess back to wireshark...


formatter script should generate python header

Currently the formatter script only supports headers for languages using // for comments. We need to add support for Python too(i.e. # style comments).

I want to work on this one. As of now, I think the formatter script only checks the staged files that have a .cpp extension. @tcm-marcel correct me if I'm wrong. Should I add code to check for # comments in .py scripts too? Also, what about triple-quoted doc-strings?

I talked with @pervazea about this: We don't need validators or formatters for python code, as our primary language will be C++, and those are already provided by the Python community. I would have suggested just to add the headers manually.
However, if we can adapt the existing code for updating/placing headers to also work with Python files with only small changes, this seems reasonable. But then I would just use the same header (except for changing the comment delimiter).
Btw, the header is not checked from the validator at all, there is just the update function in the validator.

@tcm-marcel The header update function is in the formatter, right? I'm trying to adapt it to .py files with as less code as possible. Should I go ahead and submit a PR?

Also, I think there should be a new requirements.txt file for required Python libraries.

The header update function is in the formatter, right?

Yes, sorry this was a typo.

I'm trying to adapt it to .py files with as less code as possible. Should I go ahead and submit a PR?

Feel free to refactor the code to make the header update function more readable. But try to use the same code for C++ and Python files. (We don't want duplicate code for every language) Then create a PR.

Also, I think there should be a new requirements.txt file for required Python libraries.

We can think about including this to the existing install script. I will check that.


make room for browser extension

move mvn/quarkus project to /starfish-cli and have /starfish-browser folder for browser extension.

need to update workflow github actions.


utils: generalize utility to find find_constraint_name

See https://github.com/airbnb/caravel/pull/531

Coverage decreased (-0.2%) to 81.856% when pulling 54112fa649ecd3a7dddeb125877ee21d1d66b413 on xrmx:generalizefindconstraints into 3ee9a68c09750317f20eedd3968e9f36f6da10a1 on airbnb:master.


[Migration] Generate synonym for resources from external schema

Background
There may be projects that define calculationviews on top of tables from schemas which are not defined in the same project.
Example:
  <DataSource id="someID" type="DATA_BASE_TABLE">
    <viewAttributes allViewAttributes="true"/>
    <columnObject schemaName="external_schema" columnObjectName="EntityTable"/>
  </DataSource>

This datasource is external to the project. Namely, external_schema and the table EntityTable are not defined in the project tree.
Target

Automatically detect if the schema in columnObject is defined in the project.
If it is - continue current working mode
If it is not:
3.1. Change resourceUri to be {SCHEMA_NAME}_{COLUMN_OBJECT_NAME}
3.2. Create a synonym in the container with this name pointing to the table in the external schema

Same functionality must be available for hdbtablefunctions as well
Note: Access to the schema and the objects in it must be explicitly manually granted to the XSK user and is out of scope for XSK automation.
Increased priority as there's a customer for which it's not feasible to manually generate the synonyms.

related to

#390 390

Fixed with https://github.com/SAP/xsk/pull/1718


fix multiline collapse

fixes https://github.com/jpmorganchase/salt-ds/issues/3015

I'm seeing a bug where by default the input has an extra row so when you hit enter it collapses

release-pr

/release-pr

I don't think the tests are fixing what #3015 describes, i.e., passing / controlling rows meaning the rows should always follow the prop?

I went for this approach to avoid making rows a controlled prop, but agree that if that is the case maybe the prop should be called minRows or something that doesn't suggest it can be changed... maybe something to clarify in the docs?

I don't think the tests are fixing what #3015 describes, i.e., passing / controlling rows meaning the rows should always follow the prop?

I went for this approach to avoid making rows a controlled prop, but agree that if that is the case maybe the prop should be called minRows or something that doesn't suggest it can be changed... maybe something to clarify in the docs?

Let's edit the description of rows prop to express what's expected behaviour. Good to cross reference react.dev on the same prop, and test textarea native behaviour. If different, let's point out.


Push with tags (git push --tags)

Hello
It would be neat to be able to push including tags, i.e. git push --tags. It might be interesting to even do it by default on push, but I assume that there is a specific reason it requires an extra argument in Git.
Thanks in advance

This is already a feature. You can work with tags in the "Tags" option of the command palette.

Doh, now that you mention it I noticed that I can select a tag for additional options. I thought showing the list of tags was the end point (or that selecting one of them would check them out).


Fixing docker deployment from travis-ci

I am self-merging this PR now because it needs to be tested directly on master (travis-ci won't run the deployment script on any other branch)

@arschles i'm cool w/ that


FAQ missing important financialisation information

I looked through the FAQ on the website and for the life of me couldn't find a simple definitive page or section telling me exactly concisely clearly and unambiguously what Odysee takes from donations and sponsorships,  nor indeed a clear description of what all these possible options are - and please don't point me to an existing page, as I already read through the entire relevant sections, so even if the information exists, my point still stands that it's not simple or easy to find or understand - so you need to work on those explanations and the layout and organisation of the information, because it was not a good job done, and this is the most important thing for me when deciding to use this service or not ...
 I would nonetheless like to send my regards to the intentions of the business and many other good things you've done or intend to do, and in some respects, it is possible this could in the future fill a gap in my own vision relating to content development distribution and publication - and happy to talk privately on that matter in an audiovisual call if anyone on the project management team wants to talk about it - but for now, I'd just appreciate knowing more precisely and clearly what exactly the deal is ... I thought I saw the mention of Stripe there somewhere, and I know from memory that stripe will take something like 30 cents plus 2.75% of the sale, but I don't remember even seeing those details mentioned in your documentation, nor did I see anything about what odysee takes, nor even really a firm commitment in real numbers as to what is being offered per view, just some vague and unclear overview that really didn't give me any idea at all what it amounts to in real money ... so the point is, why would I bother with the effort if I don't know whether those efforts will just be wasted and I'll regret having wasted time on something that wasn't worth the investment of time and other resources ... IN OTHER WORDS AGAIN: you need to think about your site from MY view (the user) NOT from your own view, because I don't care about what you're getting out of it EXCEPT in so far as it may affect what I get out of it ... you follow?

Did you come across this page? https://help.odysee.tv/payments-chart/
Should have everything there, let us know if something is missing.

Did you come across this page? https://help.odysee.tv/payments-chart/
Should have everything there, let us know if something is missing.

Here's your layout problem then: as a new person goes down the list on the LHS in the menu (see screen capture below):

... as you can see, I first come across a section entitled "Monetisation & Rewards" - and opening that up, I should REASONABLY expect to find ALL information on that topic within that section, and having opened that section one cannot see the link you mention at the very bottom of the menu, and why would I think I need to look there anyway when I am already in the section in which I reasonably expect to find ALL information on the topic because that's the title you gave it ... so I think you really need to put that page into that section OR AT THE VERY LEAST put repeated hyperlinks to it, but I didn't see a single one, and the only way I would find it is if I concluded that this section which I reasonably expect to contain the information actually doesn't, but why would I conclude that, when the title tells me that it should?
do you see what I'm saying? It doesn't make any sense and on a tiny phone screen, the bottom of that menu isn't in view, and I have no reason to look for it in any section other than the one I'm in

The other part of my comment you also didn't reply to, being a better worded and organised description of the ways in which supporters can support you ... I found the wording very vague, and there's no mention of any ability to or differences between the notions of one off donation versus regular ongoing sponsorship - which may very well be a feature of stripe itself and you may think to yourself "this is not our job to describe it to the user", but such an attitude is short sighted, because you're going to get a lot of people who are new to podcasting and not familiar with all the options, like myself, where I've been researching for a while, but I'm still undecided as to how best to achieve what I want to achieve and the way I want to do it (which isn't served entirely by any platform in existence and hence my need to long term develop a greater vision to make it possible), but I do not have understanding of everything that can be done on every platform, and I really need documentation to be of better quality to help me make my decision


0 sequences from selection found

Why I am getting below when I run the preprocessing script?
1323 sequences selected
searching fasta and writing sequences to output directory...
3679 sequences from input fasta processed
0 sequences from selection found

This suggests that your metadata doesn't match the sequences provided. Could also be that the GISAID formatting has changed again. Could you check whether the sequence identifiers in your fasta file are of the form <Virus name>|<Collection date>|<Submission date> as given in the metadata?

Sequences identifies in fasta format looks like below
hCoV-19/Wuhan/WIV04/2019
hCoV-19/Wuhan/Hu-1/2019
hCoV-19/Wuhan/IPBCAMS-WH-02/2019
hCoV-19/Wuhan/WH01/2019
hCoV-19/Finland/1/2020
hCoV-19/Cambodia/0012/2020
hCoV-19/Finland/FIN-25/2020
hCoV-19/Australia/NSW05/2020
hCoV-19/India/MH-1-31/2020
hCoV-19/Netherlands/Loon_op_zand_1363512/2020
hCoV-19/Switzerland/GE-HUG-VD0503/2020
hCoV-19/SouthAfrica/R03006/2020
hCoV-19/Luxembourg/LNS2013896/2020
hCoV-19/Iceland/260/2020
hCoV-19/Iceland/13/2020
hCoV-19/Senegal/082/2020
While metadata looks as below
hCoV-19/Kenya/BUS-453-20/2020
hCoV-19/Indonesia/JB-GS-FKUNPAD-0089/2021
hCoV-19/BosniaandHerzegovina/VFS-UNSA-LMGFI116/2021
hCoV-19/Madagascar/IPM-21269/2020
hCoV-19/Madagascar/IPM-21175/2020
hCoV-19/Chile/CO-USACH-00085/2021
hCoV-19/Nigeria/WACCBIP-GS1763/2021
hCoV-19/Slovakia/32656/2021
hCoV-19/BurkinaFaso/4057/2020
hCoV-19/Slovakia/32665/2021
hCoV-19/USA/UT-UPHL-210701281127/2021
hCoV-19/Algeria/G35155-8850/2020
hCoV-19/Ghana/WACCBIP-GS1745/2021
hCoV-19/Estonia/Cov7568/2020
hCoV-19/Kenya/C54794/2020
hCoV-19/Nigeria/OG007-CV22/2020

The complete metadata file looks as below;

Sure...There is quite some changes which affecting the pipeline. could please have a look at it. I am using the latest script in pipeline folder

Ok I see the problem, the sequence identifiers are again formatted differently. It's an easy fix, I'll try to do it tomorrow.

Did get a moment to fix it?
Many thanks

Just made some changes, could you pull the latest commit and give it a try?

I just downloaded the most recent GISAID data and the formatting hasn't changed. It seems the data you have shown above is actually older, it corresponds to the format I encountered ~9 months ago. So you could try the files in the manuscript folder for processing your data. However, I strongly recommend you to download the latest version of the full GISAID database and work with the scripts in pipeline.

The N-Content line also affects select_sample script

Yes, it uses this information. It should be in the metadata.

Could you please download hcov_africa.fasta and hcov_africa.tsv and try running on the scripts without changing anything? That is what I am using and getting errors.

There is data in the manuscript folder.. What I have is from GISAID and I think it latest since I downloaded it last week. I had narrow down to specific regions since I wanted just a few data to test the pipeline with my data first

I  downloaded from region-specific Auspice source files

You see the metadata heading for the new files in GISAID is slightly different from what you have in the script. I had done some editing in although to sort the conflicts. However, I can't see the N_Content column in the metadata file

Ah so what you're using is not actually the full GISAID data, also not for Africa. These are Auspice files which are used for visualisation with Nextstrain (https://docs.nextstrain.org/projects/auspice/en/stable/) and they only have very few sequences. For building a good reference set you need the full GISAID database [GISAID -> EpiCoV -> Downloads -> Download packages -> FASTA (for the sequences) and metadata (for the metadata)]

Weird enough I can't see the download packages tab .   GISAID -> EpiCoV ->
Downloads -> The download tab takes me to below.  I can not see the option
download packages then FASTA (for the sequences) and metadata (for the
metadata)].
After downloads, it shows a tab for Alignment and proteins, submission and
variant stats and finally genomic epidemiology tab. I have share a screen
snap to your email
Vivien  Chebii, Ph.D.
Bioinformatics Consultant,
Nairobi, Kenya.
Email: @.***
Mobile: +254 722 712 248
Skype: Vivienne.chichi2
Linkedin: www.linkedin.com/in/viviennechebii/
On Tue, Nov 30, 2021 at 12:13 PM jbaaijens @.***> wrote:

Ah so what you're using is not actually the full GISAID data, also not for
Africa. These are Auspice files which are used for visualisation with
Nextstrain (https://docs.nextstrain.org/projects/auspice/en/stable/) and
they only have very few sequences. For building a good reference set you
need the full GISAID database [GISAID -> EpiCoV -> Downloads -> Download
packages -> FASTA (for the sequences) and metadata (for the metadata)]
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/baymlab/wastewater_analysis/issues/8#issuecomment-982433693,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAZTQ2U3INQDXRZ5DYHCEOLUOSITTANCNFSM5I27YN2Q
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

If it helps, I can build an Africa-specific reference set and share the sequences/sequence identifiers.

I will appreciate it if I can get this.

I just downloaded the most recent GISAID data and the formatting hasn't changed. It seems the data you have shown above is actually older, it corresponds to the format I encountered ~9 months ago. So you could try the files in the manuscript folder for processing your data. However, I strongly recommend you to download the latest version of the full GISAID database and work with the scripts in pipeline.

I have tried downloading few sequences around 100 per lineage, but I am getting 0 sequences found from selection. Could please help out on this.

Could you again post what your sequence identifiers look like in the fasta file?

If it helps, I can build an Africa-specific reference set and share the sequences/sequence identifiers.

I will appreciate it if I can get this.

I will build it. Can you send me an email at j.a.baaijens[at]tudelft.nl?

If it helps, I can build an Africa-specific reference set and share the sequences/sequence identifiers.

I will appreciate it if I can get this.

I will build it. Can you send me an email at j.a.baaijens[at]tudelft.nl?

I have sent you an email. Please have a look at it

Could you again post what your sequence identifiers look like in the fasta file?

hCoV-19/Reunion/HCL021109894801/2021|EPI_ISL_2676670|2021-06-08

I am facing the exact same issue. I couldn't get the desired details from GISAID, so I prepared the .tsv using details and accession IDs plus Fasta for those sequences. It gave me the above-mentioned error. Now, I am trying to use fasta and tsv for region Asia and country India from GISAID download section. Will it help me to run the code if I rearrange the .tsv  as given in the example?

Unfortunately the GISAID metadata headers have changed over time, so yes, it should be resolved by renaming columns in the metadata. You could also try VLQ-nf, a nextflow implementation of our pipeline: https://github.com/rki-mf1/vlq-nf


How to upgrade .NET6 image to .NET7

There are many requests to upgrade the official container to .NET7; examples: https://github.com/microsoft/playwright-dotnet/issues/2466, https://github.com/microsoft/playwright-dotnet/issues/2544, https://github.com/microsoft/playwright-dotnet/issues/2553, https://github.com/microsoft/playwright-dotnet/issues/2655, https://github.com/microsoft/playwright-dotnet/issues/2403, https://github.com/microsoft/playwright-dotnet/issues/1668. For reasons I don't understand, it's been said that only .NET6 (LTS) is supported and that we must create our own image. (That isn't in line with how it's done for all other MS repos, but ok.)
The advice given here is to upgrade the official .NET6 image like this:
curl -sSL https://dot.net/v1/dotnet-install.sh | bash /dev/stdin --runtime dotnet --version 7.0.0

However that doesn't work:
$ docker run -it --rm mcr.microsoft.com/playwright/dotnet:v1.37.1-jammy
$ dotnet --version
6.0.413

$ curl -sSL https://dot.net/v1/dotnet-install.sh | bash /dev/stdin --runtime dotnet --version 7.0.0
# ...installation

$ dotnet --version
6.0.413

Playwright's docker experience is extremely complicated - please provide guidance how to upgrade to .NET7?
Thanks!

Turns out you need to pass a custom installation directly, otherwise its not working, also depending on your use-case you might want the SDK, it would then look like this:
curl -sSL https://dot.net/v1/dotnet-install.sh | bash /dev/stdin --version 7.0.401 --install-dir /usr/share/dotnet
dotnet --list-runtimes
dotnet --list-sdks

.NET 8 will be LTS soon in November, then things get changed. Hope that helps!

As per the docs, Linux is not supported by the .NET uninstall tool.

The tool supports Windows and macOS. Linux is currently not supported.

Since a .NET SDK and runtimes are just folders on Linux, you can uninstall like that if I understand it correctly, worked for me:
rm -rf /usr/share/dotnet/shared/Microsoft.AspNetCore.App/6*
rm -rf /usr/share/dotnet/shared/Microsoft.NETCore.App/6*
rm -rf /usr/share/dotnet/sdk/6*

This should release around 442MB for me with linux/arm64.


Your Sense client secret is public, is that okay?

I'm not familiar with Sense's API, but I noticed your client secret in the codebase; is that okay to have public?

Hi Ariel, these are the credentials distributed with the application itself
and have been extracted in order to interrogate the API. Ideally these
would be issued per consumer but at present Sense don't have a developer
programme.
On Tue, 13 Jun 2017, 15:27 Ariel Kirkwood<EMAIL_ADDRESS>wrote:

I'm not familiar with Sense's API, but I noticed your client secret in the
codebase; is that okay to have public?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/fredkelly/sense-client/issues/1, or mute the thread
https://github.com/notifications/unsubscribe-auth/AAT2yjO4AD-4MLdvJZ7OwIkeOj6ZgHTLks5sDpw_gaJpZM4N4kuw
.


Add extra registration details (first name, last name)

It's required to add ability to add user's name during the signup process and/or to change them later.

See PR #27.

It's fully implemented in the issue #38 -- now the address and name displayed in the registration form.


Re-Open#542: Unable to connect from Kubuntu 18.04

i'm hereby reopening #542 as kubuntu is a major distro and kde a major desktop environment.
as the kde bugticket shows this also applies to archlinux (and maybe other kde based distros).
so, if pivpn enables "secure settings" by default and settings cannot be modified during installation appropriately - there should be at least a warning that you cannot use pivpn .ovpn files with kde network manager.
the problem exists for nearly a year and it is NOT fixed (as you cannot select non tls-crypt for pivpn in install script)
so, it's at least a documentation bug.
https://bugs.kde.org/show_bug.cgi?id=395596
https://github.com/pivpn/pivpn/issues/542

major annoyance!

Please fix!

What's your suggestion for a fix here @devZer0 ?

It is not the fault of pivpn. I have the same problem on OpenSUSE KDE5 and I have to import the .ovpn file using command line (not the plasma applet). Actually the command line is very simple:
sudo nmcli connection import type openvpn file your_vpn.ovpn
where your_vpn.ovpn is the .ovpn file generated by pivpn. Maybe pivpn should display a warning message after installation.

not pivpn related. tagged as information.
resolving.


docs: add docs for radio hooks

Closes #406
📝 Description
This PR adds two new docs pages for the useRadio and useRadioGroup hooks. It also provides exampls
💣 Is this a breaking change (Yes/No):
No
📝 Additional Information
This PR depends on the release of the newly introduced types for the state returned by the useRadio hook

@nikolovlazar This is ready for review :) Should be merged after main release.

@noobinthisgame lmk when it's ready to be reviewed.

@nikolovlazar it is :)


When does packet callback get called?

More of a question than an issue. When does callback get called and whats the expected output payload uint8 pointer in the callback function?

It gets called here: (as canCallback)
https://github.com/ganehag/cantt/blob/master/src/cantt.cpp#L290
and here:
https://github.com/ganehag/cantt/blob/master/src/cantt.cpp#L344
The uint8_t *payload is whatever you want it to be. That's why there is a payload_len.

I came here to answer and close this myself, thanks heaps @ganehag!


Remove Tatiana from mailmap

She has left GDS.

@barrucadu we're not removing Tatiana from the git repository history, so I think the mailmap entries are still useful?

That's a good point.  I'll revert this.


Time Machine cause black screen

Describe the bug
I have two displays, the "big" one has 3K resolution via TB3, the "small" one has 2K resolution via HDMI. When I open Time Machine in Launchpad, the "big" display shows like:

A black square is on the top left corner. I tried many different resolutions and found that the black square always has same size as the resolution of "small" display.
Configuration

HaC Mini version: 2.4
OSX version: 10.15.1
NUC model: NUC8i7HNK
Boot SSD model and protocol: Samsung 970 Pro 512GB NVME
Second SSD model and protocol: Samsung 970 Pro 512GB NVME
First DIMM model: Samsung DDR4-2666 16GB
Second DIMM model: Samsung DDR4-2666 16GB
Display port(s) used: TB3 / HDMI
Display resolution(s) [e.g: 4K, 5K]: 3K(via TB3) / 2K 120Hz(via HDMI)

Modifications
none
Panic log
none

Does this happen with a real mac?

Does this happen with a real mac?

Well, actually I don't have a real mac with TB3 for testing, maybe it's the problem of my display itself?

I can’t think of anything NUC specific that may be causing this. Could be an AMD driver issue but if that’s the case it’ll be hard to fix since I can’t reproduce your setup/issue.

I can’t think of anything NUC specific that may be causing this. Could be an AMD driver issue but if that’s the case it’ll be hard to fix since I can’t reproduce your setup/issue.

May be I can close this issue and to find a real mac to test?


[Ruby]: Update conformance

🤔 What's changed?
Like one or two of the repos so far (And some more to come), the conformance of the ruby side of things has been let slide for 2+ years.
This PR is the first of 3 major releases planned for tag-expressions, whereby we'll progressively bump aggressively through the legacy ruby versions (Whilst simultaneously updating dev dependencies and according cucumber-ruby testing)
⚡ What's your motivation?
Get things up to date, with as little friction as possible
🏷 What kind of change is this?

:bank: Refactoring/debt/DX (improvement to code design, tooling, documentation etc. without changing behaviour)
:boom: Breaking change (incompatible changes to the API)

♻ Anything particular you want feedback on?
Timings. When is this good to hit? This tends to be a repo with little to no changes coming, so mirroring up with other breaking change releases would be good.
📋 Checklist:

[x] I agree to respect and uphold the Cucumber Community Code of Conduct
[ ] I've changed the behaviour of the code

[ ] I have added/updated tests to cover my changes.

[ ] My change requires a change to the documentation.

[ ] I have updated the documentation accordingly.

[ ] Users should know about my change

[ ] I have added an entry to the "Unreleased" section of the CHANGELOG, linking to this pull request.

This text was originally generated from a template, then edited by hand. You can modify the template here.

@ehuelsmann tagged you for a review purely w.r.t. timings. I know you've landed a few things in recently.
If you have any medium sized things landing it would be good to land these simultaneously and cut a major revision. Happy to be guided by yourself on this. I'll be making a series of PR's here to try progressively update the deps here as we're like 7-8 years behind schedule.

Confirmed with Erik offline this is good to merge. As/when we cut the next version it'll be v6


Publish as a standalone web app

Is your feature request related to a problem? Please describe.
I'd like to be able to host an interactive tutorial on Azure App Service. But right now, I can't, or at least not easily, because I'd need to install the tool on the App Service (is this even possible?).
Describe the solution you'd like
It would be nice to be able to publish the tutorial as a standalone web application that can just be deployed to a web server (IIS, Azure App Service, etc).
Describe alternatives you've considered
N/A

Here's a quick summary of what needs to happen to make this possible: https://github.com/dotnet/try/issues/298#issuecomment-546147042
Related: #382, #561

Any news on this? Its been a year.


Improve Feature comparison of versions section

Expand the feature comparison table to improve clarity of feature differences between Azure Active Directory versions. References https://www.microsoft.com/en-us/security/business/identity-access-management/azure-ad-pricing and https://github.com/AaronDinnage/Licensing

@adrianwells : Thanks for your contribution! The author(s) have been notified to review your proposed change.

All features listed are correct for licenses specified. Looks fine to me. #sign-off

@MicrosoftGuyJFlo: I'm sorry - only the author of this article, @justinha, can sign off on your changes. But we do have an exception process - if you are on the Microsoft content or product team for this product area, you can ask the PR review team to review and merge it by sending mail to the techdocprs alias.


Update README.md to import DatePickerModule (not DatePicker component)

As @dkarchmer said, README differs from the current version. I think it should be updated.

Thank you for merging this! :)


Documentation on bluepy installation with venv and SteamVR usage

Since I had to update my setup with the last versions of Ubuntu, I thought I would add it to the documentation here, as well as some tips for using lh2ctrl with SteamVR.

Hello there, thanks for the patch!
I just changed some wording to make it more streamlined.

I’m not sure “SteamVR binary launch options” is going to be very clear (you are not dealing with the binary, just with a Steam option) but I guess Linux Steam players will know their way.
This made me curious about your setup: you are running this tool from a Raspberry Pi, and using the HMD with a Windows PC?

I’m not sure “SteamVR binary launch options” is going to be very clear (you are not dealing with the binary, just with a Steam option) but I guess Linux Steam players will know their way.

I did take a shortcut and might have cut too much :). What is exactly launching as %command% by launch options and to which object are those launch options attributed? I am not looking for the particular implementation in particular linux distro, but the abstract definition.

This made me curious about your setup: you are running this tool from a Raspberry Pi, and using the HMD with a Windows PC?

Yes. This is how I use it.

What is exactly launching as %command% by launch options and to which object are those launch options attributed?

%command% is the command that Steam uses to launch the app. Any application in your Steam library can have specific launch options (Steam library > right click on an app/game > properties > General > launch options) which allows to modify the way an app is launched. Here, specifically for SteamVR, I’m wrapping the default launch command between turning on&off the lighthouses. Nothing specific to Linux, actually, but AFAIK SteamVR takes care of the lighthouses automatically on Windows.

%command% is the command that Steam uses to launch the app. Any application in your Steam library can have specific launch options (Steam library > right click on an app/game > properties > General > launch options) which allows to modify the way an app is launched. Here, specifically for SteamVR, I’m wrapping the default launch command between turning on&off the lighthouses. Nothing specific to Linux, actually, but AFAIK SteamVR takes care of the lighthouses automatically on Windows.

Then I guess I was not wrong :).
Just FYI, on Windows, SteamVR can start (or stop) the lighthouses automatically, but only when running with "supported" headsets. Which are HTC and Valve headsets mostly. For any exotics, you are out of luck. Plus I prefer to start lighthouses manually before my VR session so I could quit or restart SteamVR without disturbing them.


Fix build on FreeBSD.

Works for me:
tools.yml
- syncthing/syncthing

log
$ godyl
*** ***
godyl running with:
*** ***
platform:
os: freebsd
architecture:
  type: amd64
  version: ""
library: ""
extension: ""
distribution: ""

*** ***
syncthing/syncthing
  version: v1.28.0
  picked download "syncthing-freebsd-amd64-v1.28.0.tar.gz"
  picked file "/tmp/godyl-3465625317/syncthing-freebsd-amd64-v1.28.0/syncthing"
  installed successfully at "/home/yonas/.local/bin/syncthing"

Thank you Mr Bean!


[Feature Request] Prompt choice with images

I am trying to make a feedback dialog. As a current solution we send a keyword from bot to our custom directline webpage. The page intercepts the keyword as shows the form like this
But this approach limits the bot to a single platform and adds a dependency to Directline.
As a second approach I tried to implement the same using an adaptive card. This is when we ran into some of shortcomings.

How do we show images that change when selected? For instance when a user clicks a rating, we would like to update the same image.  Currently the bot can send an action, and we can find out the rating clicked but there was no way to notify the user for same on frontend.
Each image needs to have a Action to implement it. We now have an additional task of handling action clicked on image and on submit button. An updated choiceset API would be optimal for this use case.

[Update] To handle the situation gracefully, I broke the flow into 2 parts. First for getting the rating. Then, handle the comments totally separately.

Thank you for opening an issue against the Bot Framework SDK v3. As part of the Bot Framework v4 release, we’ve moved all v3 work to a new repo located at https://github.com/microsoft/botbuilder-v3. We will continue to support and offer maintenance updates to v3 via this new repo.
From now on, https://github.com/microsoft/botbuilder repo will be used as hub, with pointers to all the different SDK languages, tools and samples repos.
As part of this restructuring, we are closing all tickets in this repo.
For defects or feature requests, please create a new issue in the new Bot Framework v3 repo found here:
https://github.com/microsoft/botbuilder-v3/issues
For Azure Bot Service Channel specific defects or feature requests (e.g. Facebook, Twilio, Teams, Slack, etc.), please create a new issue in the new Bot Framework Channel repo found here:
https://github.com/microsoft/botframework-services/issues
For product behavior, how-to, or general understanding questions, please use Stackoverflow.
https://stackoverflow.com/search?q=bot+framework
Thank you.
The Bot Framework Team


Update ioBroker.oppoplayer to 0.2.3

0.2.3

(volkerrichert) add missing seconds definitions in io-package.json

0.2.2

(volkerrichert) "enable" compact mode

RE-CHECK!

Automated adapter checker
ioBroker.oppoplayer

[ ] :heavy_exclamation_mark: [E149] instanceObject common.type has an invalid value: int
[ ] :heavy_exclamation_mark: [E149] instanceObject common.type has an invalid value: int
[ ] :heavy_exclamation_mark: [E149] instanceObject common.type has an invalid value: int
[ ] :heavy_exclamation_mark: [E149] instanceObject common.type has an invalid value: int
[ ] :heavy_exclamation_mark: [E149] instanceObject common.type has an invalid value: int
[ ] :heavy_exclamation_mark: [E149] instanceObject common.type has an invalid value: int
[ ] :heavy_exclamation_mark: [E149] instanceObject common.type has an invalid value: int
[ ] :heavy_exclamation_mark: [E149] instanceObject common.type has an invalid value: int
[ ] :heavy_exclamation_mark: [E149] instanceObject common.type has an invalid value: int
[ ] :heavy_exclamation_mark: [E149] instanceObject common.type has an invalid value: int
[ ] :heavy_exclamation_mark: [E149] instanceObject common.type has an invalid value: int
[ ] :heavy_exclamation_mark: [E149] instanceObject common.type has an invalid value: int
[ ] :heavy_exclamation_mark: [E149] instanceObject common.type has an invalid value: int
[ ] :heavy_exclamation_mark: [E149] instanceObject common.type has an invalid value: int
[ ] :heavy_exclamation_mark: [E149] instanceObject common.type has an invalid value: int
[ ] :heavy_exclamation_mark: [E149] instanceObject common.type has an invalid value: int
[ ] :heavy_exclamation_mark: [E149] instanceObject common.type has an invalid value: int
[ ] :heavy_exclamation_mark: [E149] instanceObject common.type has an invalid value: int
[ ] :heavy_exclamation_mark: [E149] instanceObject common.type has an invalid value: int
[ ] :heavy_exclamation_mark: [E149] instanceObject common.type has an invalid value: int
[ ] :heavy_exclamation_mark: [E149] instanceObject common.type has an invalid value: int
[ ] :heavy_exclamation_mark: [E149] instanceObject common.type has an invalid value: int
[ ] :heavy_exclamation_mark: [E149] instanceObject common.type has an invalid value: int
[ ] :heavy_exclamation_mark: [E149] instanceObject common.type has an invalid value: int
[ ] :heavy_exclamation_mark: [E149] instanceObject common.type has an invalid value: int
[ ] :heavy_exclamation_mark: [E149] instanceObject common.type has an invalid value: int
[ ] :heavy_exclamation_mark: [E149] instanceObject common.type has an invalid value: int
[ ] :heavy_exclamation_mark: [E149] instanceObject common.type has an invalid value: int
[ ] :heavy_exclamation_mark: [E149] instanceObject common.type has an invalid value: int
[ ] :heavy_exclamation_mark: [E150] No common.connectionType found in io-package.json
[ ] :heavy_exclamation_mark: [E152] No common.dataSource found in io-package.json
[ ] :heavy_exclamation_mark: [E301] Tests on Travis-ci.com are broken. Please fix.
[ ] :heavy_exclamation_mark: [E605] No actual year found in copyright. Please add "Copyright (c) 2018-2021 Volker Richert<EMAIL_ADDRESS>at the end of README.md
[ ] :heavy_exclamation_mark: [E701] No actual year found in LICENSE. Please add "Copyright (c) 2018-2021 Volker Richert<EMAIL_ADDRESS>at the start of LICENSE

ioBroker.tvprogram

[ ] :heavy_exclamation_mark: [E402] Types of adapter in latest repository and in io-package.json are different "misc-data" !== "visualization"
[ ] :heavy_exclamation_mark: [E422] Types of adapter in stable repository and in io-package.json are different "misc-data" !== "visualization"

Add comment "RE-CHECK!" to start check anew

@volkerrichert please check the warnings above. a datatype "int" as used in some of your objects is not existing. Use "number" please.
I would like to decline this PR and ask you to fix that and come back with a new version, ok?

hi Apollo, that's fine.
I'll change int and the other stuff. Where do i find the travis findings?

https://travis-ci.org/github/volkerrichert/ioBroker.oppoplayer ... nodejs 8 testing should be disabled ... add 14 please


Master database and errors

Fixes #28 and #30
Please verify if the fix to database.followCursor() does not break something.

Thanks again for taking the time to help here.
About the database modification, my original thought for the Run method was just to provide a helper to access the response result field easily (all the AQL querying). I thought that everything revolving around administration tasks (or anything where the user would need to access the raw response) would be easier to use directly using the Send method. But now that I think about it, I totally get why it can be confusing and I agree that we could probably fallback to unmarshaling the whole raw response when no result is found. It only adds some inconsistency in the behavior of the Run method depending on the kind of Runnable the user is executing, but I don't think it would be too problematic. The Run method should aim at being a helper and work easily in a straightforward manner in 90% of the cases so it definitely makes sense.
About the error modifications, the reason why I did what I did before was to not offuscate the pkg/errors errors by adding some concrete implementations on the top of it (with the modifications of this MR, a user would not be able to get the stacktrace or the error cause). But again, now that I think about it, I'm not even sure the use of pkg/errors in a library is a good idea and is pertinent. A user should not get the stack of an error from an external library anyway. So we should probably even remove pkg/errors from Arangolite totally.
About the makefile on the other hand, I'm not totally convinced about the value it brings. Does adding the ability to do make test TEST_ARGS=TestIsErrUnique instead of go test -run TestIsErrUnique really worths the addition of a new file?
Really glad to have someone to help me cleanup the V2. To be totally honest, it was supposed to be battle tested in a project that actually never happened, so it stayed in a bit of a "beta" status.

Thanks for the quick responses!
I did suspect that I was trying to use Run() for more than what it was meant for. The confusion comes from few examples or docs explaining when to use Run() or Send().
It's really up to you to decide what the best solution is regarding inconsistencies in the behavior of Run(). Simply explaining when the two functions should be used may be enough?
The modifications to errors.go was to get it working properly, but your latest changes 2c21a436 also pass the tests in errors_test.go, so the changes to errors.go can be discarded if you prefer. The tests are nice though :-)
The benefit of the Makefile is that it makes it easy for newcomers not familiar with GO to run the tests as well as the gofmt check. Making it simple for people to do the right thing is my motto :-)
Feel free include only the modifications you find useful!

The way I see it is that the use of Run() or Send() should not depend on the request but should depend on the level of abstraction the user wants. Run() should work in every case 90% of the time (doing some assumptions to make things simpler) and Send() should be used when the user wants full control over what's happening (in particular unmarshaling and pagination). So I think you're right and falling back to unmarshaling the raw response when no result is present is a very reasonable assumption.
I think I'll keep your errors too, thanks a lot.
I agree with this motto and I don't really see how using a custom makefile makes it more simple for newcomers than using the standard library (even more when it doesn't simplify the commands syntax).

Thanks!


V0.33.0

Clean up release, removed all the deprecated members.

Coverage decreased (-1.1%) to 76.18% when pulling 8664336fd14905e6e22c27657beb12d7beff5094 on v0.33.0 into 6b2998d72fe8118d84df3537d809ef57d7f74b8a on master.


Separate stuff so as not to have a contagious urijs dep

Not only does this fix the build, but our bundle sizes have reduced by 40% since v10.

Which changes did that?

It would take me a while to figure that out specifically...

Is it easy to figure out which dependencies we're not including anymore?


Error in all SQS Queue even if just one queue is not present

Type: Bug
Component:
SQS
Describe the bug
When using many SQS queues, and one of them does not exist, spring shows an error in all queues. And the error is not explicit about the problem.
logger     ->     io.awspring.cloud.sqs.listener.source.AbstractPollingMessageSource
message ->    Error polling for messages in queue product_sent_review
Exception ->
java.util.concurrent.CompletionException: software.amazon.awssdk.core.exception.SdkClientException: Unable to execute HTTP request: event executor terminated
	at software.amazon.awssdk.utils.CompletableFutureUtils.errorAsCompletionException(CompletableFutureUtils.java:65)
	at software.amazon.awssdk.core.internal.http.pipeline.stages.AsyncExecutionFailureExceptionReportingStage.lambda$execute$0(AsyncExecutionFailureExceptionReportingStage.java:51)
	at java.base/java.util.concurrent.CompletableFuture.uniHandle(Unknown Source)
	at java.base/java.util.concurrent.CompletableFuture.uniHandleStage(Unknown Source)
	at java.base/java.util.concurrent.CompletableFuture.handle(Unknown Source)

product_sent_review exists and works properly, but the application expects a queue "producer_to_exclude" that doesn't exists
Sample
Configure 3 sqs queues and 1 of them does not exists. The error will appear.

If a queue doesn't exist and cannot be created, the app won't start, which seems the correct behavior since it won't be able to comply with what it's been configured to do.
Can you share your reasoning for wanting the app to start even though it's configured to listen for a queue that doesn't exist?

My point is not to start the app, is about the logs. The logs show errors in all queues and not only in the queue that doesn't exist which makes it difficult to understand what is happening. The spring should show an error only in the queue with some problem.

Oh, I see.
The problem there is that the AWS SDK Task Executor is being shut down before the container has the chance to stop polling, so not sure if we can really do something about it.
Can you check the logs to see if the original error QueueDoesNotExistException or Error creating queue appears somewhere?
Thanks.

Closing due to lack of feedback.

Soory for being late, I opened this issue in an account that I usually don't see the notifications :/
But answering the last question, the original error doest not appear


Google Maps Icon

https://commons.wikimedia.org/wiki/File:GoogleMaps_logo.svg

Can you please add icon for Google Maps https://commons.wikimedia.org/wiki/File:GoogleMaps_logo.svg

Thank you for raising this issue. Closing for now as Google Maps is not a social network.


Last modification date not showing on most tutorials?

e.g. https://training.galaxyproject.org/training-material/topics/transcriptomics/tutorials/clipseq/tutorial.html

Fixed now


diff command: allow specifying root paths

Output of restic version
v0.9.6-337-g0b21ec44-dirty
What should restic do differently? Which functionality do you think we should add?
Allow specifying a root path for both snapshots in the diff command.
This would allow a user to:

Compare a specific subpath between two snapshots made of different roots (e.g. snapshots of ~ and ~/Pictures)
Compare a subpath that was moved between snapshots
Only compare a subset of two snapshots

PR coming up.
What are you trying to do?
Compare the same data in two snapshots where the root paths differ.

As commented in #2873, I think we should use the syntax suggested in https://github.com/restic/restic/issues/3871 instead.


PopupMenuButton should expose useRootNavigator argument

While creating multi panel UI for wide screens sometimes you need to use several navigators. Root navigator and two nested navigators for each panel.
Currently PopupMenuButton as child of one of the nested navigators will use closest navigator to show popup menu items. This creates behavior different from what is expected. You can have multiple open popup menus when using multi panel UI!
I think people most often expect to see only one open popup on the screen at the same time. They expect that tapping outside of the presented popup menu will close it.  This is how it works now at the case if you have one panel UI, but not in the case when utilizing multi panel UI with nested navigators.
Steps to Reproduce

Execute flutter run on the code sample
Tap on 3 dot icon button in the left AppBar
Tap on 3 dot icon button in the right AppBar

Expected results:
Step2. Left popup appears
Step3. Left popup disappears
Actual results:
Step2. Left popup appears
Step3. Right popup appears, but left not disappears
My observations:
This happens because PopupMenuButton  unconditionally uses closest Navigator from context.
I think that as default it should use root Navigator, but you can optin to use closest if needed.
internally PopupMenuButton uses showButtonMenu method that uses showMenu that have bool useRootNavigator = false argument. But currently this argument not used and it resolves to false.

Code sample

import 'package:flutter/material.dart';

void main() {
  runApp(MaterialApp(
    debugShowCheckedModeBanner: false,
    home: TwoPanelsHome(),
  ));
}

class TwoPanelsHome extends StatelessWidget {
  const TwoPanelsHome({Key? key}) : super(key: key);

  bool hanleOnPopPage(Route<dynamic> route, dynamic result) {
    return route.didPop(result);
  }

  @override
  Widget build(BuildContext context) {
    return Row(
      children: [
        Expanded(
          child: Navigator(
            onPopPage: hanleOnPopPage,
            pages: [
              TestScaffold('left/master1'),
              TestScaffold('left/master2'),
            ].map((e) => MaterialPage<void>(child: e)).toList(),
          ),
        ),
        Expanded(
          child: Navigator(
            onPopPage: hanleOnPopPage,
            pages: [
              TestScaffold('right/details1'),
              TestScaffold('right/details2')
            ].map((e) => MaterialPage<void>(child: e)).toList(),
          ),
        ),
      ],
    );
  }
}

class TestScaffold extends StatelessWidget {
  const TestScaffold(this.name, {Key? key}) : super(key: key);

  final String name;

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text(name),
        actions: [
          PopupMenuButton<String>(
              onSelected: (s) {
                print(s);
              },
              itemBuilder: (context) => [
                    PopupMenuItem<String>(
                      child: Text('one'),
                      value: 'one',
                    ),
                    PopupMenuItem<String>(
                      child: Text('two'),
                      value: 'two',
                    ),
                  ]),
        ],
      ),
      body: Center(child: Text('$name\npress more menu button')),
    );
  }
}

Logs

[✓] Flutter (Channel stable, 2.8.0, on macOS 12.0.1 21A559 darwin-x64, locale en-RU)
    • Flutter version 2.8.0 at /Users/ng/Tools/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision cf44000065 (8 days ago), 2021-12-08 14:06:50 -0800
    • Engine revision 40a99c5951
    • Dart version 2.15.0

https://user-images.githubusercontent.com/2749021/146443147-d0fcf529-12fa-49a7-aab6-1446bf670650.mov

if the community or team agrees with my idea, to optin to useRootNavigator  then it seems to me that I can make a pull request for this issue. At least I will try.
will look like this:
const PopupMenuButton({
    Key? key,
    ...
    this.useRootNavigator = true,
    });


Update plan-cloud-management-gateway.md

added "on-premises" to "...without additional infrastructure." Azure VM Infrastructure (even though it is mostly considered a PaaS service) could be considered additional infrastructure to the CM environment as a whole.
Summarize the change in the pull request title
Describe your change, specifically why you think it's needed.
Fixes #Issue_Number (if necessary)

@sckissel : Thanks for your contribution! The author(s) have been notified to review your proposed change.

#sign-off
Once merged, this should be live with the next daily publishing process. Right now that should be today (Friday, 26 July) around 11:00 Pacific time. No further action needed from you.


能支持文件夹上传吗?

Hi, @daofeng2015
This is already done by https://github.com/K265/rclone/tree/aliyundrive-backend.
Add --tpslimit if you meet 429 error.

Hi, @daofeng2015
This is already done by https://github.com/K265/rclone/tree/aliyundrive-backend.
Add --tpslimit if you meet 429 error.
目前不能指定上传到那个文件夹吗?还有我直接上传文件夹,就只能把里面所有文件都上传到root

Hi, @daofeng2015
This is already done by https://github.com/K265/rclone/tree/aliyundrive-backend.
Add --tpslimit if you meet 429 error.
目前不能指定上传到那个文件夹吗?还有我直接上传文件夹,就只能把里面所有文件都上传到root

assume you have following files to upload:
$ cd backup
$ tree
.
├── a
│   └── a.txt
└── b
    ├── b.txt
    └── c
        └── c.txt

run following command:
$ cd backup
$ rclone copy . ali: -P --tpslimit 10

then rclone will upload all folders and files for you to the root of your aliyun drive.
Change ali: to ali:/somewhere if you want to upload to different folder : )

Hi, @daofeng2015
This is already done by https://github.com/K265/rclone/tree/aliyundrive-backend.
Add --tpslimit if you meet 429 error.
目前不能指定上传到那个文件夹吗?还有我直接上传文件夹,就只能把里面所有文件都上传到root

assume you have following files to upload:
$ cd backup
$ tree
.
├── a
│   └── a.txt
└── b
    ├── b.txt
    └── c
        └── c.txt

run following command:
$ cd backup
$ rclone copy . ali: -P --tpslimit 10

then rclone will upload all folders and files for you to the root of your aliyun drive.
Change ali: to ali:/somewhere if you want to upload to a different folder : )

./rclone --config rclone.conf -P copy 2021-09-11 ali: --tpslimit 10
2021-09-12 19:18:01 ERROR : 夏小芫-2021-09-11-part-001.mp4: corrupted on transfer: sizes differ<PHONE_NUMBER> vs<PHONE_NUMBER>
2021-09-12 19:19:48 ERROR : 夏小芫-2021-09-11-part-002.mp4: corrupted on transfer: sizes differ<PHONE_NUMBER> vs<PHONE_NUMBER>
2021-09-12 19:24:09 ERROR : 夏小芫-2021-09-11-part-003.mp4: corrupted on transfer: sizes differ<PHONE_NUMBER> vs<PHONE_NUMBER>
2021-09-12 19:24:53 ERROR : 夏小芫-2021-09-11-part-000.mp4: corrupted on transfer: sizes differ<PHONE_NUMBER> vs<PHONE_NUMBER>
2021-09-12 19:24:53 ERROR : Attempt 1/3 failed with 4 errors and: corrupted on transfer: sizes differ<PHONE_NUMBER> vs 3222

为什么多文件上传老是在这个地方失败,而且每次重试都是这样

@daofeng2015
Please check your aliyun drive to see if 夏小芫-2021-09-11-part-001.mp4 exists.
If it exists, compare it with your local file.
If files mismatch, try run rclone again with -vvv.
You should see that the remote file is removed before the actual upload.
Also, you may try to reduce the file size to see if it helps.


Remove bogus nulls from generated default values

Also, fix crash in PluginScript destructor.
The bogus values were caused by properties missing both EDITOR and STORAGE usage.

For the record, I tried removing the check for property usage from the default value list, but it did not end very well. That is, it crashed outright, after spamming a whole lot of global_transform related errors.

cc @touilleMan

Thanks!

So all those parameters with null default actually don't have a proper default value, because they're not saved?

@akien-mga Well, more like, they don't have a readily accessible default value, similar to how global_transform doesn't have one.

Please keep in mind that I only proposed to cherry-pick file changes of pluginscript_script.cpp  https://github.com/godotengine/godot/pull/30187/files#diff-1d540adfb9e84ae628d1ad75dc816a00

Ah, I missed that, sorry. The rest of this PR is indeed not relevant for 3.1 as default values documentation was not cherry-picked. I'll reopen your PR then, sorry about that.


When will the 3.0.0 release be released?

I want to use the redis module to define some of my own data structures. I also saw that in the upcoming release, I could use the sendCommand function to send my own commands.

@chenyang8094 There are pending issues like #1576 regarding this. Please refer to those. Thanks!


fix two parse errors

This pull contains two fixes:

names that contain unicode characters, like my old apple tv
fix one case where the cashe flush bit was not removed before determining the class

Also some fixes on failing tests, unrelated to the other changes

Thanks


progress() logic is incorrect

Before I make a PR, I wanted to verify I'm not missing something.  The logic for progress() is seemingly very wrong.  This is the method in question.

The property RxProgress.totalBytesWritten is named for the opposite of what it actually does.  Shouldn't it be something like RxProgress.bytesRemaining?
The condition guarding observer.onCompleted() is wrong and will never be hit. Shouldn't it be: rxProgress.bytesWritten == rxProgress.totalBytesExpectedToWrite or something similar?  I imagine it was meant to be, but it was confused with the other property I mentioned in #1 which is probably misnamed.

This is some sample output I get if I print the elements:

RxProgress(bytesWritten: 0, totalBytesWritten: 0, totalBytesExpectedToWrite: 0)
RxProgress(bytesWritten: 22015, totalBytesWritten: 23879, totalBytesExpectedToWrite: 45894)
RxProgress(bytesWritten: 45894, totalBytesWritten: 0, totalBytesExpectedToWrite: 45894)

According to the current logic, onCompleted will never get executed.  The condition check (rxProgress.totalBytesWritten >= rxProgress.totalBytesExpectedToWrite) would result in the following:

0 >= 0 // not hit because it comes from startWith and not from self.base.downloadProgress
23879 >= 45894 // false
0 >= 45894 // false

I just figured I should ask first, since I figured someone must be using this already and must have noticed.  Although, maybe not, and there are no tests for it, so I can see how this fell through the cracks.
If others agree, I'll write tests and fix it.

Hi @solidcell ,
I think you are right.
I believe it should be something like this:
return Observable.create { observer in
            self.base.downloadProgress { (progress) in
                let rxProgress = RxProgress(bytesWritten: progress.completedUnitCount,
                                            bytesRemaining: progress.totalUnitCount - progress.completedUnitCount,
                                            totalBytes: progress.totalUnitCount)
                observer.onNext(rxProgress)
                if rxProgress.bytesWritten >= rxProgress.totalBytes {
                    observer.onCompleted()
                }
            }
            return Disposables.create()
            }
            // warm up a bit :)
            .startWith(RxProgress(bytesWritten: 0, bytesRemaining: 0, totalBytes: 0))

Hey, guys!  I wonder why do we need RxProgress at all?
Why can't we use Progress from Alamofire?
And since it used to be a NSProgress it has the same API in order to work with progress
E.g if you have multiple progresses you can combine them  into one in order to show progress of multiple tasks

Yea, we could just get rid of it completely.  I'm on board.

Hi guys,
@sergdort  I believe it's being used because Progress is a mutable object which is against element guidelines.
We'll also need to improve our RxAlamofire wrapper to not use Request object, but a immutable wrapper.
I still haven't find time to make those changes :(, but I'm planning to fix those issues since I believe it's causing problems understanding how RxAlamofire works.


i18n(fr): Update guides/integrations-guide/mdx.mdx from #9337

Description (required)
Update guides/integrations-guide/mdx.mdx from #9337

Related issues & labels (optional)

Suggested label: i18n

Lunaria Status Overview
🌕 This pull request will trigger status changes.

Learn more
By default, every PR changing files present in the Lunaria configuration's files property will be considered and trigger status changes accordingly.
You can change this by adding one of the keywords present in the ignoreKeywords property in your Lunaria configuration file in the PR's title (ignoring all files) or by including a tracker directive in the merged commit's description.

Tracked Files

Locale
File
Note

fr
guides/integrations-guide/mdx.mdx
Localization changed, will be marked as complete.

Warnings reference

Icon
Description

🔄
The source for this localization has been updated since the creation of this pull request, make sure all changes in the source have been applied.


[Help]: Can't remove a failed node

Contact Details (optional)
<EMAIL_ADDRESS>How can we help?
This might be a bug, but I'm note sure so I started here,
Here is what I did:

Included a zwave outlet. Works fine with zwavejs node.
Shutdown node-red.
Did a factory reset on the zwave outlet.
Included the zwave outlet into a different zwave primary controller, on another computer.
Restarted node-red.
Saw the zwave outlet come come up as not ready.
Attempted to remove the failed node, but it wanted me to select a node, which I couldn't because it wasn't ready.
I eneded up having to reset the controller. This was okay because I'm just in testing mode right now, but would not be okay if I had all my devices incldued.

I think there needs to be a way to select a node in a not ready state.
Any more details?
If this is specific to some hardware or specific software version, please explain here.
Version
6.5.5
Node-RED Version
2.2.2
What hardware are you using?
Raspberry Pi
Any code to add?
No response

'View in Config Database'
is used to load up the selected device in the zwave-js DB browser.
It opens up a tab in your browser - just make sure you have a selected device (as below)
https://user-images.githubusercontent.com/55892693/155851175-4828d534-9f10-4d7c-b17c-7ec0022d1feb.mov

Nothing happens for this device. Does that just mean that it isn't int he database?

It will be in the database, as its been identified correctly.
refreshing the device list can 'remove' the selected device - but its information is still displayed, and you can't reselect without selecting another device (but you only have 1 by the looks of it)
These improvements to the UI, are in 6.6.0

I closed and reopened by browser and now it works. Thank you.

No worries - sometimes the UI loses its selected node, selecting a different node will usually resolve it.
should be fixed in 6.6.0

I'm looking forward to 6.6.0... I'm just in the initial phase of testing, but so far, I really like what I see, and your responsiveness is more than I could expect.

v6.6.0 will see a new layout on the UI - to be more inline with the Node RED standards.
https://user-images.githubusercontent.com/55892693/155852545-27a769e7-1d2e-4b92-a9fb-a210499a752b.mov

Looks good. I know I'm new to these nodes, but let me know if you need some beta testing. I've got a knack for sniffing out bugs.

I will be pushing out a BETA once I happy with everything.
@crxporter has wanted this UI re-work for sometime -  he has been involved with the project for sometime.
So - yeah the more BETA testers the better!

Now in BETA being tested.


Refactor Payload

The current Payload struct is just a wrapper around data. We could make Payload a protocol so that other types can directly be used as payload if they conform to the protocol.

Moving to a note in the project board.


test(router): add tests

Current coverage is 50.00% (diff: 100%)

Merging #13 into master will increase coverage by 15.62%

@@             master        #13   diff @@
==========================================
  Files             4         16    +12
  Lines            64         76    +12
  Methods           0          0
  Messages          0          0
  Branches          0          0
==========================================
+ Hits             22         38    +16
+ Misses           42         38     -4
  Partials          0          0

Powered by Codecov. Last update 6feec91...a5e99eb


Component-based router API

Default router.
app({
  view: [
    ["/", state =>
Hi.
]
    ["*", state =>
404
],
  ],
  mixins: [Router]
})

Component-based router (proposed syntax).
<Router>
  <Route path="/" route={() =>
Hi.
} />
  <Route path="*" route={() =>
404
} />
</Router>

@SkaterDad @zaceno @lukejacksonn Thoughts? 🤔

How about calling it what is is..
<Router>
  <Route path="/" view={() =>
Hi.
} />
  <Route path="*" view={() =>
404
} />
</Router>

Are you experimenting with this anywhere (CodePen, etc.)?

Is the <Router> to enclose various routes absolutely necessary? I think of <Route path="/my/path" view={someView} /> as syntactic sugar for {actions.router.matches('/my/path') && someView() }.

I think you need it so that h() passes the routes back as vararg children to the router component that returns the array?  That is what I was figuring at least.

@andyrj, As I understand the concept of "component based router", it's not just meant as a more verbose way of writing an array (that wouldn't be worth much).
I believe idea is to be able to dynamically include/swap components in a view, based on routes. (as opposed to the array-method which only allows you to switch the top level view based on routes)

Wasn't saying you had to simply pass back the array, didn't state that very clear after reading it again.  But the router component would get the routes as children and could then match and render the match or whatever else you want it to do.
Without a wrapper component how do you know the order they should be matched?  Or if there were two matches and one was more specific which would you render?  I think you run into non-deterministic issues if routes can just be placed wherever and individually evaluate path.
I am going to keep outta this one, as I don't plan on using this. 🤐

Shouldn't have said return, sorry for confusion there.  I understand what you mean though that would be useless if that is all it was doing.

I understand my misunderstanding now I think. I was thinking of a more explicit type of route matching with no fall-forwards or default et c. Just simple: "if the route looks like this: show this component, if not, don't.
I get it now, that the wrapper is necessary for the sort of sequential matching that the regular router does.
I think a component style is probably more useful for the type of routing I was thinking of - less for the behaviour of the current router.

Is this proposal basically the same as React Router v4's  and  components?
Like @zaceno, I'd like a simple match function that returns true/false and conditionally renders.  The router mixin would mostly just populate the state object and export useful components/utilities.
The one thing I'm unclear on, though, is how we could cleanly handle data fetching on route changes if the routes are all dynamic and not pre-defined.  Anyone tried that yet without using the vdom lifecycle hooks?

From slack talks, I realize that the "normal" type of router, with a matching sequence and wildcard, could work component-style if we have a Switch component. (But the Route component should work as @skaterdad said above when it's not inside a Switch component).
The thing I wonder how it should work, is how we attach dynamic data (params) to the state, when the Route component is evaluated in the view, i.e. in the render. Updating the state there, will not make the params available to the view on this render - only on the next render.


Add balance unmanagement key

Fixes: #108

clboss-balance-unmanage.tar.gz code has not been tested in production, but new unit tests exist and are passing.
@devastgh

Thank you, i'm compiling it now.
What i will do is: add all of my peers into the sqlite database ( Unmanagedmanager_nodes), and set the lnfee,balance tags in Unmanagedmanager_tags for all of them. I haven't been running clboss for a week+ now, and i don't want it to wreak havoc the moment i start it :)

clboss-balance-unmanage.tar.gz code has not been tested in production, but new unit tests exist and are passing.
@devastgh
This adds a new key to clboss-unmanage, balance. To disable rebalancing to and from a specific node, use lightning-cli clboss-unmanage ${NODEID} balance. If you want to also set the LN fees yourself, remember to add it also in the unmanage: lightning-cli clboss-unmanage ${NODEID} balance,lnfee. Same for close and open unmanagement tags.

Unfortunately this build seems to toally ignore the unmanage flags for me, unless i missed something in the database.
clboss-status correctly lists the flags i set, but both lnfee and balance seems to be ignored.

Hmm, strange.  On my own node I see the rebalancers log and they see the unmanaged set.  Hmm.

Hmm, strange. On my own node I see the rebalancers log and they see the unmanaged set. Hmm.

I think i found something that might be an issue, i started with nodedbid 0 but in my old db it started with 1 in Unmanagedmanager_nodes and Unmanagedmanager_tags .
Weird, cause clboss-status did list everything properly. I'll try to start from 1.

Note that the feemodders will still operate and spam the logs, the unmanagement is blocked just before doing setchannelfee (and you can set the fees freely and CLBOSS will not change them).

Note that the feemodders will still operate and spam the logs, the unmanagement is blocked just before doing setchannelfee (and you can set the fees freely and CLBOSS will not change them).

Well, tried again, same result. The moment i restart the node with clboss enabled, it will set the fees to all channels, and after a while starts rebalancing. I stop trying to insert stuff into the database, and rather write a shell script that does lightning-cli clboss-unmanage for all my channels, and run it after the node starts.

Ah, I think what got you is that you are supposed to have separate entries in UnmanagedManager_tags rows for lnfee and balance, but referring to the same nodedbid.  The , separator only works on the RPC, it is not used on the database.  So what happened is that the UnmanagedManager thought there was a tag named literally balance,lnfee, not two separate tags balance and lnfee.

Yep, after checking the db i realized that one tag is one row... Thanks 👍

Ah, I think what got you is that you are supposed to have separate entries in UnmanagedManager_tags rows for lnfee and balance, but referring to the same nodedbid. The , separator only works on the RPC, it is not used on the database. So what happened is that the UnmanagedManager thought there was a tag named literally balance,lnfee, not two separate tags balance and lnfee.


NotImplementedError: Unsloth: unsloth/gemma-2-9b-bnb-4bit not supported yet!

model, tokenizer = FastLanguageModel.from_pretrained(
model_name = "unsloth/gemma-2-9b-bnb-4bit",
max_seq_length = max_seq_length,
dtype = None,
load_in_4bit = True)
I noticed models are exists on huggingface)

Re-installing unsloth in conda worked for me!
pip install "unsloth[colab-new] @ git+https://github.com/unslothai/unsloth.git"

It didn't work for me

@djannot @xyluo25 @coenvdgrinten Try updating Unsloth via:
pip uninstall unsloth -y
pip install --upgrade --force-reinstall --no-cache-dir git+https://github.com/unslothai/unsloth.git

We also have a Colab notebook for Gemma 2: https://colab.research.google.com/drive/1vIrqH5uYDQwsJ4-OO3DErvuv4pBgVwk4?usp=sharing

@danielhanchen I've tried this already, but it doesn't work unfortunately.
Collecting git+https://github.com/unslothai/unsloth.git
  Cloning https://github.com/unslothai/unsloth.git to /tmp/pip-req-build-q84r99wn
  Running command git clone --filter=blob:none --quiet https://github.com/unslothai/unsloth.git /tmp/pip-req-build-q84r99wn
  Resolved https://github.com/unslothai/unsloth.git to commit 5ab565fb2c811d0b85d68dadd2ac1b32dee05e8b
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Building wheels for collected packages: unsloth
  Building wheel for unsloth (pyproject.toml) ... done
  Created wheel for unsloth: filename=unsloth-2024.7-py3-none-any.whl size=124218 sha256=fd1ea03a8e61ce7a8b12ed0851b27c19a640743f43f9f5f1c7e08e74d79b6205
  Stored in directory: /tmp/pip-ephem-wheel-cache-d4iaw7se/wheels/ed/d4/e9/76fb290ee3df0a5fc21ce5c2c788e29e9607a2353d8342fd0d
Successfully built unsloth
Installing collected packages: unsloth
Successfully installed unsloth-2024.7

@danielhanchen I found the problem. I forgot my program was in a directory where I cloned the unsloth repo, so it was using it instead of the package installed with pip.

Great you solved it! If you have another other issues - feel free to ask!


Adding presentations

Adds presentations for @kapolos, @gsaslis,  @daknob.

hi @gsaslis Microservices.DevStaff.Public.pdf.pdf has a duplicate extension. Can you rename?


Email features for volunteer engagement

For Delaware:

email volunteers upon signup
send volunteers weekly emails with feedback forms

This is an older ticket seemingly tracking the same thing:
https://github.com/usdigitalresponse/neighbor-express/issues/101


There's an issue to this thing,

I'm working on the sonic 1 sprite mod for sonic mania, but when I imported the sonic sprite gifs, it does nothing, just look.

Have you tried to load Data\Animation\Sonic.ani instead of Data\Sprite\Player\Sonic1.gif?

nope, I don't have the animation folder in the mania data folder.

okay never mind, I solved it.

but too bad I can't duplicate the frames.


im not a genius but im gonna guess this will fix issue #19

#19 @codergautam

@maxwoollons can you possibly test this on your phone? thanks

@maxwoollons can you possibly test this on your phone? thanks

I will get to this hopefully this afternoon

@maxwoollons can you possibly test this on your phone? thanks

I will get to this hopefully this afternoon

Any luck?

merging to my dev branch, I will be testing this over the weekend


Login with username and password doesn't work

Logging in with username and password doesn't work. However session id login in does.

Duplicate of #97

Fixed, but new version was not released

Thanks!

@DarkCat09 updating to the latest version with pip doesn't fix this issue. I'll just install it from the source, but just pointing this out.

@pythoncat1, yeah, I'll update it someday...
Anyway, thanks for reporting the bug.


types for enums

Hi,
I wondered if you'd consider (or is it already available?) providing types for the enums so we can use type annotations, for example:
from typing import NewType

VkFormat = NewType('VkFormat', int)
VK_FORMAT_UNDEFINED = VkFormat(0)
VK_FORMAT_R4G4_UNORM_PACK8 = VkFormat(1)
...

def some_func(format: VkFormat, ...)

Yes please! Type annotations would be great 🥳


Release Google.Cloud.Datastore.V1 version 4.9.0

Changes in this release:
New features

Add new types ExplainOptions, ExplainMetrics, PlanSummary, ExecutionStats (commit 6049921)
Add ExplainOptions field to RunQueryRequest (commit 6049921)
Add ExplainMetrics field to RunQueryResponse (commit 6049921)
Add ExplainOptions field to RunAggregationQueryRequest (commit 6049921)
Add ExplainMetrics field to RunAggregationQueryResponse (commit 6049921)

Created release for Google.Cloud.Datastore.V1-4.9.0


Link to new diagram Visio

The updated "Start with Enterprise Scale" diagram looks awesome! Would it be possible to get the Visio file uploaded to GitHub and linked in the .md? I see the PDF but Visio is really helpful as well!
Here is the PDF link for your info.
Thanks in advance!

Thanks for reporting - this issue is under review.  This is a Microsoft Internal DevOps Bug ID AB#285605

We've added this request to our backlog for prioritization. Thanks for the feedback!

Any update on DevOps Bug ID AB#285605  Looking for the Visio of the start with ent scale diagram.


Marketplace content

Issue #, if available:
Description of changes:  All the necessary changes to include MP free trial listing
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

LGTM


Switching between views much slower in version 2 than in version 1

When I go from a view like :blocking to another that has many tasks like :ready, there's a noticeable lag in version 2. Nice feature btw, to measure the elapsed time. For this scenario it printed Exec. time: 386ms. Version 1.3 handles the switch almost instantaneously.
Is there a way to optimize this?

Yep, this is a known weakness in 2.x.
FWIW, I did a lot of optimizing already. That number used to be a lot higher!
I'm open to clean ways to continue to optimize, but first it's important to understand a little more about the architectural differences between 1.x and 2.x: https://github.com/scottkosty/vit/blob/2.x/DEVELOPMENT.md#architecture
From my testing, the biggest bottleneck is sorting the exported tasks in Python. Taskwarrior provides no way to sort on export, and in order to get a lot of the improvements in 2.x, we need to work with the raw task data and not the final output of Taskwarrior (as 1.x did).
That being said, sorting 1K tasks in C is probably noticeably faster than Python. Perhaps there's some kind of C plugin thing that could be done that the Python code could talk to, and that would be built on package install? The thing is, anything like that is a bit out of my current Python chops, and I don't really have time to figure it out.
As a side note, I do find it amusing that I've become so used to the instant gratification of modern processers, that I too would interpret 386ms as a 'noticeable lag' ;)

Sorting my 60 tasks should not take more than 10ms on my i3-7100 laptop with 2.4GHz.
It seems to me that 50% of the time is spent here in my case: https://github.com/scottkosty/vit/blob/a2121f31a4554cf4cf3ddca93bbbcec3309828fc/vit/task_list.py#L239

Part of the problem seems to be the list in https://github.com/scottkosty/vit/blob/a2121f31a4554cf4cf3ddca93bbbcec3309828fc/vit/formatter/depends.py#L6
I have several tasks with dependencies. Every call to the formatter takes about 10ms. The depends variable is of type tasklib.lazy.LazyUUIDTaskSet. If I understand it correctly, every time a tasks is formatted, its dependency tasks will be looked up.
Indeed, a quick benchmark shows the difference (averaged over 10 executions):
ready: 117ms (40 tasks to show)
next:  217ms (the 40 previous tasks + 8 blocked tasks)
Any ideas how to improve this? Might need some changes in robgolding/tasklib?

This is a good catch, I don't use dependencies at all in my workflow, so hadn't ever noticed the performance issue.
VIT might be the wrong layer to address the fundamental issue, perhaps the result of the discussion at https://github.com/robgolding/tasklib/issues/70 can add some kind of functionality to force load LazyUUIDTaskSet? I'm not familiar with the tasklib architecture, but ideally, there would be some kind of caching for LazyUUIDTaskSet so it only had to be lazily loaded once.
Failing that solution, another fairly sensible path would be to pre-load all the blocking tasks, and use that generated list to do dependency lookups. We're almost doing that already: in application.py, there's a refresh_blocking_task_uuids() helper method that gets called for each report refresh. This is currently used to show the blocking task marker as appropriate, and that data is even passed to the instantiated Marker class, which is a subclass of the base Formatter class.
So in theory, the VIT-only fix would be:

Change  refresh_blocking_task_uuids() to load all blocking task data instead of just the uuids
Parse the JSON, then turn the list of tasks into a dict of tasks, keyed on uuid
Pass that dict into the base Formatter class
Adjust the Marker class to use the dict keys to do its work
Use the dict to look up depends data instead of the tasks depends key

The main downside of this approach is that it would introduce some more overhead on all report loads if the user had any blocking tasks, the more blocking tasks the more overhead, due to:

Loading over all the task data per task instead of just the uuid per task
Having to parse the JSON result instead of simply splitting the uuids string
Building the final, usable dict from the parsed JSON array.

However, I bet this downside is pretty minor since:

The data is loading locally
Python JSON parsing is probably pretty optimized
Converting a list to a dict in Python is probably pretty optimized

Finally, there would basically be no downside at all for VIT users (like myself) that don't make use of task dependencies.


[BuildSystem] Produced nodes should always validate producer result

Produced nodes should always validate (depend on) the result of the
node(s) that produce them. For example, if a build manifest changes such
that a previously plain file input node is now a derived file produced
by another rule, we would previously miss that change and never scan the
producer.
This change alters Rule::isResultValid to receive the whole Result object.
ProducedNodeTask::isResultValid uses that to check that its producer
node is marked as a dependency.
rdar://problem/48578317

See individual commit messages for more detailed explanation of the two changes.

@swift-ci please smoke test

I split the second change out from this PR and added a test just for this specific change.

@swift-ci please smoke test

@swift-ci please smoke test

@swift-ci please smoke test

@swift-ci please smoke test

@swift-ci please smoke test

@swift-ci please smoke test

@swift-ci please smoke test linux


[BEAM-4831] Ignore failures during :beam-sdks-go:vet

[BEAM-4831] Ignore failures during :beam-sdks-go:vet to allow ./gradlew check to pass.
Please add a meaningful description for your change here

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

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

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

Lang
SDK
Apex
Dataflow
Flink
Gearpump
Samza
Spark

Go

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

Java

Python

---

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

I merged for now, the JIRA is open and can move this forward.


Support QueueArn attribute

It would be great if each queue could have an associated QueueArn attribute: that would be ElasticMQ behave more like SQS, allowing code run the same way whether using one or the other as a back-end.

To be honest I wasn't aware that this is needed - which calls are broken and in which environment (programming language?)

This is language agnostic.
If you call GetQueueAttribute, there's no value associated with QueueArn in ElasticMQ. If you do the same with SQS, you get a value.
The QueueArn is the unique identifier for the queue: we use this value in logging statement, in monitoring and, even more importantly, when subscribing to SNS.

Ah I see. Yeah this makes sense of course :) Maybe you'd like to try a pull request? Probably would involve changing https://github.com/adamw/elasticmq/blob/master/rest/rest-sqs/src/main/scala/org/elasticmq/rest/sqs/QueueAttributesDirectives.scala, if no other SQS calls are affected.

No change needed to core, right? Just create this attribute on the fly based on queueData.name should do the trick, is that what you have in mind?
And sure, I could try a PR.

Yes, creating this on the fly should be good, core most certainly will be unaffected.

0.8.6 released. Thanks!