Add in IMU_SKIP option

Add in IMU_SKIP option to prevent wake up by IMU and to lower IMU power usage.
Enabling IMU_SKIP will lower power usage as discussed in https://github.com/TioRuben/TTGO-T-Wristband/issues/5#issue-601598702.
The code has no effect unless comment enabler is removed in platformio.ini:
;  -DIMU_SKIP         # remove comment to keep IMU (accelerometer, gyrometer and magnetometer) shut down

Second commit adds in IP address to "Waiting for OTA" message. This is the IP address that needs to be specified in upload_port of platformio.ini.
Added five overloaded msgXxx functions in wristband-tft.cpp to allow two line messages to be written to tft.


Added favicon.ico

Got it by wget  https://www.git-scm.com/favicon.ico

Thanks for the contribution!


Add WSB Merito Bydgoszcz to school list

@mibac138 Thank you for your patience while waiting for a review and processing your request. Pull request merged.


MAINT: Change email from mcdonadt->qiita.help

:+1: if tests pass ....

:L
On (Aug-27-15| 8:51), Antonio Gonzalez wrote:

:+1: if tests pass ....

Reply to this email directly or view it on GitHub:
https://github.com/biocore/qiita/pull/1456#issuecomment-135475205

:+1: good to merge after tests pass

Just for the record: fixes https://github.com/biocore/qiita/issues/1454

Good point!
On (Aug-27-15| 9:09), Jose Navas wrote:

Just for the record: fixes https://github.com/biocore/qiita/issues/1454

Reply to this email directly or view it on GitHub:
https://github.com/biocore/qiita/pull/1456#issuecomment-135480360


flake8 on pre-commit hook doesn't catch some errors

For example, the fix in commit 0ae787ae5b4d199cda001119ee8bdd9428f12b76:
The parent commit throws an E275 in the github flake8 action.
Running locally as part of commit or with pre-commit run --all-files does not produce any error.

could be a discrepancy of flake8 versions (or dependencies thereof). Might even be the case that if your local virtualenv is activated (and contains an older version of flake8) and you run pre-commit from within the virtualenv, that flake8 is used from within there.


Upload Image (PNG file) from Google App Script to S3 Bucket

Trying to upload a png file:
// get the image blob
const imgBlob = UrlFetchApp.fetch('imageUrl').getBlob();

// init S3 instance
const s3 = S3.getInstance(awsAccessKeyId, awsSecretKey);

// upload the image to S3 bucket
s3.putObject(bucketName, 'test.png', imgBlob, { logRequests:true });

File is uploading in S3 but not in perfect way! It's look like:

If I download the image and open getting the error:

It may be damaged or use a file format that Preview doesn’t recognize.

👋  @sajibcse68 did you manage to make it work?

I also had the same issue, I think it's because the Blob gets converted to a string before being sent. I managed to get it working by making the following changes:

S3.gs line 142: change request.setContent(object.getDataAsString()); to request.setContent(object);
S3Request.gs line 60: remove the line if (typeof content != 'string') throw 'content must be passed as a string'
S3Request.gs line 393: replace the function with the following:

S3Request.prototype.hexEncodedHash = function(string) {
  if(typeof string === "string")
    return this.hex(Utilities.computeDigest(Utilities.DigestAlgorithm.SHA_256, string, Utilities.Charset.UTF_8));
  else
    return this.hex(Utilities.computeDigest(Utilities.DigestAlgorithm.SHA_256, string.getBytes()));
}

Thanks! This is a lifesaver! I have been experiencing the issue of corrupted files for 2 days now.

I also had the same issue, I think it's because the Blob gets converted to a string before being sent. I managed to get it working by making the following changes:

S3.gs line 142: change request.setContent(object.getDataAsString()); to request.setContent(object);
S3Request.gs line 60: remove the line if (typeof content != 'string') throw 'content must be passed as a string'
S3Request.gs line 393: replace the function with the following:

S3Request.prototype.hexEncodedHash = function(string) {
  if(typeof string === "string")
    return this.hex(Utilities.computeDigest(Utilities.DigestAlgorithm.SHA_256, string, Utilities.Charset.UTF_8));
  else
    return this.hex(Utilities.computeDigest(Utilities.DigestAlgorithm.SHA_256, string.getBytes()));
}

Thanks it saved my life

I also had the same issue, I think it's because the Blob gets converted to a string before being sent. I managed to get it working by making the following changes:

S3.gs line 142: change request.setContent(object.getDataAsString()); to request.setContent(object);
S3Request.gs line 60: remove the line if (typeof content != 'string') throw 'content must be passed as a string'
S3Request.gs line 393: replace the function with the following:

S3Request.prototype.hexEncodedHash = function(string) {
  if(typeof string === "string")
    return this.hex(Utilities.computeDigest(Utilities.DigestAlgorithm.SHA_256, string, Utilities.Charset.UTF_8));
  else
    return this.hex(Utilities.computeDigest(Utilities.DigestAlgorithm.SHA_256, string.getBytes()));
}

Thank you so much for this!!

For anyone still looking for a solution, I have published S3Patches, which include hotfix. You can install this library using App Script ID: 1dVPQ-c-2Clh_rQ0JS3xiMx5eAWSeKVqiKy4U-oI0yuwjg8AljIH4b3VL

I also had the same issue, I think it's because the Blob gets converted to a string before being sent. I managed to get it working by making the following changes:

S3.gs line 142: change request.setContent(object.getDataAsString()); to request.setContent(object);
S3Request.gs line 60: remove the line if (typeof content != 'string') throw 'content must be passed as a string'
S3Request.gs line 393: replace the function with the following:

S3Request.prototype.hexEncodedHash = function(string) {
  if(typeof string === "string")
    return this.hex(Utilities.computeDigest(Utilities.DigestAlgorithm.SHA_256, string, Utilities.Charset.UTF_8));
  else
    return this.hex(Utilities.computeDigest(Utilities.DigestAlgorithm.SHA_256, string.getBytes()));
}

1dVPQ-c-2Clh_rQ0JS3xiMx5eAWSeKVqiKy4U-oI0yuwjg8AljIH4b3VL

I am not able to find your library with the link that you provided. I would love to still use it if you could re-publish it.


Create more general Test Framework and Organize the bulk of current tests

This PR doesn't yet add new torture tests, I figure that can come later.  Just trying to replicate the current tests with the new framework and work-out the kinks
Of which there are still a few.

Pull Request Test Coverage Report for Build 298471595

538 of 573 (93.89%)  changed or added relevant lines in 18 files are covered.
345 unchanged lines in 20 files lost coverage.
Overall coverage decreased (-1.7%) to 79.953%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

test/test_main.cpp
3
4
75.0%

test/goalc/test_with_game.cpp
61
64
95.31%

test/goalc/framework/test_runner.cpp
33
64
51.56%

Files with Coverage Reduction
New Missed Lines
%

game/kernel/kdsnetm.cpp
1
73.47%

game/kernel/kmalloc.cpp
1
46.58%

game/kernel/kprint.cpp
1
50.1%

game/overlord/iso_queue.cpp
1
76.06%

goalc/emitter/IGen.h
1
95.31%

goalc/regalloc/Allocator.cpp
1
79.45%

common/goos/Object.h
2
84.84%

common/goos/Interpreter.cpp
3
87.81%

common/type_system/deftype.cpp
3
77.34%

common/type_system/Type.h
3
77.42%

Totals

Change from base Build 296754685:
-1.7%

Covered Lines:
14278

Relevant Lines:
17858

💛  - Coveralls


Cannot select 27 july date

Cannot select 27th July date. When selected fall back to today's data.

Where? Which endpoint?

Where? Which endpoint?

From UI page. At least from mobile.

Looks perfectly fine at my end. Could you try again?

Looks perfectly fine at my end. Could you try again?

Yes, someone might have fixed it.
Closing now!!


[Feature Request] Could you let us use "event.stopPropagation()" on "el-popover"?

Existing Component
Yes
Component Name
el-popover
Description
Hi!
We are using the table-column component with "render-header" attribute to put "pop-over" in a table header.
The thing is, we are also using the sorting feature of table.
When a user clicks a pop-over, it also triggers the sorting feature and both actions (pop-over, sorting) are executed with the "click" event.
Could you let us use "event.stopPropagation()" on "el-popover" by adding an option/attribute or something like that?
If not, is there any way to solve this situation?
We need this feature before we release our product. Please help us😭
Thank you!

Issues without a valid reproduction link will be closed directly.

@island205 What valid link do you mean?


Fix typo on GUIDE.md

Thank you for this great project.
I found a little typo on GUIDE.md.

Good catch. Thanks! :+1:


Package update

move to Swift 5.8
change dependencies to release version so we can use DocUploader as a dependency in spi-builder

Manual integration test ok: https://us-east-2.console.aws.amazon.com/cloudwatch/home?region=us-east-2#logsV2:log-groups/log-group/$252Faws$252Flambda$252FDocUploaderLambda-Test-UploadFunction-3D3w0QTh1l6H/log-events/2023$252F04$252F14$252F$255B$2524LATEST$255Dfcee96527348491e94d47318c47c9c9f


Update Linux minimum kernel version language

@Dansimp , @pahuijbr to review.

Learn Build status updates of commit 22e5a80:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

microsoft-365/security/defender-endpoint/microsoft-defender-endpoint-linux.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the learn.microsoft.com contributor guidesPost your question in the Learn support channel

Learn Build status updates of commit cef53cd:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

microsoft-365/security/defender-endpoint/microsoft-defender-endpoint-linux.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the learn.microsoft.com contributor guidesPost your question in the Learn support channel


Can't identify players on floor

When running a modified version of the matchup python notebook to loop through all the games in a particular season to generate a separate matchup file for each game, I run into occasional errors.  One of them is the UpdatePlayersException ('Could not locate on floor players') when it can't identify all 10 players on the court at the start of a new quarter.
This seems to happen because players only appear in the boxscore generated via the api when they've accumulated at least one stat during the time frame being searched.  So if someone new subs in at the start of the quarter and doesn't register any stats from the beginning of the quarter until the first substitution in the new quarter, that player never shows up in the box score and can't be identified as being on the floor.
I was wondering if you have any plans to work around this issue.  If I think of anything that could help address the issue I'll make another post.

Yes, so the problem is with a limitation of the statsnba API. the API does not give you directly the matchup information, so I think what I did is to send multiple requests and workout the matchups from there. However, sometimes, we cannot work out the matchups with those requests, in that case, an UpdatePlayerException is thrown.
You might want to consider simply pass on those exceptions and drop a few matchups if you are ok with that. I don't think this is a frequent problem and most of the time you will have no issues with this.

Yeah, it's not as big of an issue as I thought originally.  When I first ran the program for 2016-17 regular season, I was missing around 25 games, but it turns out the majority of those were caused by the rebounding issue, which I fixed with the new type function.  I now usually only am missing around 3-6 games per regular season which isn't a major issue (not that even 20 games was a big deal either).


