org.apache.http.concurrent.FutureCallback Class Not Fund

Hbase as Backend store ,ES as backend index server occurs the error
fix with follows
  <properties>
    <apache.httpcomponents.httpcore.version>4.4.4</apache.httpcomponents.httpcore.version>
    <apache.httpcomponents.httpclient.verion>4.5.2</apache.httpcomponents.httpclient.verion>

  </properties>

    <dependency>
      <groupId>org.apache.httpcomponents</groupId>
      <artifactId>httpcore</artifactId>
      <version>${apache.httpcomponents.httpcore.version}</version>
    </dependency>

    <dependency>
      <groupId>org.apache.httpcomponents</groupId>
      <artifactId>httpclient</artifactId>
      <version>${apache.httpcomponents.httpclient.verion}</version>
    </dependency>

@zhaochl  Sorry for the long delay. First thank you for providing the fix! Could you describe in more detail how to reproduce the error? Is it during create schema, insert data, or query use case? Also please provide the versions of HBase and Elasticsearch if possible.


[BUG] ExcelJS throws an error "Invalid range in character set" in IE11

🐛 Bug Report
I'm getting a "Invalid range in character set" error in IE11. I don't have any issues in Chrome or firefox.
Lib version: 4.0.1
Steps To Reproduce
Open the test page that uses ExcelJS library in IE11
The code below, is what I'm actually using on my page.
<script src="https://cdnjs.cloudflare.com/ajax/libs/babel-polyfill/7.10.1/polyfill.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/exceljs/4.0.1/exceljs.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/FileSaver.js/2.0.2/FileSaver.min.js"></script>

var workbook = new ExcelJS.Workbook();
var worksheet = workbook.addWorksheet('SheetName');

workbook.xlsx.writeBuffer().then(function(buffer) {
   saveAs(new Blob([buffer], { type: 'application/octet-stream' }), 'FileName.xlsx');
});

The expected behaviour:
ExcelJS should work fine in IE11.
I've rolled back to the 3.8.0 version and I am able to use the ExcelJS library again. Could you explain to me using ExcelJS library with version 4.0.1 on my page?

I faced the same problem. Could you please provide a working example?

@EugeniyKiyashko Please see issue #1213 .

Thanks for opening this request.
Please re-open if you still have issues.
Best of luck.

The "solutions" presented do not work, at least in the my simple html page. I have a issues with this and don't know what polyfill I should add on the page. Do you have any ideas or samples how it should works?


 With the default parameters, I only get  which goes on infinitely. With group-sizes 32 or 128, it produces some random text and goes on infinitely as well. I tried changing the tokenizer, as was suggested in another issue with this model, but it doesn't fix the issue.
MLX version: 0.17.1
macOS Sequoia 15 DP5

I am about to start the download for the just released command-r-plus-08-2024 (and the regular command-r-08-2024). I will report whether they have the same issue. Do you have an idea what might be the issue and/or can I check something specifically?
Thanks for the quick reply!

Do you have an idea what might be the issue and/or can I check something specifically?

Not yet.. but I can see that it used to work in an old version of MLX.. so something must have changed since then..

It doesn't like having the embedding quantized 🤔 ..

Ahh, that sounds reasonable given how sensitive the model was with for example also repeat penalty.
How can I exclude the embedding (and output) layers with mlx convert?

How can I exclude the embedding (and output) layers with mlx convert?

There isn't an option for that. You can hack the code for a quick fix. Change this line to:
    class_predicate = lambda _, m: hasattr(m, "to_quantized") and not isinstance(m, nn.Embedding)
    nn.quantize(model, q_group_size, q_bits, class_predicate)

Also, it may be the case that the new versions are not sensitive to quantizing the embedding.. that would be simpler.

Current hypothesis is there is a bug in the fast quantization for large arrays as this has a really high error:
import mlx.core as mx

w = mx.random.uniform(shape=(256000, 12288))
wq, scales, biases = mx.quantize(w, bits=8, group_size=32)
what = mx.dequantize(wq, scales=scales, biases=biases, bits=8, group_size=32)

print((w - what).abs().max())

@barronalex is looking into it. So maybe best to delay quantizing the large cohere model until we know more.

@vlbosch quantizing Command R Plus should work now, however; this will require using the main branch of MLX or waiting until the next release (hopefully next week).
You can install the main branch locally like so (it may take a couple minutes to build):
CMAKE_BUILD_PARALLEL_LEVEL="" pip install git+https://github.com/ml-explore/mlx.git

Thanks @awni and @barronalex for this quick fix! I just tried to convert the new Command R Plus-0824 model and it works. Output is as expected. I will let you know if I still find anything weird.
Btw, on macOS 15 DP you need to change Xcode-select with xcode-select --switch /Applications/Xcode-Beta.app/Contents/Developer or else you'll run into errors when building from git.


Remove all references to the stable release

Description of changes:
The stable releases were never fully supported and most controllers did not keep them up-to-date. Also, the purpose of deploying the "stable" major version could also be achieved using semver ranges with most tooling. This pull request removes all references to the stable release and replaces references to them by talking about GA major versions.
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

/lgtm


[fix][client] Oauth2 client credentials flow accepts private keys without content type

Motivation

Private key loading during Oauth2 client credentials flow initialization requires the passed URL to provide content-type, even when the URL scheme is not data.
Secondly, it also requires the content handler resolution even though InputStream is always used to parse the file content.
Modifications

In ClientCredentialsFlow.java,

URL content type is only required if the scheme is data
URLConnection getInputStream is used to get the content
loadPrivateKey visibility increased for testing

Verifying this change

[ ] Make sure that the change passes the CI checks.
[x] Added ClientCredentialsFlowTest to verify loading private keys

Does this pull request potentially affect one of the following parts:

If the box was checked, please highlight the changes

[ ] Dependencies (add or upgrade a dependency)
[ ] The public API
[ ] The schema
[ ] The default values of configurations
[ ] The threading model
[ ] The binary protocol
[ ] The REST endpoints
[ ] The admin CLI options
[ ] The metrics
[ ] Anything that affects deployment

Documentation

[ ] doc
[x] doc-required
[ ] doc-not-needed
[ ] doc-complete

Matching PR in forked repository
PR in forked repository: https://github.com/ozangunalp/pulsar/pull/1

