Optimizing dependencies in build mode fails with too many pending modules

Describe the bug
The optimizedDepsBuildPlugin can result in a failed build if there are more than Rollup's maxParallelFileOps (default 20) awaiting optimization before the crawl has ended (which actually triggers the optimization). In the log lines below, note the 20 hanging module load operations.
In my case, increasing up the rollupOptions.maxParallelFileOps solved the issue.
Without understanding the details, I wonder if the issue is related to this recent pull request although I didn't use the feature before hand so can't say for certain.
Btw, I'm really bullish on this feature as it resolves a couple issues I was having seeing different behavior between dev and prod builds.
Reproduction
apologies
Steps to reproduce
Configure optimizeDeps.disabled to false and commonjsOptions.include to [] to enable the esbuild based dependency optimization.
Have a handful of top level external dependencies requiring optimization (eg commonjs), and reduce rollupOptions.maxParallelFileOps to a number less than the number of dependencies.
System Info
vite v4.33

Used Package Manager
yarn
Logs
error during build:
Error: Unexpected early exit. This happens when Promises returned by plugins cannot resolve.
[X] Read the docs.
[X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.
[X] Make sure this is a Vite issue and not a framework-specific issue. For example, if it's a Vue SFC related bug, it should likely be reported to vuejs/core instead.
[X] Check that this is a concrete bug. For Q&A open a GitHub Discussion or join our Discord Chat Server.
[X] The provided reproduction is a minimal reproducible example of the bug.

I can confirm in a large project too that https://github.com/vitejs/vite/pull/12851 (released in vite 4.3.0-beta.6) seems to make the rollupOptions.maxParallelFileOps workaround necessary.

I can confirm in a large project too that #12851 (released in vite 4.3.0-beta.6) seems to make the rollupOptions.maxParallelFileOps workaround necessary. (Though the build hangs indefinitely for me without additional logs)

Can you provide a mini-repro, I can't reproduce it :cry:

I'm also facing the same issue. The project was on vite 4.2.2 when vite started producing different hashes and build sizes in consecutive builds. Based on this pr(https://github.com/vitejs/vite/pull/12558), vite was upgraded to 4.4.8. This was when we started getting the error. The current workaround is to set the rollupOptions.maxParallelFileOps to 100(arbitrary).


Adding entities by their friendly names instead of UID ?

It can be quite cumbersome to select from the long list of entities in the pull-down menu, especially if they show up with UID only instead of friendly names (which is the case in the standard statstics cards). In my case, the UIDs for many sensors by the same manufacturer are almost similar and very long.
Is there a way to change the name that the entities are showing up with in the pull-down-menu?

Sounds like a good idea for a feature request !

Sadly the history explorer card has been declared end of life and won't be developed anymore. So I will have to close this issue / FR without resolution. This repository will be archived and set to read-only shortly.
See this post on the HA forum for more information:
https://community.home-assistant.io/t/new-interactive-history-explorer-custom-card/369450/978


New variables not documented here

Whole doc needs an update, many additional variables are now available (i.e. within Primary Artifact variable : Build.Repository.Name)

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

ID: 611642f0-881f-10b9-ae94-3c562001d1f0
Version Independent ID: 41efb94b-4c7a-64a3-b23b-70c8634ae727
Content: Variables in Release Management
Content Source: docs/build-release/concepts/definitions/release/variables.md
Service: unspecified
GitHub Login: @alexhomer1
Microsoft Alias: ahomer

Thank you for your feedback. I have passed on the question to the product team and will update the topic with any additional information they can provide.

I'm adding a section to the topic: "View the current values of all release variables" - In the Logs page of a release summary, choose the Initialize Job step. The log pane includes a list of all the variables and their values for this release. Meantime, we'll review and update the lists of variables.


Allow organizations/repos to create resources/customizations

Currently the DMPTool organizes users, templates, and resources by institution. A future enhancement would be to allow things to be added/organized by organization or repository.
Example use case: a UCLA researcher wants to create a NSF generic template with wording/answers specific to her plan to use the Dryad digital repository. Help text, suggested answers, or otherwise that is Dryad-specific could be made available to the researcher during plan creation. The same set of resources would be available to ANY plan creator for ANY institution.
Potential groups that this might apply to: BCO-DMO, SEAD, DataONE, ...
Related to GitHub issue about Funders creating public customizations. https://github.com/CDLUC3/dmptool/issues/39

DataONE requested this functionality


Explore if we can disaggregate data for transport capacity

@quartm asked:
"was it deemed unattainable to disaggregate data for low capacity (buses) and high capacity (trains, metro, ferries) public transport?"
This is a discussion.
My thoughts on it are that:

This may partially be covered by issue https://github.com/ONSdigital/SDG_11.2.1/issues/123 as this will take into account frequency. i.e. if a bus arrives once a week or once every hour - which is important. Currently this is in our project for version 1.2 https://github.com/ONSdigital/SDG_11.2.1/projects/5 but it can be put into https://github.com/ONSdigital/SDG_11.2.1/projects/1 if this is considered essential. Note: other countries (e.g. Estonia, and Sweden I think) have included transport frequency data into their calculations.
I am quite sure that transport capacity is not part of the calculation under the official methodology but I might have missed something there. Nonetheless, I think it will be an interesting addition, so:

I have created another ticket to develop a feature to consider transport capacity.

@quartm This is a really good catch. I will got back to the data and have a look if we can label stops "high-capacity" or "low-capacity" - then run the distance analysis accordingly. I imagine this will push up the count of those who have access significantly.
With regards to point a. above this would be really difficult to establish. I know there was a method for a very similar analysis suggested quite a while ago by the data science campus, which used Google streetmaps/streetview pictures and machine learning to analyse pictures of the stops. That sounded tricky and very experimental. Also, I just don't think the street view pictures are available like that any more. Obviously it depends on the disability, but things like ramps and lowering step buses are going to be relevant and some of that depends not on the stop but on the facilities on the transport itself.
Again, for point c, I am very unsure how this would be established. We would need to know the criteria (I imagine things like good lighting and just generally being in an area with a lower-incidence of street crime) and get data for those. Again, some of that would be very difficult to get.
With regards to point b. though, this will be solved by #123
It's really useful to look at write-ups about how other countries calculated this indicator.

Estonia
Sweden
Poland
Portugal
Austria
Norway

I have read through Sweden's and Estonia's method and neither seem to have taken disability into account.

Made a branch to implement this: https://github.com/ONSdigital/SDG_11.2.1/tree/transport_capaity_%23176


Pragra Tech Bootcamp

We were using community license in past but feels its better choice

@atinsingh lib/domains/io/pragra: this request has an incorrect file path format, please ensure that you are familiar with     this repository rules located at the bottom of this page and change     your request accordingly. If you don't know how to change request, close it and open a new one.     If you are not able to make the pull request according the instructions, please send us an email to<EMAIL_ADDRESS>Please mention this request URL in the message.

@atinsingh Regrettably, I have to close the request without merging, because this organization is a training center, not a college, nor a university. Please ensure that you are familiar with this repository rules located at the bottom of this page.
Please apply for an appropriate licensing option (which may also be free) at https://www.jetbrains.com/community/education/#courses.
Thank you for your understanding!


having issues with connecting karapace (no docker ) to kafla with SSL

I installed karapace without docker using instructions from here.
Here is my config.
{
    "access_logs_debug": false,

    "advertised_hostname": "redacted.server.com",

    "bootstrap_uri": "redacted.server.com:#####",

    "rest_authorization": false,

    "client_id": "sr-1",

    "compatibility": "FULL",

    "group_id": "CN=redacted,OU=IT,O=myorg.,L=myCity,ST=mystate,C=US",

    "host": "redacted.server.com",

    "log_level": "DEBUG",

    "port": 8081,

    "registry_ca": null,

    "replication_factor": 1,

    "security_protocol": "SSL",

    "ssl_cafile": "/opt/kafka/config/ssl/redacted.server.com.pem",

    "ssl_certfile": "/opt/kafka/config/ssl/redacted.server.com.jks",

    "ssl_keyfile": "/opt/kafka/config/ssl/redacted.server.com.jks",

    "ssl_password" : "^%$#@!^&",

    "sasl_mechanism": null,

    "sasl_plain_username": null,

    "sasl_plain_password": null,

    "karapace_rest": true,

    "karapace_registry": true,

    "registry_authfile": null,

    "topic_name": "_schemas",

    "protobuf_runtime_directory": "runtime",

    "session_timeout_ms": 10000
}

when i start my karapace giving above config file i get following error.
AttributeError: 'socket' object has no attribute 'do_handshake'
kafka.producer.kafka MainThread INFO            Closing the Kafka producer with 0 secs timeout.
kafka.producer.kafka MainThread INFO            Proceeding to force close the producer since pending requests could not be completed within timeout 0.
kafka.producer.sender kafka-python-producer-1-network-thread    ERROR           Uncaught error in kafka producer I/O thread
Traceback (most recent call last):
  File "/opt/karapace/raj/karapace/requirements/venv/lib/python3.8/site-packages/kafka/producer/sender.py", line 60, in run
    self.run_once()
  File "/opt/karapace/raj/karapace/requirements/venv/lib/python3.8/site-packages/kafka/producer/sender.py", line 160, in run_once
    self._client.poll(timeout_ms=poll_timeout_ms)
  File "/opt/karapace/raj/karapace/requirements/venv/lib/python3.8/site-packages/kafka/client_async.py", line 592, in poll
    self._maybe_connect(node_id)
  File "/opt/karapace/raj/karapace/requirements/venv/lib/python3.8/site-packages/kafka/client_async.py", line 402, in _maybe_connect
    conn.connect()
  File "/opt/karapace/raj/karapace/requirements/venv/lib/python3.8/site-packages/kafka/conn.py", line 440, in connect
    if self._try_handshake():
  File "/opt/karapace/raj/karapace/requirements/venv/lib/python3.8/site-packages/kafka/conn.py", line 519, in _try_handshake
    self._sock.do_handshake()
AttributeError: 'socket' object has no attribute 'do_handshake'
kafka.conn           Thread-1 DEBUG     <BrokerConnection node_id=bootstrap-0 host=redacted.server.com:####### <disconnected> [unspecified None]>: creating new socket
kafka.producer.sender kafka-python-producer-1-network-thread    DEBUG           Beginning shutdown of Kafka producer I/O thread, sending remaining records.
kafka.producer.kafka MainThread DEBUG           The Kafka producer has closed.

Any suggestions on what am i missing  ?

i resolved the issue.  I needed ,pem and .key file instead of jks


Add Amazon Music Podcast

Added Amazon Music Podcast

Thanks so much, Ben. This was done in this commit - I'm grateful to you for the potential merge, though.


Text missing on readme

Hi!
The readme says:

You can click the line ending in the status-bar to open a modal with the line ending options. Selecting a different line ending will change each line of the

"Of the" what? I guess there's something missing.

Was fixed.


Bug: resource attributes not initialized after adding a new one in the resource group

Describe the bug
Resource attributes are not initialized after adding a new one in group
To Reproduce
Steps to reproduce the behavior:

Go to Resource groups page
Click on edit group
Click on add attribute
Choose name then add
Go back in Resource groups pagey
Click on resources in lower right corner of group card
New resource doesn't displayed because is never been initialized (NULL)

Expected behavior
Resources must be initialized when they are added
Screenshots

GIT commit sha

b40301bc7a7300e346165243f98cbf05b796e4b9

Done an merged in sub-dev


feat(repository): Use cosmos patch operations

List of Changes

Use cosmos patch operations:

partial update for end-date-time upload
CosmosPatchOperations for add response entry and increment current processed item

Motivation and Context

Enable functions concurrency

How Has This Been Tested?

Screenshots (if appropriate):
Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)