Fix swagger-ui rendering issues by upgrading to v5.9.1, fixes #15…

…3 and #154

Thanks for the quick fix


Built-in syntaxes (if, etc) should be a Syntax object

example: you can do this in Gauche
(define xif if)
(xif 1 2 3)

The behavior above seems not to be defined in R7RS, as chibi scheme does not support it:
% chibi-scheme
> if
ERROR: invalid use of syntax as value: if


Cloudflare workers are missing process.env

Describe the bug
When running e2b sdk in cloudflare workers the sdk throws error because process isn't defined

When running on Cloudflare Workers, e2b will likely need to use the env argument provided to the handler:
export default {
  async fetch(request, env, ctx) {
    return new Response(`API host: ${env.API_HOST}`);
  }
}

A polyfill for this is a better approach (or populating process.env based on the env argument). I'll take a look/stab at it!


use community release parent

Since I'm still struggling to get this one to appear in Sonatype Nexus, this was my next step in debugging - Use the Community release parent and adjust the profile to match the other project you were having release issues with 🤷♀
Can you tell I'm not a Java/maven dev? 😆

Can you tell I'm not a Java/maven dev?

Not at all, you are a natural :guitar:

@akeller
With this change I was able to get something to Nexus:

Not perfect though: The release is marked as open, and you can only see what has been released if you open the content.
Nevertheless, from there I could manually close the release, then wait some time, then release it. (I assume it will find its way into Maven Central)


:racehorse: Multiple benchmark result databases

This enables results to be stored locally on the perf agent but also
sent up to a remote reporting server.

:shipit:


node-neigh: Fix unit test flake

See commit msgs.
Fix #16040
Fix #16075

Out of curiosity, was this triggered because of the small refresh period:

option.Config.ARPPingRefreshPeriod = time.Duration(1 * time.Nanosecond)

Noup, I've set such low refresh period to make sure that updates of the periodic goroutines (scheduled in the unit tests) don't return early due to the last ping check.


Add Japanese Support

I need your help to get logs for JP support. If interested, follow the steps below and send me the logs here or on discord.

Turn on logging

Ensure game is off.
Open C:\Users\USERNAME\AppData\Roaming\XIVLauncher\pluginConfigs\Kapture.json.
Set "DebugLoggingEnabled" to true.

On Events tab, make sure everything is checked.
On Content tab, make sure everything is unchecked.
On Items tab, make sure everything is unchecked.
On Filters tab, make sure everything is unchecked.

Trigger/Save Chat Messages (using Purchase as example)

Type /xllog to open log view (can also copy from addon/dalamud.txt).
Purchase item from marketboard.
Copy and save off loot message (and make sure to let me know which one it matches in list below).
Send me the list of scenarios on discord or a github issue.

Sample Message
{"XivChatType":57,"LogKind":57,"LogKindName":"System","LootMessageType":57,"LootMessageTypeName":"System","Message":"Recherche de l'objet “ Matéria de la parade stratégique VII”...","MessageParts":["Recherche de l'objet “",""," Matéria de la parade stratégique VII","”..."],"ItemId":25190,"ItemName":"Matéria de la parade stratégique VII","IsHq":false}

To add a language, I need logs for these scenarios:

You search for an item
Item added to loot list in dungeon
Unable to obain item (drops to floor in dungeon)
You purchase an item from market board
You discard / throw away item
You obtain item from deynsthesis
You retrieve materia from gear
You fail to retrieve materia from gear
You obtain loot in dungeon
You cast lot on loot
You roll need on loot
You roll greed on loot
Other player obtains loot in dungeon
Other player casts lot on loot
Other player rolls need on loot
Other player rolls greed on loot
Other player rolls greed on loot (from different world)
You desynthesize an item
Orchestration added to your list
You sell an item to npc
You use an item
You obtain an item from coffer
Other player uses an item
You meld materia
You extract materia
You quicksynth
You gather item (btn or min)
You catch fish
You craft an item
Other player crafts an item

Thank you for developing Kapture.
I created a Japanese scenario.

At the time of creation, I took an English scenario at the same time.
I'm sorry if the Japanese scenario is wrong.
All character names have been replaced with "Player Name".
Check Microsoft Excel.  Kapture_JP_support.xlsx
Please let me know if you cannot use Microsoft Excel. Pass the scenario in another way.

#We use Google Translate.

Thanks! I'll add this shortly after we get through expac launch. Can you share as a csv?

csv OK.
Kapture_JP_support.csv

Hey, sorry for slow pace on this. I do plan to still add this but takes more work than I expected.
I'm open to a PR as well if someone wants to help this move faster. Need a new LootProcessor and corresponding unit tests.
https://github.com/kalilistic/Dalamud.Kapture/tree/master/src/Kapture/Kapture/Service/LootProcessor


-performSegueWithIdentifier crashes which I call it in -viewWillAppear

Hi,
If I call the below code in -viewDidLoad it is working as expected
[self performSegueWithIdentifier:self.currentSegueIdentifier sender:nil];

But when I call it in -viewWillAppear it crashes
With the following error
Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'There are unexpected subviews in the container view. Perhaps the embed segue has already fired once or a subview was added programmatically?
My flow is as follows
ViewControllerA is having the embedded container, from ViewControllerA I am presenting ViewControllerB
When I dismis ViewControllerB, I need to refresh the embeded viewcontroller child so inorder to do that is was callig the -performSegueWithIdentifier in -viewWillAppear but that crashes.
My Query is how do I refresh the childViewControllers or call the -performSegueWithIdentifier in -viewWillAppear.

It's a little tough to say without your code as context, but I experienced something similar a little while ago when I used this styled of embedded view controllers. The first thing to check is to make sure you haven't manually added any subviews to your embedded VC - that doesn't seem to work with container views.
Also, calling the method in -viewWillAppear seems like a bit of an odd time to perform a segue. That is usually called after the views hierarchy has been layed out and is ready to show itself. It is probably the case that the segue to another view controller is messing up with the view/controller hierarchy in unexpected ways.
Last thing - make sure you're not performing segues manually in an attempt to do a swap. Use the specific methods to perform the swapping.
Let me know if any of this advice helped, or if you have more context to give.

@tikimcfee
Please take a look at the sample sample code with the same issue.

Ah! Found your problem.
So, if you look carefully at the [self performSegueWithIdentifier:@"embedContainer" sender:nil];, and what it ends up doing, you'll see that it actually manually adds the view controllers and their views to your hierarchy in a pretty clean way - however, notice that this block:
 // If we're going to the first view controller.
    if ([segue.identifier isEqualToString:SegueIdentifierFirst]) {
        // If this is not the first time we're loading this.
        if (self.childViewControllers.count > 0) {
            [self swapFromViewController:[self.childViewControllers objectAtIndex:0] toViewController:self.firstViewController];
        }
        else {
            // If this is the very first time we're loading this we need to do
            // an initial load and not a swap.
            [self addChildViewController:segue.destinationViewController];
            UIView* destView = ((UIViewController *)segue.destinationViewController).view;
            destView.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;
            destView.frame = CGRectMake(0, 0, self.view.frame.size.width, self.view.frame.size.height);
            [self.view addSubview:destView];
            [segue.destinationViewController didMoveToParentViewController:self];
        }
    }
    // By definition the second view controller will always be swapped with the
    // first one.
    else if ([segue.identifier isEqualToString:SegueIdentifierSecond]) {
        [self swapFromViewController:[self.childViewControllers objectAtIndex:0] toViewController:self.secondViewController];
    }

... has no logic to determine what happens if you try to manually perform a segue again; it will end up trying to add views and controllers to the hierarchy where it ought not.
The - (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender callback is automatically called for the first time on an embedded container view for you the first time a view controller begins layout of its subviews and it finds a container view that is must present. Calling it again has unintended results here. All you have to do is prevent that from being called again, but only prevent it if the view controller is being reinitialized (i.e., an old VC was deallocated).
To fix your issue, at least in a 'brute force' sort of way, I made two small changes:
Add a property:
@property (nonatomic, assign) BOOL presenting;
Change viewWillAppear:
- (void)viewWillAppear:(BOOL)animated {
    if(!_presenting)
        [self performSegueWithIdentifier:@"embedContainer" sender:nil];

    _presenting = NO;
}

Change your IBAction:
- (IBAction)showView:(id)sender {
    self.presenting = YES;
    NewViewController *newVC = [[UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil] instantiateViewControllerWithIdentifier:@"NewViewController"];
    [self presentViewController:newVC animated:YES completion:nil];
}

This will allow you to safely use viewWillAppear to customize your updates on that callback. Let me know if that works for you!

@tikimcfee
I am extremely sorry, the show button was suppose to be inside the first child view controller. I have updated the code. Your above solution works fine if the show button was in the main view controller. I guess I will have to use delegate callbacks.

You guys are using embedded VC and container vc interchangeably. What's the difference?


GeoJSONVectorTileDataSource vs Vector Data Source

Are there any performance benefits of using:

GeoJSONVectorTileDataSource
CartoVectorTileLayer

As opposed to:

LocalVectorDataSource
VectorLayer

Problem:
I have an indoor data set which is very, very heavy. I have used Carto in the past for indoor polygons without issues. I have setup spatial indexes and geometry simplifiers. This one data set if very large and occasionally can lead to map lag, especially on older phones or if there's a lot of other user activity going on and phone memory is low. On newer phones that doesn't tend to be as much of an issue, but if memory

Question:
Given that I have tried everything I can think of or found online in terms of performance optimization, I was wondering if using the new GeoJSONVectorTileDataSource might be able to provide performance improvements?
Does it change the rendering mechanism in some way that could handle much larger datasets?
Thanks.

Also, if you have any sample code on how to convert VectorElements into an appropriate Geojson layer that would be great. Thanks!

The short answer: very likely yes, there would be performance benefits. VectorTileLayers are highly optimized for rendering performance and low memory consumption compared to VectorLayers. The supported feature set is also larger for VectorTileLayers, though not strictly superset of VectorLayers/elements.
The biggest difference between VectorLayers and VectorTileLayers is styling: CartoCSS is used for VectorTileLayers and styling is decoupled from actual features (elements). CartoCSS is a rule based system that uses properties of the features (elements). SDK uses heavily extended dialect of the original CartoCSS defined by MapBox, extensions are documented here: https://github.com/CartoDB/mobile-sdk/wiki/CartoCSS-notes
For a complex example of CartoCSS, you can take a look at CARTO basemaps: https://github.com/CartoDB/mobile-sdk/blob/develop/assets/cartostyles-v2.zip
Unfortunately our public projects do not have any samples demonstrating this. A will put this into our TODO list, but I can not give any timeframe for this.

Thanks for the helpful response! So, I could use some guidance about how to go about setting this up.
It's clear to me how to create the GeoJSONVectorTileDataSource.
Because I want to test the migration from VectorLayers to using the GeoJSONVectorTiles, I want to just write an intermediary script to convert my current VectorElements to use the new data source, to facilitate quick prototyping.
Here is what I am currently doing...
`
mGeoJsonDataSource = new GeoJSONVectorTileDataSource(0, 24);
mTileVectorLayer = new CartoVectorTileLayer(mGeoJsonDataSource, mCartoCSS);
FeatureVector featureVector = new FeatureVector();
for(int i = 0 ; i < v.size(); i++) {
VectorElement element = v.get(i);
            Feature feature = new Feature(element.getGeometry(), new Variant(element.getMetaData()));
            featureVector.add(feature);
        }

        FeatureCollection featureCollection = new FeatureCollection(featureVector);

        try {
            mGeoJsonDataSource.setLayerFeatureCollection(0, new EPSG3857(), featureCollection);
        } catch (Exception e) {
            LogHelper.e(getClass(), ErrorHelper.getError(e));
        }

`
What do I need to do to associate specific polygons (or vector elements) with specific CartoCSS features? For example, let's say I want to define some custom features for the CartoCSS... Say, "Desk", "Stairs", and "Room". And I want the polygons to plot in different colours accordingly.
I assume that I must use the Variants somehow to establish this connection because the Geometry doesn't contain that information; however, it's unclear to me how to use the Variants for that purpose.
As well, I was wondering if it would be possible to on the fly change the "state" of a specific polygon. For example, if I had two CartoCSS features "Room" and "Room-Selected" (or highlighted) with different colors, could I programatically change the behavior?
Thanks!

The snippet looks ok, I would make the following change by creating a vector tile layer within the datasource:
int layerIndex = mGeoJsonDataSource.createLayer("baselayer");

mGeoJsonDataSource.setLayerFeatureCollection(layerIndex, new EPSG3857(), featureCollection);

Assuming the the metadata of a polygon has the following structure (as JSON):
{ "class": "floor" }

Then this CartoCSS should render polygons with blue color:
#baselayer {
  [class='floor'] {
    polygon-fill: #0000ff;
  }
}