I think this PR also needs the document (https://pulsar.apache.org/docs/3.0.x/security-oauth2/#authentication-types) because the URL now supports the format like resource:oauth2_key.json.

It now supports any URL protocol handler really. I forgot that there was a list of supported formats in the documentation. resource is a custom one so I am not sure if we need to add it to the list. I'll propose a change which suggests that other formats are also supported


Expose _validate_property() for scripting

_validate_property() has (at least) 2 uses in scripting:

convenient customization of exported property list (you can change usage without using _get_property_list()+_get()+_set())
customizing built-in properties (hiding them, disabling etc. Right now it's not possible at all)

This PR exposes it to users. I did it only for GDScript, as I'm not sure how to do it in other languages.
I also added a call to _validate_property() for exported properties. This is now possible:
@export var test = 1

func _validate_property(property):
    if property.name == "test":
        property.usage |= PROPERTY_USAGE_READONLY

the problem with passing property info to extensions remains

Pretty sure it can be done the same way as in _get_property_list(). My problem was with how these functions are defined in extensions. It's a spaghetti of method pointer typedefs. I didn't even look at C#, because I could compile without it 🙃

Pretty sure it can be done the same way as in _get_property_list().

For me the problem was that with validate it's a two way communication, whereas property list only returns a list of properties. For validate we need to construct GDExtensionPropertyInfo from PropertyInfo, pass it to extensions, and then somehow handle changes (is it a reference, is it a value?) Which was way beyond my comfort zone to implement. I'm sure it's doable :)

I changed the calling order. Now the script _validate_property() is called after the virtual one, so users can validate already validated properties.
I also added a C# method stub.

Thanks!


Fix native memory leak

jclass objects obtained in callback methods should be manually released
when no longer relevant
Signed-off-by: Tzafrir Poupko<EMAIL_ADDRESS>

@petreeftime can you please have a look?

Local refs get deleted when control returns back to the JVM, so I don't understand why they would leak. Can you provide an example of this happening or a way to reproduce this?

It's the same rational as a previous commit I've contributed. In a callback block, the control does not return to the JVM.
https://github.com/intel-iot-devkit/tinyb/commit/0194377216938337f541911803dfddd7d532da6b
For an example
Wrapping the below line in for (int i=0;i<10000;i++)
https://github.com/intel-iot-devkit/tinyb/blob/master/java/jni/BluetoothGattCharacteristic.cxx#L142
Exhibit a rapid and noticeable memory leak when registering for notification from a device that streams data.


Dont upgrade conda

At the moment it seems like conda 4.6 is very unstable
Hopefully fixes ci builds on Azure
On the other hand there has definitely been issues where an old version of conda has not mixed well with new packages

We went with #1476 instead


[VS Code] Cannot read property 'setShareState' of undefined

Error:
"Cannot read property 'setShareState' of undefined" from VS Live Share extension
Steps to Reproduce:

Sign in
Click "Share" in status bar
Error message shown in corner

Version Data

extensionName
VSLS

extensionVersion
0.3.535

protocolVersion
2.2

applicationName
VSCode

applicationVersion
1.26.0

platformName
MacOS

platformVersion
17.7.0

@srmcconnell we had a service outage and this maybe related to that. The outage is now resolved. Could you please try again and see if it works for you now?

This is still happening as of this morning.

Can you share your logs with us? (Cmd+Shift+P, "Live Share: Export Logs") should gather them up.

Of course. Please find them attached.

Uninstalling and reinstalling resolved issue.


Tp2000 1185  maintenance mode

TP2000-1185 Your PR title here

Why

Some types of application update require that TAP is out of action for a short period of time - or at least, no data should be changed during that time. A means of preventing active user interfaction with the service should provided, while also showing an informative message.
What

This PR:

adds ENV variable for MAINTENANCE_MODE to be set to True whenever we need to take TAP down temporarily
adds a url/template and view for a page letting users know TAP is down for maintenance
adds middleware to check the maintenance mode variable and redirect accordingly
adds test for the maintenance mode redirect and page content

Codecov Report
Attention: 14 lines in your changes are missing coverage. Please review.

Comparison is base (e1e87cd) 93.33% compared to head (5ad86a3) 93.29%.
Report is 1 commits behind head on master.

Files
Patch %
Lines

settings/common.py
16.66%
8 Missing and 2 partials :warning:

common/middleware.py
72.72%
2 Missing and 1 partial :warning:

urls.py
50.00%
0 Missing and 1 partial :warning:

Additional details and impacted files
@@            Coverage Diff             @@
##           master    #1137      +/-   ##
==========================================
- Coverage   93.33%   93.29%   -0.04%
==========================================
  Files         571      572       +1
  Lines       42631    42701      +70
  Branches     3069     3074       +5
==========================================
+ Hits        39788    39839      +51
- Misses       2249     2262      +13
- Partials      594      600       +6

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


2024-04-13 version

today I updated my Solar test digi +WX and noticed a few things:

in the digi+WX, if the BME is disconnected the digi/iGate do not start and display "error, BME configured but BME missing" would it be possible to bypass this, and have the digi working even in case the BME lost connectivity or get damaged?
the display is not shutting down  even if selected.
I enabled "power saving mode", and system "shut down at low level:". When I write the level, how the parameter is written? with coma, or point? with decimal? I put 3.2  with a point and one decimal but not sure it is the right format.
The wiki warm about carefull connection to monitor external battery, and indicate to check for a specific information. But in fact this specific information is missing (or I couldn't found)
Thanks for the great job
iw2ejh

good idea...  will check it out
will check it out
with "." always
where does it say specific information? do you mean about voltage divider?

#"where does it say specific information? do you mean about voltage divider?"

In the wiki,   https://github.com/richonguzman/LoRa_APRS_iGate/wiki/11.-VSCODE-iGate-Configuration
-OTHER
"externalVoltageMeasurement" : true will measure a 12V battery through a voltage divider resistor net and send its Voltage to APRS-IS. Default is false. Look for special info on this Wiki to connect the battery and voltage divider to avoid burning the board.

-but I cannot found other special info.

between all the changes this was moved and deleted...  will add it soon
meanwhile:
its a voltage divider for external voltage measurement.
Max Voltage to read 15v
resistor 1: 100K (between + of battery to ESP32 pin)
resistor 2: 27K from ESP32 pin to GND

In "Received Packets" the last 20 received packets should be listed, but here on my end it only shows 11 ... not a big deal, but wanted to let you know.
73 Martin
OE5REO

many things of the list are already done... I have taken notes of the missing ones to add/Check them soon


add: configure cilium via HelmChartConfig

Description

This pr allows the user to configure some values for the cilium cni.
Type of change

[ ] 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)
[x] This change requires a documentation update
[ ] Small minor change not affecting the Ansible Role code (GitHub Actions Workflow, Documentation etc.)

How Has This Been Tested?

Tested it with the following settings:

rke2_ha_mode: True
loadbalancer (haproxy)
3 master server

Found: https://github.com/lablabs/ansible-role-rke2/issues/236


Still maintained?

Are you still maintaining this? I'm very interested in it :)

I am, just moved states, and transitioned to a new role at Crestron so my development has slowed a bit however, the module as it stands is already in production at a few locations including my house. My house only has 3 rooms/groups and 8 bulbs however the largest deployment I have done with them was 6 rooms/groups with upwards of 30-40 bulbs.
Future updates I will be tackling will be adding some threading and queuing support for under the hood performance improvements and changing the IDing schema I currently use which currently relies on a room ID numerical value rather then the room name which would be easier for a programmer to work with.
I ran into a bug in the field where the Scenes and Groups bulb lists were not in the same order which I used to reconcile which scenes are tied to which room, so given that unusual issue I added manual scene IDs as a parameter field.

On Mar 30, 2017, at 1:00 PM, innocuoussoul<EMAIL_ADDRESS>wrote:
Are you still maintaining this? I'm very interested in it :)
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub https://github.com/mthyden/PhillipsHueSIMPLSharp/issues/1, or mute the thread https://github.com/notifications/unsubscribe-auth/AEluUhpi4EIkTPoOGIqv49n_T3Vm_SSfks5rrAnRgaJpZM4Mu2Zv.

Thats awesome, congrats on the new role! :)
I've been trying to get this up and running as a test with a CP3 and a tsw-1052 and can't seem to get anything to move... I'm still poking at it though :)

Is your bridge discovered by the prof module? Make sure that's discovered and is pulling an API key otherwise nothing will work. Then make sure with one of the room modules you do an initial poll
Sent from my iPhone

On Mar 30, 2017, at 3:13 PM, innocuoussoul<EMAIL_ADDRESS>wrote:
Closed #1.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or mute the thread.


Implement Role Management and Validation for User Documents

Description:
This issue focuses on implementing role management and validation for user documents in the tanam-documents collection. The following tasks need to be accomplished:

Document ID Validation:

Ensure that the document ID matches a Firebase Auth UID.
Remove the document if the ID does not match any Firebase Auth UID.

Assign Admin Role:

Automatically assign the admin role to the first document written in the collection.

Role Enforcement:

Include the role as part of the document.
Enforce security rules to prevent unauthorized changes to the role field in the document.

Role Management:

Set the role in custom claims when the role is changed in the document.

Role Removal:

Remove the role from custom claims if a user document is deleted.

Acceptance Criteria:

[x] Document ID validation is implemented and documents with non-matching IDs are removed.
[x] The first document written in the collection is assigned the admin role.
[ ] Security rules are enforced to prevent changes to the role field.
[x] Custom claims are updated with the role when the role is changed in the document.
[x] Custom claims are cleared of roles when a user document is deleted.

Notes:

Ensure robust error handling and logging for all operations.
Security rules should be thoroughly tested to ensure compliance.
Documentation should be updated to reflect these changes.

Resolved https://github.com/oddbit/tanam/pull/394


Beds and Plants API

The end point for all beds in a garden as well as the end point for all plants in a bed must be adjusted.
We would define the health states as follows:
Health types

Watering
Nutrient Deficiency
Disease Detection

Log levels

1 -> Good (green)
2 -> Warning (yellow)
3 -> Attention/Danger(?) (red)
not present -> N/A (blue)

Example for the beds end point:
{
   "beds":[
      {
         "id":1234,
         "location":1,
         "plant":"Beans",
         "variety":"White Beans",
         "plants":"http://localhost:3000/companies/{company_id}/gardens/{garden_id}/beds/1234/plants",
         //##########
         //Average values, should be calculated in the backend.
         "soil_humidty":70,
         "harvest":"1 week",
         "yield":100,
         "health":[
            {
               "type":"Watering",
               "loglevel":1
            },
            {
               "type":"Nutrient Deficiency",
               "loglevel":3
            },
            {
               "type":"Disease Detection",
               "loglevel":2
            }
         ]
         //##########
      },
      {
         "id":7777,
         "location":3,
         "plant":"Beans",
         "variety":"White Beans",
         "plants":"http://localhost:3000/companies/{company_id}/gardens/{garden_id}/beds/7777/plants",
         "soil_humidty":33,
         "harvest":"5 week",
         "yield":42,
         "health":[
            {
               "type":"Watering",
               "loglevel":3
            },
            {
               "type":"Nutrient Deficiency",
               "loglevel":1
            },
            {
               "type":"Disease Detection",
               "loglevel":3
            }
         ]
      }
   ]
}

Example for the end point of all plants in a bed:
{
   "plants":[
      {
         "id":222,
         "bedid":1234,
         "location":1,
         "plant":"Beans",
         "variety":"White Beans",
         "soil_humidty":70,
         "harvest":"1 week",
         "yield":100,
         "health":[
            {
               "type":"Watering",
               "loglevel":1
            },
            {
               "type":"Nutrient Deficiency",
               "loglevel":3
            },
            {
               "type":"Disease Detection",
               "loglevel":2
            }
         ]
      },
      {
         "id":555,
         "bedid":1234,
         "location":1,
         "plant":"Beans",
         "variety":"Rocket Beans",
         "soil_humidty":70,
         "harvest":"1 week",
         "yield":100,
         "health":[
            {
               "type":"Watering",
               "loglevel":1
            },
            {
               "type":"Nutrient Deficiency",
               "loglevel":3
            },
            {
               "type":"Disease Detection",
               "loglevel":2
            }
         ]
      }
   ]
}

The current state of the seerep server does not give multiple warn_levels for health. There is just one. Do we need to extend Seerep or how will the log level be collected? @jarkenau @pbrozi @mklpiening

The different log levels are needed for the health status row as it has been designed so far. If we cannot get this data and it is not foreseen that it will be available from SEEREP at a later date, we will have to reconsider the pop-up and the presentation in the table.

The rest should be covered by SEEREP.

Yes, your idea makes sense.
We initially (before the revisited mockups) thought of the deficiencies being analyzed by our Pipeline with just the combined result being put as a warn message into seerep. This would allow us to plan actions and send them to the gardeners (as one combined warn level).
Our approach, however, would also create kind of a black box around the analysis part, which may be ok for unexpericned garneners, but unacceptable for experienced ones.
So lets go your way :)