Checklist:

[x] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.

included in another PR


Where is the Scheduler Data??

I just cloned the repository, but i cant seem to locate where the data displayed in the schedules are stored, i looked through the files and i cant seem to find it, so i dont know i can add my own data into the schedule.
Another question, is it possible to have a parent resource and a child resource??

Hi,
data is generated in mock/appMock.ts. We don't store a fix amount of data, but generate it on fly in local development.


Hide ESP SSID

Dear MR martin,
Just wanted to say thanks for the time and effort you have invested in writing this code and the documentation which goes with it!!!
Everything is crystal clear even for a newbie like me and although i failed to install it using the predefined bin i have followed your remarks for the ESP01 issue and using the other bins which worked just fine (i am not using ESP01 but ESP12E with a 512KB flash memory but i guess this is reason for failure).
I also wanted to ask if it possible to hide the ESP SSID from the outside world as a basic security measure as i am extending my network coverage using your wonderful work i do not want people to scan my network and try to hack it.
Thanks again and god bless you!

Actually, this was quite easy to add - find it in the latest version ("set ssid_hidden 1"). Thank you for the idea!

Thanks buddy,
will try to test it today and let you know if i have another ideas you might want to consider :)

Well, i think for the command, this should be better: set **ap_**ssid_hidden


Add ListStudentCommand ListTutorCommand and ListTuitionClassCommand

Ui: Add StudentPanel, StudentCard, TutorPanel, TutorCard, TuitionClassPanel,
TuitionClassCard.
Model: getter and setter for filteredStudents, filteredTutors and
filteredTuitionClass.
Model: add LIST_TYPE and its setter and getter to indicate the current
list.
Logic: add necessary methods to implement getter methods of Model

For the list commands I feel that listT, listS and listC abit messy, maybe it's better if there's a space or underscore in it? Like list_S or list T


9.3.0 HDMI In 60Hz not working

After upgrading firmware to 9.3.0 hdmi input on 60Hz doesn't work. Screen turning on and off randomly or no video at all.
How to reproduce:

Connect gogles to your PC/Laptop
Set resolution to 1080p or 720p
Change frequency in the screen settings section (tested on Windows 11 with integrated Intel graphics card) from 50Hz (set by default) to 60Hz

I believe I used 60Hz before and even if not perfect it worked. Confirmed with one person on hdzero messenger group that problem can be solved by downgrading back to 9.2.0.

HDZERO_GOGGLE-74-191-9.3.0-9cc8535.zip
@lukaszosinski Please test this fw.

@ligenxxxx - still the same.

self_test.txt
self_test.txt From ombi (Discord), it seems that the frame rate recognition of hdmi in is inaccurate.

What does it mean to me? Should I try some workaround or Is it on hdzero firmware side?

Please wait for the fix. I'm solving this problem.

@ligenxxxx - I believe it solves the issue:
Tested the firmware with:
1080p50, 1080p60, 720p50, 720p60, 720p100 - all works.
I also have tried sim on PS5 to confirm and it works with 1080p60 set by PS5 by default.
Great job! Thanks!

I still have the exact same issue on windows 11 with 9.3.1. The screen flickers when using 1080p@60Hz. Works fine with 1080p@50Hz. I downgraded using the above patched version (HDZERO_GOGGLE-74-191-9.3.0-6233610.bin.zip) and that solved the issue.
On a side note, the modes are not correctly recognized by windows 11 and I had to manually create a custom resolution in the nvidia control panel to add 720p@100Hz.

As a follow up: with 9.3.0, I realized HD Zero VRX wasn't working (no image, only OSD from my drones). So I decided to build the firmware from the latest main branch and changed the it66021.c file as follows (since I only care about 60Hz and 100Hz modes for using the goggles with simulators on PC):
    if (hact == 1920 && vact == 1080) {
        ret = HDMIIN_VTMG_1080P60;
    } else if (hact == 1280 && vact == 720) {
        ret = HDMIIN_VTMG_720P100;
    }

That solved the issue. I can use both mode with no issues. I initially tried to revert the change from the "More relaxed FPS detection" commit, but that didn't fix the issues.
FYI: I initially also tried changing the cable and on Mac Os X, and had the same issue.

Final update: After doing a full re-install of my NVidia drivers on my PC, the problem disappeared using the latest firmware...


NIFI-4335: Changed SSL Context Service interfaces to RestrictedS…

…SLContextService for all Listen* processors
Thank you for submitting a contribution to Apache NiFi.
In order to streamline the review of the contribution we ask you
to ensure the following steps have been taken:
For all changes:

[x] Is there a JIRA ticket associated with this PR? Is it referenced
in the commit message?

[x] Does your PR title start with NIFI-XXXX where XXXX is the JIRA number you are trying to resolve? Pay particular attention to the hyphen "-" character.

[x] Has your PR been rebased against the latest commit within the target branch (typically master)?

[x] Is your initial contribution a single, squashed commit?

For code changes:

[x] Have you ensured that the full suite of tests is executed via mvn -Pcontrib-check clean install at the root nifi folder?
[x] Have you written or updated unit tests to verify your changes?
[ ] If adding new dependencies to the code, are these dependencies licensed in a way that is compatible for inclusion under ASF 2.0?
[ ] If applicable, have you updated the LICENSE file, including the main LICENSE file under nifi-assembly?
[ ] If applicable, have you updated the NOTICE file, including the main NOTICE file found under nifi-assembly?
[ ] If adding new Properties, have you added .displayName in addition to .name (programmatic access) for each of the new properties?

For documentation related changes:

[ ] Have you ensured that format looks appropriate for the output in which it is rendered?

Note:
Please ensure that once the PR is submitted, you check travis-ci for build issues and submit an update to your PR as soon as possible.

@m-hogue I made one comment on name changes, other than that I will check this out and verify it after I finish working on a couple other PRs.

Ran contrib-check and all tests pass. Manually verified some of the components in a running environment. +1, merging.


release: Binding Java doesn't have linux and windwos artifacts

https://repo.maven.apache.org/maven2/org/apache/opendal/opendal-java/0.43.0/

cc @tisonkun & @G-XD, would you like to take a look? v0.42.0 seems fine:

The release workflow: https://github.com/apache/incubator-opendal/actions/runs/7046140331/job/19178163773
Seems we didn't upload linux and windows artifacts.

I'm guessing it's related to https://github.com/apache/incubator-opendal/pull/3660


chore(deps): upgrade dev dependencies

Upgrades project dependencies. See details in workflow run.

Automatically created by projen via the "upgrade-dev-dependencies-k8s-27-main" workflow

⚪ Backport skipped
The pull request was not backported as there were no branches to backport to. If this is a mistake, please apply the desired version labels or run the backport tool manually.
Manual backport
To create the backport manually run:
backport --pr 4121

Questions ?
Please refer to the Backport tool documentation


Update framework

This is again a pull request to update the plugin framework. The main change is that the "content_scripts" key is no longer part of manifest.json.
Instead, any script that requires compiling should be added to plugin.config.json under "extraScripts".
This is so that the technique of compiling additional files can be applied to webview scripts or any user script.
As far as I can see, the plugin still results in the same .jpl file.

Thanks @laurent22

Thanks @laurent22


get nan loss when training target model in overlooking style module

get nan loss when training target model in overlooking style module on custom datasets even set learning rate to a very small number

I have the same problem, did you deal with it?

Hi there. I ran this repo long time ago for my own research. Tou may need to check bbox coordinates as it may be out of bounds after +1 or -1. I cannot clearly remember where to modify.
Furthermore, you may need to downgrade to Python 2.7.12 PyTorch 1.0.0 torchvision 0.2.2 as stated in readme. This is deprecated even years ago but I clearly remember that I can't reproduce the results under much higher python and torch version. Good luck to you.


Only POINT records load from OSM files, not line strings or anything else

$ wget https://download.geofabrik.de/australia-oceania/australia-latest.osm.pbf

SELECT ST_GEOMETRYTYPE(wkb_geometry) geom_type,
       COUNT(*)
FROM ST_READ('australia-latest.osm.pbf')
GROUP BY 1
ORDER BY 2 DESC;

ERROR 1: Too many features have accumulated in lines layer. Use the OGR_INTERLEAVED_READING=YES configuration option, or the INTERLEAVED_READING=YES open option, or the GDALDataset::GetNextFeature() / GDALDatasetGetNextFeature() API.

┌─────────────────┬──────────────┐
│    geom_type    │ count_star() │
│ "geometry_type" │    int64     │
├─────────────────┼──────────────┤
│ POINT           │      2651841 │
└─────────────────┴──────────────┘

PostGIS is showing there are tons of line strings in the above file.
$ createdb osm_aus
$ psql osm_aus

create extension postgis;

$ osm2pgsql -d osm_aus australia-latest.osm.pbf
$ psql osm_aus

select st_geometrytype(way), count(*) from planet_osm_roads group by 1 order by 2 desc;

 st_geometrytype | count
-----------------+--------
 ST_LineString   | 339859

DuckDB loaded 2,651,841 records but PostGIS loaded in millions more records. This might be down to something wrong with GDAL. My comparison is using osm2pgsql instead.
select count(*) from planet_osm_line;    # 3,159,604
select count(*) from planet_osm_point;   # 2,529,424
select count(*) from planet_osm_polygon; # 3,682,140
select count(*) from planet_osm_roads;   #   339,859

I tried passing OGR_INTERLEAVED_READING=YES to see if that alone fixes it but no luck. I'll read through the GDAL docs for OSM in the morning and see if I can find an answer in there.
SELECT ST_GEOMETRYTYPE(wkb_geometry) geom_type,
       COUNT(*)
FROM ST_READ('australia-latest.osm.pbf',
             open_options=['OGR_INTERLEAVED_READING=YES'])
GROUP BY 1
ORDER BY 2 DESC;

Warning 6: driver OSM does not support open option OGR_INTERLEAVED_READING
ERROR 1: Too many features have accumulated in lines layer. Use the OGR_INTERLEAVED_READING=YES configuration option, or the INTERLEAVED_READING=YES open option, or the GDALDataset::GetNextFeature() / GDALDatasetGetNextFeature() API.

┌─────────────────┬──────────────┐
│    geom_type    │ count_star() │
│ "geometry_type" │    int64     │
├─────────────────┼──────────────┤
│ POINT           │      2651841 │
└─────────────────┴──────────────┘