For interactivity or highlighting there are a few options: if possible,  I would suggest creating an overlay layer that contains only 'highlighted' elements. If this is not possible due to styling decisions, etc, then it possible to dynamically update CartoCSS. For example, assuming each element has unique id, the following CartoCSS can be used:
#baselayer {
  [class='floor'] {
    polygon-fill: ([id] = 156 ? #ffffff : #0000ff);
  }
}

It is possible to use 'style parameters' instead of hard-coded id 156 in the example above, I suggest looking the basemaps style for an example.

Hi thanks for your reply! I'm struggling with a number of things, and I have a few follow-up questions.
Questions:
1. In my previous implementation, I have a set of VectorLayers representing each floor. Each VectorLayer has a data source, and when I change floors, I toggle the visibility of all layers.
With your recommendation to create the vector layer within the data source, I would lose some functionality (e.g., changing opacity and visibility of the vector layer itself).
So, how would you recommend implementing that functionality (specifically the toggling of floors)?
2. I haven't been able to figured out how to set a custom asset package. I was able to do so in a really old version (back in the nutiteq days), but the APIs have changed and it's a bit unclear to me how to go about doing so.
I also want to avoid having to re-do too much work... But, I will need to potentially dynamically adjust the styling based on different buildings, so I want to be able to programatically adjust different parameters. I understand how to do that with CartoCSS, conceptually.
If I create the CartoVectorTileLayer manually, I need to provide an AssetPackage, but I can't figure out how to create that.
Do I need to create a CartoCSSStyleSet? MBVectorTileDecoder?
I saw that using the AssetUtils.loadAsset(...) I could get a BinaryData object, but this whole process is unclear to me.
Also, this would only work with a predefined .zip file and would not necessarily allow for dynamically adjusting the CartoCSS file. Any guidance on this would be greatly appreciated.
3. In your example above using the structure:
#baselayer {   [class='floor'] {     polygon-fill: #0000ff;   } }
You mentioned to add the meta data as '{ "class": "floor" }'
I assume that this means a Variant with key "class" and value "floor"?
4. In your highlighting example, you mentioned the use of:
#baselayer {   [class='floor'] {     polygon-fill: ([id] = 156 ? #ffffff : #0000ff);   } }
How would I be able to set this Id dynamically? Would I have to maintain a reference to specific polygons and change their "id" to either 156 or something else to trigger the plotting behaviour?
I think I'm not understanding the specifics of how to actually go about doing this programatically (i.e., how to use the above CartoCSS style).
Thanks so much for your time!

Answers the questions:

If you need to set visibility of individual layers, then I suggest creating multiple VectorTileLayer instances.

Look at the code sample below.

Correct. I suggest looking at the code sample below.

Look at the code sample below.

I prepared a small demo using asset packages, vector tile feature listeners and parametrised CartoCSS styling here: https://gist.github.com/mtehver/991e4e4e7de8a524ded62a4edc88ed62

Thank you so much for that very helpful code! I was able to piece it together with your previous comments and get the "class" behavior working, as well. So, that was super helpful!
I have a few follow-up questions.

Does this GeoJsonDataSource and CartoCSS support 3D polygons?

The only thing I could see that had a height was the "Building" structure / geometry...
But it was unclear to me how to use this or if it was possible to do so.
(https://carto.com/developers/styling/cartocss)
How would you suggest going about 3D polygons? Do I need to add a VectorElement layer of 3D polygons on top?

Right now, I have it working by loading a CartoCSS .zip file directly from the assets folder. If I want to instead download a CartoCSS .zip file from my server (for example, that way I could have custom CartoCSS styling for different buildings), and then create my data source from the downloaded .zip (where the path would not be in the asset folder necessarily), how can I go about doing so?

I know one option might be to try writing to the asset folder with the new .zip (not sure that's feasible).

Also, I'm experimenting with text options and I'm having an issue with
text-placement: interior;
Basically, when I use it, the text is being plotted along the lines (boundary) of the polygons rather than inside of them.
I assume this is a known issue? I found a few similarly asked questions online but wasn't able to find any solution.
The text portion of my CartoCss is as follows.
text-name: [name];
text-placement: interior;
text-placement-type: simple;
text-align: centre;
text-fill: @text_fill;
text-face-name: "Noto Sans Medium";
text-size: linear([view::zoom], (0, 5), (20, 20));
    ....

I'm not sure if maybe I'm providing conflicting information like text-size and text-placement? Any assistance is appreciated.

Regarding the questions:

'Building symbolizers' are the way to go. A snippet from our basemap style:

    building-height: [render_height] ? [render_height] : 10;
    building-min-height: [render_min_height];
    building-fill: lighten(@buildings,10%);
    building-fill-opacity: linear([view::zoom], (15, 0.0), (18, 0.25));

Regarding the geometry, simply use normal polygons as geometry. Height is taken from element properties, in this example from 'render_height'. The height should be given in meters.

You can construct BinaryData from byte array in Java

Regarding 'interior' text-placement. This is not supported and not on our roadmap for the near future. But you can probably get a similar effect by using text-dy  (text-dy: 5, for example).

Awesome! The Building symbolizers work great. Thanks for the BinaryData tip.
I was also wondering about multiple language support. I saw in the latest Carto styles the follow:
In labels.mss:
@name: [nuti::lang] ? ([name:[nuti::lang]] ? [name:[nuti::lang]] : ([name:[nuti::fallback_lang]] ? [name:[nuti::fallback_lang]] : [name])) : [name];

With the simple usage of:
#mylayer {
  text-name: @name;
  text-face-name: @mont_it_md;
 ....
}

When I was using VectorElements, and I created a Text element and set the text to a non-English string, everything automatically rendered no problem.
I'm having an issue that I'm only seeing English text. I have copy/pasted from this zip:
https://github.com/CartoDB/mobile-sdk/blob/master/assets/cartostyles-v2.zip
I copied over the fonts and used the above @name and the above font, etc.
I also copied over the following nultiparameters:
"nutiparameters": {
    "selected_id": {
      "default": -1
    },
    "lang": {
      "default": "en"
    },
    "fallback_lang": {
      "default": "en"
    }
  }

With the following CartoCSS text labels code:
#text_labels {
	text-name: @name;
	text-orientation: [rotation];
	text-fill: @text_fill;
	text-face-name: @mont_md;
	text-size: linear([view::zoom], (0, 5), (17, 7), (20, 14));
}

In code, I have the following logic when populating the text:
       VariantObjectBuilder builder = new VariantObjectBuilder();
        builder.setString("name", "EnglishName");
        builder.setString("rotation", String.valueOf(0.0));
        builder.setString("name:ar", "الاسم الانجليزي" ); // example in arabic

        PointGeometry pointGeometry = new PointGeometry(mapPos); // some location

        mMBVectorTileDecoder.set("lang", "ar"); // try to set nulti parameter to arabic

        // continue with adding to FeatureCollection, etc.

If I remove the "name:ar" variant, everything plots in English properly. If I make the "name:ar" be  an English string, it also works. And, if I experiment with different variants, for example, "name_ar", then even when I pass in arabic, it produces English, which makes sense, because based on the above @name logic chain, it should fall back on English. But, what that tells me is that my format of "name:ar" seems to be correct.
My suspicion was that I was just missing the Arabic font or something, but I found various other font files that were in other repos (for example: https://github.com/hotosm/HDM-CartoCSS/tree/master/fonts where here they have explicit fonts for Arabic among others.
When I imported all those fonts and tried using them in the same way that is done in their corresponding .css, I obtained the same behavior as above.
I'm really not sure what I'm missing, but I'm guessing it's something in the java code itself, rather than in the CartoCSS? Maybe I'm setting the Variant incorrectly or not telling Carto that the language has changed properly. Maybe there's dedicated language codes?
Thanks for your help!

Hi,
without seeing all the code I suspect you are missing either:

Reference to a font containing Arabic glyphs. For example, in our
basemap style @mont_it_md is defined as:

@mont_it_md: "Montserrat Italic", "Noto Sans Medium", "Noto Sans Regular",
"NanumBarunGothic Regular", "Koruri Regular", "Noto Sans Tibetan Regular",
"Noto Sans Khmer Regular";
Only 'Noto Sans' contains Arabic glyphs, 'Montserrat' does not.

You are missing actual font in your .zip asset. In our basemaps the font
that provides Arabic glyphs is 'NotoSans-Medium.ttf'. Note that the font
file names and font names are different, in CartoCSS you should use actual
font names, not font file names.

Regards,
Mark
On Fri, Apr 17, 2020 at 8:01 AM lasyakoechlin<EMAIL_ADDRESS>wrote:

Awesome! The Building symbolizers work great. Thanks for the BinaryData
tip.
I was also wondering about multiple language support. I saw in the latest
Carto styles the follow:
In labels.mss:
@name: [nuti::lang] ? ([name:[nuti::lang]] ? [name:[nuti::lang]] : ([name:[nuti::fallback_lang]] ? [name:[nuti::fallback_lang]] : [name])) : [name];
With the simple usage of:
#mylayer {
text-name: @name;
text-face-name: @mont_it_md;
....
}
When I was using VectorElements, and I created a Text element and set the
text to a non-English string, everything automatically rendered no problem.
I'm having an issue that I'm only seeing English text. I have copy/pasted
from this zip:
https://github.com/CartoDB/mobile-sdk/blob/master/assets/cartostyles-v2.zip
http://url
I copied over the fonts and used the above @name https://github.com/name
and the above font, etc.
I also copied over the following nultiparameters:
"nutiparameters": {
"selected_id": {

  "default": -1

},

"lang": {

  "default": "en"

},

"fallback_lang": {

  "default": "en"

}

}
With the following CartoCSS text labels code:
#text_labels {
text-name: @name;
text-orientation: [rotation];
text-fill: @text_fill;
text-face-name: @mont_md;
text-size: linear([view::zoom], (0, 5), (17, 7), (20, 14));
}
In code, I have the following logic when populating the text:
   VariantObjectBuilder builder = new VariantObjectBuilder();

    builder.setString("name", "EnglishName");

    builder.setString("rotation", String.valueOf(0.0));

    builder.setString("name:ar", "الاسم الانجليزي" ); // example in arabic

    PointGeometry pointGeometry = new PointGeometry(mapPos); // some location

    mMBVectorTileDecoder.set("lang", "ar"); // try to set nulti parameter to arabic

    // continue with adding to FeatureCollection, etc.