Alright, I now added the mock data to the seerep dummy in a way, that we dont need to change the proto files, since seerep will be used for way more project than just our plant mapping ;)

I thereby left some fields intentionally empty or just did not add them, to simulate a computation that has not been finished yet - so you just need to show N/A here ^^
I also added some warn messages with further information for you to test the notification widget.
In terms of loglevel: the status good (1) to bad (3) is always meant from the gardeners perspective. So, while i also called it "nutrients" now, a good "nutrient deficiency" would mean, that the plant has little to no deficiency. This applies to all types of health status ("diseases", "nutrients", "water").
Also keep in mind, that we might add new health measurement types after your project has finished :)

@mklpiening Thanks a lot! 😎
@fmarahre The way it is displayed now, it doesn't seem to me that it can be expanded very well if there are more than three messages. It is designed for exactly three messages, isn't it? Then we would have to look at how to keep the display basically the same, but the table doesn't look weird with more than three badges.

Maybe make it configurable by the user, which status to show, if it isn't too complicated by now (in difference table columns for example). The remaining health measurements could then be shown in the popup, as it was in the mockup ;)

A good idea, we'll take a closer look. 🤓

@pbrozi Do you need more information or can it be implemented like this? If you need/want to change something in the JSON structure we have proposed so far, please give us feedback.

I remade the api as described in the issue in 7f4e955eb8e11fb6f4ce23b181d21e7d8ba8411c.
Some things:

What is "location"? And where do I find it?
The data you want costs the beds endpoint with the current dummy data 600 gRPC requests (100 per bed) and ~20 sec.

Maybe @pbrozi  knows more about what it is and where to find it.
20 seconds sounds long. 🤯 The data are all required. 😅
Is it possible to cache the plant data to reduce the polling time for a second call?
And would it not be possible to stream the beds then bed by bed? These could then be displayed one by one. It would still take 20 seconds, but the user does not have to wait 20 seconds for the result.

Managed to make it stream the response for beds

As far as I know, location should be the id of the bed the plant is in. The bed-id can be obtained from the database.

@jarkenau If the coordinates are sent only with the plants, then we cannot display anything on the map until a bed is selected.

Then you need some sort of array with all location from plants of a bed right? Could you give @Anafabula some hints of a useful structure for that?

The plants simply as an array with the coordinates for each bed.
However, the ID/location is needed to establish a relation between the markers on the map with the bed/plant entry in the table.
{
   "beds":[
      {
         "id":1234,
         "plant":"Beans",
         "variety":"White Beans",
         "plants":"http://localhost:3000/companies/{company_id}/gardens/{garden_id}/beds/1234/plants",
         "soil_humidty":70,
         "harvest":"1 week",
         "yield":100,
         "health":[
            {
               "type":"Watering",
               "loglevel":1
            },
            {
               "type":"Nutrient Deficiency",
               "loglevel":3
            },
            {
               "type":"Disease Detection",
               "loglevel":2
            }
         ],
         "plant_coords":[
            {
               "lat": "52.31703822683545",
               "lng": "7.630155086517335"
            },
            {
               "lat": "52.31703822683545",
               "lng": "7.630155086517335"
            },
            {
               "lat": "52.31703822683545",
               "lng": "7.630155086517335"
            },
         ]
      }
   ]
}

So actually like this? :grin:
 "plant_coords":[
            {
               "id": 5
               "lat": "52.31703822683545",
               "lng": "7.630155086517335"
            },
            {
               "id": 7
               "lat": "52.31703822683545",
               "lng": "7.630155086517335"
            },
            {
              "id": 9
               "lat": "52.31703822683545",
               "lng": "7.630155086517335"
            },
         ]

You can also add the bed ID to the plant coordinates. But then it must be the ID of the bed.
{
   "beds":[
      {
         "id":1234,
         "plant":"Beans",
         "variety":"White Beans",
         "plants":"http://localhost:3000/companies/{company_id}/gardens/{garden_id}/beds/1234/plants",
         "soil_humidty":70,
         "harvest":"1 week",
         "yield":100,
         "health":[
            {
               "type":"Watering",
               "loglevel":1
            },
            {
               "type":"Nutrient Deficiency",
               "loglevel":3
            },
            {
               "type":"Disease Detection",
               "loglevel":2
            }
         ],
         "plant_coords":[
            {
               "id": 1234,
               "lat": "52.31703822683545",
               "lng": "7.630155086517335"
            },
            {
               "id": 1234,
               "lat": "52.31703822683545",
               "lng": "7.630155086517335"
            },
            {
               "id": 1234,
               "lat": "52.31703822683545",
               "lng": "7.630155086517335"
            },
         ]
      }
   ]
}

The individual beds are streamed now, then it would look like this.
{
   "id":1234,
   "plant":"Beans",
   "variety":"White Beans",
   "plants":"http://localhost:3000/companies/{company_id}/gardens/{garden_id}/beds/1234/plants",
   "soil_humidty":70,
   "harvest":"1 week",
   "yield":100,
   "health":[
      {
         "type":"Watering",
         "loglevel":1
      },
      {
         "type":"Nutrient Deficiency",
         "loglevel":3
      },
      {
         "type":"Disease Detection",
         "loglevel":2
      }
   ],
   "plant_coords":[
      {
         "id":1234,
         "lat":"52.31703822683545",
         "lng":"7.630155086517335"
      },
      {
         "id":1234,
         "lat":"52.31703822683545",
         "lng":"7.630155086517335"
      },
      {
         "id":1234,
         "lat":"52.31703822683545",
         "lng":"7.630155086517335"
      }
   ]
}

Does the plants endpoint need the coordinates as well? Since the pointcloud needed for the coordinates and the measurement for the rest are separate entries in the same list with different IDs idk how to find the pointcloud and measurement that belong to each other.

Considering that it should also be possible to display the beds individually, I would say that the plants of Plants Endpoint also hold the coordinates. I understand your question though, it feels a bit duplicated.

Is the id with the coordinates necessary? When you are iterating over the list, you probably also have the bed object the list belongs to, right? And it's the same for all entries.

The coordinates are not absolutely necessary. The markers can also be created with the ID of the bed. If you have a better idea, go for it.

Considering that it should also be possible to display the beds individually, I would say that the plants of Plants Endpoint also hold the coordinates. I understand your question though, it feels a bit duplicated.