I don't think OGR_INTERLEAVED_READING is an open option but a config option, you should be able to set it as an environment variable.

No joy.
$ OGR_INTERLEAVED_READING=YES /Volumes/Seagate/duckdb_spatial/build/debug/duckdb -unsigned aus1.duckdb

SELECT ST_GEOMETRYTYPE(wkb_geometry) geom_type,
       COUNT(*)
FROM ST_READ('australia-latest.osm.pbf')
GROUP BY 1
ORDER BY 2 DESC;

┌─────────────────┬──────────────┐
│    geom_type    │ count_star() │
│ "geometry_type" │    int64     │
├─────────────────┼──────────────┤
│ POINT           │      2651841 │
└─────────────────┴──────────────┘

Thinking about this some more, since this only affects the OSM driver, and most other drivers are entirely configurable through open options, this is probably an option we should just enable by default. Even ogr2ogr seem to do so

In the GIS world, there really is no other free data source as rich as OSM. It's used so often that I'd almost put it ahead of any other format in terms of priority of usefulness.

Alright, so sorry for the confusion, this works for me: SELECT * FROM ST_read('sweden.osm.pbf', open_options = ['INTERLEAVED_READING=YES']);

The errors and warnings are gone but I still can only see points.
SELECT ST_GEOMETRYTYPE(wkb_geometry) geom_type,
       COUNT(*)
FROM ST_READ('australia-latest.osm.pbf',
             open_options=['INTERLEAVED_READING=YES'])
GROUP BY 1
ORDER BY 2 DESC;

┌─────────────────┬──────────────┐
│    geom_type    │ count_star() │
│ "geometry_type" │    int64     │
├─────────────────┼──────────────┤
│ POINT           │      2651841 │
└─────────────────┴──────────────┘

The driver docs explains that you need to provide a osmconfig.ini file that specifies what tags and relations to convert into geometries. As it is now, you're only getting nodes (points). Since we bundle GDAL, there is no "data" folder, but you can provide a file path as a CONFIG_FILE=filename open option.

$ wget https://raw.githubusercontent.com/OSGeo/gdal/master/data/osmconf.ini

This was run on the master branch v0.7.1 b00b93f0b1:
SELECT ST_GEOMETRYTYPE(wkb_geometry) geom_type,
       COUNT(*)
FROM ST_READ('australia-latest.osm.pbf',
             open_options=['INTERLEAVED_READING=YES',
                           'CONFIG_FILE=osmconf.ini'])
GROUP BY 1
ORDER BY 2 DESC;

┌─────────────────┬──────────────┐
│    geom_type    │ count_star() │
│ "geometry_type" │    int64     │
├─────────────────┼──────────────┤
│ POINT           │      2651841 │
└─────────────────┴──────────────┘

That config file looks like it would include what I need. It might not get picked up or need to be an environment variable. I'll take a look at it later this evening and see what I can figure out.

Ok, I can confirm that this is an issue in our code. GDAL will put every category on a separate layer, which we don't allow users to specify (we always just return the first layer). But even when fixing this it still doesn't work together with INTERLEAVED_READING=YES because the gdal driver requires you to go through the entire dataset sequentially, we can't just pick the layer we're interested in.
There's two ways to solve this:

We add an option to scan through all layers even for those we don't care about. This would have to be done in the binding phase since we need the schema of the final layer, which is slow and will block the rest of the database.
We always read all layers and merge their schema, unless told otherwise. This is harder since we need to rename columns if they can't be merged, but is a lot cleaner.

This should be fixed on master now. To read e.g. lines you need to do:
FROM st_read('sweden.osm.pbf', open_options=['INTERLEAVED_READING=YES'], layer='lines', sequential_layer_scan=true);


Remove tarballs from repository

Description
This repository currently contains tarballs of the main software dependencies and a pre-compiled GUI. Tarballs are binary code that cannot be interpreted by Git. This leads to a bloat in repository size, especially when multiple versions of the tarballs are committed. In my perception, including the tarballs is not necessary: The dependencies can be installed through usual package managers (see #5), or downloaded from their respective repositories or websites.
The GUI, on the other hand, is pre-compiled for Windows and cannot be used for other platforms. This goes against the idea of a repository containing platform-independent source code. While I very much like the idea of ready-to-use binaries, I recommend uploading the GUI package somewhere else, e.g. directly to https://zenodo.org/ or simply to a Google Drive.
Proposal

Remove tarballs of dependency packages, updating installation instructions accordingly (in line with #5).
Remove GUI package tarball. Upload it to a suitable different repository, and provide a link in the README.md.

Related issues

Update installation instructions: #5
openjournals/joss-reviews#3885

I have removed the tar balls as you suggested.

Thank you! Sourceforge is a great place to store the GUI 👍


This document is hard to find - not available in navigation

Please link this document to this article  https://docs.microsoft.com/en-us/microsoft-365/compliance/encryption?view=o365-worldwide and this article https://docs.microsoft.com/en-us/microsoft-365/compliance/encryption?view=o365-worldwide as well as put it on the navigation in the encryption section.
[Enter feedback here]

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

ID: 7b0b9911-441e-68b7-e0dd-472f8e66b0ac
Version Independent ID: 3760032b-5f82-b058-471f-97b4387d7bcc
Content: Encryption Risks and Protections - Microsoft 365 Compliance
Content Source: microsoft-365/compliance/office-365-encryption-risks-and-protections.md
Service: o365-seccomp
GitHub Login: @KCCross
Microsoft Alias: krowley

@Larryngolog Thank you for the feedback. We have added Encryption Risks and protections to the Related topics on the Encryption document via PR#https://github.com/MicrosoftDocs/microsoft-365-docs/pull/3242. I'll also check with the author to see if this can be added to the navigation in the encryption section.
Thanks
Sri

@msbemba Thank you very much for the contribution and updating the documentation with PR. @Larryngolog Hope this update is helpful for you. Thanks for taking out some time to open the issue. Appreciate and encourage you to do the same in future also.

Thanks!


Automatically generate Engine API documentation

I have replaced the Engine API docs with a version that is automatically generated from a Swagger definition, using ReDoc. It looks a bit like this:

I have also reorganised the menu for the Engine API to make it simpler and clearer:

Before, it was under "reference", even though some of it wasn't reference material, and it also seemed quite hidden that deep in the menu tree.
I've done a few other things, too:

Tidied up some URLs (removed superfluous words, s/_/-/, etc)
Moved the accounts API documentation the Docker Hub section. It makes more sense here than the Engine reference, I think – the Hub serves the API, the Engine consumes it.
Rename Remote API to Engine API. See https://github.com/docker/docker/issues/28319 for details.

Known issues

ReDoc is a client-side app that takes a bit of time to load. The author is working on a fix and I think the downside of this outweighs the benefit of much better documentation.

Related issues

This vendors swagger.yaml from this Engine change: https://github.com/docker/docker/pull/28506. It would probably be worth waiting until that is merged so we can be sure we're vendoring the correct thing.
This is a subset of #210. Just the API docs, and none of the additional SDK docs. As discussed with @johndmulhausen, this seemed like a much less controversial subset that we could get in to start with.
Background on Swagger definition: https://github.com/docker/docker/issues/27919
Closes https://github.com/docker/docker/issues/22931

/cc @dnephin @johndmulhausen

Deploy preview ready!
Built with commit 508001e085f10457f919ef14cadddbd4c1f633fe
https://deploy-preview-606--docker-docs.netlify.com

Noting an offline discussion: the accounts apis touch more than Hub, currently in discussion about where they ought to go. :)

@sanscontext @mstanleyjones @londoncalling @joaofnfernandes
The most relevant staging URL is here:
https://deploy-preview-606--docker-docs.netlify.com/engine/api/v1.25/
Be aware that this PR also changes "Remote API" to "Engine API" so make sure any find/replaces were done right

@bfirsh Can you make the links to API versions relative instead of https://docs.docker.com ? That way they'll show the version that is shipping with that branch/fork/clone of the docs
https://deploy-preview-606--docker-docs.netlify.com/engine/api/v1.25/#section/Versioning
Clicking on these now, you can see that they 404

Other than that, this LGTM!

Can we hold off on merge until I've got a Docker ID stub in place to rehome the Hub docs?

Please hold off until #634 has merged.

@johndmulhausen Okay. That was intentional so the swagger.yaml would work standalone, but I guess it's not the end of the world making the intro description just work inside the documentation.

@bfirsh Belay my comment then; I get it.

@sanscontext I think the correct order is that we merge this PR first and your PR adapts. You only have one link in your PR that is affected here; I left a comment with the URL that will need to change.

@bfirsh PR #634 has been merged and it makes sense to have the Accounts API reference live under /docker-id/ -- can you update this PR?

Due to #511, we're now going to have to wait for docker/docker#28506 to make its way into the 1.12 branch. I will push this along. :)

docker/docker#28506 is now merged. :tada:
I'll wait for #674 before updating this PR.

@mstanleyjones @johndmulhausen This is also just for Docker 1.13, so presumably I should open it against the branch vnext-engine? Will #674 be cherry-picked into that branch?

Okay, I have now implemented this PR on top of #511 and #674. The implementation is ready for review, apart from the hacks in Dockerfile to pull from the correct Docker version.
Once #511 and #674 have made their way into the vnext-engine branch, I can switch this PR to that branch and it should be ready to merge.

@bfirsh Everything in master will be merged into vnext-engine so yes, #511 and every other fix that's happened here will be pulled in. :) As for which branch to open this PR against, yes -- if it's for v1.13 only, you want to do that against vnext-engine. Which means you might have to create a new PR for this.

Looks like #734 includes #511 and #674, so I will wait for that before switching branches.
And yes – this is v1.13 only.

You'll now want to look at #756, though that's only there for audit purposes. If @thaJeztah approves it I will force-push vnext-engine to that state, which is the 21 patches in vnext-engine rebased on master. It's ugly, but trying to do a merge was too complicated.

@bfirsh Where are we on this? Do you plan to shut this PR down and make a new one pointed at vnext-engine? According to the Netlify staging, ReDoc isn't getting a swagger spec anymore

@johndmulhausen Yep! Just waiting for vnext-engine to be rebased and I'll sort it out.

@bfirsh this should be good to go after you rebase on current vnext-engine to resolve the conflict. I did the force-push this morning.

@bfirsh Have at it! Exciting times. :) Right now I'm seeing this error in your PR though:
https://deploy-preview-606--docker-docs.netlify.com/engine/api/v1.25/

Oh nice - thanks! Glad that just worked. 💃


Fix cargo protoc error

Fix : https://github.com/confio/ics23/pull/43
Relate issue: https://github.com/confio/ics23/issues/42

[x] ensure ics23.rs can be regenerated via cargo protoc without breaking the build
[x] Enable the api.rs tests in no-std mode as well

For api.rs also passes the test under no_std is problematic, due to the use of the File and IO libraries under the standard library. However, there is no core library in core, and alloc, so now it is possible to handle it in this way and only let it test under std.