If I remove the "name:ar" variant, everything plots in English properly.
If I make the "name:ar" be an English string, it also works. And, if I
experiment with different variants, for example, "name_ar", then even when
I pass in arabic, it produces English, which makes sense, because based on
the above @name https://github.com/name logic chain, it should fall
back on English. But, what that tells me is that my format of "name:ar"
seems to be correct.
My suspicion was that I was just missing the Arabic font or something, but
I found various other font files that were in other repos (for example:
https://github.com/hotosm/HDM-CartoCSS/tree/master/fonts http://url
where here they have explicit fonts for Arabic among others.
When I imported all those fonts and tried using them in the same way that
is done in their corresponding .css, I obtained the same behavior as above.
I'm really not sure what I'm missing, but I'm guessing it's something in
the java code itself, rather than in the CartoCSS? Maybe I'm setting the
Variant incorrectly or not telling Carto that the language has changed
properly. Maybe there's dedicated language codes?
Thanks for your help!
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/CartoDB/mobile-sdk/issues/344#issuecomment-615043010,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAVBWDPSDNYEQ662ARG2MWLRM7PCXANCNFSM4LRUGUVA
.

I was able to resolve it by manually including the Arabic font. Thanks, though!
I was able to manually load the BinaryData

1. Next issue... I'm noticing a bit of a delay when I update style parameters. For example:
mDecoder.setStyleParameter("selected_id", Integer.toString(id));
The colour does change, but it's not exactly smooth. Please see the attached video file (found here: ٢٠٢٠٠٤١٧_١٨٣٨٠٩.zip).
Sometimes its a very smooth change but other times it's kind of a big laggy almost in the way that the colour appears to fill one tile before the other.
I would almost rather if it changed colours with a delay and updated both tiles simultaneously (don't know if that's possible).
2. Layer ordering / priority. I've been able to implement my own layering by creating separate VectorTileLayers and GeoJSONVectorDataSources to make sure that my layers are the way that I want (e.g., building boundary on bottom, stores on top, text on top, etc.).
I also created separate layers for them in my CartoCSS:
#indoor_boundary { ... }
#indoor_main { ... }
#text_labels { ... }

My current plotting process is as follows. First I create the "layers".
int idx_indoor_boundary = mGeoJsonDataSource.createLayer("indoor_boundary");
int idx_indoor_main = mGeoJsonDataSource.createLayer("indoor_main");
int idx_text_labels = mGeoJsonDataSource.createLayer("text_labels");

Then, later I populate them with appropriate feature collections (after I've loaded the data)
 try {
     mGeoJsonDataSource.setLayerFeatureCollection(idx_indoor_boundary, projection, boundary_feature_collection);
     mGeoJsonDataSource.setLayerFeatureCollection(idx_indoor_main, projection, main_feature_collection);
     mGeoJsonDataSource.setLayerFeatureCollection(idx_text_labels, projection, labels_feature_collection);
} catch (Exception e) {
     // ...
}

The issue that I'm having is that the boundary is showing up on top and blocking the rest of the layers. I have confirmed that the values of the idx variables is as follows:
idx_indoor_boundary = 1,
idx_indoor_main = 2,
idx_text_labels = 3

I assume that the layer that was most recently added should be on top, correct?
Anyways, I decided to revert my code by to creating different GeoJSONVectorDataSources and VectorTileLayers for each of the "boundary", "main", and "text_labels", which works, but seems inefficient and to defeat the purpose of using the data source that can have multiple levels to it.
I couldn't see a clear way to indicate which goes on top of which (maybe there's a way to specify this in the CartoCSS directly? But, I was unable to figure it out.
Thanks for all your help!

@lasyakoechlin This is expected, as the map is divided into tiles and tiles are updated independently and asynchronously. There are 2 things to try:
1.Use tileLayer.setSynchronizedRefresh(true). I am not 100% sure this works, if it does not, please give us feedback about this.
2. Another option is to enable multiple 'tiling' threads by calling mapView.getOptions().setTileThreadPoolSize(4). The default is 1 thread, so using 4 threads should make the issue much less noticable.
The first one is the suggested fix for the issue and the second one is somewhat a workaround.

So, the tileLayer.setSynchronizedRefresh(true) does work, but it also incurred a very significant delay in both general map rendering and in updating of the colours for the selected polygons.
I believe that is caused by the fact that the layer I am using has many polygons on it.
The mapView.getOptions().setTileThreadPoolSize(4) works brilliantly. There is occasionally a very small delay in the tile rendering, but it almost gives the illusion of a "swipe animation", so it looks smooth. It may have also sped up other aspects of the map rendering. Thanks!

1. Very dark 3D polygons using Building Symbolizer:
Specifically, I want to show several comparisons so that I can better explain.
VectorTiles with 2D Polygons only:

VectorElements with 2D + 3D Polygons:

You will notice that the color scheme is nearly identical (I think the color codes should be exactly the same, but I'm not 100% sure because the VectorElements screenshot is from a previous build).
But now, when I enable the Building Symbolizer, I get very different effects.
For each of the below images, I experimented with different values of the building-fill-opacity and the lighten(@color, @percent), lightening percentage.
VectorTiles with 2D + 3D Polygons:

As you can see, It feels like the color that I'm seeing is quite different. As in, the exact same color code results in a substantially different color. I'm guessing this is a known effect since your above sample code included the lighten(@building,10%).
Are there any tips/recommendations on how to improve this behavior? Or any recommendations to better approximate the coloring that I was getting using VectorElements?
When I was using VectorElements, I was doing the following:

2D polygon with outline (because I needed the line divisions between stores)
3D polygon on top of it with same color and opacity = 0.7

Any advice or recommendations would be great. For context, here are some exerts of how I've setup the CartoCSS file.
#indoor {
    building-height: [nuti::use_3d] ? ([render_height] ? [render_height] : 0.0) : 0.0;
    building-fill-opacity: [nuti::use_3d] ? ([render_height] ? @height_opacity : 0.0) : 0.0;
    polygon-opacity: 1.0;

/* Note that I've simplified the below to take out all the selection-related code */
    [class='room'] {
		polygon-fill: @room_fill;
		line-color: ([name] = @room_line;
		line-width: @polygon_line_width;

                /* adjusted for different %'s, 10%, 25%, 50%, ... */
		building-fill: lighten(@room_fill, @lighten_percent_3d);
	}

}

2. Negative Heights
When I was using VectorElements (Polygon3D), I was able to assign a negative height to an element to give the illusion of it protruding downwards. Specifically, I was using this for floor openings (e.g.,
That does not seem to be working for the Building Symbolizers.
Thanks!

3. Is there any support on the mobile-sdk for polygon pattern fills? I tried experimenting with:
polygon-pattern-file
polygon-pattern-opacity
without any success. If not, is this in the pipeline?

@lasyakoechlin Regarding the questions:

I have now changed the behavior of buildingsymbolizer in vector tile renderer to match 3D polygons of VectorLayer. The old behavior was to apply lighting/shading to all parts of the building. The new behavior is to apply shading only to sides of the building. The new version behaves like Mapnik, which is a 'reference implementation'.

I have now enabled this.

No, this is not supported, nor planned.

The changes will be available in 4.3.0RC3, which I plan to release this weekend.

Closing this, as the questions seem to be answered.

Thanks for the help!


Direct product of Zn automorphisms group

Direct product of Zn automorphisms group Un is not possible at time, and must be resolved as soon as possible. Insted, only automorphisms group of monogenics group can be done through generators. Fixing this bugs will allow to illustrate the simple criteria Aut(Cm x CN) ~ Aut(Cm) x Aut(Cn) when m and n are coprime
https://github.com/aidevnn/FastGoat/blob/71b9c4323a58dd3566f75b3331cfa029c388a395/FastGoat/UserGroup/Automorphism.cs#L41

HashCode generation is not a bijective function bu it is fast.


How to transform image/video before calling attachMedia()

Its not included in the documentary, How can i resize, transform media with the attachMedia() function? I checked the function and i saw it only receive one parameter

@nattive the attachMedia() function was built just for attaching files to your models. You can't resize, or transform media directly with it.
However, this is a good idea I can work on over the weekend @nattive.

awesome!!! i will be expecting

I would also like to try this out. Can I be assigned to this?

I would also like to try this out. Can I be assigned to this?

Sure. Assigning this to you now @Adtrex

Assigned 🌟


Correct applicationId case typo in example

Hm, are you sure? This is not what is stated in the README: https://github.com/oncletom/hexo-algolia#public-facing-search-options

The current key name is applicationID.

Let me know if you still face the problem.


Godot4.4.0 dev3 App Exits Automatically After Running Multiple Instances on Android Without Error

https://github.com/user-attachments/assets/6f180765-2046-4007-85bc-618d224eca5b
I am facing a critical issue in my Godot project on Android. Whenever I open multiple instances of the application, the app closes automatically right after running the project. There is no error message or crash log— the app just exits abruptly. It seems like the app is unable to handle more than one instance properly, leading to an immediate closure.
The issue does not appear to be related to any specific bug in the code, as the app works perfectly with a single instance. However, as soon as I try to run multiple instances, the app cuts off and closes without any warning.
This is a major problem because I am developing a multiplayer game, and running multiple instances is crucial for testing and gameplay. Without resolving this issue, it is impossible to proceed with the multiplayer functionality. I would appreciate it if this could be addressed and fixed as soon as possible.

duplicate of #98080 ?

I’m not sure, but I might have uploaded it 2-3 times, although I did it in
different places. For example, I accidentally uploaded it twice here
because I didn’t know how to upload it. I also uploaded a similar report on
another GitHub repository.
On Tue, Oct 15, 2024, 1:56 PM Zireael07 @.***> wrote:

duplicate of #98080 https://github.com/godotengine/godot/issues/98080 ?
—
Reply to this email directly, view it on GitHub
https://github.com/godotengine/godot/issues/98185#issuecomment-2413157760,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/BKIDJR4QEBBJQM4J4YSXTCDZ3TDD3AVCNFSM6AAAAABP5WW6CSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDIMJTGE2TONZWGA
.
You are receiving this because you authored the thread.Message ID:
@.***>

Closing as a duplicate, thank you for reporting!
If you have a separate issue from the one linked above please open a new bug report filling in all the fields


main branch failing

@abhijoshi2k Did you get time to check?

I think I should learn how to test with docker, till now i was testing only using this separate repo 😅


Refactor to use a ClockInterface to improve testing.  Add DayPrecisionClock

Codecov Report

Merging #1 (139ba65) into main (0dcc836) will decrease coverage by 4.76%.
The diff coverage is 93.54%.

@@              Coverage Diff              @@
##                main       #1      +/-   ##
=============================================
- Coverage     100.00%   95.23%   -4.77%
- Complexity         9       18       +9
=============================================
  Files              4        7       +3
  Lines             22       42      +20
=============================================
+ Hits              22       40      +18
- Misses             0        2       +2

Impacted Files
Coverage Δ

src/ClockCreationException.php
0.00% <0.00%> (ø)

src/AbstractPrecisionClock.php
100.00% <100.00%> (ø)

src/DayPrecisionClock.php
100.00% <100.00%> (ø)

src/HourPrecisionClock.php
100.00% <100.00%> (ø)

src/MinutePrecisionClock.php
100.00% <100.00%> (ø)

src/SecondPrecisionClock.php
100.00% <100.00%> (ø)

src/SystemClock.php
100.00% <100.00%> (ø)

Continue to review full report at Codecov.

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


Key Vault Access Policy Support

As an engineer, I would like to create a function/cmdlet to support Key Vault Access Policy so that we can support future customer's needs.
The bicep resource is Microsoft.KeyVault/vaults/accessPolicies

[ ] Create Confirm-KeyVaultAccessPolicy.ps1 and unit tests
[ ] Add KeyVaultAccessPolicy to ResourceType enum
[ ] Wire up Confirm-KeyVaultAccessPolicy to Get-ResourceByType.ps1
[ ] Create example tests, bicep and documentation in examples folder

There is no Az PowerShell command along the lines of Get-AzKeyVaultAccessPolicy and Confirm-AzBPResource supports checking access policies. The following test would work:
$params = @{
    ResourceType = "KeyVault"
    ResourceGroupName = "rg-test"
    ResourceName = "testkv"
    PropertyKey = "AccessPolicies[0].ApplicationId"
    PropertyValue = "<app-id-for-svc-prin>"
}

Confirm-AzBPResourse @params | Should -BeSuccessful

Changing this issue to add examples of how to do this to the examples directory.


Postgres repmgr for Ubuntu

Those fixes will be included in different pull request, also with new data model.


Plugin bug - Stripe Payment - search button is bigger than the search field

Description:
When the Stripe Plugin is active, then the search button is bigger than the search field.
Environment:
Plugin version: 1.14.0
Clear localhost with default theme
Steps to reproduce:
Install and activate the plugin and the issue will be visible in storefront
Expected result:
The plugin does not destroy main search styling
Actual result:
The plugin destroys the main search view  [Screenshot%252B2024-03-13%252Bat%252B16.20.51.png|https://sbp-issuetracker-attachments.s3.eu-west-1.amazonaws.com/1710404704_65f2b460b3ffc_1710404651_65f2b42b372d6_Screenshot%252B2024-03-13%252Bat%252B16.20.51.png]

[public] Automated response: This issue is linked to the internal issue https://shopware.atlassian.net/browse/NEXT-34390.
[created from NEXT-34390, comment 485891]

[public] Hello,
Within our company roadmap and work capacity, we try to address each bug or improvement request but admit that not each one will be resolved. To continue our culture of honesty and openness, we are closing this issue to focus on our roadmap on behalf of all Shopware users.
If you feel like this issue is still impacting you, please create a new issue and let us know. Thank you again for your valuable feedback.
[created from NEXT-34390, comment 501217]


[Bug] txs create-validator doesnt work

Create-validator seems to throw an abort error when executed. The command in documentation here doesn't work.

This is if you are using 4.2.8 txs tools on the chain which hasn't been upgraded to that version yet.


An issue with IO#gets method in mruby-3.2.0-rc2

I am experiencing an issue with the IO#gets method in mruby-3.2.0-rc2.
When running the following script 'test.rb':
File.open('test.txt') do |f|
  while line = f.gets
    puts line
  end
end

test.txt:
a
bb
ccc
dddd
eeeee

output:
$ bin/mruby test.rb
a
bb
cc
c
dddd
ee
eee

Sorry, this is a blocker. I will fix soon.


Use automatic linkage for the library product

The Swift Package Manager documentation for products recommends that library products use automatic linkage (the default) "so the Package Manager can decide appropriate linkage." Indeed, declaring static linkage slows down builds by forcing the creation of an intermediate static library libSwiftProtobuf.a. In automatic linkage SwiftPM elides the creation of this library and links SwiftProtobuf object files directly into the final executable. This has the same effect as using a static library with the advantage of making the overall build faster.

Given we didn't explicitly say static on the plugin lib either, it must have been getting it right, so seems good.  Thanks!

I thought the static lib was being used by the perf harness.  Does that still DTRT without this?

I thought the static lib was being used by the perf harness. Does that still DTRT without this?

Hm…
https://github.com/apple/swift-protobuf/blob/master/Performance/runners/swift.sh#L54
The TODO a little above it is also sorta interesting, maybe with this landed it is "done"?


Revert trust domain

Move Citadel trust-domain parameter and comment Helm values in preparation for https://github.com/istio/istio/issues/8661.
This PR is a secondary objective to determine how to enable co-authorship of changes.

[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: ijsnellf, myidpt
If they are not already assigned, you can assign the PR to them by writing /assign @ijsnellf @myidpt 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:

install/OWNERS
security/OWNERS

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

/assign @ijsnellf

We need to confirm that all authors are ok with their commits being contributed to this project. Please have them confirm that here in the pull request.

I confirm.

I am ok with my commits being contributed to this project

@elevran: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/e2e-bookInfoTests-v1alpha3.sh
46b75d1107fb217b0062b0841093516dfc322ea0
link
/test e2e-bookInfo-envoyv2-v1alpha3

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. I understand the commands that are listed here.

/assign @myidpt

@elevran @myidpt is CLA the only thing missing here?
If so, @hklai could you please set CLA to yes.

@elevran: PR needs rebase.

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.

Sorry, what exactly is this PR doing? I don't seem any effective change.

@elevran If you add me as collaborator, I can rebase this PR since @loewenstein is not in office for the next weeks

Close this PR for it's not doing actual work.


fix get EmptyArgs error

Codecov Report

Merging #10 into master will increase coverage by 3.46%.
The diff coverage is 100%.

@@            Coverage Diff            @@
##           master     #10      +/-   ##
=========================================
+ Coverage   49.33%   52.8%   +3.46%
=========================================
  Files          11      11
  Lines         375     375
  Branches       32      32
=========================================
+ Hits          185     198      +13
+ Misses        188     174      -14
- Partials        2       3       +1

Impacted Files
Coverage Δ

...iglobal/thriftmock/server/ProcessFunctionMock.java
100% <100%> (ø)
:arrow_up:

...a/com/didiglobal/thriftmock/server/MockResult.java
34.46% <0%> (+7.34%)
:arrow_up:

Continue to review full report at Codecov.

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


Caldav doesn't load events: No matching event found in the 0 results for

Home Assistant release (hass --version):
.63.3
Python release (python3 --version):
3.5.3
Component/platform:
calendar/caldav
Description of problem:
Calendars load, but no events in the calendars seem to load, so the calendar never triggers
Expected:
Calendar object to be triggered during an event
Additional info:
Looks like this code is causing nothing to load:
        # If no matching event could be found
        if vevent is None:
            _LOGGER.debug(
                "No matching event found in the %d results for %s",
                len(results), self.calendar.name)
            self.event = None
            return True

I am printing out the params in WebDavCalendarEventDevice and the 'calendar' param prints out a url, which if I visit, downloads an ICS which contains the event
BEGIN:VCALENDAR
PRODID:-//davical.org//NONSGML AWL Calendar//EN
VERSION:2.0
CALSCALE:GREGORIAN
X-WR-CALNAME:Some New Calendar
BEGIN:VEVENT
CREATED:20180228T175823Z
<EMAIL_ADDRESS>DTEND;TZID=America/Los_Angeles:20180228T193000
TRANSP:OPAQUE
X-APPLE-TRAVEL-ADVISORY-BEHAVIOR:AUTOMATIC
SUMMARY:Some Stupid thing
DTSTART;TZID=America/Los_Angeles:20180228T183000
DTSTAMP:20180301T020053Z
LAST-MODIFIED:20180228T175823
SEQUENCE:1
DESCRIPTION:
END:VEVENT
BEGIN:VTIMEZONE
TZID:America/Los_Angeles
BEGIN:DAYLIGHT
TZOFFSETFROM:-0800
RRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU
DTSTART:20070311T020000
TZNAME:PDT
TZOFFSETTO:-0700
END:DAYLIGHT
BEGIN:STANDARD
TZOFFSETFROM:-0700
RRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU
DTSTART:20071104T020000
TZNAME:PST
TZOFFSETTO:-0800
END:STANDARD
END:VTIMEZONE
END:VCALENDAR

Can confirm caldav is broken in latest releases -- I reverted just the caldav.py to this version and it's working again:
https://raw.githubusercontent.com/home-assistant/home-assistant/46df91ff4591c208bfe700de1730c016add5c4eb/homeassistant/components/calendar/caldav.py

Any ideas @maxlaverse?

Thanks @walthowd I will try this out when I get home.

@cmsimike Good luck, if you are interested here's a hacked up version of caldav that I'm running as a custom component now. Put in /custom_components/calendar/ and then change your platform to "caldav2" in your home assistant config.
This version does substring matching for custom calendars, so if you have a custom calendar with "trash" as the search word, it will match anywhere in the calendar event. It also keeps your main calendar if you have custom calendars defined.
https://gist.github.com/walthowd/d1798832244f5b2d0956f00b465ebbc2

I'll have a look @cmsimike @walthowd

@walthowd Thanks! I tried, but ended up just getting this error again:
  File "/Users/mike/tmp/hass/lib/python3.6/site-packages/vobject/base.py", line 531, in __getattr__
    raise AttributeError(name)
AttributeError: dtend

I think the current version gets closer to solving all problems (not sure what your issue is @walthowd), but the 0 returned results seems to be the only issue in the current version for me.
As an aside, the current version of the caldav lib is broken for me too. It doesn't handle unescaping correctly. For the component to even start up, I needed to manually install the master version of the lib.

@cmsimike I started debugging this but was stopped after a few minutes :) I'm adding tests with different timezones.
The only difference I can see from the code with the last release is in the type of dtend.
Could you maybe try this branch ? https://github.com/maxlaverse/home-assistant/blob/5eea49136a80d4c155d8dd0fd8afdc8427e8aead/homeassistant/components/calendar/caldav.py

@maxlaverse works for me perfectly!! thank you very much for your work on this!

All day events don't seem to be loaded, but I'm still poking around a bit.

Looking at the source,
if not config.get(CONF_CUSTOM_CALENDARS):
            device_data = {
                CONF_NAME: calendar.name,
                CONF_DEVICE_ID: calendar.name
            }
            calendar_devices.append(
                WebDavCalendarEventDevice(hass, device_data, calendar)
            )

I am not using the custom config option:
calendar:
 - platform: caldav2
   url<EMAIL_ADDRESS>   username: user
   password: password

Is there a reason that in my config case, I shouldn't see all-day events?

I changed the code so that, by default all day events are loaded without needing a custom calendar.
        # Create a default calendar if there was no custom one
        if not config.get(CONF_CUSTOM_CALENDARS):
            device_data = {
                CONF_NAME: calendar.name,
                CONF_DEVICE_ID: calendar.name
            }
            calendar_devices.append(
                WebDavCalendarEventDevice(hass, device_data, calendar, True)
            )

I setup a calendar to have an all day event:

and hass isn't reoprting the calendar to be on:

Is there something else I can try?

I also changed the component to have all_day=True https://github.com/home-assistant/home-assistant/blob/dev/homeassistant/components/calendar/caldav.py#L98. I removed all my custom calendar configuration. My agenda has two calendars. I added an event for the all day and this calendar is now On :/
When you click on the Off status, is the "All Day Untitled Title" event loaded ? (is it found at all ?)

@cmsimike Any news by any chance ?

Im sorry - I guess I didn't really know that you were waiting on me. I have misread your previous comment completely.
The attributes for the all day sensor do not load at all. Seems empty. Was there a new version of the file I should have tried?

My bad. I wasn't clear :)
I don't have any other changes to propose. Knowing that attributes are not loaded speaks for something wrong in the component or the caldav server.
I really don't know how to reproduce this issue with whole day event.
Could you maybe dump all the events that are being looped over here ?
https://github.com/home-assistant/home-assistant/blob/4476234069d5187f9e9ee75953eca60acd7f07f0/homeassistant/components/calendar/caldav.py#L150-L155
I'm wondering if it's one of those conditions that filter the event out.

include_all_day should be true with your patch, is_matching should be true because the search attribute is empty.
is_over might have changed if your allday event has no dtend attribute, but I'm not sure.
Could you also paste this allday event that is not showing up ? Is your event in a different timezone than your HA instance ?

As things go with computers, things seem to be working now.
test hass instance:

now matches with my calendar:

for whatever it is worth, here is the version of caldav i am using in hass (which still includes manually passing True for all day in the default calendar)
"""
Support for WebDav Calendar.

For more details about this platform, please refer to the documentation at
https://home-assistant.io/components/calendar.caldav/
"""
from datetime import datetime, timedelta
import logging
import re

import voluptuous as vol

from homeassistant.components.calendar import (
    PLATFORM_SCHEMA, CalendarEventDevice)
from homeassistant.const import (
    CONF_NAME, CONF_PASSWORD, CONF_URL, CONF_USERNAME)
import homeassistant.helpers.config_validation as cv
from homeassistant.util import Throttle, dt

REQUIREMENTS = ['caldav==0.5.0']

_LOGGER = logging.getLogger(__name__)

CONF_DEVICE_ID = 'device_id'
CONF_CALENDARS = 'calendars'
CONF_CUSTOM_CALENDARS = 'custom_calendars'
CONF_CALENDAR = 'calendar'
CONF_SEARCH = 'search'

PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend({
    # pylint: disable=no-value-for-parameter
    vol.Required(CONF_URL): vol.Url(),
    vol.Optional(CONF_CALENDARS, default=[]):
        vol.All(cv.ensure_list, vol.Schema([
            cv.string
        ])),
    vol.Inclusive(CONF_USERNAME, 'authentication'): cv.string,
    vol.Inclusive(CONF_PASSWORD, 'authentication'): cv.string,
    vol.Optional(CONF_CUSTOM_CALENDARS, default=[]):
        vol.All(cv.ensure_list, vol.Schema([
            vol.Schema({
                vol.Required(CONF_CALENDAR): cv.string,
                vol.Required(CONF_NAME): cv.string,
                vol.Required(CONF_SEARCH): cv.string,
            })
        ]))
})

MIN_TIME_BETWEEN_UPDATES = timedelta(minutes=15)

def setup_platform(hass, config, add_devices, disc_info=None):
    """Set up the WebDav Calendar platform."""
    import caldav

    url = config.get(CONF_URL)
    username = config.get(CONF_USERNAME)
    password = config.get(CONF_PASSWORD)

    client = caldav.DAVClient(url, None, username, password)

    calendars = client.principal().calendars()

    calendar_devices = []
    for calendar in list(calendars):
        # If a calendar name was given in the configuration,
        # ignore all the others
        if (config.get(CONF_CALENDARS)
                and calendar.name not in config.get(CONF_CALENDARS)):
            _LOGGER.debug("Ignoring calendar '%s'", calendar.name)
            continue

        # Create additional calendars based on custom filtering rules
        for cust_calendar in config.get(CONF_CUSTOM_CALENDARS):
            # Check that the base calendar matches
            if cust_calendar.get(CONF_CALENDAR) != calendar.name:
                continue

            device_data = {
                CONF_NAME: cust_calendar.get(CONF_NAME),
                CONF_DEVICE_ID: "{} {}".format(
                    cust_calendar.get(CONF_CALENDAR),
                    cust_calendar.get(CONF_NAME)),
            }

            calendar_devices.append(
                WebDavCalendarEventDevice(
                    hass, device_data, calendar, True,
                    cust_calendar.get(CONF_SEARCH)))

        # Create a default calendar if there was no custom one
        if not config.get(CONF_CUSTOM_CALENDARS):
            device_data = {
                CONF_NAME: calendar.name,
                CONF_DEVICE_ID: calendar.name
            }
            calendar_devices.append(
                WebDavCalendarEventDevice(hass, device_data, calendar, True)
            )

    add_devices(calendar_devices)

class WebDavCalendarEventDevice(CalendarEventDevice):
    """A device for getting the next Task from a WebDav Calendar."""

    def __init__(self, hass, device_data, calendar, all_day=False,
                 search=None):
        """Create the WebDav Calendar Event Device."""
        self.data = WebDavCalendarData(calendar, all_day, search)
        super().__init__(hass, device_data)

    @property
    def device_state_attributes(self):
        """Return the device state attributes."""
        if self.data.event is None:
            # No tasks, we don't REALLY need to show anything.
            return {}

        attributes = super().device_state_attributes
        return attributes

class WebDavCalendarData(object):
    """Class to utilize the calendar dav client object to get next event."""

    def __init__(self, calendar, include_all_day, search):
        """Set up how we are going to search the WebDav calendar."""
        self.calendar = calendar
        self.include_all_day = include_all_day
        self.search = search
        self.event = None

    @Throttle(MIN_TIME_BETWEEN_UPDATES)
    def update(self):
        """Get the latest data."""
        # We have to retrieve the results for the whole day as the server
        # won't return events that have already started
        results = self.calendar.date_search(
            dt.start_of_local_day(),
            dt.start_of_local_day() + timedelta(days=1)
        )

        # dtstart can be a date or datetime depending if the event lasts a
        # whole day. Convert everything to datetime to be able to sort it
        results.sort(key=lambda x: self.to_datetime(
            x.instance.vevent.dtstart.value
        ))

        vevent = next((
            event.instance.vevent for event in results
            if (self.is_matching(event.instance.vevent, self.search)
                and (not self.is_all_day(event.instance.vevent)
                     or self.include_all_day)
                and not self.is_over(event.instance.vevent))), None)

        # If no matching event could be found
        if vevent is None:
            _LOGGER.debug(
                "No matching event found in the %d results for %s",
                len(results), self.calendar.name)
            self.event = None
            return True

        # Populate the entity attributes with the event values
        self.event = {
            "summary": vevent.summary.value,
            "start": self.get_hass_date(vevent.dtstart.value),
            "end": self.get_hass_date(self.get_end_date(vevent)),
            "location": self.get_attr_value(vevent, "location"),
            "description": self.get_attr_value(vevent, "description")
        }
        return True

    @staticmethod
    def is_matching(vevent, search):
        """Return if the event matches the filter criteria."""
        if search is None:
            return True

        pattern = re.compile(search)
        return (hasattr(vevent, "summary")
                and pattern.match(vevent.summary.value)
                or hasattr(vevent, "location")
                and pattern.match(vevent.location.value)
                or hasattr(vevent, "description")
                and pattern.match(vevent.description.value))

    @staticmethod
    def is_all_day(vevent):
        """Return if the event last the whole day."""
        return not isinstance(vevent.dtstart.value, datetime)

    @staticmethod
    def is_over(vevent):
        """Return if the event is over."""
        return dt.now() > WebDavCalendarData.to_datetime(WebDavCalendarData.get_end_date(vevent))

    @staticmethod
    def get_hass_date(obj):
        """Return if the event matches."""
        if isinstance(obj, datetime):
            return {"dateTime": obj.isoformat()}

        return {"date": obj.isoformat()}

    @staticmethod
    def to_datetime(obj):
        """Return a datetime."""
        if isinstance(obj, datetime):
            return obj
        return dt.as_local(dt.dt.datetime.combine(obj, dt.dt.time.min))

    @staticmethod
    def get_attr_value(obj, attribute):
        """Return the value of the attribute if defined."""
        if hasattr(obj, attribute):
            return getattr(obj, attribute).value
        return None

    @staticmethod
    def get_end_date(obj):
        """Return the end datetime as determined by dtend or duration."""
        if hasattr(obj, "dtend"):
            enddate = obj.dtend.value

        elif hasattr(obj, "duration"):
            enddate = obj.dtstart.value + obj.duration.value

        else:
            enddate = obj.dtstart.value + timedelta(days=1)

        return enddate

I wish i had a better explanation for you.


Scale operation shortcut conflicts with 3D editor free look shortcut

Scale operation is activating when you have selected object, hold RMB and try to move backwards

Confirmed, scale operation shortcut conflicts with 3d editor free look shortcut
But there's nothing we can do about it, as there's no way to tell if the editor is doing free look.
Besides, Y key which used to constrain to y-axis, is also conflicting with "Use Snap" shortcut
Current workaround would be changing editor input mapping
And I think I should document these conflicting shortcuts to README

Can't we just make the function return if we have the right mouse button pressed?

Can't we just make the function return if we have the right mouse button pressed?

Quick fix for free look, working as far as I know, is:
[...]
func _forward_3d_gui_input(camera, event):

	var forward = false
	if current_session == SESSION.NONE:
		# solve conflict with free look
		if event is InputEventMouseButton:
			if event.button_index == MOUSE_BUTTON_RIGHT:
				_already_pressing_left_mouse_button = event.is_pressed()

		if _is_editing:
			if event is InputEventKey:
				if event.pressed:
					match event.keycode:
						[...]
						KEY_S:
							if not event.ctrl_pressed:
								# solve conflict with free look
								if not _already_pressing_left_mouse_button:
									start_session(SESSION.SCALE, camera, event)
									forward = true
						[...]

Hey @farfalk, thanks for the code, it works great for me!
Do you want to make a pull request, or shall I do it?
And for the shortcut keys of local space and snap grid, I think it is better to respect user's editor setting.

Hey @farfalk, thanks for the code, it works great for me!
Do you want to make a pull request, or shall I do it?
And for the shortcut keys of local space and snap grid, I think it is better to respect user's editor setting.

As you want! I can make a PR by the weekend if you're ok with that :)
Regarding the shortcuts: I noticed your TODOs, I totally agree, but couldn't find a way to read editor settings unfortunately...  instead, I found a Godot PR proposing a way to obtain them, so I figured it's still not possible to read them... Have you got any suggestion?

As you want! I can make a PR by the weekend if you're ok with that :)

Sure, that would be great! Thank you!

Have you got any suggestion?

No, I haven't figure out a solution for this yet

P.s. didn't realize you're the same dev who made YAFSM! Nice to see you again ;)

Haha, nice to see you again too =)

@farfalk
I just figured out a way to get shortcut key for both local space and snap grid, it is as simple as accessing the shortcut property of the local_space_button:
local_space_button.shortcut

It works even if the user change the input mapping in editor settings.

@farfalk
I just figured out a way to get shortcut key for both local space and snap grid, it is as simple as accessing the shortcut property of the local_space_button:
local_space_button.shortcut

It works even if the user change the input mapping in editor settings.

That's nice, good catch! Do you want to handle it yourself or should I try your suggestion in the same PR?

That's nice, good catch! Do you want to handle it yourself or should I try your suggestion in the same PR?

Can you help me to add it to the same PR? It is a small edit anyway, thank you =P

@imjp94 on second thought I don't understand your suggestion... local_space_button is a property of the plugin, populated by
local_space_button = Utils.get_spatial_editor_local_space_button(spatial_editor)

The definition of get_spatial_editor_local_space_button(spatial_editor) is:
static func get_spatial_editor_local_space_button(spatial_editor):
	var children = recursive_get_children(spatial_editor)
	for child in children:
		if child.get_class() == "Button":
			if child.shortcut:
				if child.shortcut.get_as_text() == OS.get_keycode_string(KEY_T):# TODO: Check if user has custom shortcut
					return child

Your suggestion seems to be to use local_space_button.shortcut inside this code, but that doesn't make sense to me, because it would be a recursion. So: how do you propose to proceed?

@farfalk
Oppss, sorry, I didn't realized that's how I extract the button in the first place...


Cannot connect to tm2 source

When using a tm2 source I get the following error (shortened stacktrace):
File "XXX/postile/postile.py", line 57, in setup_db
ConnectionRefusedError: [Errno 111] Connection refused
sys:1: RuntimeWarning: coroutine 'Loop.create_server' was never awaited

I use the following command: postile --cors --tm2 ../../tilelive-swift/openmaptiles.tm2source/data.yml
When I specify the db connection settings myself using postile --pgpassword ... it works.

@boldtrn sorry for the delay, the PostgreSQL connection parameters needs to be passed on command line, they are not read from the data.yml.
The tm2source is a format used mainly for the old Mapbox Studio Classic software and is only used partially here (like in OpenMapTiles project).

Thanks for the update :+1:


SolverError in API

          I suggest `SolverError` as this will eventually go into the API as `TyClassSolverError` or smtn like that.

Originally posted by @bladyjoker in https://github.com/mlabs-haskell/lambda-buffers/pull/43#discussion_r1102595283

It'll make more sense to do this after #44 is mostly-finalized because we won't have a good idea of what that message will look like until that PR is (nearly) done.


Allow customised authorUsername in the form

Current behaviour:
I believe the plugin cant does not change authorUsername in the front-end.
e.g
<input type="hidden" name="authorUsername"<EMAIL_ADDRESS>/>

and authorUsername is defined in plugin in settings.
Desire behaviour:
the guest-entries/save action can take below value
<input type="hidden" name="authorId" :value="userId" />

Guest Entries doesn’t support passing a custom authorUsername value – that’s just something it includes in the response info when submitting over Ajax. That said, if you really want to add support for the form passing its own authorUsername param, you could make that happen by writing a module that hooks into the beforeSaveEntry event.


Compatibility with Oracle CPU Oct 2024

Weblogic logs contains exceptions while deploying

Error on connection: 'weblogic.rjvm.t3.MuxableSocketT3$T3MsgAbbrevJVMConnection@541b0a8a' java.io.EOFException
java.rmi.ConnectException: PeerGone thrown while in non-connected state
java.rmi.ConnectException: Attempt to sendMsg using a closed connection
Despite the errors, the deployment is successful.

Sorry, but I do not understand what you are doing.  Please describe the environment, and the workflow that you are trying to do.

We are deploying our applications using the following command: java weblogic.Deployer -deploy -adminurl t3 -adminurl t3://localhost:7001...
During deployment several errors are logged in the WLS log, the causes of which I have listed above. Before the CPU, there were no such errors.

WebLogic Deploy Tooling and weblogic.Deployer are not the same tool.  weblogic.Deployer is part of the Oracle WebLogic distribution.  If there is an issue with the October CPU or that tool, you need to file an SR with Oracle Support.
WebLogic Deploy Tooling (this project) is an open source set of tools that is installed separately from the Oracle Home and contains shell commands like createDomain, discoverDomain, etc.  See https://github.com/oracle/weblogic-deploy-tooling/tree/main/installer/src/main/bin


Completion stops showing C# when re-invoked at the same place`

When typing @ in a Razor file we get C# completions, and as long as the completion window stays open, all is fine. You can backspace the things you type, and keep typing, and the list filters as expected. All is right with the world. If you type too quickly before the list pops up, or you hit Ctrl+Backspace and make the list go away, then subsequent typing doesn't show C# in the completion list any more.

Debugged through this a bit and some random notes for future travellers:
It doesn't appear to be a doc sync issue on our side, though the amount of messages flying around make it hard to debug. It seems that when this happens, Roslyn is just returning null for the completion requests we send them. Next step is probably to debug into Roslyn and find out why. When typing quickly, I did see a different TriggerKind (perhaps TriggerForIncompleteCompletions? I should have taken note, sorry!), and based on other comments in the code, it is perhaps by design that Roslyn doesn't repond to this, however in our case things are a little different. It might make sense for Roslyn to not respond, but if we and/or Html are going to, then it is a bad experience for Razor developers. We already have some code that re-maps trigger kinds in order to get Roslyn to respond (eg, to typing @) so it could just be a matter of this being a new case we need to handle.


api: Fix feature level 107 in the API change log.

Adds a new line between feature level 107 and its content, so that said content renders correctly as an unordered list item.
Screenshot of current API changelog

Screenshot of fixed API changelog

Merged, thanks @laurynmm!  I wish there were a way to have tooling catch this sort of thing, but it's a bit subtle.


Do not plot multiple pressurizes per depressurize

afa7e72 implemented for historyplot. eventplot still will plot the second one. unclear whether this is desired behavior.


feat: add reddit embed annotation

Changes to add annotations for reddit embed
https://cnissues.atlassian.net/browse/COPILOT-9278

@bach @anurag-cn let's discuss this PR because I think @bachbui was right, we might not need this anymore.
At the time we created this story, Reddit embeds were in a different shape; those weren't done in an iframe. Now they are. I think we may just need to implement the past handler. What do you think?

hey @anurag-cn let's remove the new annotation and then continue the work for the paste handler here

@gmedina yep, if we don't need a new annotation for this (since it is already supported by the IframeEmbed) all we need to do here is

remove the annotation in offset-annotations
update the social urls util to return an IframeEmbed instead of a RedditEmbed in normalizeRedditEmbed
update the source-html converter to produce an IframeEmbed instead of a RedditEmbed from the reddit embed snippet


UI not updating staking rewards

There’s a very odd issue going on here but I haven’t been able to identify what happened. This has happened twice so far:
The first time it was about 2 weeks ago or so. I had core RC2 for 1-2 weeks and did not see any rewards at all! I check the staking menu and account. No updates whatsoever. I selected different menu and no change. I ping @dev0tion and he told me to restart. After I restarted, all the staking rewards appear....
The second time was today. Same exact issue. It was three days since I had a reward so I restarted my wallet and the staking rewards appear.
This seem to be some UI bug.

Hi @trunghieud, I'm aware of the issue and I'm testing a fix locally.
When you have this issue next time, can you please try scrolling up and see if the transactions appear?
Cheers.

Hi @trunghieud, I was not able to reproduce this after the fix, so it should be a problem of the past with the official v<IP_ADDRESS> binaries.
Please reopen the issue if you still encounter the problem.


In forge image, upgrade to pangeo-forge-recipes>=0.9.3

👋 @scottyhq & @yuvipanda, we released pangeo-forge-recipes today and I've just updated its Conda Forge recipe accordingly.
I'd love to get an image tag (commit hash tag is fine, doesn't need to be a date-versioned tag) with this release in it. Is that simply a matter of merging this PR? Or does something else need to happen?
Thanks so much!

/condalock

Thanks @scottyhq!


Changelog for 6.0 is missing rename of {% field %} to {% rawformattedfield %}

Pertinent section of the Wagtail docs
https://docs.wagtail.org/en/latest/releases/6.0.html
Details
When trying to upgrade a large project from 5.2 to 6.0 I stumbled over the (breaking) rename of the {% field %} tag.
I think sooner or later a developer will use this tag to customize/add some forms with correct styling, so this should be mentioned in the changelog.
For example, it also breaks the modeladmin-package, see the fixing PR.
Working on this

Anyone can contribute to this. View our contributing guidelines, add a comment to the issue once you’re ready to start.

Relevant PR https://github.com/wagtail/wagtail/pull/11271

Documenting this in the release notes is a little problematic: in most cases, where the tag pair has no content, something like {% field field=form.email %}{% endfield %} should become {% formattedfield form.email %}. However, as per https://github.com/wagtail/wagtail/pull/11271#issuecomment-1852315135, we're not yet ready to make the new formattedfield and rawformattedfield tags a public API - so the release note would essentially be telling people to replace one undocumented tag with another undocumented tag, when clearly we'd rather discourage them from using undocumented APIs at all :-)
I'd argue that our stance on this should be the same as for any other occasion people have borrowed bits of Wagtail internal code for their own use: if it breaks, it's your own responsibility to figure out how to update it.

I'd argue that our stance on this should be the same as for any other occasion people have borrowed bits of Wagtail internal code for their own use: if it breaks, it's your own responsibility to figure out how to update it.

You're right, makes total sense! 👍


Callback function for scan should be on global scope in Rails App

I tried to make it work on a Ruby On Rails app but when I click the scan button, after scanning it says that the callback function must be on global scope.

Can you show the relevant code? Have you tried attaching the callback to window scope manually like so?
window.onAfterCaptureScan = function(event)  {         console.log('onAfterCaptureScan: ' + JSON.stringify(event));         var HTTP = "http";         var text = event.value;         if (HTTP == text.substring(0, HTTP.length))  {             text = "" + text + "";         }         var scans = document.getElementById("scans");         var row1 = document.createElement('div');         row1.setAttribute('class','row timestamp');         row1.innerHTML = "Scanned on " + new Date() + "";         var row2 = document.createElement('div');         row2.setAttribute('class','row');         row2.innerHTML = text;         scans.insertBefore(row1, scans.firstChild);         scans.insertBefore(row2, scans.firstChild); }

Sure.
I created a gist to make things easier.
(https://gist.github.com/rvgarimrj/2e6187a7c4088c71bdd3)
On application.html.erb you will find the right tag to include the api.
On *application.js *you will find the method onAfterCaptureScan.
On detail_fields.html.erb you will see the scanBtn id where I call the
bridgeit.scan
Also, the problem is that I need to call another function after getting
the value from onAfterCaptureScan.I only put an alert on that function
that I need to call (novo_cod_barras) to see if it is being called. And
then I get the error saying that onAfterCaptureScan must be in global
scope.
Appreciate your help
Best Regards
Gabriel
2016-03-16 8:32 GMT-03:00 Philip Breau<EMAIL_ADDRESS>
Can you show the relevant code? Have you tried attaching the callback to
window scope manually like so?
window.onAfterCaptureScan = function(event) {
console.log('onAfterCaptureScan: ' + JSON.stringify(event));
var HTTP = "http";
var text = event.value;
if (HTTP == text.substring(0, HTTP.length)) {
text = "" + text +
"";
}
var scans = document.getElementById("scans");
var row1 = document.createElement('div');
row1.setAttribute('class','row timestamp');
row1.innerHTML = "Scanned on " + new Date() +
"";
var row2 = document.createElement('div');
row2.setAttribute('class','row');
row2.innerHTML = text;
scans.insertBefore(row1, scans.firstChild);
scans.insertBefore(row2, scans.firstChild);
}
—
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub
https://github.com/bridgeit/bridgeit.js/issues/55#issuecomment-197275853

The problem might be that novo_cod_barras function is not in the right scope when onAfterCaptureScan tries to call it. If there's an uncaught error in the callback function, BridgeIt will still give you that 'not in global scope' error.
Try this.
https://gist.github.com/philipbreau/c07e59f8eefd4c13b378

Tks Philip, now it is working. One last thing. My window.novo_cod_barras
function was written ,initially, as a jquery function. I know it some kind
of out of this issue scope , but can it be used inside this
window.novo_cod_barras as jquery or i must write it only in javascript
language?
tks again for the patience
regards
Gabriel
2016-03-17 14:40 GMT-03:00 Philip Breau<EMAIL_ADDRESS>
The problem might be that novo_cod_barras function is not in the right
scope when onAfterCaptureScan tries to call it. If there's an uncaught
error in the callback function, BridgeIt will still give you that 'not in
global scope' error.
Try this.
https://gist.github.com/philipbreau/c07e59f8eefd4c13b378
—
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub
https://github.com/bridgeit/bridgeit.js/issues/55#issuecomment-197993077

No, you can use jquery or anything you want. As long as it's loaded before your callback fires, then you should be fine. When you reference $, you're referencing window.$, so it's fine.

Tks Philip
Em 18/03/2016 09:33, "Philip Breau"<EMAIL_ADDRESS>escreveu:

No, you can use jquery or anything you want. As long as it's loaded before
your callback fires, then you should be fine. When you reference $, you're
referencing window.$, so it's fine.
—
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub
https://github.com/bridgeit/bridgeit.js/issues/55#issuecomment-198330777

Philip, one last question. I need to pass the target event to a function.
In my OnAfterScanCapture i'm doing like so:
window.onAfterCaptureScan = function(event)
{
try{
// alert('entering onAfterCaptureScan()');
var target = event.target;
var parent = target.parentElement;//parent of "target"
var parent1 = $(parent).parents('.nested-fields');
var valor = event.value;
so I get Cannot read property 'parentElement' of undefined.
Should I open another issue?can you help me on that ?
regards
2016-03-18 10:23 GMT-03:00 Gabriel Madeira<EMAIL_ADDRESS>
Tks Philip
Em 18/03/2016 09:33, "Philip Breau"<EMAIL_ADDRESS>escreveu:

No, you can use jquery or anything you want. As long as it's loaded
before your callback fires, then you should be fine. When you reference $,
you're referencing window.$, so it's fine.
—
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub
https://github.com/bridgeit/bridgeit.js/issues/55#issuecomment-198330777

Hi,
There is no target on the returned event, as the callback comes from the native bridge and not a user event. If you want to store the target, you should probably capture that before firing the bridgeit.scan() function.

That was i thought too. Do you have any idea of how can i do to store the
target before firing the callback without loosing the actual bridgeit
functionality?
Thank you in advanced.
Best regards
Gabriel
Em 21/03/2016 19:59, "Philip Breau"<EMAIL_ADDRESS>escreveu:

Hi,
There is no target on the returned event, as the callback comes from the
native bridge and not a user event. If you want to store the target, you
should probably capture that before firing the bridgeit.scan() function.
—
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub
https://github.com/bridgeit/bridgeit.js/issues/55#issuecomment-199525696


Path/Rest params in the resource function are considered as unused

Description:
Following sample gives the unused variable warning.
import ballerina/http;
service / on new http:Listener(9090) {
    resource function get [string name]() returns string {
        return "ballerina";
    }
}

WARNING [main.bal:(5:27,5:40)] unused variable 'name'
Happens for both path and rest parms([string... s])
Affected Versions:
beta4-rc1

Fixed in https://github.com/ballerina-platform/ballerina-lang/pull/33794.


Fix broken headings in Markdown files

GitHub changed the way Markdown headings are parsed, so this change fixes it.
See bryant1410/readmesfix for more information.
Tackles bryant1410/readmesfix#1

Please sign your commits following these rules:
https://github.com/docker/docker/blob/master/CONTRIBUTING.md#sign-your-work
The easiest way to do this is to amend the last commit:
$ git clone -b "master" git@github.com:bryant1410/libkv.git somewhere
$ cd somewhere
$ git commit --amend -s --no-edit
$ git push -f

Amending updates the existing PR. You DO NOT need to open a new one.

Looks like something went wrong in the rebase, because there's no changes anymore in this pull request

Because something looks like it went wrong in the repo can I tackle this issue instead?

Yeah, it seems there was something wrong with the rebase. Feel free to change the commits of this branch.


UUIDs and JSON Serialization

This PR adds UUIDs to all PowerSystems types and allows serialization and deserialization wtih JSON.  This supersedes the previous JSON PR.
There were quite a few special cases to handle with JSON serialization.  If you have concerns about future sustainability, definitely raise them.
In a subsequent change we could replace all JSON calls with JSON2.
This will fix issue #203.

it might be necessary to rebase this branch onto dev, given the changes in the Project.TOML file

Codecov Report

Merging #209 into dev will increase coverage by 1.73%.
The diff coverage is 88.36%.

@@            Coverage Diff             @@
##              dev     #209      +/-   ##
==========================================
+ Coverage   55.73%   57.46%   +1.73%
==========================================
  Files          51       56       +5
  Lines        3811     4025     +214
==========================================
+ Hits         2124     2313     +189
- Misses       1687     1712      +25

Impacted Files
Coverage Δ

src/PowerSystems.jl
100% <ø> (ø)
:arrow_up:

src/models/products/transfers.jl
0% <0%> (ø)

src/models/generation/hydro_generation.jl
100% <100%> (ø)
:arrow_up:

src/utils/lazy_dict_from_iterator.jl
100% <100%> (ø)

src/models/topological_elements.jl
100% <100%> (ø)
:arrow_up:

src/models/storage/batteries.jl
100% <100%> (ø)
:arrow_up:

src/models/loads/controllable_loads.jl
100% <100%> (ø)
:arrow_up:

src/models/loads/shunt_elements.jl
100% <100%> (ø)
:arrow_up:

src/internal.jl
100% <100%> (ø)

src/models/generation/thermal_generation.jl
100% <100%> (ø)
:arrow_up:

... and 25 more

Continue to review full report at Codecov.

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

Looks good to me! One other thing I was thinking was whether we should be using getfield, fieldnames etc versus getproperty, propertynames. Using getproperty and propertynames might be preferred, since it resolves to getfield and fieldnames anyway and will allow more flexibility.


fix the path to the entry point

What type of PR is this?
/kind bug

What this PR does / why we need it:
It was a mistake on me in https://github.com/kubernetes-sigs/kube-scheduler-wasm-extension/pull/103.

no required module provides package kube-scheduler-wasm-extension.go; to add it:
https://prow.k8s.io/view/gs/kubernetes-jenkins/logs/post-kube-scheduler-wasm-extension-push-images/1768944622496649216

Which issue(s) this PR fixes:

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

NONE

What are the benchmark results of this change?

/lgtm

👍
https://prow.k8s.io/view/gs/kubernetes-jenkins/logs/post-kube-scheduler-wasm-extension-push-images/1769247085099487232


post_logout_redirect_uri should be optional

The parameter in the function getLogoutUrl() should be made optional, since Microsoft itself only suggests it and there are cases, in which a user can just close the window after logout and it is not desirable to redirect him.
My use case is a site with automatic logon and no page visible logged off (except login). There is no need to redirect the user.
https://github.com/TheNetworg/oauth2-azure/blob/8b8a384571ff4d776a0d6b124de891edcadd4002/src/Provider/Azure.php#L195

Hi, that makes sense. Could you please submit a pull request for this? Would be glad to merge it.


docs(readme): how to make a new  plugin README

Please let me know if / how I can improve this. Thanks.

Notes received so far:

include some code samples
include interface
discuss adding migrations to db folder

LGTM