It's not about it being duplicated. We get a list like
geometries: [
	GeometryInfo {
		name: "crop 29",
		uuid: "e79b844a5f9e429ea84e1a9f5a700d40",
		r#type: "pointcloud",
		frame_id: "ground",
		stamp: Some(
			Timestamp {
				seconds:<PHONE_NUMBER>,
				nanos: 0,
			},
		),
		labels: [
			"5cc606b4b4904f1aaae9516844d7ec38",
			"b45b402cab6c47caba94176b5767c16b",
		],
	},
	GeometryInfo {
		name: "crop 29",
		uuid: "4476adeaf36541408c042c71753b746b",
		r#type: "measurement",
		frame_id: "ground",
		stamp: Some(
			Timestamp {
				seconds:<PHONE_NUMBER>,
				nanos: 0,
			},
		),
		labels: [
			"5cc606b4b4904f1aaae9516844d7ec38",
			"b45b402cab6c47caba94176b5767c16b",
		],
	},
	GeometryInfo {
		name: "crop 30",
		uuid: "f892521817554bf7a500e495b395e9ec",
		r#type: "pointcloud",
		frame_id: "ground",
		stamp: Some(
			Timestamp {
				seconds:<PHONE_NUMBER>,
				nanos: 0,
			},
		),
		labels: [
			"_8dcb2a39d81c476db37b5a3077200245",
			"b45b402cab6c47caba94176b5767c16b",
		],
	},
	GeometryInfo {
		name: "crop 30",
		uuid: "fbeac53874034f3f8abe378ee495c875",
		r#type: "measurement",
		frame_id: "ground",
		stamp: Some(
			Timestamp {
				seconds:<PHONE_NUMBER>,
				nanos: 0,
			},
		),
		labels: [
			"_8dcb2a39d81c476db37b5a3077200245",
			"b45b402cab6c47caba94176b5767c16b",
		],
	},
	GeometryInfo {
		name: "crop 31",
		uuid: "5162fef543f24b1b822533e5588bb8b9",
		r#type: "pointcloud",
		frame_id: "ground",
		stamp: Some(
			Timestamp {
				seconds:<PHONE_NUMBER>,
				nanos: 0,
			},
		),
		labels: [
			"7c6ba0354bbe4cb6a1404002498c1c7d",
			"8f460e87b27e4fb385e84f4a7dba677f",
		],
	}
]

With no ids indicating for sure which pointcloud and measurement belong to each other. Idk if "name" is definite.

You can customize the structure as you think is easiest for you to generate the JSON. Also you can drop the ID from the plant coordinates.


Added function in xorca.lib to read zarr stores

I've implemented the changes you suggested - the function can now read arbitrary combinations of netcdf files and/or zarr stores.

I've also added zarr to the list of dependencies in the environment.yml file...

We should add some tests here. The simplest would be to just pass the netCDF-based tests to the new auto loader and then to add some based on Zarr as well.

@swantjebastin can you merge master into this? Then, we'll be able to have automatic tests on this branch again. (I just fixed CI in #38.)
Here's how to do this: https://docs.github.com/en/github/collaborating-with-issues-and-pull-requests/merging-an-upstream-repository-into-your-fork (with DEFAULT_BRANCH_NAME=open_zarr, with ORIGINAL_OWNER/ORIGINAL_REPOSITORY=willirath/xorca, and with BRANCH_NAME=master)

Alternatively, we can also merge this PR now and then add test in a new PR.

Alternatively, we can also merge this PR now and then add test in a new PR.

Let's do this...


fix Do not update submodule everytime

Proposed changes
Issue Number: close #xxx
Problem summary
Remove an extra space character
Checklist(Required)

[ ] Does it affect the original behavior
[ ] Has unit tests been added
[ ] Has document been added or modified
[ ] Does it need to update dependencies
[ ] Is this PR support rollback (If NO, please explain WHY)

Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

run buildall

TeamCity pipeline, clickbench performance test result:
the sum of best hot time: 34.93 seconds
stream load tsv:          427 seconds loaded<PHONE_NUMBER>9 Bytes, about 167 MB/s
stream load json:         23 seconds loaded<PHONE_NUMBER> Bytes, about 97 MB/s
stream load orc:          60 seconds loaded<PHONE_NUMBER> Bytes, about 17 MB/s
stream load parquet:          30 seconds loaded 861443392 Bytes, about 27 MB/s
https://doris-community-test-1308700295.cos.ap-hongkong.myqcloud.com/tmp/20230414102355_clickbench_pr_129150.html


release: release 1.5.0

[ ] I have registered the PR changes.

Ⅰ. Describe what this PR did
release 1.5.0
Ⅱ. Does this pull request fix one issue?

Ⅲ. Why don't you add test cases (unit test/integration test)?
Ⅳ. Describe how to verify it
Ⅴ. Special notes for reviews

Codecov Report

Merging #4610 (be9c3eb) into master (5ddfbc1) will decrease coverage by 2.79%.
The diff coverage is 52.46%.

@@             Coverage Diff              @@
##             master    #4610      +/-   ##
============================================
- Coverage     51.91%   49.11%   -2.80%
- Complexity     3500     4062     +562
============================================
  Files           639      733      +94
  Lines         21181    25562    +4381
  Branches       2634     3154     +520
============================================
+ Hits          10996    12556    +1560
- Misses         9091    11671    +2580
- Partials       1094     1335     +241

Impacted Files
Coverage Δ

...c/main/java/io/seata/common/ConfigurationKeys.java
0.00% <0.00%> (ø)

...ommon/src/main/java/io/seata/common/Constants.java
100.00% <ø> (ø)

...n/src/main/java/io/seata/common/DefaultValues.java
0.00% <0.00%> (ø)

...io/seata/common/exception/DataAccessException.java
100.00% <ø> (ø)

...eata/common/exception/EurekaRegistryException.java
100.00% <ø> (ø)

...java/io/seata/common/exception/RedisException.java
0.00% <ø> (ø)

...a/common/exception/ShouldNeverHappenException.java
100.00% <ø> (ø)

...common/exception/SkipCallbackWrapperException.java
0.00% <0.00%> (ø)

...java/io/seata/common/exception/StoreException.java
100.00% <ø> (ø)

...main/java/io/seata/common/holder/ObjectHolder.java
50.00% <0.00%> (+50.00%)
:arrow_up:

... and 456 more


SideMenu taking space on small screens

Side navigation bar is taking space on small screen device. User can toggle the side menu from settings page but can we make it default toggle hide?
Expected Behavior
To collapse sidebar by default.
Current Behavior
Have to go to settings page to collapse it.

NodeJS Version (v14):
Operating System and Version (e.g. Ubuntu 14.04):
Browser Information:

Perhaps #6905 is the right solution here 🙂

Thanks. Are we planning to merge this PR?

Yes - but this tackles mobile screen sizes. Otherwise #7521 added <Sidebar disableExpandOnHover> - not sure if this is more what you are aiming for here :)


Cannot set InitValue for field with data type = Duration

ex:
field(22;"Process Duration";Duration)
{
InitValue=60 days;
}
The property 'InitValue' can only be set if the property 'Type' is set with any of the values of :'BigInteger,Boolean,Code,Date,DateFormula,DateTime,Decimal,Integer,Option,RecordID,Text,Time,TextConst'

Yes, the InitValue for the Duration type is not supported.
Do you see this as a big problem for your scenarios?
We did not see this used often therefore the addition of the new syntax (like 60 days, 2 minutes, etc) keeps being postponed.


Added README for deno

@colinhacks Github has a weird bug/feature; where if you fork a project more than once, the second fork goes under a different context. So anyway, I deleted it there, and made the changes you requested here!


wip: support custom repr() callable for attributes

see #567
Pull Request Check List
This is just a reminder about the most common mistakes.  Please make sure that you tick all appropriate boxes.  But please read our contribution guide at least once, it will save you unnecessary review cycles!
If an item doesn't apply to your pull request, check it anyway to make it apparent that there's nothing to do.

[ ] Added tests for changed code.
[ ] New features have been added to our Hypothesis testing strategy.
[ ] Changes or additions to public APIs are reflected in our type stubs (files ending in .pyi).

[ ] ...and used in the stub test file tests/typing_example.py.

[ ] Updated documentation for changed code.

[ ] New functions/classes have to be added to docs/api.rst by hand.
[ ] Changes to the signature of @attr.s() have to be added by hand too.
[ ] Changed/added classes/methods/functions have appropriate versionadded, versionchanged, or deprecated directives.

[ ] Documentation in .rst files is written using semantic newlines.
[ ] Changes (and possible deprecations) have news fragments in changelog.d.

If you have any questions to any of the points above, just submit and ask!  This checklist is here to help you, not to deter you from contributing!

not sure  why the doctest fails. in an interactive shell it works:
>>> import attr
>>> @attr.s
... class C(object):
...     user = attr.ib()
...     password = attr.ib(repr=lambda value: '***')
...
>>> C("me", "s3kr3t")
C(user='me', password=***)

The doctests says    ...     password = attr.ib(repr=False).

@Julian is this good enough for your – I'm afraid ancient – #212?