@ethanfrey Hi, Can you review this PR?

Relate Rust no-std: https://justjjy.com/Rust-no-std

Thanks for updating this. I think you also need to bump prost version in rust/Cargo.toml and regenerate the proto files with the rust/codegen

Thanks for updating this. I think you also need to bump prost version in rust/Cargo.toml and regenerate the proto files with the rust/codegen

Yes, I have been update cargo.toml.

Looks good.
I checked out the code and all tests pass.
Running cargo protoc and cargo fmt will regenerate the same code.


Add information about knifes in public transport in Hamburg to README.md

Add info about https://www.polizei.hamburg/services/recht/waffen-und-messerverbot-oepnv-und-weitere-gebiete

I don't want to be rude, but people using this list without this notice might find themselves paying fines instead of enjoying congress, so please @MacLemon  - approve this pull request or include the information in any other way.
Your guide is references as example in the official 38c3 documentation.

I also think this should be added, but the commit is a bit confusing:

"Knifes and are forbidden in public transport in Hamburg" - There is something missing after the "and"
The part about the weapons act should be separated, because this are to different topics, here every knife is forbidden
An information about allowed "secure" transportation would be nice (if you put it in an enclose which is closed with tape or a lock), so that you're allowed to take poket knifes with you
It's not only public transportation, it's also specific areas completly (it's allowed to cross them in a car, but only without a stop)

I can't really put this into a great wording, but it would be nice if someone could.


XeLaTeX not working

Hi!
It seems xelatex is missing some librairies in this image:
bash-4.4# xelatex -help
Error loading shared library libfontconfig.so.1: No such file or directory (needed by /usr/local/texlive/2018/bin/x86_64-linuxmusl/xelatex)
Error loading shared library libfreetype.so.6: No such file or directory (needed by /usr/local/texlive/2018/bin/x86_64-linuxmusl/xelatex)
Error relocating /usr/local/texlive/2018/bin/x86_64-linuxmusl/xelatex: FcPatternDestroy: symbol not found
Error relocating /usr/local/texlive/2018/bin/x86_64-linuxmusl/xelatex: FcObjectSetDestroy: symbol not found
Error relocating /usr/local/texlive/2018/bin/x86_64-linuxmusl/xelatex: FcConfigGetCurrent: symbol not found
Error relocating /usr/local/texlive/2018/bin/x86_64-linuxmusl/xelatex: FcGetVersion: symbol not found
Error relocating /usr/local/texlive/2018/bin/x86_64-linuxmusl/xelatex: FcPatternGetString: symbol not found
Error relocating /usr/local/texlive/2018/bin/x86_64-linuxmusl/xelatex: FcPatternGetInteger: symbol not found
Error relocating /usr/local/texlive/2018/bin/x86_64-linuxmusl/xelatex: FcFontList: symbol not found
Error relocating /usr/local/texlive/2018/bin/x86_64-linuxmusl/xelatex: FcObjectSetBuild: symbol not found
Error relocating /usr/local/texlive/2018/bin/x86_64-linuxmusl/xelatex: FcInit: symbol not found
Error relocating /usr/local/texlive/2018/bin/x86_64-linuxmusl/xelatex: FcNameParse: symbol not found

I fixed. It will be released in a few minutes.

Seems to work now, thanks! I'll now simply have to adapt your Dockerfile for my needs by setting  selected_scheme to scheme_full (to have all latex packages instaleld), but that is fine.


Rework Authorization System

Would be good if users can have a different authorization level based on their enrollment in an offering.
This also means that faculty is enrolled in a course as instructor.
Easy to combine with that users cannot see an offering if they're not enrolled (don't have any authorization for it).

Latest commit fixes this issue


public-private key for hardware validation

Related:

https://github.com/sparks-baird/self-driving-lab-demo/issues/94
https://github.com/sparks-baird/self-driving-lab-demo/discussions/91

Based on discussion with @rekumar https://github.com/sparks-baird/self-driving-lab-demo/discussions/127#discussioncomment-4198692:

Maybe a public-private key encryption scheme (like RSA, python example) is appropriate here?
Example: the private key lives on your hardware device, the public key is the device identifier within your database. Any data generated by the device is terminated with some signature, then encrypted using the private key. Your database API then decrypts the data using the public key and checks for the signature before accepting the new data.

As a bonus, you can use these keys to do device-side validation (using its private key) to block instructions from bad actors. Instructions sent to the device would be encrypted using its public key, then decrypted on the device side to check the signature. In this scenario, maybe you don't want to use the public key as the device's ID in the database... you could encrypt the device's ID using a server-side private key to hide this from external viewers of the database.

https://github.com/sparks-baird/self-driving-lab-demo/discussions/127#discussioncomment-4199099:

For encryption on the Pico W, probably: https://docs.micropython.org/en/latest/library/cryptolib.html
For random ID generation on the Pico W, probably: https://github.com/pfalcon/pycopy-lib/blob/master/uuid/uuid.py
Aside: unique hardware ID generation code given at
https://github.com/sparks-baird/self-driving-lab-demo/blob/1774d55d57ad4c20fb6cb9b2be7d5671446af769/src/public_mqtt_sdl_demo/main.py#L26

Perhaps MongoDB generates a unique API key, the Pico W uses cryptolib with the unique device ID as the encryption/decryption key to encrypt MongoDB's API key, and the Pico W checks to make sure this matches the expected value:
user_keys = ["abc123", "def456"]
...
my_id = my_id = hexlify(unique_id()).decode()
...
mode = 1
encrypted_device_IDs = [aes(my_id).encrypt(user_key, mode) for user_key in user_keys]
...
    ...
    assert _input_message["encrypted_device_ID"] in encrypted_device_IDs

On the application side, use a Python package (cryptography?) to do the encryption in the same AES mode as cryptolib.
Summary:

Value
Purpose

MongoDB API key
database access

Unique device ID (or manually generated ID)
private data to be encrypted/decrypted

user-assigned encryption key
key for encrypting/decrypting device ID by client/device, respectively

This is harder than I thought via MicroPython. https://github.com/artem-smotrakov/micropython-rsa-signing comes with little documentation and may not be robust. There's an RSA library for CircuitPython, but I'm still hesitant to move back to CircuitPython. I could set up a web app on something like pythonanywhere, but pythonanywhere free accounts are restricted to a whitelist of websites. test.mosquitto.org has an option for certification, but it expires after 90 days and needs to be manually renewed on the website.
Related:

https://hwwong168.wordpress.com/2019/09/25/esp32-micropython-implementation-of-cryptographic/
https://www.hackster.io/bleakview/connecting-raspberry-pico-w-to-aws-iot-ef6b7b

My options are:

wait it out for an RSA MicroPython implementation (preferred)
create the 90-day expiration certificates through test.mosquitto.org and follow the Pico W / AWS IoT tutorial
set up a free serverless encrypter/decrypter Python program (based on e.g., python-rsa) via Vercel (https://vercel.com/docs/rest-api). Related: the "firewall" for multi-device control
switch to CircuitPython and their RSA library
port the CircuitPython library to MicroPython

Someone got back to me on the MicroPython forums with a solution (https://github.com/dmazzella/ucrypto) that seems to be working.

Hardware validation now takes place by restricting the publication of documents to certain collections to specific API keys. Additionally, an encrypted, truncated device ID and a device nickname are stored in each document.
Assigning one MongoDB API key and one MongoDB collection per device is good enough. However, asymmetric encryption could still play a role at some point (hence leaving the functionality mostly there, including the storing of a truncated, encrypted device ID).


1879 mouse slide

fixes https://github.com/CartoDB/cartodb/issues/1879 cc @javierarce

oh, bind example added, forget this :dancer:

dunno what happens, forget the bing file, it's already in develop

:+1: :dancer:


SonOff SNZB-01 push-switch support

Device description
Itead Sonoff Wireless Switch SNZB-01. Features single, double press and long press. Battery powered.
MQTT message with device information
2020-08-20 10:14:37: MQTT publish: topic 'zigbee2mqtt/bridge/log', payload '{"type":"devices","message":[{"ieeeAddr":"0x00124b0014d9c84b","type":"Coordinator","networkAddress":0,"friendly_name":"Coordinator","softwareBuildID":"zStack12","dateCode":"20190608","lastSeen":1597911277152},{"ieeeAddr":"0x00124b001f9187f6","type":"EndDevice","networkAddress":28205,"model":"SNZB-01","vendor":"SONOFF","description":"Wireless button","friendly_name":"SonOff-Button-01","manufacturerID":0,"manufacturerName":"eWeLink","powerSource":"Battery","modelID":"WB01","hardwareVersion":0,"dateCode":"20200718","lastSeen":1597911092534}'

MQTT messages from device
Put here examples of MQTT messages with different states you've received from device, as example
Aug 20 10:23:02 domoticz npm[17840]: #033[32mZigbee2MQTT:info #033[39m 2020-08-20 10:23:02: MQTT publish: topic 'zigbee2mqtt/SonOff-Button-01', payload '{"linkquality":10,"battery":100,"voltage":3200,"action":"single"}'

Aug 20 10:23:03 domoticz npm[17840]: #033[32mZigbee2MQTT:info #033[39m 2020-08-20 10:23:03: MQTT publish: topic 'zigbee2mqtt/SonOff-Button-01', payload '{"linkquality":10,"battery":100,"voltage":3200,"action":"double"}'

Aug 20 10:23:11 domoticz npm[17840]: #033[32mZigbee2MQTT:info #033[39m 2020-08-20 10:23:11: MQTT publish: topic 'zigbee2mqtt/SonOff-Button-01', payload '{"linkquality":10,"battery":100,"voltage":3200,"action":"long"}'

MQTT state change commands
If device supports state change put MQTT topics + payload examples to change device state here

Two changes needed in ~/domoticz/plugins/zigbee2mqtt/adapters/sonoff:
diff --git a/adapters/sonoff/__init__.py b/adapters/sonoff/__init__.py

index 2621ce8..d0969c1 100644
--- a/adapters/sonoff/__init__.py
+++ b/adapters/sonoff/__init__.py
@@ -1,12 +1,14 @@
 from adapters.on_off_switch_adapter import OnOffSwitchAdapter
 from adapters.generic.motion_sensor import MotionSensorAdapter
 from adapters.generic.temp_hum_sensor import TemperatureHumiditySensorAdapter
+from adapters.sonoff.SNZB01 import SNZB01
 from adapters.sonoff.SNZB04 import SNZB04

 sonoff_adapters = {
     'BASICZBR3': OnOffSwitchAdapter,                # SONOFF Zigbee smart switch
     'S31ZB': OnOffSwitchAdapter,                    # SONOFF Zigbee smart plug (US version)
+    'SNZB-01': SNZB01,                              # SONOFF Push switch
     'SNZB-02': TemperatureHumiditySensorAdapter,    # SONOFF Temperature and humidity sensor
     'SNZB-03': MotionSensorAdapter,                 # SONOFF Motion sensor
     'SNZB-04': SNZB04,                              # SONOFF Contact sensor

and new file SNZB01.py:
from adapters.adapter_with_battery import AdapterWithBattery
from devices.switch.selector_switch import SelectorSwitch

class SNZB01(AdapterWithBattery):
    def __init__(self, devices):
        super().__init__(devices)

        self.switch = SelectorSwitch(devices, 'switch', 'action')
        self.switch.add_level('Off', None)
        self.switch.add_level('Click', 'single')
        self.switch.add_level('Double Click', 'double')
        self.switch.add_level('Long Press', 'long')

        self.switch.set_selector_style(SelectorSwitch.SELECTOR_TYPE_BUTTONS)
        self.switch.disable_value_check_on_update()

        self.devices.append(self.switch)

    def handleCommand(self, alias, device, device_data, command, level, color):
        self.switch.handle_command(device_data, command, level, color)

@stas-demydiuk  can you include these updates please?

Done, could you please update plugin and check

Thanks, working perfect now !


grovemd: add support for 'mode1' stepping and add stepper examples

The current grovemd driver supported 'mode2' stepping, where the
driver simply passed various stepper commands to the board for it to
carry out on it's own.
This doesn't work very well (or at all if you have old/buggy firmware)
so add a new 'mode1' stepper capability.  This mode lets the driver
manually control the stepping operation without requiring special
firmware.
This is now the default and recommended mode to use for stepper motors
on this device.  It is also more flexible in terms of the maximum
number of steps you can do (mode2 was limited to 254 steps max).
This was tested using a bipolar NEMA-17 stepper motor with an
external 12v power supply.
Note: 'Mode1' and 'Mode2' are the Seeed Studio terms for these different
stepping modes.
Signed-off-by: Jon Trulson<EMAIL_ADDRESS>

Great fix, thanks 83e62aabba3c069f232a6110522a5d3f5f2fcc7e!


Download cropped image?

i modified below code in cropper\js\main.js to download the cropped image:
            result = $image.cropper(data.method, data.option);
            if (data.method === 'getCroppedCanvas') {
                $('#getCroppedCanvasModal').modal().find('.modal-body').html(result);

                $("#saveImage").click(function () {
                    var dt = result.toDataURL('image/png');
                    this.href = dt;
                });
            }

But why the downloaded cropped image size is bigger than original image, any idea? Thanks

You should not bind click event handler inner another click event handler ...

I bind click event inside is because i want user click preview first then only the download button visible, and then click the download button to download the image. The image can download successful, but the size is much more bigger, i crop a 2MB image, the download size is 11MB. Am I pass wrong data?


How can I get the value of the text area (sounds basic, but i've tried everything)?

Seems like a really basic question, but I can't figure out how to programmatically get the value of the code mirror editor. Is this possible?
I'm also looking to attach a listening event to the CodeMirror editor, so whenever changes are made, I would get the content of the editor, and render it in a separate div. But to do that, I need to some how have access to the CodeMirror object I think.

Regarding your second question: I'd love to know if there is a better way, but I'm able to grab the codemirror object by creating a file-scoped variable in my client-side js and assigning the codemirror object to it with the onRender hook.
client.html
{{> sharejsCM docid=_id id="editor" onRender=renderEditor }}

client.js
var myEditor;

Template.body.helpers({
  renderEditor: function () {
    return function(editor) {
      myEditor = editor;
    }
  }
});

I'm able to use myEditor in my event functions after this.

I'm in the same boat, I want to render the contents in a {{markdown}} template but cant figure oit how to get the current content.

I'm pretty sure you guys should be able to get the contents from the Ace API or the CodeMirror API depending on what you are using.

For Ace
myEditor = null

Template.myTemplate.events
  'click .do-something': () ->
    console.log(myEditor.getValue())

Template.myTemplate.config = () ->
  (editor) ->
    editor.setTheme('ace/theme/monokai')
    editor.getSession().setMode('ace/mode/javascript')
    myEditor = editor


Fix: authListener unsubscribe function

Fixed the code to unsubscribe the authListener properly using subscripton property.
authListener?.subscription.unsubscribe();
##What kind of change does this PR introduce?
Bug fix
What is the current behavior?
return () => {
      window?.removeEventListener('visibilitychange', handleVisibilityChange);
      authListener?.unsubscribe();
    };

The authListener does not unsubscribe properly.
What is the new behavior?
return () => {
      window?.removeEventListener('visibilitychange', handleVisibilityChange);
      authListener?.subscription.unsubscribe();
    };

The authListener unsubscribes properly without errors.
Additional context
Created an issue earlier #281

For usage with supabase-js V2 RC please use the next release npm install @supabase/auth-helpers-nextjs@next npm install @supabase/auth-helpers-react@next.
You'll want dependencies to look like this:
"@supabase/auth-helpers-nextjs": "^0.4.0-next.3",
"@supabase/auth-helpers-react": "^0.3.0-next.2",
"@supabase/supabase-js": "^2.0.0-rc.10",

You can find the migration docs here: https://github.com/supabase/auth-helpers/blob/next/packages/nextjs/MIGRATION_GUIDE.md and you can see the changes involved to an existing application here: https://github.com/vercel/nextjs-subscription-payments/pull/128/files


docs($parse): fix typo in parse.js

Propogate -> Propagate

@petebacondarwin Thank you announcement!
I have correspond. Please confirm.


Begin to write the techniques and tools section -  Report

The Techniques and Tools section is up to date. If a new technique or tool needs to be added, a new issue will be created.


MQTT Subscribe without disconnecting

I'm trying to subscribe to RabbitMQ with MQTT. The problem is that the MQTT agent seems to connect to the broker on an interval, and then disconnects again after several seconds. And the queue it creates in RabbitMQ gets deleted when it disconnects, so messages routed during this period will never be delivered to Huginn.
Is it possible to work around this?

Looks like I want a QoS1 connection instead of a QoS0 connection

And possibly also have it subscribed constantly, like the twitter agent does.

@dsander, do you know anything about this?

And it might be a good idea if it were possible to have it subscribed constantly, like the twitter agent does.

That sounds like a good idea and shouldn't be too hard. I am not using MQTT myself and am afraid I would break existing use cases. @knu or @CloCkWeRX, are you still using the MQTT agent?
@r04r Not sure if it also applies for MQTT, but as far as I can remember for AMQP the publishing client could set the durability option for the queue, would that be an option for you? If you are using huginn to publish the messages we might need to add support for the retain option.

@dsander The durability setting of the queue would be good. This is the QoS1 thing I mentioned earlier, which seems to be how MQTT deals with it.
From what I gathered from the MQTT documentation (I am also familiar with AQMP) QoS0 will create an auto-delete queue (subscribed to amq.topic exchange) that gets removed when the client disconnects, this is what is happening now. QoS1 will instead create a queue that does not have auto-delete set and the queue will persist when the client is disconnected, and the client will then re-connect to the same queue at a later time and receive its messages. Not real-time if not connected all the time, but a lot better than losing messages which seems to happen now.

Would the queue keep it persistence when you create it using a different MQTT client, or does it get changed to QoS0 when huginn subscribes to it?

@dsander I think that it depends on if the client identifies itself as using QoS0 or QoS1. I'm not sure on the state of QoS1 support with ruby-mqtt but looking at the documentation of MQTT::Client#subscribe it seems you can specify a QOS. But subscribe does not seem to be used in the MQTT Agent, instead MQTT::Client#get_packet is used. So at this point I'm not sure.

Okay, it looks like get_packet calls subscribe first thing and does not do anything with the topic variable past that. So I'm thinking that c.get_packet(interpolated['topic'] => 1) would have the desired behavior.

The way I understand the RabbitMQ MQTT docs, messages should be retained when you configured a message store for rabbit and send the message with the retained flag. You could try to modify the agent to always set retained to true.

@dsander That requires the QoS level to be set to 1. From the docs:

Here are some screenshots from my RabbitMQ instance. I triggered the MQTT agent to connect, and saw the following on the queues page:

The details:

As you can see this queue is set to auto-delete and is bound to the amq.topic exchange. A few seconds later huginn disconnected, and this queue disappeared. Any messages published to the exchange during this time, no matter their durability level, cannot be delivered to Huginn because there is no queue to receive them.

I just found #996 which might be related.

Thanks for the explanation I think I got it now. The README of ruby-mqtt states it only supports QoS 0, so the only solution would be to keep the connection open. The retained flag when publishing via ruby-mqtt probably only works when the subscribing client support QoS 1?

Ah, I missed that in the README. That's a shame.

The retained flag when publishing via ruby-mqtt probably only works when the subscribing client support QoS 1

I believe that to be the case, yes. I am not 100% certain.
Perhaps it would be interesting to eventually have an AMQP client as well, the ruby libraries for that look a bit more mature in any case.

@r04r Glad you figured it out! Would you be willing to make the changes you hard-coded into the agent configurable and send a pull request?

@dsander I would have to look into how to add a configuration option into the UI, but I might be able to have time for that tomorrow. For posterity's sake the changes I have made so far are:
diff --git a/app/models/agents/mqtt_agent.rb b/app/models/agents/mqtt_agent.rb
index 29967d9..ab6a3ab 100644
--- a/app/models/agents/mqtt_agent.rb
+++ b/app/models/agents/mqtt_agent.rb
@@ -103,6 +103,9 @@ module Agents
         @client.key_file = interpolated['key_file']
       end

+      @client.clean_session = false
+      @client.client_id = "huginn-#{self.id}"
+
       @client
     end

@@ -121,7 +124,7 @@ module Agents
       mqtt_client.connect do |c|
         begin
           Timeout.timeout((interpolated['max_read_time'].presence || 15).to_i) {
-            c.get_packet(interpolated['topic']) do |packet|
+            c.get_packet(interpolated['topic'] => 1) do |packet|
               topic, payload = message = [packet.topic, packet.payload]

               # Ignore a message if it is previously received

Hmm, looks like messages are not disappearing from the queue at all now. They just sit there forever, and get re-delivered each time Huginn connects. Will investigate further later.

I'm not a serious/heavy user of MQTT, I just use it occasionally when I go on a trip and want to track myself, for example.  I think for serious use you'll need process persistency and/or support for a higher QoS level.
Here are some references:

https://github.com/tierconnect/appcore2-ruby-mqtt
https://github.com/jemc/ruby-mosq

It would be great if we could use Agent's memory as storage required for QoS 2.

Hi @r04r @cantino ,
I have a lot of experience in MQTT.
I try to answer your question.
The MQTT agent will connect and keep N seconds ... than disconnect.
Have 2 method.

Modify "mqtt_agent.rb" .   Connect with Client_ID(must fixed)  and  clean_session = FALSE.
And Subscriber topic with QoS 1/2
And the agent executed once before publish.
when Publisher send message with QoS 1/2.
At any time...

At app/models/agents/mqtt_agent.rb
LINE 96:
@client ||= MQTT::Client.new(interpolated['uri'], clean_session: false, client_id: 'xxx')
LINE124:
c.get_packet([interpolated['topic'], 1]) do |packet|
##1 the 'xxx' recommend agent_id
##2 The ruby mutt client only support QoS1

Publisher send message with QoS 0/1/2  and "retain".
But... Agent will be trigger at next running.

Not recommended

Thanks @MingShyanWei.  I've never actually used MQTT.  @CloCkWeRX and @knu are the two people who have contributed primarily to this Agent.

I made  the change @r04r recommended and it solved my missing events issue.  im not sure what hte proper long term fix is.  it seems like it would be better if huginn maintained a constant connection to mqtt rather than disconnect constantly

i ran into same problem he described my messages are never delted from queue and just spam endlieslly with hi patch

It'd be great if someone could make a PR with the fix, if it's a good solution.  I don't personally use MQTT, so I don't know much about it.

I never managed to get this working right. I'm mostly using node-red at the moment for the MQTT stuff, but it's not really comparable to huginn.


Meteors ("Meteors have been detected on collision course...")
Radiation ("High levels of radiation...")
Intercept ("Attention, enemy communication intercepted...")


Update to section - Information about the label properties for import table for RetentionDuration

In the section - Information about the label properties for import
The RetentionDuration description states that This property specifies the number of days
Can you add a note note to state that the calculations are based on 365 days in a year and do not take into account leap years. Therefore you may wish to add addition days to the RetentionDuration to factor in the extra days for leap years.

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

ID: d4465ca1-9ee2-e551-aff2-9fc8e4a5eae3
Version Independent ID: 2cbc9375-d055-edf8-0f89-b5794f7aa7a7
Content: Use file plan to manage retention labels - Microsoft Purview (compliance)
Content Source: microsoft-365/compliance/file-plan-manager.md
Service: o365-seccomp
GitHub Login: @cabailey
Microsoft Alias: cabailey

Investigating this one!

@nikki-c  After some investigation I can confirm that the number of days you specify is what's stored and used for the retention period. In the UI where it's displayed as days/months/years, for easier human consumption, the months assume 30 days and the years assume 365 days - as documented here: https://learn.microsoft.com/en-us/microsoft-365/compliance/retention-settings#retaining-content-for-a-specific-period-of-time
If the exact number of days are important to you, calculate and specify them accurately. That's what will be used as the retention period.  However, because items aren't permanently deleted immediately at the end of the retention period (but instead, become eligible for deletion) and there's a 7-day timer, the odd day out or so isn't going to have a noticeable impact for the vast majority of cases.
If you need more information about how retention works and the backend timings, we have a "Learn about retention for .." for each workload.  For example, for SharePoint: https://learn.microsoft.com/microsoft-365/compliance/retention-policies-sharepoint


conda install command in readme generates inconsistency

Description
Starting from a fresh conda install conda create -n jaxlibcuda118 'jaxlib=*=*cuda*' jax cuda-nvcc -c conda-forge -c nvidia gives the following package conflicts on my machine with conda 23.3.1:
ource.
Collecting package metadata (repodata.json): done
Solving environment: \
Found conflicts! Looking for incompatible packages.
This can take several minutes.  Press CTRL-C to abort.
failed

UnsatisfiableError: The following specifications were found to be incompatible with each other:

Output in format: Requested package -> Available versions

Package cuda-version conflicts for:
jaxlib[build=*cuda*] -> cudnn[version='>=<IP_ADDRESS>,<9.0a0'] -> cuda-version[version='>=11.0,<12.0a0|>=12.0,<13.0a0']
cuda-nvcc -> cuda-version[version='>=12.0,<12.1.0a0']

Package libgcc-ng conflicts for:
cuda-nvcc -> libgcc-ng[version='>=12']
jaxlib[build=*cuda*] -> libgcc-ng[version='>=12']
jax -> jaxlib[version='>=0.4.7'] -> libgcc-ng[version='>=10.3.0|>=12|>=9.4.0|>=9.3.0|>=11.2.0|>=7.5.0|>=7.3.0|>=4.9|>=7.2.0']
jaxlib[build=*cuda*] -> cudatoolkit[version='>=11.2,<12'] -> libgcc-ng[version='>=10.3.0|>=9.4.0|>=9.3.0|>=7.5.0|>=11.2.0|>=7.3.0|>=4.9|>=7.2.0|>=3.0']

Package jaxlib conflicts for:
jaxlib[build=*cuda*]
jax -> jaxlib[version='>=0.3.14|>=0.3.15|>=0.3.22|>=0.4.1|>=0.4.2|>=0.4.4|>=0.4.6|>=0.4.7|>=0.3.7']The following specifications were found to be incompatible with your system:

  - feature:/linux-64::__glibc==2.31=0
  - feature:|@/linux-64::__glibc==2.31=0
  - cuda-nvcc -> __glibc[version='>=2.17,<3.0.a0']
  - jax -> jaxlib[version='>=0.4.7'] -> __glibc[version='>=2.17']

Your installed version is: 2.31

This from a blank fully updated miniconda install so I am surprised it is causing conflicts. The only thing install in the base conda package is the minimal conda packages. The command might need to be tweaked a bit to have conda-forge override the main / default repo etc.
What jax/jaxlib version are you using?
latest
Which accelerator(s) are you using?
GPU
Additional system info
N/A
NVIDIA GPU info
N/A

Hi - thanks for the report. The JAX team does not maintain the conda packages for JAX, so you might have better luck finding debugging help at https://github.com/conda-forge/jaxlib-feedstock


Avoid loading balena-settings-client in browsers using the browser field

Change-type: minor
See: https://github.com/balena-io/balena-sdk/issues/254

Resolves: #
HQ:
See:
Depends-on:
Change-type: major|minor|patch

Contributor checklist

[ ] Includes tests
[ ] Includes typings
[ ] Includes updated documentation
[ ] Includes updated build output

I self-certify!


Replaced "tabs" manifest permission with "activeTab"

As you can read at https://developer.chrome.com/extensions/activeTab#what-activeTab-allows, while the activeTab permission is enabled for a tab, an extension can get the URL, title, and favicon for that tab via an API that returns a tabs.Tab object.

WFM!
thanks man. :D


Loading rows after loaded 0 rows

I have a virtual scroll that is working fine but when the filter reduce the list to 0 elements, next time I change the source list to a list with elements, the virtual scroll only show 2 rows.
The problem is comeing in this part of code:
   if (this.childWidth == undefined || this.childHeight == undefined) {
            contentDimensions = content.children[0] ? content.children[0].getBoundingClientRect() : {
                width: viewWidth,
                height: viewHeight
            };
        }

When I load the last time the list, this part of code put height to the same height of the container... it's a bug. How could I fix it?

Sounds a bit like what I've got on my iPad with the demo page. When scrolling all the way to the top of the list I reach the point when I only see 2 rows when there are more items and I should see a full list. Scrolling a little bit down again does show the other rows again. I don't have this behavior on other devices. A fix would be really appreciated.

@pedrollanes Would you mind submitting a pull request with your proposed solution? Thanks.

I wonder if this issue is already resolved in the latest version of the code. Would you mind re-testing & closing this if it's fixed? Thanks.

Closing this since I haven't received a response from the original poster. Please re-open if you continue to experience this issue.


Comparison with StyleGAN-NADA

Hello authors,
What hyperparameters/settings did you used for producing the StyleGAN-NADA? Im having very different results.
Thank you for your atttention.

Nevermind, I found my bug. Sorry to bother


[ISSUE] workspaceClient.RegisteredModels.ListAll fails to list all models

Code to list all models in a metastore:
models, err := ic.workspaceClient.RegisteredModels.ListAll(ctx, catalog.ListRegisteredModelsRequest{})

is failing with the following error:
If no catalog or schema is set, maxResults must be set.

Go SDK 0.30.0

Can you specify maxResults, catalog or schema?
However, it seems like a very weird requirement to have to specify max results.


SIL: Enclose switch subjects in a new begin_borrow [fixed] variant.

We want to preserve the borrow scope during switch dispatch so that move-only checking doesn't try to analyze destructures or consumes out of it. SILGen should mark anywhere that's a potential possibility with its own marker so that it gets borrow checked independently.

@swift-ci Please test

@swift-ci Please test Windows

@swift-ci Please test Windows


Debug translation form (user group permissions)

In the version of EE we're using, something is awry with the Channel Form (née Safecracker form) and the permissions of the Translators member group such that they can't submit the form. (The form submits fine if you are an admin.) Haven't been able to figure this out.

Solved!


Add changelog

As far as I can tell, there is no place for me to see all the features added in a new version. I only discovered clangd 17's “Missing include” warning because I happened to be browsing through that segment of the website. A changelog would make the changes findable at the very least. Perhaps it could also be shown in the vscode extension when the version was bumped there, for more visibility.
If a feature is built in a forest, does it make a sound?

The release notes for each LLVM Release, that includes clangd, can be found here: https://releases.llvm.org/. Here is an example from 18.1.0: https://releases.llvm.org/18.1.0/tools/clang/tools/extra/docs/ReleaseNotes.html#improvements-to-clangd

The 18.1.0 release notes on that page are fairly empty.
I did write up a fairly comprehensive set of release notes for clangd 18 in https://github.com/llvm/llvm-project/pull/84436, but that merged to the 18.x branch after the 18.1.0 release. I think it will show up on the website under the 18.2.0 release, once that's out.
Unfortunately, we are also missing release notes for clangd 16 and clangd 17; it looks like those were overlooked.
I created a release checklist recently, with the hope of avoiding overlooking things like release notes for future releases. I'd also like to retroactively write up clangd 16 and clangd 17 release notes as time permits, though help with that would definitely be appreciated.

Perhaps it could also be shown in the vscode extension when the version was bumped there, for more visibility.

Note that vscode-clangd releases can be freely mixed with clangd server releases, so we can't put information about new clangd features into vscode-clangd's own release notes.
But I suppose we could build a feature into vscode-clangd's auto-update functionality where it shows a popup linking to the server's release notes when upgrading to a new server version. Feel free to file a vscode-clangd issue for that.

I'm glad the issue was noticed and will be addressed for future versions. I ended up going through the website and searching for the 'added with clangd-17' tag, and I'm still not sure I didn't miss a change that would be relevant to me.
One side note on the release notes page, I personally found it pretty confusing to have the empty headers from the template of the release notes. I thought maybe those headers were broken links to where the changes were actually recorded, or there really was a new feature called "inline hints" that was somehow different than the inline hints that I knew.

Feel free to file a vscode-clangd issue for that.

I'll do that


cannot find module @iarna/rtf-to-html

I used this module in electron js
platform : mac 10.14 mojave
electron version : 4.0.7
It works in the developing stage.
But once it packaged, it occurred error
'cannot find module @iarna/rtf-to-html'
I can't know the reason
Please help

Probaply you need to install it not as devDependency.

Thank you so much.
Your way helped me

Can we close this?


error makes preview look frozen

I compiled with dagre, using a keyword it does not support, which returns an error from the CLI.

However, instead of seeing this error, the preview just keeps Loading
https://user-images.githubusercontent.com/3120367/222331722-11e46ac7-2eb0-495d-85a0-34032f91981a.mp4
(this is probably because the error handling currently only works on a specific type of error that returns line numbers?)
input: |d2
  hello -> world
|

input -> compiler.parse

compiler: {
  parse -> AST
  AST: Abstract Syntax Tree {
    shape: oval
  style.fill: honeydew
  }

  AST -> IR: compile
  IR: Intermediate Representation (IR)
  IR -> graph: compile IR into graph
  graph: Graph\n(shapes & connections) {
    shape: oval
    style.fill: honeydew
  }
}

compiler.graph -> Set Dimensions
Set Dimensions -> Use ruler to measure all texts -> measured graph
Set Dimensions -> Use given, premeasured dimensions -> measured graph

measured graph: {
  shape: oval
  style.fill: honeydew
}

measured graph -> layout engine -> positioned graph

positioned graph: {
  shape: oval
  style.fill: honeydew
}

positioned graph -> exporter -> diagram

diagram: finalized diagram (styled) {
  shape: oval
  style.fill: honeydew
}

diagram -> render SVG

render SVG -> use sketch post processor: optional

use sketch post processor -> SVG bytes

SVG bytes: {
  shape: oval
  style.fill: honeydew
}

SVG bytes -> screenshot for PNG: optional

Legend: {
  top: 0
  left: 0
  blue: "" {
    width: 20
    height: 20
    style.stroke: black
  }
  blue-explanation: Actions {
    shape: text
  }

  green: "" {
    width: 20
    height: 20
    style.fill: honeydew
    style.stroke: black
  }
  green-explanation: Intermediate artifacts {
    shape: text
  }
}

(works fine i remove the top and left. awesome improvement since I last used this plugin @BarryNolte @gavin-ts . i'm switching to vscode to edit D2)

This could be handled better, but bug https://github.com/terrastruct/d2/issues/838#issue-1590059132 really needs to be fixed for a complete fix.

hmm i see. yeah whatever can include line numbers, should. and this should.
however there can always be errors without line numbers. a panic or error anywhere past the compiler, like a panic in the layout engine or something. so i think the plugin still should account for line-numberless errors

This should be fixed now.


Add Javascript project ideas

How about:
Create functions to understand the lexical scope and hoisting;
Iterate an array to understand "this";
Validate a form using regex;
Build something with an open API to learn AJAX;

@barbier these are great exercises to learn basics of JS, but we're looking specifically for project ideas (like a Github trends web-app like this. It would be really helpful of you if you could curate some projects ideas and contribute to this repo.

Where we have to add the projects list ? In "Disco/Programming Languages/JavaScript/" we have to create another file for projects or add it in the Getting Started File


Update the overview of essential classes

fixes: #1559

Looks good, could you please include classes inheriting from SerializableContainer such as FmfId or RunData as well?

Looks good, could you please include classes inheriting from SerializableContainer such as FmfId or RunData as well?

DataContainer part is added. @psss, please help to review again, thanks!

Yes, I agree that the list too long for a nice overview which would help to better understand the structure. I was thinking about separating the page into several sections which would be focused on one area:
Basic
- tmt.Tree
- tmt.base.Core:
  - tmt.Plan
  - tmt.Story
  - tmt.Test
- tmt.Run
- tmt.Clean
- tmt.Status
- tmt.Result

- tmt.utils.SpecBasedContainer:
  - tmt.base.FmfId:
    - tmt.base.RequireFmfId
  - tmt.base.Link
  - tmt.base.Links

Steps
- tmt.steps.Step:
  - tmt.steps.discover.Discover
  - tmt.steps.execute.Execute
  - tmt.steps.finish.Finish
  - tmt.steps.prepare.Prepare
  - tmt.steps.provision.Provision
  - tmt.steps.report.Report

  - tmt.steps.StepData:
    - tmt.steps.discover.DiscoverStepData:
      - tmt.steps.discover.fmf.DiscoverFmfStepData
      - tmt.steps.discover.shell.DiscoverShellData
    - tmt.steps.execute.ExecuteStepData:
      - tmt.steps.execute.internal.ExecuteInternalData
      - tmt.steps.execute.upgrade.ExecuteUpgradeData
    - tmt.steps.finish.FinishStepData:
      - tmt.steps.finish.shell.FinishShellData
    - tmt.steps.prepare.PrepareStepData:
      - tmt.steps.prepare.ansible.PrepareAnsibleData
      - tmt.steps.prepare.install.PrepareInstallData
      - tmt.steps.prepare.multihost.PrepareMultihostData
      - tmt.steps.prepare.shell.PrepareShellData
    - tmt.steps.provision.artemis.ProvisionArtemisData
    - tmt.steps.provision.connect.ProvisionConnectData
    - tmt.steps.provision.local.ProvisionLocalData
    - tmt.steps.provision.podman.ProvisionPodmanData
    - tmt.steps.provision.testcloud.ProvisionTestcloudData
    - tmt.steps.report.html.ReportHtmlData
    - tmt.steps.report.junit.ReportJUnitData
    - tmt.steps.report.polarion.ReportPolarionData

Phases
- tmt.steps.Phase:
  - tmt.steps.Action:
    - tmt.steps.Login
    - tmt.steps.Reboot
  - tmt.steps.BasePlugin:
    - tmt.steps.GuestlessPlugin:
      - tmt.steps.discover.DiscoverPlugin:
        - tmt.steps.discover.fmf.DiscoverFmf
        - tmt.steps.discover.shell.DiscoverShell
      - tmt.steps.provision.ProvisionPlugin:
        - tmt.steps.provision.artemis.ProvisionArtemis
        - tmt.steps.provision.connect.ProvisionConnect
        - tmt.steps.provision.local.ProvisionLocal
        - tmt.steps.provision.podman.ProvisionPodman
        - tmt.steps.provision.testcloud.ProvisionTestcloud
      - tmt.steps.report.ReportPlugin:
        - tmt.steps.report.display.ReportDisplay
        - tmt.steps.report.html.ReportHtml
        - tmt.steps.report.junit.ReportJUnit
        - tmt.steps.report.polarion.ReportPolarion
    - tmt.steps.Plugin:
      - tmt.steps.execute.ExecutePlugin:
        - tmt.steps.execute.internal.ExecuteInternal:
          - tmt.steps.execute.upgrade.ExecuteUpgrade
      - tmt.steps.finish.FinishPlugin:
        - tmt.steps.finish.ansible.FinishAnsible
        - tmt.steps.finish.shell.FinishShell
      - tmt.steps.prepare.PreparePlugin:
        - tmt.steps.prepare.ansible.PrepareAnsible:
          - tmt.steps.finish.ansible.FinishAnsible
        - tmt.steps.prepare.install.PrepareInstall
        - tmt.steps.prepare.multihost.PrepareMultihost
        - tmt.steps.prepare.shell.PrepareShell

Guests
- tmt.Guest:
  - tmt.GuestSsh:
    - tmt.steps.provision.artemis.GuestArtemis
    - tmt.steps.provision.testcloud.GuestTestcloud
  - tmt.steps.provision.local.GuestLocal
  - tmt.steps.provision.podman.GuestContainer

  - tmt.steps.provision.GuestData:
    - tmt.steps.provision.GuestSshData:
      - tmt.steps.provision.artemis.ArtemisGuestData:
        - tmt.steps.provision.artemis.ProvisionArtemisData
      - tmt.steps.provision.connect.ConnectGuestData:
        - tmt.steps.provision.connect.ProvisionConnectData
      - tmt.steps.provision.testcloud.TestcloudGuestData:
        - tmt.steps.provision.testcloud.ProvisionTestcloudData
    - tmt.steps.provision.local.ProvisionLocalData
    - tmt.steps.provision.podman.PodmanGuestData:
      - tmt.steps.provision.podman.ProvisionPodmanData

What do you think?

What do you think?

@psss, I'm with you. Now the doc is updated, please help to review again, thanks!

@idorax if I may, I'd mess with your patch a bit: as @psss pointed out, provision and report steps did not have their own step-specific StepData subclass for their plugins to use, and @psss suggested we should add them. I did so in https://github.com/teemtee/tmt/pull/1633, merging that PR before yours would make the StepData more symmetric (and sort of final as well, no other plans for changes).

The new provision and report step data classes have been merged in #1633.
@idorax, could you please update the StepDate section accordingly? Thanks.

The new provision and report step data classes have been merged in #1633. @idorax, could you please update the StepDate section accordingly? Thanks.

StepData section is updated. @psss, please help to review again, thanks!


feat: add support for org files

Hello and thank you for the great plugin.
I needed an overview for long org files hence this pull request. In principle, this acts similarly to the markdown feature, showing headlines in the specified pane:

This uses the tree-sitter-org parser, which isn't yet part of the nvim-treesitter repo.
I also ran the tests script and got errors for markdown and org which seems to be an issue with the nvim-treesitter plugin not properly recognizing custom parsers. Adding the line vim.cmd([[runtime! plugin/orgmode.vim]]) (i.e. using the orgmode plugin) to the tests/init.lua file fixed the issue for org and its respective test passed successfully.
So the tests work correctly, I'm just not sure if I should modify the tests/init.lua file since once tree-sitter-org becomes part of nvim-treesitter, said file will work as is, but not presently.

Thanks for the PR! I think you should be able to get the tests working by just adding the snippet from the parser repo. You can guard it in case it gets added to nvim-treesitter in the future:
local parser_config = require "nvim-treesitter.parsers".get_parser_configs()
if not parser_config.org then
  parser_config.org = {
    install_info = {
      url = 'https://github.com/milisims/tree-sitter-org',
      revision = 'main',
      files = { 'src/parser.c', 'src/scanner.cc' },
    },
    filetype = 'org',
  }
end

If you put that in tests/init.lua right before the call to setup(), I think it should work.
You also may want to rebase onto the most recent master. I pushed up a bunch of commits to fix the CI for nvim 0.7.0 and the recent nvim-treesitter changes.

Thank you. I made the changes, but I still believe this will be problematic, since it wouldn't actually install the tree-sitter-org parser. That would require changing the below line in Github actions and including TSInstall org as well:
https://github.com/stevearc/aerial.nvim/blob/657ed80259a2c59151c7f7c0d33f572df6fe7b69/.github/workflows/tests.yml#L35
Yet for TSInstall org to be a recognized command, Neovim will need to be started with the mentioned parser snippet...
I personally think the code is modified too much this way in unnecessary places. I will see if the merging of the org parser can come soon and reopen the request then if that is okay.

Personally I think we could make this work with just a couple more tweaks. Perhaps by adding a tests/setup.lua file that configures the org parser and calls TSInstallSync all and then sharing that logic with tests/init.lua. Then we could use that from the Github action instead of manually passing in -c "TSInstallSync all".
But! If you'd prefer to get it merged into nvim-treesitter first, more power to you.

Thank you @stevearc, it's just that authors are usually not this cool with having their code modified :-)
Regardless, the https://github.com/nvim-treesitter#2842 is now merged and should fix the issue, so I'm reopening this PR if you do not mind. I've also taken the liberty to add org to the list of supported languages in the README.

Awesome, thanks for the PR!


Patch Orchestration Application (POA) does not install updates in gMSA security cluster

I have standalone cluster 6.5.664.9590 on Windows Server 2019 with gMSA security.
Successfully deployed Patch Orchestration Application (POA) v1.4.1.
In GPO set "Notify to download updates".
POA successfully find and download updates, but does not install updates. The Node Agent NTService does not creates repair tasks for installing updates on the nodes.
Get-ServiceFabricRepairTask empty.
every ~3 minutes in System log: "The Windows Modules Installer service entered the running state." after a few seconds "The Windows Modules Installer service entered the stopped state."

In unsecure dev cluster POA works good.

@raunakpandya can you help on this?
@vdvarlamov and I have worked a bit on the same issue in MSDN
https://social.msdn.microsoft.com/Forums/en-US/b07f9b0a-892d-42c1-b9a0-c6212b51c4a2/patch-orchestration-application-poa-does-not-install-updates-in-gmsa-security-cluster?forum=AzureServiceFabric
However it appears he has everything setup correctly but for some reason POA is not finding the updates. We even logged into the node and checked and there are updates available.
CC @masnider @peterpogorski if you know anyone else who might be able to help.

@masnider Please add your comments

@vdvarlamov  Sorry for late reply. We missed this because of vacations and other commitments.
Regarding problem explained in first comment, POA is able to download the updates but not able to install. Which version of POA are you using? I do not see any reason why POA will not install updates. Could you share the log details for us to confirm this?
Regarding 2nd comment, Is 'InstallWindowsOSOnlyUpdates' parameter set to true? If not, could you share logs for this as well?

Patch Orchestration Application (POA) v1.4.1.

Which log is of interest?
More information here: https://social.msdn.microsoft.com/Forums/en-US/b07f9b0a-892d-42c1-b9a0-c6212b51c4a2/patch-orchestration-application-poa-does-not-install-updates-in-gmsa-security-cluster?forum=AzureServiceFabric

@vdvarlamov, we need service fabric logs of these clusters. You can collect and share those logs via a blob share or file share.

@khandelwalbrijesh , Log file link: https://drive.google.com/file/d/10dNQSZjvZmHKcSMqzksD3VK9MCTlFh-L/view?usp=sharing

In ETW log, i see next:
{
"ProviderName": "POA-NodeAgentSFUtility",
"Id": 2,
"Message": "RepairManagerHelper.CreateRepairTaskForNode failed. Exception details System.UnauthorizedAccessException: Access is denied. (Exception from HRESULT: 0x80070005 (E_ACCESSDENIED))
at System.Fabric.Interop.NativeClient.IFabricRepairManagementClient2.EndCreateRepairTask(IFabricAsyncOperationContext context)
at System.Fabric.Interop.AsyncCallOutAdapter21.Finish(IFabricAsyncOperationContext context, Boolean expectedCompletedSynchronously)     --- End of stack trace from previous location where exception was thrown ---        at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()        at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)        at Microsoft.ServiceFabric.PatchOrchestration.NodeAgentSFUtility.Helpers.RepairManagerHelper.<CreateRepairTaskForNode>d__6.MoveNext() in D:\a\1\s\src\PatchOrchestrationApplication\NodeAgentSFUtility\src\Helpers\RepairManagerHelper.cs:line 170",   "ProcessId": 9876,   "Level": "Error",   "Keywords": "0x0000F00000000000",   "EventName": "ErrorMessage",   "ActivityID": null,   "RelatedActivityID": null,   "Payload": {     "message": "RepairManagerHelper.CreateRepairTaskForNode failed. Exception details System.UnauthorizedAccessException: Access is denied. (Exception from HRESULT: 0x80070005 (E_ACCESSDENIED))          at System.Fabric.Interop.NativeClient.IFabricRepairManagementClient2.EndCreateRepairTask(IFabricAsyncOperationContext context)          at System.Fabric.Interop.AsyncCallOutAdapter21.Finish(IFabricAsyncOperationContext context, Boolean expectedCompletedSynchronously)
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.ServiceFabric.PatchOrchestration.NodeAgentSFUtility.Helpers.RepairManagerHelper.d__6.MoveNext() in D:\a\1\s\src\PatchOrchestrationApplication\NodeAgentSFUtility\src\Helpers\RepairManagerHelper.cs:line 170"
}
}
I ran POA as Service Fabric Administrator, https://docs.microsoft.com/en-us/azure/service-fabric/service-fabric-run-service-as-ad-user-or-group, but it did not help.

If in service POSNodeSvc(NodeAgentNTService) change manually Log on as ServiceFabricAdmin domain account, then all working. But over time service again Log on as Local System account and error above will appear again. How run POSNodeSvc(NodeAgentNTService) as ServiceFabricAdmin account always?

@Khandelwalbrijesh please can you address this issue

Have you done this extra step?
You'd have to do an additional step of configuring your windows security(https://docs.microsoft.com/azure/service-fabric/service-fabric-windows-cluster-windows-security#configure-windows-security-using-gmsa)
Add below section in your clustermanifest.
"ClientIdentities": [
{
"Identity": "NT AUTHORITY\SYSTEM",
"IsAdmin": true
}
]
This would whitelist process running as system to access service fabric client api's.
I think this info is missing in the documentation, and we'll have to update the same.

@vdvarlamov  Did you try the above mentioned solution for this issue?

I will try in the near future.

The solution above helped solve the problem. Thanks!


AUI-1875

Bump

Just started reviewing :) :octocat: Sent from GH.

I'm so sorry for the delay, I've been very busy with other projects, but I've just pushed this to both master and master-deprecated branches. Thanks for adding the test!


FATAL ERROR: Reached heap limit Allocation failed

I am trying to encrypt a 54mb video file using encryptFile function in nodejs.
and facing following issue
node : v16.13.0
FATAL ERROR: Reached heap limit Allocation failed - JavaScript heap out of memory

is there a way to encrypt a large file using nodejs streams ? or an alternative way to not hit the heap limit allocation ?
Thanks in advance.

Try this: https://felixgerschau.com/javascript-heap-out-of-memory-error/

Any luck?

is there a way to encrypt a large file using nodejs streams ? or an alternative way to not hit the heap limit allocation ?

Probably the way to go is implement something like https://nodejs.org/api/crypto.html#cipherupdatedata-inputencoding-outputencoding - update and final pattern

Closing due to inactivity


Update requirements.yaml

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approvers:
If they are not already assigned, you can assign the PR to them by writing /assign  in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

/meow

@carlossg:

In response to this:

/meow

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.


Dynamic tabs with webviews causing re-renders

Hi, basically im using this (really great btw) library in my current job's app to show some webviews using tabs and i am adding/removing them dynamically based on the users action.
Expected behaviour
Not causing re-renders when adding or removing at the beginning of the routes array.
Actual behaviour
If i add/remove a route dynamically at the beginning of the routes array, all my tabs re-rerender, which is problematic, because the webviews do too.
Probably doing this the wrong way, but i can't seem to find a good enough solution to not hack around this.
Code sample, screenshots
I was having trouble on my real app at work, so i decided to create a base repo with CRNA that shows this
https://github.com/wilomgfx/react-native-tab-view-with-webviews
What have you tried
Mutating directly the array of routes and only adding/removing from the end of the array which works fine, problem is starting at the front. (which is a case that could happen in my real app)

Thanks for the detailed issue with repro. It's a bug. I need to investigate how I to fix this in the library when I get some time, but for now you can explicitely add a key to the scene you're rendering:
<WebViewer url={route.url} key={route.key} />

https://github.com/wilomgfx/react-native-tab-view-with-webviews/blob/master/app/Tabs.js#L22

@satya164  Thanks for your quick answer. Wow i can't believe i did not think of that. I was looking for some really complicated solutions haha -__-.
I will look into that bug too.
Best regards,

@wilomgfx @satya164  ,
It should be we use FlatList instead of ScrollView and mapping routes.
I think with FlatList your components don't re-renders

@satya164 I tried most of the pagers and they all seem to force re-render on android :(

@satya164 I'm waiting on this to release the android version of my app, any chances you would know which pager would not cause a re-render on Android? Thanks a lot :)


ZEPPELIN-5486

What is this PR for?
Fix the S3NotebookRepo issue during delete notebook
What type of PR is it?
Bug Fix
Todos

[ ] - Task

What is the Jira issue?
https://issues.apache.org/jira/browse/ZEPPELIN-5486
How should this be tested?
Screenshots (if appropriate)
Questions:

Does the licenses files need update?
No
Does this needs documentation?
No

It looks like this PR has been opened incorrectly, so I am closing this one.


Not working with Tauri 2.0.0-rc.0

Hi, I am using the code:
fn main() {
    let _ = fix_path_env::fix(); // <---- Add this
    app_lib::run();
}

and
export async function createFile(path: string, contents: string) {
  const file = create(path, { baseDir: BaseDirectory.AppLocalData });
  (await file).write(new TextEncoder().encode(contents));
  (await file).close();
}

but I still get the error: failed to create file at path: /Users/william/Library/Application Support/myidentifier/filename.txt with error: No such file or directory (os error 2)
I am using:
"@tauri-apps/api": "^2.0.0-rc.0",
"@tauri-apps/cli": "^2.0.0-rc.0",
"@tauri-apps/plugin-fs": "^2.0.0-rc.0",
and
fix-path-env = { git = "https://github.com/tauri-apps/fix-path-env-rs" }

Can you try creating the folder before creating the file? Tauri won't automatically create folders it doesn't need itself and i think file.create doesn't either.


Create styles.css

Create styles.css file in the root directory and insert the styles for the main blocks.

You have to add:

General styles
Contact info styles
Intro and skills styles
Experience and additional info styles

Connect styles to index.html


CORS error for POST requests

Describe the bug
I am running my application at http://localhost:8080 and the mock server is running at http://localhost:8091. I have added http://localhost:8080 to the list of origins in the config.yml.
Even with this configuration in order to successfully make a cross origin GET request from my application I had to manually add the header "Access-Control-Allow-Origin: *" in my GET.mock file.
But the POST requests are failing with CORS error at the OPTIONS request.
From the response headers it seems OPTIONS is not added in the
Access-Control-Allow-Methods: GET,HEAD,PUT,PATCH,POST,DELETE

To Reproduce
Steps to reproduce the behavior:

Try triggering a POST xhr request from  javascript in an application to the mock server running in different port.

Expected behavior
With CORS enabled, I should be able to successfully trigger POST requests from my application
Screenshots
Please find attached the screenshot for reference
Desktop (please complete the following information):

OS: [MacOs]
Browser [chrome, safari]
Version [latest]

@Ashwin2488
I was not able to replicate this scenario. I did run into a cors failure however I noticed, removing trailing slash from my origin, fixed the issue. (http://localhost:5500 instead of http://localhost:5500/)
If you wouldn't mind sharing a code snippet of the way you are making a request to the mock, I can try again to replicate this.

@shubhendumadhukar Sorry for acknowledging it late. Had a chance to check my code again today and now I am able to do a POST request without any CORS issue. Thanks!!