Cool. Other than https://github.com/python-attrs/attrs/issues/567#issuecomment-528773554, seems likely... Can review the patch more carefully in a bit.

Cool! Left random comments just to help myself understand what this was doing mostly, but yeah looks like it'd indeed hit #212.

Additionally to what Julian wrote,  please add an example to typing_example.py to verify typing works. Thanks!

Almost there, but please also add an versionchanged tag to attrib, thanks!

sure, but what's the right value?

Almost there, but please also add an versionchanged tag to attrib, thanks!

sure, but what's the right value?

Next release is 19.2.0.

Additionally to what Julian wrote, please add an example to typing_example.py to verify typing works. Thanks!

added in b1bd940d9c2dbc395b5640df92cda179eda74bc4

ok, please review again. i think i fully addressed all comments so far.

pr description updated as well

:rocket:  thanks all the quick turn-around


Prepare for Publishing to NPM

Changes

Prepares Plugin for NPM
Removes Bower
Removes Zepto in favour of jQuery
Pins NPM deps
Migrate source code linting to eslint
Cleans up LICENSE, README, and package.json

How To Test

Checkout code
Refresh node modules with rm -rf node_modules && npm i
Run tests with npm test (will run linter too)

TODOs:

[ ] +1
[x] Passes tests locally (npm test)
[x] Passes tests on CircleCI
[x] Updated README
[x] Updated CHANGELOG

Reminder: Be excellent to each other. Follow these guidelines to help you do that when giving feedback!

Self 👍 #yolo


Investigate the impact of fertility intention features

I posted a spreadsheet comparing results from four different sets of features here. I'm also including a screenshot for reference.


Use local mode for program tests

Since we're only running previews, we can run in "local" mode, rather than use the Cloud backend. This should make the tests run considerably faster. (Updates will continue to use the Cloud backend, however.)

Ah, hold a moment -- I didn't mean to check in these go.mod.txt files. Will remove.


Example on Saving and Restoring in a Class Component

Thank you for this library. Just wondering is there an example on restoring a class component without using  useZoomPanHelper

What do you mean with "restoring a class component"?

Thank you @moklick  for the response. I am trying to figure out how to restore a node's position when I save and restore. The issue is I am using a class component i.e
class Example extends React.Component<any,any> { render(){...}}

and not a functional component so I can't call useZoomPanHelper. I need the transform method in-order for my nodes to return to the previous positions but I am not sure how to do that in class component. The example shown here https://reactflow.dev/examples/save-and-restore/ only shows how to to do it in a functional component.  It utilizes hooks which I have no idea how to replicate in a class component.

You can use the setTransform of the react flow instance https://reactflow.dev/docs/api/react-flow-instance/

Thank you @moklick

@moklick  how can i use the setCenter function of useZoomPanHelper in a class instance?  I'm using dagre for automatic layout and trying to focus on the first node on render, but I don't see a function in the instance page you linked.


Expose processContent() function to Plugins

⚠ Please check that this feature request hasn't been suggested before.

[X] I searched previous Ideas in Discussions didn't find any similar feature requests.
[X] I searched previous Issues didn't find any similar feature requests.

🔖 Feature description
I would like to use the ReadItLater plugin to generate notes from other plugins and user scripts from plugins like:

QuickAdd
Templater
Modal Forms
Etc…

if we could expose the processContent() function or create a similar function in ReadItLater that is exposed through the plugin API so other plugins and scripts could execute it and get the generated text returned to the script that is calling the function.  This would make this plugin even more extendable and useful.
✔ Solution
….
❓ Alternatives
I was going to fork this plugin and add my own features but thought I would put the idea here first as I would like to see it in this plugin instead
📝 Additional Context
Thanks for this plugin It works good and has a nice structure to add other sites

Seconding this request!


Quick start instructions are swapped

The quick start instructions were correct, but this commit inverted them:
https://github.com/jondot/goweight/commit/746c1a5c7d649ec5d3faed6f9fe4d687b5c22a91
I think that commit should be reverted.

@jondot ping :-)

go get instructions work with the Go modules, but the repo needs to be checked in to GOPATH before 1.11.


inconsistent results for 'trace_len_skewness_hist' and 'trace_len_kurtosis_hist'

In different branches, there are different results:
main: {'trace_len_skewness_hist': 7.250526815880918, 'trace_len_kurtosis_hist': 87.0376906898399}
4-...: {'trace_len_skewness_hist': 2.6128507781562513, 'trace_len_kurtosis_hist': 4.931206347805768}

Problem solved: In main the incorrect feature value is passed when saving results. https://github.com/lmu-dbs/feeed/blob/ed3567c0f7b9da1546b76dcbbb06b13e0da15b30/feeed/trace_length.py#L64.
Branch 4-select-single-feature-for-compu is correct


feat: verify oca bundle cache

Summary of Changes
Check the integrety of the OCA bundle file system cache
Related Issues
n/a
Pull Request Checklist
Tick all boxes below to demonstrate that you have completed the respective task. If the item does not apply to your this PR check it anyway to make it apparent that there's nothing to do.

[x] All commits contain a DCO Signed-off-by line (we use the DCO GitHub app to enforce this);
[x] Updated LICENSE-3RD-PARTY.md for any added dependencies or vendored components;
[x] Updated documentation as needed for changed code and new or modified features;
[x] Added sufficient tests so that overall code coverage is not reduced.

If you have any questions to any of the points above, just submit and ask! This checklist is here to help you, not to deter you from contributing!
Pro Tip 🤓

Read our contribution guide at least once; it will save you a few review cycles!
Your PR will likely not be reviewed until all the above boxes are checked and all automated tests have passed.

PR template adapted from the Python attrs project.

Will this also fix the mismatched file naming that Clecio mentioned?

Will this also fix the mismatched file naming that Clecio mentioned?

I don't think it's mismatched naming. It's just how the logs read when it saves the index file as oca.json and then each of the bundle by its SHA256 identifier in that index file.


Improved initial value in useRefs - changed useRefs to more suitable hooks

Details
Optimize setting initial ref in functional components.
The code we put in initial ref is invoked on each render, even if only first invocation is used for setting initial state.
React docs explaining the issue: https://react.dev/reference/react/useRef#avoiding-recreating-the-ref-contents .
I intended to call initial ref value only once, but after thoroughly reading the code I saw that we could(should) replace refs with other hooks those refs are never modified.
Fixed Issues

$ https://github.com/Expensify/App/issues/30208
PROPOSAL: Approved on slack
Tests

Same as QA

[x] Verify that no errors appear in the JS console

Offline tests

Same as QA
QA Steps

Verify timezone selection works
Verify Request Money and Send Money flows work

[ ] Verify that no errors appear in the JS console

PR Author Checklist

[x] I linked the correct issue in the ### Fixed Issues section above
[x] I wrote clear testing steps that cover the changes made in this PR

[x] I added steps for local testing in the Tests section
[x] I added steps for the expected offline behavior in the Offline steps section
[x] I added steps for Staging and/or Production testing in the QA steps section
[x] I added steps to cover failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)
[x] I tested this PR with a High Traffic account against the staging or production API to ensure there are no regressions (e.g. long loading states that impact usability).

[x] I included screenshots or videos for tests on all platforms
[x] I ran the tests on all platforms & verified they passed on:

[x] Android: Native
[x] Android: mWeb Chrome
[x] iOS: Native
[x] iOS: mWeb Safari
[x] MacOS: Chrome / Safari
[x] MacOS: Desktop

[x] I verified there are no console errors (if there's a console error not related to the PR, report it or open an issue for it to be fixed)
[x] I followed proper code patterns (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick)
[x] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method

[x] If any non-english text was added/modified, I verified the translation was requested/reviewed in #expensify-open-source and it was approved by an internal Expensify engineer. Link to Slack message:

[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is approved by marketing by adding the Waiting for Copy label for a copy review on the original GH to get the correct copy.
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I followed the guidelines as stated in the Review Guidelines
[x] I tested other components that can be impacted by my changes (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar are working as expected)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] I verified that if a function's arguments changed that all usages have also been updated correctly
[x] If a new component is created I verified that:

[x] A similar component doesn't exist in the codebase
[x] All props are defined accurately and each prop has a /** comment above it */
[x] The file is named correctly
[x] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[x] The only data being stored in the state is data necessary for rendering and nothing else
[x] If we are not using the full Onyx data that we loaded, I've added the proper selector in order to ensure the component only re-renders when the data it is using changes
[x] For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
[x] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
[x] All JSX used for rendering exists in the render method
[x] The component has the minimum amount of code necessary for its purpose, and it is broken down into smaller components in order to separate concerns and functions

[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG))

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.
[x] I have checked off every checkbox in the PR author checklist, including those that don't apply to this PR.

Screenshots/Videos

Android: Native
https://github.com/Expensify/App/assets/6872083/f7d5848b-5fc1-4c9d-9fd3-9ca512e2c86d

Android: mWeb Chrome
https://github.com/Expensify/App/assets/6872083/2ce4c555-0a7c-4ddd-aad2-b14536c5d0e0

iOS: Native
https://github.com/Expensify/App/assets/6872083/b47b75de-9f0f-4c64-bac9-93c321c6d17b

iOS: mWeb Safari
https://github.com/Expensify/App/assets/6872083/9cecf455-46e9-4f98-b6bb-8cd1c95ae3d9

MacOS: Chrome / Safari
https://github.com/Expensify/App/assets/6872083/3c766594-99db-458b-9f3e-2df3e06d6549

MacOS: Desktop
https://github.com/Expensify/App/assets/6872083/a34dc7b8-3955-4c4f-9178-85730a7913e9

@kidroca Good point that we can achieve the same with useState. It's still a discussion which is more descriptive (and if we let people chose which to use we will end up in both hooks used interchangeably in such cases). I think new hook useInitialValue<T>(initialStateFunc: () => T) which would call useState and return only the value would be best suited for this problem. WDYT?

@sebryu 👍

I think new hook useInitialValue<T>(initialStateFunc: () => T) which would call useState and return only the value would be best suited for this problem. WDYT?

I like the idea of having a useInitialValue hook it makes the intent clear

@Li357 Thanks for comments and suggestions 👍 I've applied them all. Let me know if you have any other concerns

@allroundexperts conflicts fixed

I will go ahead to squeeze this clean up in since there was a lot of conflicts. @Li357 please still feel free to review

:hand: This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release.

🚀 Deployed to staging by https://github.com/mountiny in version: 1.3.92-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

🚀 Deployed to production by https://github.com/Beamanator in version: 1.3.92-4 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

🚀 Deployed to staging by https://github.com/mountiny in version: 1.3.93-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

🚀 Deployed to production by https://github.com/Beamanator in version: 1.3.93-1 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅


Update documentation to reflect new multipage sample app from version 2.5 or higher

The counter app is used for documentation for example integration test and other tests but then there is no example to test clicking a button and say landing on another page or going back.  Thus, the entirety of Flutter documentation should be updated to include examples using the new multipage sample app from Flutter 2.5.  Also debugging tests like explained here: https://medium.com/flutter-community/hot-reload-for-flutter-integration-tests-e0478b63bd54 should work out-of-the-box.  That author is saying 10x more productivity so that is a lot of bang for your buck and I can see that after now having issues with testing and having to wait around so long for them to run.
This should be doable with a week or two and would cut down on the amount of Googling for answers by so many novices and other developers who need a multipage example app used rather than a counter especially for testing. Toy examples work for somethings say showing changes in font but for testing?  No.  Most of the core features like navigating and checking for components or text to indicate a new page was navigated to should have examples.

I believe the new flutter template released in 2.5 should suffice half off your need, but it doesn't have related tests as of today
flutter create -t skeleton my_app

Labeling this issue as a proposal.

Thanks for that.
Get Outlook for Androidhttps://aka.ms/AAb9ysg

From: Mahesh Jamdade @.>
Sent: Wednesday, September 29, 2021 1:20:24 AM
To: flutter/flutter @.>
Cc: Kim, Nobutaka @.>; Author @.>
Subject: Re: [flutter/flutter] Update documentation to reflect new multipage sample app from version 2.5 or higher (#90885)
I believe the new flutter template released in 2.5https://medium.com/flutter/whats-new-in-flutter-2-5-6f080c3f3dc should suffice half off your need, but it doesn't have related tests as of today
flutter create -t skeleton my_app
Labeling this issue as a proposal.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://github.com/flutter/flutter/issues/90885#issuecomment-929950191, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AGAFZKO3PXODMU6VILAFNRDUELD4RANCNFSM5E5YNATA.

Labeling this issue as a proposal to add multipage test examples
I believe the new flutter template released in 2.5 should be a great example but it does not have tests as of today
flutter create -t skeleton my_app


Cats version used in examples is outdated

The exercises are 3 major versions behind cats at the time I write this (they use 0.4.x where 0.7.x is the latest release.) Some exercise code does not compile anymore, e.g. due to the removal of the cats.std package. I tried updating cats to 0.7 and fixed all the compilation errors (they were mostly due to implicit conversions having moved to cats.implicits._) but ran into a chain of binary incompatibilities with the dependencies when executing the tests. I gave up at this point:
  libraryDependencies ++= Seq(
    "org.typelevel" %% "cats-core" % "0.7.0",
    "com.chuusai" %% "shapeless" % "2.3.2",
    "org.scalatest" %% "scalatest" % "2.2.6",
    "org.scala-exercises" %% "exercise-compiler" % version.value,
    "org.scala-exercises" %% "definitions" % version.value,
    "org.scalacheck" %% "scalacheck" % "1.13.2",
    "com.github.alexarchambault" %% "scalacheck-shapeless_1.13" % "1.1.1",
    compilerPlugin("org.spire-math" %% "kind-projector" % "0.7.1")
  )

I bumped shapeless (minor), scalatest (patch), scalacheck (minor) and scalacheck-shapeless (minor)
Something is still wrong though, as the test runner cannot find a class it's expecting:
An exception or error caused a run to abort: Implementing class
java.lang.IncompatibleClassChangeError: Implementing class
	at java.lang.ClassLoader.defineClass1(Native Method)
	at java.lang.ClassLoader.defineClass(ClassLoader.java:760)
	at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
	at java.net.URLClassLoader.defineClass(URLClassLoader.java:467)
	at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
	at java.net.URLClassLoader$1.run(URLClassLoader.java:368)
	at java.net.URLClassLoader$1.run(URLClassLoader.java:362)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.net.URLClassLoader.findClass(URLClassLoader.java:361)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
	at catslib.MonoidSpec.<init>(MonoidSpec.scala:9)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	at java.lang.reflect.Constructor.newInstance(Constructor.java:422)
	at java.lang.Class.newInstance(Class.java:442)
	at org.scalatest.tools.Runner$.genSuiteConfig(Runner.scala:2644)
	at org.scalatest.tools.Runner$$anonfun$37.apply(Runner.scala:2461)
	at org.scalatest.tools.Runner$$anonfun$37.apply(Runner.scala:2460)
	at scala.collection.immutable.List.map(List.scala:273)
	at org.scalatest.tools.Runner$.doRunRunRunDaDoRunRun(Runner.scala:2460)
	at org.scalatest.tools.Runner$$anonfun$runOptionallyWithPassFailReporter$2.apply(Runner.scala:1044)
	at org.scalatest.tools.Runner$$anonfun$runOptionallyWithPassFailReporter$2.apply(Runner.scala:1043)
	at org.scalatest.tools.Runner$.withClassLoaderAndDispatchReporter(Runner.scala:2722)
	at org.scalatest.tools.Runner$.runOptionallyWithPassFailReporter(Runner.scala:1043)
	at org.scalatest.tools.Runner$.run(Runner.scala:883)
	at org.scalatest.tools.Runner.run(Runner.scala)
	at org.jetbrains.plugins.scala.testingSupport.scalaTest.ScalaTestRunner.runScalaTest2(ScalaTestRunner.java:138)
	at org.jetbrains.plugins.scala.testingSupport.scalaTest.ScalaTestRunner.main(ScalaTestRunner.java:28)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:497)
	at com.intellij.rt.execution.application.AppMain.main(AppMain.java:144)

It appears there is some binary incompatibility between the dependencies somewhere. I also tried replacing ScalaTest with the latest major release 3, but that failed with other obscure errors.
Could this be related to the exercise-compiler? What does it do and where can one look at it? Any advice or someone else looking into this?

Okay, so this is why: http://stackoverflow.com/questions/35312410/java-lang-incompatibleclasschangeerror-implementing-class-with-scalacheck-and-s
I reverted the scalacheck bump, but now I'm back to where I started, a binary incompatibility between cats 0.7 and scalacheck:
NoSuchMethodError was thrown during property evaluation.
  Message: cats.NotNull$.notNull()Lcats/NotNull;
  Occurred when passed generated values (
    arg0 = 15 :: 12345 :: HNil
  )

Which occurs in every test. :-|

This is probably because the runtime definitions dependencies pull in an old version of cats and they conflict in the same classloader. Remote evaluation again's the scala exercises evaluator would work because the remote evaluator uses it's own classloader to keep invocations and dependencies isolated. I wonder if we can embed the evaluator an pipe the tests through it which will also serve as integration tests since the evaluator is where code will ultimately run.
https://github.com/scala-exercises/evaluator

\o/

Hi @mttkay, the new build is being deployed at this moment. It should be ready soon (using cats 0.7.2). BTW, I created https://github.com/scala-exercises/exercises-cats/issues/46 to finish the complete update.

Thanks, great job!
On Mon, Oct 17, 2016 at 4:23 PM Juan Pedro Moreno<EMAIL_ADDRESS>wrote:

Hi @mttkay https://github.com/mttkay, the new build is being deployed
at this moment. It should be ready soon (using cats 0.7.2). BTW, I created
#46 https://github.com/scala-exercises/exercises-cats/issues/46 to
finish the complete update.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/scala-exercises/exercises-cats/issues/39#issuecomment-254221937,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAGRkvEZ2n55rUa8dF68kYdiauQsFk8_ks5q04TlgaJpZM4Jusnl
.


Add prometheus exporter

Signed-off-by: yeya24<EMAIL_ADDRESS>Fixes #416

Thanks @yeya24. Can you please describe what you did to test this change? For example, can you confirm that on a Prometheus server, you were able to view both the metrics exported from controller-runtime and the custom metrics exposed from HNC as well?

Thanks!
On Tue, Feb 18, 2020 at 10:36 AM Ben Ye<EMAIL_ADDRESS>wrote:

@yeya24 commented on this pull request.
In incubator/hnc/cmd/manager/main.go
https://github.com/kubernetes-sigs/multi-tenancy/pull/432#discussion_r380750527
:

  os.Exit(1)

}
defer exporter.StopMetricsExporter()

promExporter, err := prometheus.NewExporter(prometheus.Options{Registry: metrics.Registry})

OK. I will setup the cluster in my own and test it
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/kubernetes-sigs/multi-tenancy/pull/432?email_source=notifications&email_token=AE43PZGPGYB2AKG752VGRXDRDP56FA5CNFSM4KXFW2YKYY3PNVWWK3TUL52HS4DFWFIHK3DMKJSXC5LFON2FEZLWNFSXPKTDN5WW2ZLOORPWSZGOCV557QI#discussion_r380750527,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AE43PZHQ45LCENOQULG3AE3RDP56FANCNFSM4KXFW2YA
.

Thanks!
…
On Tue, Feb 18, 2020 at 10:36 AM Ben Ye @.> wrote: @.* commented on this pull request. ------------------------------ In incubator/hnc/cmd/manager/main.go <#432 (comment)> : > os.Exit(1) } defer exporter.StopMetricsExporter() + promExporter, err := prometheus.NewExporter(prometheus.Options{Registry: metrics.Registry}) OK. I will setup the cluster in my own and test it — You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub <#432?email_source=notifications&email_token=AE43PZGPGYB2AKG752VGRXDRDP56FA5CNFSM4KXFW2YKYY3PNVWWK3TUL52HS4DFWFIHK3DMKJSXC5LFON2FEZLWNFSXPKTDN5WW2ZLOORPWSZGOCV557QI#discussion_r380750527>, or unsubscribe https://github.com/notifications/unsubscribe-auth/AE43PZHQ45LCENOQULG3AE3RDP56FANCNFSM4KXFW2YA .

But I am not familiar with hnc and this project. So could you please give me some hints about the setup? Is it okay to just start the HNC controller in my cluster? Or what else do I need

There are not enough docs for me to start. Any examples?

Did you follow the installation instructions here?
https://github.com/kubernetes-sigs/multi-tenancy/tree/master/incubator/hnc#using-hnc.
There's also a "demo script" doc, which basically shows you how to use HNC
for simple tasks, as well as a concepts guide to explain what it does.
Please LMK what those are missing - thanks!
On Tue, Feb 18, 2020 at 10:44 AM Ben Ye<EMAIL_ADDRESS>wrote:

There are not enough docs for me to start. Any examples?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/kubernetes-sigs/multi-tenancy/pull/432?email_source=notifications&email_token=AE43PZEVJ5JUJ6ZZS25YVO3RDP64TA5CNFSM4KXFW2YKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEMCO73A#issuecomment-587526124,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AE43PZBBUUGWGRNEK2K5OWDRDP64TANCNFSM4KXFW2YA
.

@adrianludwin  I think it works now, tested in my cluster

Thanks, and can you confirm that you can also see the builtin metrics
from controller-runtime?
Did this require any special configuration of Prometheus, or did it all
Just Work? It would be nice to add a section to the README explaining "how
to monitor with Prometheus" (we're currently writing a similar doc for
Stackdriver).
On Tue, Feb 18, 2020 at 11:16 AM Ben Ye<EMAIL_ADDRESS>wrote:

@adrianludwin https://github.com/adrianludwin I think it works now,
tested in my cluster
[image: image]
https://user-images.githubusercontent.com/25150124/74754728-0e541f00-5240-11ea-9e94-c5fd54b7d045.png
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/kubernetes-sigs/multi-tenancy/pull/432?email_source=notifications&email_token=AE43PZD6ONJEUEVZKJCAPBLRDQCU7A5CNFSM4KXFW2YKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEMCTBOI#issuecomment-587542713,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AE43PZGF4HJTAPSTYBLSJC3RDQCU7ANCNFSM4KXFW2YA
.

Thanks, and can you confirm that you can also see the builtin metrics from controller-runtime? Did this require any special configuration of Prometheus, or did it all Just Work? It would be nice to add a section to the README explaining "how to monitor with Prometheus" (we're currently writing a similar doc for Stackdriver).
…
On Tue, Feb 18, 2020 at 11:16 AM Ben Ye @.***> wrote: @adrianludwin https://github.com/adrianludwin I think it works now, tested in my cluster [image: image] https://user-images.githubusercontent.com/25150124/74754728-0e541f00-5240-11ea-9e94-c5fd54b7d045.png — You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub <#432?email_source=notifications&email_token=AE43PZD6ONJEUEVZKJCAPBLRDQCU7A5CNFSM4KXFW2YKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEMCTBOI#issuecomment-587542713>, or unsubscribe https://github.com/notifications/unsubscribe-auth/AE43PZGF4HJTAPSTYBLSJC3RDQCU7ANCNFSM4KXFW2YA .

Yes, it still works. Because Prometheus just scrapes the same endpoint.
You can find the metrics workqueue_depth here, which is added by controller-runtime.
➜  ~ curl localhost:8080/metrics | grep hnc
# HELP hnc_reconcilers_hierconfig_concurrent_peak The peak concurrent HierConfig reconciliations happened in the past 60s, which is also the minimum Stackdriver reporting period and the one we're using
# TYPE hnc_reconcilers_hierconfig_concurrent_peak gauge
hnc_reconcilers_hierconfig_concurrent_peak 1
# HELP hnc_reconcilers_hierconfig_total The total number of HierConfig reconciliations happened
# TYPE hnc_reconcilers_hierconfig_total gauge
hnc_reconcilers_hierconfig_total 5
# HELP hnc_reconcilers_object_concurrent_peak The peak concurrent object reconciliations happened in the past 60s, which is also the minimum Stackdriver reporting period and the one we're using
# TYPE hnc_reconcilers_object_concurrent_peak gauge
hnc_reconcilers_object_concurrent_peak{GroupKind="ConfigMap"} 1
hnc_reconcilers_object_concurrent_peak{GroupKind="Role.rbac.authorization.k8s.io"} 1
hnc_reconcilers_object_concurrent_peak{GroupKind="RoleBinding.rbac.authorization.k8s.io"} 2
hnc_reconcilers_object_concurrent_peak{GroupKind="Secret"} 7
# HELP hnc_reconcilers_object_total The total number of object reconciliations happened
# TYPE hnc_reconcilers_object_total gauge
hnc_reconcilers_object_total{GroupKind="ConfigMap"} 2
hnc_reconcilers_object_total{GroupKind="Role.rbac.authorization.k8s.io"} 2
hnc_reconcilers_object_total{GroupKind="RoleBinding.rbac.authorization.k8s.io"} 2
hnc_reconcilers_object_total{GroupKind="Secret"} 7
workqueue_adds_total{name="hncconfiguration"} 0
workqueue_depth{name="hncconfiguration"} 0
workqueue_longest_running_processor_microseconds{name="hncconfiguration"} 0
workqueue_longest_running_processor_seconds{name="hncconfiguration"} 0
workqueue_queue_duration_seconds_bucket{name="hncconfiguration",le="1e-08"} 0
workqueue_queue_duration_seconds_bucket{name="hncconfiguration",le="1e-07"} 0
workqueue_queue_duration_seconds_bucket{name="hncconfiguration",le="1e-06"} 0
workqueue_queue_duration_seconds_bucket{name="hncconfiguration",le="9.999999999999999e-06"} 0

Prometheus needs to configure the hnc controller target to scrape metrics.
For the documentation, I can help improve it about how to use Prometheus. But maybe not in this PR, is it ok?

That sounds good, thanks! Can you please update the commit message with a
"Tested:" section summarizing everything you've described here? That is,
include the fact that you verified that the metrics endpoint combined both
the controller-runtime and custom metrics, and that you verified the custom
metrics on a real Prometheus deployment (see example here). Then force-push
the updated commit and I'll approve. Thanks!
On Tue, Feb 18, 2020 at 11:32 AM Ben Ye<EMAIL_ADDRESS>wrote:

Thanks, and can you confirm that you can also see the builtin metrics
from controller-runtime? Did this require any special configuration of
Prometheus, or did it all Just Work? It would be nice to add a section to
the README explaining "how to monitor with Prometheus" (we're currently
writing a similar doc for Stackdriver).
… <#m_8131292078319664260_>
On Tue, Feb 18, 2020 at 11:16 AM Ben Ye @.***> wrote: @adrianludwin
https://github.com/adrianludwin https://github.com/adrianludwin I think
it works now, tested in my cluster [image: image]
https://user-images.githubusercontent.com/25150124/74754728-0e541f00-5240-11ea-9e94-c5fd54b7d045.png
— You are receiving this because you were mentioned. Reply to this email
directly, view it on GitHub <#432
https://github.com/kubernetes-sigs/multi-tenancy/pull/432?email_source=notifications&email_token=AE43PZD6ONJEUEVZKJCAPBLRDQCU7A5CNFSM4KXFW2YKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEMCTBOI#issuecomment-587542713>,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AE43PZGF4HJTAPSTYBLSJC3RDQCU7ANCNFSM4KXFW2YA
.
Yes, it still works. Because Prometheus just scrapes the same endpoint.
You can find the metrics workqueue_depth here, which is added by
controller-runtime.
➜  ~ curl localhost:8080/metrics | grep hnc
HELP hnc_reconcilers_hierconfig_concurrent_peak The peak concurrent HierConfig reconciliations happened in the past 60s, which is also the minimum Stackdriver reporting period and the one we're using
TYPE hnc_reconcilers_hierconfig_concurrent_peak gauge
hnc_reconcilers_hierconfig_concurrent_peak 1
HELP hnc_reconcilers_hierconfig_total The total number of HierConfig reconciliations happened
TYPE hnc_reconcilers_hierconfig_total gauge
hnc_reconcilers_hierconfig_total 5
HELP hnc_reconcilers_object_concurrent_peak The peak concurrent object reconciliations happened in the past 60s, which is also the minimum Stackdriver reporting period and the one we're using
TYPE hnc_reconcilers_object_concurrent_peak gauge
hnc_reconcilers_object_concurrent_peak{GroupKind="ConfigMap"} 1
hnc_reconcilers_object_concurrent_peak{GroupKind="Role.rbac.authorization.k8s.io"} 1
hnc_reconcilers_object_concurrent_peak{GroupKind="RoleBinding.rbac.authorization.k8s.io"} 2
hnc_reconcilers_object_concurrent_peak{GroupKind="Secret"} 7
HELP hnc_reconcilers_object_total The total number of object reconciliations happened
TYPE hnc_reconcilers_object_total gauge
hnc_reconcilers_object_total{GroupKind="ConfigMap"} 2
hnc_reconcilers_object_total{GroupKind="Role.rbac.authorization.k8s.io"} 2
hnc_reconcilers_object_total{GroupKind="RoleBinding.rbac.authorization.k8s.io"} 2
hnc_reconcilers_object_total{GroupKind="Secret"} 7
workqueue_adds_total{name="hncconfiguration"} 0
workqueue_depth{name="hncconfiguration"} 0
workqueue_longest_running_processor_microseconds{name="hncconfiguration"} 0
workqueue_longest_running_processor_seconds{name="hncconfiguration"} 0
workqueue_queue_duration_seconds_bucket{name="hncconfiguration",le="1e-08"} 0
workqueue_queue_duration_seconds_bucket{name="hncconfiguration",le="1e-07"} 0
workqueue_queue_duration_seconds_bucket{name="hncconfiguration",le="1e-06"} 0
workqueue_queue_duration_seconds_bucket{name="hncconfiguration",le="9.999999999999999e-06"} 0
Prometheus needs to configure the hnc controller target to scrape metrics.
For the documentation, I can help improve it about how to use Prometheus.
But maybe not in this PR, is it ok?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/kubernetes-sigs/multi-tenancy/pull/432?email_source=notifications&email_token=AE43PZH76SV6XXNRSQFUSCTRDQER3A5CNFSM4KXFW2YKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEMCVB3A#issuecomment-587550956,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AE43PZAPMA37SSA6JQV4Z3TRDQER3ANCNFSM4KXFW2YA
.

Examples of good commit messages:
https://github.com/kubernetes-sigs/multi-tenancy/commit/84454f23bbd712314e2a0a8cbae95fc046c90d69#diff-a75a5601d28a16c6aa2432163fc30534
https://github.com/kubernetes-sigs/multi-tenancy/commit/2c22e8ca11c3ac5959e1169254b2023ec0bb0c99#diff-a75a5601d28a16c6aa2432163fc30534

/ok-to-test
Filed #433 for the doc updates

Hi @yeya24, this change lgtm as soon as there's a bit more detail in the commit message. Are you still planning on adding that? Thanks!

@adrianludwin  Sorry for the delay. I will add the commit message this afternoon.

No worries (you are a volunteer, after all)! Just letting you know why I
haven't approved this yet, in case you were wondering.
On Thu, Feb 20, 2020 at 1:19 PM Ben Ye<EMAIL_ADDRESS>wrote:

@adrianludwin https://github.com/adrianludwin Sorry for the delay. I
will add the commit message this afternoon.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/kubernetes-sigs/multi-tenancy/pull/432?email_source=notifications&email_token=AE43PZBCW77DUZKKUEKXRFLRD3CSLA5CNFSM4KXFW2YKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEMPQMPA#issuecomment-589235772,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AE43PZFMPDFS56FCPRFZMNLRD3CSLANCNFSM4KXFW2YA
.

Hi, @adrianludwin  I have updated the commit message. Could you please take a look? Thank you!

/approve
/lgtm
Thanks Ben!


Selection items are not displayed for the Japanese Update part.

[Enter feedback here]
Selection items are not displayed for the Japanese Update part.
English

Japanese

https://docs.microsoft.com/ja-jp/deployedge/microsoft-edge-update-policies#update

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

ID: 96fddabd-2bac-2fab-a5ea-25c000b425fc
Version Independent ID: 41bba38e-bd24-0496-da04-012d6deb5db8
Content: Microsoft Edge Update Policy Documentation
Content Source: edgeenterprise/microsoft-edge-update-policies.md
Product: microsoft-edge
GitHub Login: @dan-wesley
Microsoft Alias: stmoody

@TomoharuMisawa thank you for reporting this issue.  I have passed on to the localizers to fix it.

@TomoharuMisawa this issue has been fixed and the bulleted text now appears ok in the Japanese article.  Thanks again for reporting it and please close if it looks ok for you now.


Title

I just noticed I am missing docker here. Here is a quick thing you may be interested in.
On Docker Host: type gdb docker (Notice that symbols are read).
info functions (Overload of information) but x_cgo_thread_start is where I set a break point.

b  x_cgo_thread_start to set break point
It's the same as break x_cgo_thread_start

now type run to start execution till you reach break point. Ideally run with a docker command

(gdb) run run -it ubuntu /bin/bash

info registers to examine the 64 bit registers
info all-registers to examine everything registers.

In the directory tuesday, pick the file main.c
Then next steps

gcc -ggdb main.c -o main using the ggdb flag gives symbols and makes it easy to debug. Use strip to remove the symbols later.
gdb -q ./main to load the elf file into gdb
Type break 19 to break at the line system("ls")
Type run to start debugging
Type disassemble to examine the current frame. At this point, you are at a stack frame.
At  this point, "ls" form .data section is being put into rdi (instruction to be executed).
si (or type stepi) to step one instruction.
Now type set $rdi = "pwd". This changes rdi register to value you have set
Alternately you can have
set {char} $tempvar = (char *) malloc(10)
set $tempvar = "T"
set $rax = $tempvar
type c to continue execution.

This is just to alter execution by changing registers. Without patching elf or editing elf in hex editor. Just once execution.
Idea

Combine this with badUSB
any executable can be patched by a badUSB exploit to run arbitrary commands. I chose docker.

"Containers are kernel parlor tricks." A sound argument.
https://m.youtube.com/watch?v=N6r-9ZzFgzw