[BUG] LIKE escape special characters with '' not working

What is the bug?
We followed MySQL syntax and tried to escape special character like '%' and '_' with the escape char ‘\', because MySQL uses '\' as the escape character, but seems it does not work.
Our observation only applies to some queries that are pushed down to the DSL.
How can one reproduce the bug?

The default escape is expected to work. It would be better if users are able to use alternative escape character e.g.
SELECT column1 FROM test_identitifer_2 WHERE column1 LIKE 'testEscape/%'  ESCAPE '/'

What is your host/environment?

OS: Linux
Version: AES7.10
Plugins: All plugins are enabled by default

Do you have any screenshots?
NA
Do you have any additional context?
NA
Proposal to fix
Add instructions for escape cases to build wildcard query from LIKE: https://github.com/opensearch-project/sql/blob/main/opensearch/src/main/java/org/opensearch/sql/opensearch/storage/script/filter/FilterQueryBuilder.java#L59

@chloe-zh Thanks for reporting the issue with very detailed info. Will check if this can be fixed soon.

Hey @dai-chen,
Do we have update for this issue?
Thank you

@chloe-zh Thanks for reporting the issue with very detailed info. Will check if this can be fixed soon.

Hey @dai-chen, Do we have update for this issue?
Thank you

@jingyali-apr We haven't worked on this yet. Will evaluate the solution first. Thanks!

What version is AES7.10? The sample query seems to be working in most recent SQL plugin.

result from current engine
PS /Users/maxk/inst/act> http :9201/_plugins/_sql format==jdbc query="SELECT Tags FROM sa3dprinting WHERE Tags LIKE 'testEscape\\%'"
HTTP/1.1 200 OK
content-encoding: gzip
content-length: 122
content-type: application/json; charset=UTF-8

{
    "datarows": [],
    "schema": [
        {
            "name": "Tags",
            "type": "text"
        }
    ],
    "size": 0,
    "status": 200,
    "total": 0
}

when legacy engine is forced
PS /Users/maxk/inst/act> http :9201/_plugins/_sql format==json  query="SELECT Tags FROM sa3dprinting WHERE Tags LIKE 'testEscape\\%'"
HTTP/1.1 200 OK
content-encoding: gzip
content-length: 140
content-type: application/json; charset=UTF-8

{
    "_shards": {
        "failed": 0,
        "skipped": 0,
        "successful": 1,
        "total": 1
    },
    "hits": {
        "hits": [],
        "max_score": null,
        "total": {
            "relation": "eq",
            "value": 0
        }
    },
    "timed_out": false,
    "took": 2
}

node details
PS /Users/maxk/inst/act> http :9201
HTTP/1.1 200 OK
content-encoding: gzip
content-length: 346
content-type: application/json; charset=UTF-8

{
    "cluster_name": "docker-cluster",
    "cluster_uuid": "qP59y9QBTHGfysGkijDm-w",
    "name": "opensearch-node-230",
    "tagline": "The OpenSearch Project: https://opensearch.org/",
    "version": {
        "build_date": "2022-09-09T00:07:12.137133581Z",
        "build_hash": "6f6e84ebc54af31a976f53af36a5c69d474a5140",
        "build_snapshot": false,
        "build_type": "tar",
        "distribution": "opensearch",
        "lucene_version": "9.3.0",
        "minimum_index_compatibility_version": "7.0.0",
        "minimum_wire_compatibility_version": "7.10.0",
        "number": "2.3.0"
    }
}

explain from current engine
PS /Users/maxk/inst/act> http :9201/_plugins/_sql/_explain format==jdbc query="SELECT Tags FROM sa3dprinting WHERE Tags LIKE 'testEscape\\%'"
HTTP/1.1 200 OK
content-encoding: gzip
content-length: 335
content-type: application/json; charset=UTF-8

{
    "root": {
        "children": [
            {
                "children": [],
                "description": {
                    "request": "OpenSearchQueryRequest(indexName=sa3dprinting, sourceBuilder={\"from\":0,\"size\":200,\"timeout\":\"1m\",\"query\":{\"wildcard\":{\"Tags\":{\"wildcard\":\"testEscape\\\\\\\\*\",\"boost\":1.0}}},\"_source\":{\"includes\":[\"Tags\"],\"excludes\":[]},\"sort\":[{\"_doc\":{\"order\":\"asc\"}}]}, searchDone=false)"
                },
                "name": "OpenSearchIndexScan"
            }
        ],
        "description": {
            "fields": "[Tags]"
        },
        "name": "ProjectOperator"
    }
}

Maybe it was fixed by #696


[Bug] Unable to run/connect to app-smith using docker.

Description
Trying to deploy appsmith using the install.sh script mentioned for self-hosting using docker.  Had to make a few changes to the docker-compose.yaml file (reduced version to 3.3 for docker-compose version and changed the ports for nginx).
[What happened]
After doing the above changes and starting the containers, appsmith internal server fails to start with the following error :
^[[31mappsmith-internal-server_1  |^[[0m  - Opened connection [connectionId{localValue:1, serverValue:1}] to mongo:27017
   97 ^[[31mappsmith-internal-server_1  |^[[0m  - Monitor thread successfully connected to server with description ServerDescription{address=mongo:27017, type=STANDALONE, state=CONNECTED, ok=true,        version=ServerVersion{versionList=[4, 4, 5]}, minWireVersion=0, maxWireVersion=9, maxDocumentSize=16777216, logicalSessionTimeoutMinutes=30, roundTripTimeNanos=16221041}
   98 ^[[31mappsmith-internal-server_1  |^[[0m  - Enabled plugins: []
   99 ^[[31mappsmith-internal-server_1  |^[[0m  - Disabled plugins: []
  100 ^[[31mappsmith-internal-server_1  |^[[0m  - PF4J version 3.5.0 in 'deployment' mode
  101 ^[[31mappsmith-internal-server_1  |^[[0m  - Field 'id' cannot be empty
  102 ^[[31mappsmith-internal-server_1  |^[[0m org.pf4j.PluginRuntimeException: Field 'id' cannot be empty
  103 ^[[31mappsmith-internal-server_1  |^[[0m    at org.pf4j.AbstractPluginManager.validatePluginDescriptor(AbstractPluginManager.java:918)
  104 ^[[31mappsmith-internal-server_1  |^[[0m    at org.pf4j.AbstractPluginManager.loadPluginFromPath(AbstractPluginManager.java:840)
  105 ^[[31mappsmith-internal-server_1  |^[[0m    at org.pf4j.DefaultPluginManager.loadPluginFromPath(DefaultPluginManager.java:139)
  106 ^[[31mappsmith-internal-server_1  |^[[0m    at org.pf4j.AbstractPluginManager.loadPlugins(AbstractPluginManager.java:240)
  107 ^[[31mappsmith-internal-server_1  |^[[0m    at org.pf4j.spring.SpringPluginManager.init(SpringPluginManager.java:61)
  108 ^[[31mappsmith-internal-server_1  |^[[0m    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  109 ^[[31mappsmith-internal-server_1  |^[[0m    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
  110 ^[[31mappsmith-internal-server_1  |^[[0m    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
  111 ^[[31mappsmith-internal-server_1  |^[[0m    at java.base/java.lang.reflect.Method.invoke(Unknown Source)
  112 ^[[31mappsmith-internal-server_1  |^[[0m    at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleElement.                                                  invoke(InitDestroyAnnotationBeanPostProcessor.java:389)
  113 ^[[31mappsmith-internal-server_1  |^[[0m    at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleMetadata.                                                 invokeInitMethods(InitDestroyAnnotationBeanPostProcessor.java:333)
  114 ^[[31mappsmith-internal-server_1  |^[[0m    at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.                                                                   postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:157)
  115 ^[[31mappsmith-internal-server_1  |^[[0m    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.                                                                          applyBeanPostProcessorsBeforeInitialization(AbstractAutowireCapableBeanFactory.java:416)

Steps to reproduce the behaviour:
Add steps to reproduce this behaviour, include console / network logs & screenshots

Run install.sh
Had to reduce the docker-compose version to 3.3 for local docker compose.
Changed the ports in nginx to 180 and 1443.
Run sudo docker-compose up

The logs for the internal-appsmith-server show the above error.
Important Details

Version: Ubuntu 18.04.1 hosted by AWS
Browser : Chrome

Hey @vaibhav-falconx, the error message you are seeing is actually harmless. We have an issue open where we intend to get to the bottom of this, but it shouldn't affect the functionality of the server. Can you share more logs from the server container so we can see if there's any other error message perhaps?
Additionally, if it's okay with you, can you share your current docker-compose.yml file as well?

Issue about the harmless error: https://github.com/appsmithorg/appsmith/issues/3616

Downgrading to High from Cititcal, since the error message posted in the description is harmless for the core functionality. We can reevaluate the criticality once we have more information of what the problem is. Thanks!

I realized later that this was benign. The actual problem was that I was trying to run app-smith on a different port and that was not working. Once I reverted to using the default port, AppSmith started. I think the main thing here is to make the documentation for changing ports more easier to follow. This can be closed as not a bug since there is already a duplicate.

Thank you for confirming and providing the details @vaibhav-falconx!
Closing.


Variable ComputeEmulatorRunning not initialized

The script RunTLSSettings.cmd is using the variable ComputeEmulatorRunning. But this variable is never initialized. It needs to be initialized via the service definition file as in this example:
https://docs.microsoft.com/en-us/azure/cloud-services/cloud-services-startup-tasks#environment-variables

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

ID: 6435e9f9-f345-e1b1-65bd-809c87419153
Version Independent ID: cff91a6d-eeb9-cd7c-af75-611d266d6635
Content: Troubleshooting issues caused by applications that don’t support TLS 1.2
Content Source: articles/cloud-services/applications-dont-support-tls-1-2.md
Service: cloud-services
GitHub Login: @mimckitt
Microsoft Alias: tagore

@nitramavfank
Thanks for the feedback! I have assigned the issue to content author to check and update the document as appropriate.

@mimckitt
Can you please check and add your comments on this doc update request as applicable.

We are currently cleaning up old issues and closing out items that are greater than 90 days old. If an issue is still present, please open a new feedback item on the document so we can prioritize correctly.
#please-close


[BUG] - looks like webhook ignores "retries" and send request endlessly

[BUG] - looks like webhook ignores "retries" and send request endlessly

{
    "name": "default",
    "config": {
        "webhooks": [
            {
                "url": "https://httpbin.org/status/504",
                "events": [
                    "message",
                    "session.status",
                    "message.ack"
                ],
                "retries": {
                    "delaySeconds": 1,
                    "attempts": 3
                }
            }
        ]
    }
}

https://discord.com/channels/1228605717372604466/1293465810240802897/1293534838304804876

What is the expected ETA on this?

looks good, it does retry only attempts times and then stops retries 🤔
It could be because of this bug https://github.com/devlikeapro/waha/issues/579 - it basiclly creates two session at once - normal (one you see in Dashboard/API) and shadow one which can negatively influence each other...

Retries
You can configure retry policy for webhooks by settings config.retries structure when POST /api/sessions/:
{
  "name": "default",
  "config": {
    "webhooks": [
      {
        "url": "https://webhook.site/11111111-1111-1111-1111-11111111",
        "events": [
          "message"
        ],
        "retries": {
          "delaySeconds": 2,
          "attempts": 15,
          "policy": "constant"
        }
      }
    ]
  }
}

Possible policy:

constant - retry with the same delay between attempts (2, 2, 2, 2)
linear - retry with linear backoff (2, 4, 6, 8)
exponential - retry with exponential backoff with 20% jitter (2, 4.1, 8.4, 16.3).


Need a way to create repository client without needing to ping.

For internal communication with Notary/Registry.
The Authorizer may simply create a raw token and attach to the request.

Done


Where are the codes of adapter?

Thank you for your interest in our project. We intend to release our code once the paper has been accepted.

@Yangsenqiao  Look forward to releasing! :-)

We have released our code, thanks for your interest.


Where to find the RPS chart?

Hey,
I updated to version 0.8a2, but I don't see the average response time or RPS charts anywhere in the web UI.
How can we find them?
Thx

it hasn't been released yet.  you can install from the master branch in git for a preview.


RuleGroups.Validate(...) needs unexported struct ruleGroups as input

I'm trying to upgrade prometheus dep in thanos and I'm stuck with this:
$ make build
all modules verified
>> building binaries /Users/s.rabot/go/bin
 >   thanos
# github.com/thanos-io/thanos/cmd/thanos
cmd/thanos/check.go:88:29: not enough arguments in call to promRgs.Validate
	have ()
	want (rulefmt.ruleGroups)

https://github.com/prometheus/prometheus/blob/51c824543bca2f25baa6596827cf4fad8f18dc2e/pkg/rulefmt/rulefmt.go#L66
cc @bwplotka

Why you put issue on Prometheus for this? It's normal we will have build errors to fix.  We plan to upgrade deps after chunk iterator.

Because, unless I'm mistaken, I thought there was little that can be done in thanos if prometheus does not export ruleGroups or adds a NewruleGroups() ruleGroups func.
Am I wrong ?

I think it should be exported for non-thanos related reasons.
For example if I want to build a tool that manages alerts, and not implement my own validation logic, I can't.

Use of our internals by 3rd parties is unsupported, but we will generally accept PRs to make things public.

Let's move forward with this then... (:
It's blocking https://github.com/thanos-io/thanos/pull/2535

Are you still happy to continue this @sylr

@bwplotka I wish I could but I am pretty busy at the moment.

Actually the way forward is to get back to yaml.v2 as there are missing features in yaml.v3

Do you have any details / related discussion @roidelapluie ?

https://github.com/prometheus/prometheus/pull/7142#discussion_r410899455

Actually things are moving now.. I will see that later on.

cmd/thanos/check.go > I do not see that file in thanos codebase?

It just changed - it is now in cmd/thanos/tools.go
On Wed, 6 May 2020 at 00:33, Julien Pivotto<EMAIL_ADDRESS>wrote:

cmd/thanos/check.go > I do not see that file in thanos codebase?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/prometheus/prometheus/issues/7128#issuecomment-624360438,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABVA3O7VQP5GAKVQKAADTALRQCO6NANCNFSM4MI5NU3A
.


Add support for snippet groups in Lepiter

This looks interesting! What’s the use case?

In this case, querying for todos.

So it's a way to have interesting views for a random collection on snippets that may or may not be on the same page?


Server returns 404 when performing HEAD request

OS?

macOS Sierra 10.12.3

Versions.

1.0.0-rc.0

Repro steps.

Perform HEAD request to the  spawned server by ng serve using (cURL, fetch, Angular HTTP, XHR) and it will automatically return 404.

Mention any other details that might be useful.
When the URL provided is: http://localhost:4200/assets/img/ui/logo.png (assuming it exists) it returns 404. But when the URL provided is: http://localhost:4200/src/assets/img/ui/logo.png  it returns 200.

I also have this issue. Easy to verify using a stock project created with ng new ... . Totally breaks my dev workflow.

Some more info: My problem relates to a static /content/ folder with a couple of large image files. Adding this to assets causes the build to fail. So can't go down that route.

Fixed: Moved some hidden .originals folders with very large original artwork out of ´src/content/´ to a separate folder in the project root. Traced it down to a failure in webpack after ejecting the webpack config.

Applies to all requests, not just HEAD: #5064
The issue seems to be a breaking change of looking for assets under a different path than before (now requiring src/ in the path). Should be reverted.

@evelbulgroz @Daedalon that change should not be reverted. Only assets that are part of a build should be served.
I can't seem to repro this. I put an image in assets/, ran ng serve and tried to get that image via cURL and it worked:
kamik@T460p MINGW64 /D/sandbox/master-project (master)
$ ls src/assets/
execute.jpg

kamik@T460p MINGW64 /D/sandbox/master-project (master)
$ curl http://localhost:4200/assets/execute.jpg
 Ï Ó ►JFIF ☺☺☺ H H   █ C ♣♥♦♦♦♥♣♦♦♦♣♣♣☼♂♂       ♀◄☼↕↕◄☼◄◄‼■∟↨‼¶→§◄◄↑!↑→↔↔▼▼▼‼↨"$"▲$∟▲▼▲ █ C☺♣♣♫▲¶◄¶▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲ └ 8 8♥☺" ☻◄☺♥◄☺ ─ ¶"2Qaqí§■$3üæÆ ─ →☺ ☻♥☺☺           ♣♠♥♦☻☺ ─ 0◄ ☺☻♣☻♦♣☻☺      ☺☻◄ ♥♦!1♣↕♠AQü‼"æíaq¶#2r▒┴Ðß ┌ ♀♥☺ ☻◄♥◄ ? ╦Wd9sªTjê←ÖÄµ▲uÃrÑ¼Ý╔$‗Ñ↕rI¯I¯t¢§¢Ù rr →Øç&d←ö
↑Tn╣)SÛp¥Ô→B©*J┬UÁHO    └ÕDd☼æ→®kÆnj³¿┤Z}>×XèéÂíÊb(2Æá  Q↓╬¯;ôõ²§═4╣ÆUÒN ♥ƒ¹÷ë§ÝJéª£RÊ%JÏ@I= ☺Ê9¯g╗▲╠#ûìJº╦n┐Q£®uv^§¸/☼Mi‼fE1#QñªÜ╩(èïwP♫¹£rOı▀Ø9^6MìaXÈHw
çFº{´n╔ [─©ä♠╩╬BFU╔┴Ój<F╣nÞ¿â☻ù◄#lt║ÿ±æÓr│¾Q¹£ƒÍu1Vºª▀á╬Àd═j}^pCıA      AÈAê╔▀éí±+*ã@ÝÃ▀M¶  KÛTjL→ıÃ→←Û½▓[ñËR┤║Ò╦q#`Ãd×A*▼O∟¾ìE6Á☺þ♂ù‗ôÊÎ☻┘.ÃÑa`K l§à█↕òCºã¬Poj╠╦fDyîJb[q∟Æ╦è % ■êPPrãI♦◄úM▓¯→╝iòz}☺╚ý@º└üIÖUì↨{Ä©╩vö0☼♣ı)[J╣└╔¹↔→Åm=Gµ-d↕─üî♫áæf,KçÄÜjlæhóõ█‗"[ýV%);↔É×èwØÃìßC▲Ë¹Íé■ÖÝ╚mÈª_À#àTøq☺ÊÔÊ?ÜI  m v╩I╚þ;è>·«þR¬‼ÝhO8ýq♫→ÐËióKçv@¦Ò<¸ı█└UúaÐ=;îÔR¾i5
"ÖF3n¬├«S®Hè─$IZ☺ûªÂ³ô↔ õ)j$§Æ A8ãï*▒♂R☻»¾²┐h@¼ÊU!;ôo×©¨ÿ]¶Ì♦+>\¸º├Mrlµ=¼ÿ-2§↔@ö¿ìÚ9}N%→∟→O╣§:õ¡Ïè¡»■Q±K`ÄFÕ‼¹█  luxß(m)t-J╚♥Â{↕X¾ªj
♦¿‼õqº9w\ƒe$[■
rÁ!▓äØ©‗ ╬☼Ï♫┌ìtôÛªÖèûÉý¯óq¶■§´☺LP┐╠Áá↨:½%
→nçk╚╗¼ÙÜ▄2¶^ª)èö↓2V☻☻Â)+B▄=üBH♥Ç1Æp4k┌üY%[ecÂI'£9┌8nu):ôxÅ╠‼f♀═f¸w·Dá6┬+×ñArZJ)Èõ¬í)ò¼ä→$'<ÒÙ)8‗☻çlÚ╩‗aÛÁZt¶çzsVJKÃ‗8¯♠  xã×¼♂rU↕ôqHÿË.U'╔÷ÕM$♣$¶'rr8Ãsã1¿[á░
┤ª$E!L░0JG┼Gîü¸▼ƒ:HÈµ¬\Öog┐|☼@  ¯▼0nv░ku5LM└☺#á↓'╣ ?6èZ│→←RRËêT░àò┼Ú↕î`³ë¾ãGÙÝ»¡2Ñ´Ò.$Ãñ¡®♥¨C╬‼Ç        ↑╩~8Ã|±°È¡nö‗∟█◄ÇÞ╔%    ♦®YÓp<wÈjXïE}fºRnûH┌ñ©:«'=░Ïõd∟‗8¤þGt¬ÖsÆ7Å×ÐwTº‼ñ┤º*8µyr┐▀♣¹┬¦RØ&å┌N♥▒VÆ¿Æ °< ßC?lîì)èÒ¡V7Ä©ÉÊ:╩R░☺∟£w³cNùW®¶┤ÐWKºS←v3¡ÔBÛ↓t)[@╩►1Ä8╔>♠5M"Òm║£╣▲¦nÂ°HH▀ìá♫▀▄Þ¶¶Üòâ)╚HÕıÃ╬ð¢ÑMFÅ!H¼    Bª¿☼0♦öm♫@*g²Ï┤hU»ê÷ØÀTÁÔJdUÛk┼YµWö▓äú☻"H╬Õ²[È8←èy9┴¼═S«Jû┘e¦¢"¢╚l☺äÓ`☺ÃlhıôB'Ø¾¾¸─♥ù─¬ÊÉ$iç╦Æóø®]rX3 :f¯NÛæÛÁómX¶ÞıB┴rZ►┌Ê¹àjQR☼Sn 9Iþ'♦qî→■Ô§EÿNû █ÕÃ6éçeI╩H¤'b >1§hÐñZÜ9KÜ7¦â♂Ó☺→Å♫Þ¶Jûò¼§§§‼v╗²←¦ß↕¢Û§├Q♂lHD&öyj↕♥C  CÕÄ{‼¬‗½P}■¥úÆW┐Æ þ■thÐZ↓↕┴ã"µÂúK'├º‗♥k ♫@╠G░ÞøLvù↔¥£Áá¯qım+┴õv╔Êt¸²│ïmiJûò¶ß*╩r♫☼>thË%▼ÆjÕîX¸1ô±→ìE♣=T¤ÈÛG@╔ Ä¸.yÃ←↕▲┌▀U┼∟% gƒ ☼:4hÐ↑JÅ ┘

@filipesilva perform a curl HEAD request. I attached screenshots of what's happening.
curl --head http://localhost:4200/assets/<path_to_file>

that change should not be reverted. Only assets that are part of a build should be served.

@filipesilva Could you clarify what you mean? The URLs for assets are broken due to this change and unfortunately I didn't yet understand what your sentence means in this context.
The alternatives I see are:

Every affected user updates the URLs to all assets to reflect this non-announced breaking change. The URLs that work around this change in NG-CLI's server will probably not work in production. :-1:
This non-announced breaking change is reverted and the URLs will work the same as they have until this breakup. :+1:

@Daedalon i agree to the points presented especially number 1 where it would break everything that depends on assets path since performing ng build does not include src folder in the generated dist folder.

@exequiel09 It might be that the webpack-dev-server we use in ng serve does not support HEAD requests as configured. If that's an option we can include it.
@Daedalon the change I mentioned prevented files that were not in a build from being served from ng serve. Files that are on disk but are not included in a build should not be served because they are not part of the files that go in dist/ after ng build. That is not a breaking change - you were just relying on a bug and we fixed that bug.

FWIW, I was able to reproduce this using the Web Technology Notifier chrome extension... I disabled the extension and the request was no longer being made.

Thanks for the response!

This issue is there and I did not find any simple ways of achieving it. Kindly reopen this issue


Tooltip colors for Pie/Donut charts don't reflect custom colors

Description
Can't seem to change the color of the tooltip and the donut labels displayed inside the chart. I updated the colors for the legend and the actual slices but not the tooltip and inside label.
Steps to Reproduce

Pass in custom colors for the chart
Modify the legend and tooltip to use them
See that the tooltip is not reflected including the labels

Chart options that reproduce the issue:
var options = {
  chart: {
    height: 380,
    width: "100%",
    type: "donut",
    labels: ["Apple", "Orange", "Mango"]
  },
  fill: {
    colors: ["#f44336", "#ff9800", "#4caf50"]
  },
  series: [1, 5, 10],
  legend: {
    // Show the legend
    show: true,
    markers: {
      // Set the legend colors as the ones passed in
      fillColors: ["#f44336", "#ff9800", "#4caf50"]
    }
  },
  tooltip: {
    enabled: true,
    fillSeriesColor: true
  }
};

Expected Behavior
The tooltip and the inside labels should use the same colors as the chart slices and legend.
Screenshots

Reproduction Link
See the code here:
https://codepen.io/stanivanov/pen/WNXZvZE

Had the same problem when forcing chart colours as you did.
To fix this issue I had assigned the same colours array used in options.fill.colors to options.colors
var options = {
  chart: {
    height: 380,
    width: "100%",
    type: "donut",
    labels: ["Apple", "Orange", "Mango"]
  },
  fill: {
    colors: ["#f44336", "#ff9800", "#4caf50"]
  },
  series: [1, 5, 10],
  legend: {
    // Show the legend
    show: true,
    markers: {
      // Set the legend colors as the ones passed in
      fillColors: ["#f44336", "#ff9800", "#4caf50"]
    }
  },
  tooltip: {
    enabled: true,
    fillSeriesColor: true
  },
  colors: ["#f44336", "#ff9800", "#4caf50"]
};

Had the same problem when forcing chart colours as you did. To fix this issue I had assigned the same colours array used in options.fill.colors to options.colors
var options = {
  chart: {
    height: 380,
    width: "100%",
    type: "donut",
    labels: ["Apple", "Orange", "Mango"]
  },
  fill: {
    colors: ["#f44336", "#ff9800", "#4caf50"]
  },
  series: [1, 5, 10],
  legend: {
    // Show the legend
    show: true,
    markers: {
      // Set the legend colors as the ones passed in
      fillColors: ["#f44336", "#ff9800", "#4caf50"]
    }
  },
  tooltip: {
    enabled: true,
    fillSeriesColor: true
  },
  colors: ["#f44336", "#ff9800", "#4caf50"] //Add this line
};

Thanks it helps me a lot

colors: ["#f44336", "#ff9800", "#4caf50"]

This does not work for me. Are you using the latest version of apexcharts? I am and I still see the problem. Can you try fixing it in the link I posted in the description of the issue?

Actually, I just fixed the issue by also including the color array in the tooltip options. Note that this is not documented. The only documented option is the fillSeriesColor which doesn't seem to work.
In other words this doesn't work to change the tooltip color of the Pie graph:
tooltip: {
    enabled: true,
    fillSeriesColor: true,
},

But this does and fixes the issue:
tooltip: {
    enabled: true,
    colors: ["#f44336", "#ff9800", "#4caf50"]
},


Conda environment setup issues

I am attempting to follow the new Anaconda installation setup instructions for the unsloth_env, but I am experiencing several issues. The first issue was with the PyTorch and the CUDA toolkit installation, which was an easy fix, so I will describe it and the solution last. The second issue is with the triton environment, which I describe first because I have not been able to resolve it prior to posting this.
First, following the instructions, I attempt to run from unsloth import FastLanguageModel, but I get a ModuleNotFoundError: No module named 'triton' error. Fine, I go back and install the module via conda install -c conda-forge triton. Rerunning the same command now yields another ModuleNotFoundError.
mambaforge-pypy3/envs/unsloth/lib/python3.12/site-packages/unsloth/__init__.py", line 104, in <module>
    else: from triton.common.build import libcuda_dirs
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
ModuleNotFoundError: No module named 'triton.common'

For the CUDA toolkit issue, I have CUDA 12.1 on my system, verified via nvidia-smi. However, after running
conda create --name unsloth_env \
    python=3.11 \
    pytorch-cuda=12.1 \
    pytorch cudatoolkit xformers -c pytorch -c nvidia -c xformers \
    -y

I noticed that torch.cuda.is_available() returns False. I was able to fix this issue by instead running
conda create --name unsloth pytorch torchvision torchaudio pytorch-cuda=12.1 xformers -c pytorch -c nvidia -c xformers  -y

Hmm is this on a Windows machine?

I'm also having trouble with triton my installation is on windows using conda, I tried it using ubuntu on wsl and still ran into the same triton errors. Really I've run into a cave of errors trying to get this to work on windows, but here's my error:

ModuleNotFoundError                       Traceback (most recent call last)
Cell In[1], line 1
----> 1 from unsloth import FastLanguageModel
File c:\Users\ljjx\anaconda3\envs\unsloth_env\lib\site-packages\unsloth_init_.py:103
[100](file:///C:/Users/ljjx/anaconda3/envs/unsloth_env/lib/site-packages/unsloth/init.py:100) # Try loading bitsandbytes and triton
[101](file:///C:/Users/ljjx/anaconda3/envs/unsloth_env/lib/site-packages/unsloth/init.py:101) import bitsandbytes as bnb
--> [103](file:///C:/Users/ljjx/anaconda3/envs/unsloth_env/lib/site-packages/unsloth/init.py:103) import triton
[104](file:///C:/Users/ljjx/anaconda3/envs/unsloth_env/lib/site-packages/unsloth/init.py:104) libcuda_dirs = lambda: None
[105](file:///C:/Users/ljjx/anaconda3/envs/unsloth_env/lib/site-packages/unsloth/init.py:105) if Version(triton.version) >= Version("3.0.0"):
ModuleNotFoundError: No module named 'triton'
When I tried pip installing it I got these errors:
pip install triton
ERROR: Could not find a version that satisfies the requirement triton (from versions: none)
ERROR: No matching distribution found for triton

Hmm is this on a Windows machine?

No, on Ubuntu 18.04.6 LTS

For running on windows I believe this GitHub issue specifies how to carry out the installation. https://github.com/unslothai/unsloth/issues/210

While for ubuntu not tried this on a ubuntu machine but I was having the same issue with google collab and updating the install commands as mentioned in this issue  https://github.com/unslothai/unsloth/issues/501 seemed to work. You can also try the solution in this issue https://github.com/unslothai/unsloth/issues/440.
Pasting the commands below as well:
For issue 510, removing the version requirements as suggested solved for collab. However, I still had to install triton.
!pip install "unsloth[colab-new] @ git+https://github.com/unslothai/unsloth.git"
!pip install --no-deps xformers trl peft accelerate bitsandbytes
!pip install triton

For issue 440 the solution was to run:
conda install gcc_linux-64

This seems to have been fixed with one of the more recent changes. I remade the environment and no longer encountered the error. However, the conda installation instructions in the README still were not working for me. Instead, I had to use the one I suggested in my original post:
conda create --name unsloth pytorch torchvision torchaudio pytorch-cuda=12.1 xformers -c pytorch -c nvidia -c xformers  -y

I'm not sure if I'm the only one with this issue. Moreover, this is in line with the PyTorch installation instructions on the official website.

Nice! I'll try it out and let you know if it works for me too. Thanks man.


Evening out branches

Docs Build status updates of commit 0f79de3:
:warning: Validation status: warnings

File
Status
Preview URL
Details

:warning:Warning

Details

.openpublishing.publish.config.json
:white_check_mark:Succeeded

.openpublishing.redirection.json
:white_check_mark:Succeeded

DocsLegal/docfx.json
:white_check_mark:Succeeded

[Warning] Use provisioned locale fr-BE for docset intune instead of locale en-us in publish configuration
[Warning] No file found, nothing will be generated. Please make sure docfx.json is correctly configured.
[Warning] No content file found. Please make sure the content section of docfx.json is correctly configured.

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


exit if the user has requested a specific port

Signed-off-by: Sven Dowideit<EMAIL_ADDRESS>for #945
to go with https://github.com/datproject/dat-node/pull/192

I tried to work out how to use the lib/exit.js code, but couldn't figure out a way that worked.

I tried to work out how to use the lib/exit.js code, but couldn't figure out a way that worked.

Cool, I can take a look at adding that.

Can you check out these syntax changes

@joehand nice! thanks for the syntax pointer.
is there a test exception that can be configured for import-progress.js? to my naive reading, that seems like a false negative.

is there a test exception that can be configured for import-progress.js? to my naive reading, that seems like a false negative.

ya not sure what was going on there. Made it one-liner to avoid indent error.


Pages being deleted when clicked

When configuring the pages, if the user clicks on a page row without move it (and outside the input fields) the page is removed.

Fixed on 0.8.0


[Feature Request] Wiki contributons

Feature Description
Can the wiki be set so users can contribute to it? I can add some screenshots and clarifications for things I was unclear on along the way.

done! Please confirm you have access and then we can close this issue

Confirmed 👍


Create dataset loader for Orchid Corpus

Dataloader name: orchid_pos/orchid_pos.py
DataCatalogue: http://seacrowd.github.io/seacrowd-catalogue/card.html?orchid_pos

Dataset
orchid_pos

Description
The ORCHID corpus is a Thai part-of-speech (POS) tagged dataset, resulting from a collaboration between Japan's Communications Research Laboratory (CRL) and Thailand's National Electronics and Computer Technology Center (NECTEC). It is structured at three levels: paragraph, sentence, and word. The dataset incorporates a unique tagset designed for use in multi-lingual machine translation projects, and is tailored to address the challenges of Thai text, which lacks explicit word and sentence boundaries, punctuation, and inflection. This dataset includes text information along with numbering for retrieval, and employs a probabilistic trigram model for word segmentation and POS tagging. The ORCHID corpus is specifically structured to reduce ambiguity in POS assignments, making it a valuable resource for Thai language processing and computational linguistics research.

Subsets
-

Languages
tha

Tasks
POS Tagging

License
Creative Commons Attribution Non Commercial Share Alike 3.0 (cc-by-nc-sa-3.0)

Homepage
https://github.com/wannaphong/corpus_mirror/releases/tag/orchid-v1.0

HF URL
-

Paper URL
https://www.jstage.jst.go.jp/article/ast1980/20/3/20_3_189/_pdf/-char/en

#self-assign


Fix duplicate numbers are entered when input number with microsoft pinyin

https://github.com/nosir/cleave.js/issues/656

thanks to @kingller 's committed : #663
the issue seem related to windows IME which confused me a lot
for guys using cleave.js via javascript, a simple patching way until fixed release maybe
var oldCleaveInit = Cleave.prototype.init;
var oldCleaveOnChange = Cleave.prototype.onChange;
Cleave.prototype.init = function() {
    var owner = this;
    oldCleaveInit.apply(this);
    owner.element.addEventListener('compositionstart', function() {
        owner.isComposition = true;
    });
    owner.element.addEventListener('compositionend', function(event) {
        owner.isComposition = false;
        owner.onChange(event);
    });
};
Cleave.prototype.onChange = function(event) {
    var owner = this;
    if (this.isComposition) {
        owner.properties.result = event.target.value;
        owner.updateValueState();
        return;
    }
    oldCleaveOnChange.apply(this, [event]);
};

OK. Thanks.


Updating Creators samples config to use new config flag

@jasonsandlin,
Thanks for your contribution as a Microsoft full-time employee or intern. You do not need to sign a CLA.
Thanks,
Microsoft Pull Request Bot

:shipit:


Option to disable url appending hash

Could you advice how to disable the page url from appending active section as hash?
The reason is because the page has other section (hero) that is not part of the scrollspy <ScrollSpy> .
This cause the page when load to scroll directly to the 1st ScrollSpy element and skipping the rest of the page content.
<hero /> -> height 90vh

<ScrollSpy>

<ScrollSpy>

Thanks in advance.

add this attribute  useDataAttribute=""
<ScrollSpy
            useDataAttribute=""

        >

        </ScrollSpy>

add this attribute useDataAttribute=""

Had a similar problem, this should help #10


Updating the syntax of regex literals

While working on PCRE2 support (#12790), I noticed there's a complexity with the compiler: An upgrade of the regex engine also affects regex literals, which has an effect on the syntax of Crystal.
The syntax for PCRE and PCRE2 is almost identical. The vast majority of regular expressions will just work with either engine. But there are some minor differences (see this SO answer for a compilation of some differences: https://stackoverflow.com/a/73767663/7401689).
Crystal's regex literals are defined to use the PCRE syntax (https://crystal-lang.org/reference/1.6/syntax_and_semantics/literals/regex.html). The compiler even validates that by compiling the expression at compile time. It uses the regex engine that the compiler is linked against for that.
That means, expressions that are valid in PCRE2, but not PCRE, would be considered invalid according to the language specification and the compiler would error when it uses PCRE itself. But a compiler using PCRE2 would not error on the same regex literal.
This is not immediately causing trouble. We don't need to change the language definition and can make sure the compiler is always linked against PCRE. This would prevent any breaking changes in the language.
If you want to use regex syntax that's specific to PCRE2, you can't use a regex literal for that. This shouldn't be much of a problem as there's the Regex.new alternative where the expression is not validated by the compiler and only depends on the regex engine used at runtime.
But it's going to be hard to enforce the compiler uses PCRE when support for that library is going away more and more.
So at some point we'll have to do something about it.

PHP when from PCRE to PCRE2 in a minor (from 7.2 to 7.3). I think we should follow suit. I mean, PCRE is at EOL and there's no way around it. I suggest we move fast and make PCRE2 for 1.8 or at most 1.9. The steps should be:

Warn users of the change and its impact.
Make PCRE2 selected by default instead of opt-in in user code. This will help spot issues in user's regex.
Start distributing nightlies with PCRE2 linked. This will help spot issues with program's regex.

Sounds good to me aim for 1.8 with PCRE2. Maybe keeping for that version a fallback to PCRE, although making the regex literals supported match PCRE2 only.
In 1.9 we can drop PCRE support entirely.
It would be worth making a post (forum or blog) specific about this transition and to recall that PCRE2 can be tested in 1.7 already with -Duse_pcre2.

although making the regex literals supported match PCRE2 only.

I think that might be a problem when PCRE2 syntax is more strict than PCRE. So while you could opt into using PCRE at runtime, complex regex literals could be considered invalid by the compiler.
So it might be better to keep PCRE syntax in the compiler for now.
This would be the roadmap:

1.8 enable PCRE2 by default at runtime, but allow fallback to PCRE with -Duse_pcre
1.9 build the compiler with PCRE2, switching regex literal syntax. Still allow fallback to PCRE with -Duse_pcre at runtime. If the compiler encounters an invalid regex literal (for PCRE2) it should error and inform about the engine update being a possible cause. With flag -Duse_pcre, the compiler could ignore such errors and only print a warning.
1.10+ Remove support for PCRE

I'm happy with your proposed roadmap @straight-shoota. I'm just comfortable enough with merging 1.8 and 1.9 of your proposal and accepting only a subset of the regex we do today, since a workaround is already available.

Some heads up: we are planning to move to PCRE2 before 1.8 (WIP post). That is, we will merge the first to items above, making the compiler and stdlib work with PCRE2 by default.

With https://github.com/crystal-lang/crystal/pull/13084 we're switching the compiler to use PCRE2 and there's a correspondent PR to update the distribution packages: https://github.com/crystal-lang/distribution-scripts/pull/224
The plan is that from 1.8.0 on the Crystal compiler will link libpcre2 and thus the regex literal syntax will be only PCRE2 compatible.
Compiler builds of 1.8+ should not be linked against libpcre to ensure consistency in the language.

Current nightly builds are shipping with PCRE2 for both stdlib and compiler 🚀
Let's hope for a smooth transition in Crystal projects 🤞
Instructions on the migration process: crystal-lang.org/2023/03/02/crystal-is-upgrading-its-regex-engine


[Event Request] Codeunit 5760 Whse.-Post Receipt - OnAfterSetPutAwayRequired

Hi,
could you please consider the following event? We need to define on some rule, if a put away is created or not. Therefore we want to skip the Creation of Put Away documents directly. We saw that there is this event: "OnBeforeCreatePutAwayDoc", but this is not fitting with what we need.
  GetLocation("Location Code");
  PutAwayRequired := Location.RequirePutaway("Location Code");
  // >> New
  OnAfterSetPutAwayRequired(WhseRcptHeader,PutAwayRequired);
  // << New
  IF PutAwayRequired AND NOT Location."Use Put-away Worksheet" THEN
    CreatePutAwayDoc(WhseRcptHeader);

PutAwayRequired should be changeable or GlobalVARAccess can be true:

LOCAL [IntegrationEvent] OnAfterSetPutAwayRequired(WhseRcptHeader : Record "Warehouse Receipt Header";VAR PutAwayRequired : Boolean)
Thank you for checking.

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. We will update this issue with information about availability.


Does this guard against TCP connection leaks during SSL handshake?

I recently decided to port my application to the axum framework, and intend for my Rust binary to do its own SSL. This crate seems like the best way to achieve that (especially since it supports hot-swapping certificates :tada:). However, one of the issues I had with a previous web framework was severe, persistent TCP connection leaks, due in part to a lack of a timeout on accepting SSL connections (and also during http2 upgrade, but that's outside the scope of this crate). When I took a look at the source code, I couldn't help but notice that no timeouts or sleeps were incorporated into the relevant Futures. This leads me to believe that, were I to deploy my application in production, I would see TCP connection counts steadily climb as real clients have a habit of silently hanging up their connection at the worst time.
So my questions are:

Does this (or hyper, or axum) impose any timeout for SSL handshake? (or otherwise prevent this form of TCP connection leakage?)
If not, is there a workaround (such as implementing a custom acceptor)?
Would you prefer if I write a short test case to demonstrate an issue or lack there of?

Hey, sorry for the wait. I had no access to technology for a month.

This crate uses tokio-rustls crate to handle TLS and doesn't do much else. AFAIK low-level hyper API doesn't have timeouts.
Yes. You can implement axum_server::accept::Accept and use your custom acceptor. If you return an error on accept fn, connection will be dropped.
That would be really good.

Hey, sorry for the wait. I had no access to technology for a month.

No problem at all! I've just been using my PR in production in lieu of it being merged.

3. That would be really good.

Copy and past the following into src/tls_rustls/mod.rs as a test.
    #[tokio::test]
    async fn tls_timeout() {
        let (handle, _server_task, addr) = start_server().await;
        assert_eq!(handle.connection_count(), 0);

        let stream = TcpStream::connect(addr).await.unwrap();

        // We intentionally avoid driving a TLS handshake to completion.
        std::mem::forget(stream);

        for i in 0..120 {
            tokio::time::sleep(Duration::from_secs(1)).await;
            if handle.connection_count() == 0 {
                println!("took {} seconds to cancel", i);
                break;
            }
        }

        assert_eq!(handle.connection_count(), 0, "two minutes is way too long");
    }

main branch:
$ cargo test --features tls-rustls -- --nocapture
test tls_rustls::tests::tls_timeout ... FAILED

failures:

---- tls_rustls::tests::tls_timeout stdout ----
thread 'tls_rustls::tests::tls_timeout' panicked at 'assertion failed: `(left == right)`
  left: `1`,
 right: `0`: two minutes is way too long', src/tls_rustls/mod.rs:319:9
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

With my PR:
$ cargo test --features tls-rustls -- --nocapture
test tls_rustls::tests::tls_timeout ... ok
took 1 seconds to cancel

@programatik29


Simplify Docs information architecture

This meta-issue covers the overall effort of reorganizing our docs into the following top-level categories:

Getting Started
Learning Pulumi
Using Pulumi
Reference
Help & Support

The goal if this work is to make our docs easier to understand and navigate, and it'll be done in multiple steps. Content here will likely change as plans solidify, tasks are further decomposed, etc.

[x] Pull the content under Getting Started > Policy as Code into User Guides > Policy as Code.
[ ] Rename User Guides to Using Pulumi.
[ ] Pull the content in the Intro section into the User Guides section.
[x] Break up the Programming Model docs into more individually consumable subsections.
...

Would it make sense to put a "design" doc around this and have a discussion on how best to do this?

@danfhernandez This is based on the discussion we had recently, which is docced here: https://docs.google.com/document/d/11C-T1xMKML-ZZtwHsPt1yuNzwYfGGQ3n67hhQw2T_-o/edit#
Essentially I'm just taking what came out of that convo and creating work items from it.

It might have been me (honestly don't remember; I wasn't here in 2020, though), but I do think that "Using Pulumi" makes more sense as some of the subcontent are written as guides and some are more informational. Adjusting the title does shift the thought process a bit, at least to my brain. It might be worthwhile to see how the registry stuff shakes out in use before changing it, though, to see how people respond.

I think this overlaps enough with https://github.com/pulumi/docs/issues/2894, that we should likely consolidate and track in one place any next steps on reorganizaing our ToC layout.  I'll close this one out as a duplicate, and put the two remaining suggestions here into that issue.


EnvironmentPlugin types don't allow passing null

It seems like this PR broke the types for EnvironmentPlugin. According to docs, both undefined and null are accepted as values (and have different behavior), however with this change it is no longer allowed to pass null: (playground link)

Originally posted by @jtbandes in https://github.com/webpack/webpack/pull/18647#discussion_r1735125053

Similar case here, we used to be able to pass booleans and arrays
The type now forbids it, see https://github.com/facebook/docusaurus/pull/10455#issuecomment-2317593528
But it still works in practice:


[TwilightPrincessHD] FancyFX causing Hyrule Field wooden bridge disappear

Hyrule Field wooden bridge is not visible with FancyFX enabled.
Screenshot:

Save attached, you start directly on the bridge.
00050000.zip

Should be fixed in latest commit, please test and close if ok.
The commit should also fix return to main screen and some backgrounds. It keeps the main viewports, but most of the minor effects are back to original format, ie more banding for dust clouds and similar but less chance of late game stuff breaking..


(Testing: Not for review): Coverage

Description
code coverage test

Code coverage summary
No packages impacted by the change
Happy Testing!

Code coverage summary
No packages impacted by the change
Happy Testing!


Make fake data script work with login command

There is no password set in that case, and we don't need to be mucking with that anyway

Coverage remained the same at 64.947% when pulling e2486c49a62bcc891f1d22d6e1c9177dd5386899 on AlanCoding:data_gen into cec84135376624e8d3fdf1f83eac01620f7b7b25 on ansible:master.

Coverage remained the same at 64.947% when pulling e2486c49a62bcc891f1d22d6e1c9177dd5386899 on AlanCoding:data_gen into cec84135376624e8d3fdf1f83eac01620f7b7b25 on ansible:master.

Coverage remained the same at 64.947% when pulling e2486c49a62bcc891f1d22d6e1c9177dd5386899 on AlanCoding:data_gen into cec84135376624e8d3fdf1f83eac01620f7b7b25 on ansible:master.


falsify_graph uses np.math which does not exist

Describe the bug
On line 935 https://github.com/py-why/dowhy/blob/e79d01280b1f8c7e54c0bda93ceddc932f7eedea/dowhy/gcm/falsify.py#L935
the method falsify_graph uses np.math which does not work.
Steps to reproduce the behavior

Use falsify_graph in some code with valid parameters
Errors out: AttributeError: module 'numpy' has no attribute 'math'

Expected behavior
falsify_graph returns without error
Version information:

DoWhy version 0.11.1

Hey, can you check which numpy version you have? That might be outdated.

Regardless, addressed it here: https://github.com/py-why/dowhy/pull/1273


Take a final snapshot of the RDS instance using the FinalSnapshotIdentifier

We skip final snapshot for db's in our terraforming-aws templates, so until we decide we want this functionality, we can postpone.


Error crash game

Describe the bug
Device (please complete the following information):

iOS Version:  13.3
iOS Device: iPhone XS MAX
unc0ver Version: 4.0.0 , 4.0.1, 4.0.2

** Open the game PUBG mobile, Call of Duty Mobile, Arena of Valor, ... about 1 minute to 2 minutes to crash
**Not receiving notifications from message / imessage ..

I got the same status too.
Open the game Contra:Return about 1-2 minutes then crash.
Could somebody give me some solutions？

same with me.. I played Arena of valor and got crash after 1 minute
iOS Version: 13.3
iOS Device: iPhone Xr
unc0ver Version: 4.0.0 , 4.0.1, 4.0.2

Had the same issue, I downloaded the tweak “liberty lite beta” and turned on the settings for all those apps and games that crash, after that all works fine

I tried running version 4.0.3 but I still get the game crash error and didn't notice the message

already use liberty lite beta and enable setting for arena of valor but still crash

Had the same issue, I downloaded the tweak “liberty lite beta” and turned on the settings for all those apps and games that crash, after that all works fine


Remove references to deprecated v1 Android embedding

Remove references to deprecated v1 Android embedding
To ensure this plugin will work with users running the next stable version of Flutter remove references to the v1 embedding.
The v1 embedding was deprecated around 6 and a half years ago. In Flutter 3.22, the Flutter tool dropped support for building v1 apps entirely. Flutter plans to delete version one of it's Android embedding in the next stable release, per https://medium.com/flutter/whats-new-in-flutter-3-22-fbde6c164fe3 (in the "Removal of v1 Android embedding" section).
When that deletion happens, any apps using plugins that still have references to the removed classes will fail to build when updating to the next stable version (probably Flutter 3.26).
As a part of this deprecation, the Flutter Android team is doing community outreach by filing bugs and submitting some pull requests to update plugins to minimize the impact this removal has on the community.
Some example PRs:

Flutter team maintained plugins: https://github.com/flutter/packages/pull/6494
android_alarm_manager_plus https://github.com/fluttercommunity/plus_plugins/pull/2864

Consequences:

This change should have no impact on users of this plugin that are building apps using the v2 embedding (we don't have a percentage to share, but this is the vast majority of users).
It will remove support for users that are still using the v1 embedding on versions of Flutter older than 3.22.

If this change doesn't land, this plugin will instead be broken for all apps building on the next stable version of Flutter and beyond.
Is there a way to support both v1 and v2 embedding apps in the next stable version of Flutter?
No.
This is the PR where we are removing the deprecated engine classes: https://github.com/flutter/engine/pull/52022

Thanks @reidbaker , we are v2 based but thanks for reaching out!


add option to allow unverified SSL requests to pyload

I like to run pyload in HTTPS mode. Since the python version on my NAS doesn't allow proper certificate validation (InsecurePlatformWarning) and it doesn't make much sense for https://localhost anyways the API calls to pyload failed.
So I added an option to disable SSL certificate verification in the requests.request call. It still spams a lot of warnings, but at least it works now.
The default behavior is as current, you have to explicitly set "verify_ssl: no" to deactivate SSL verification.

You should be able to do this already via
http://www.flexget.com/wiki/Plugins/verify_ssl_certificates
??

I tried that, but it didn't work. Might be because the pyload plugin doesn't use the task.requests session, but its own instance.
So I guess its better if I create a patch to respect the existing verify_ssl_certificates plugin instead of building my own implementation.

@manacker yep, i suggest you change the pyload plugin to use tasks.requests.
I will close this PR so you can open a new PR.


Support STAC 1.0 - part 0

This is a precursor PR to supporting STAC 1.0. It just updates the tests to use files from the PyStac repo, rather than sat-stac.
A followup PR will update the URLs to point to the STAC 1.0.0 versions of those files while updating the code to use PyStac 1.0.
The first two commits are just https://github.com/intake/intake-stac/pull/94 and can be ignored. https://github.com/intake/intake-stac/commit/fbf84a2f595b2e51c8c375ed2fc1746df2e6b1e6 has the actual changes.

Thanks for starting this @TomAugspurger ! I left some comments trying to figure out whether to use external examples for testing, or if we might want to put our own example STAC=1.0 examples in this repository (with valid asset / subcatalog links)

I think having our own STAC catalogs, with just the data we need for testing, makes sense. Now that we're at STAC 1.0, this seems more feasible. I'll look into that.

OK, updated to use some local files, rather than opening STAC objects from remote URLs.
I think the stack_bands might be a bit under-tested, but hopefully I got it right. The items I'm using came from the Planetary Computer, so URLs to data files in blob storage have to be signed to download. I don't think we want to do that in our unit tests, but here's a manual tests:
In [1]: import rasterio

In [2]: import pystac, planetary_computer, intake

In [3]: item = planetary_computer.sign_assets(pystac.read_file("https://planetarycomputer.microsoft.com/api/stac/v1/collections/sentinel-2-l2a/items/S2B_MSIL2A_20210610T115639_N0212_R066_T33
   ...: XWC_20210613T190000.SAFE"))

In [5]: intake_item = intake.open_stac_item(item)

In [6]: ds = intake_item.stack_bands(["B02", "B03"])().to_dask()

In [7]: ds
Out[7]:
<xarray.DataArray (band: 2, y: 10980, x: 10980)>
dask.array<concatenate, shape=(2, 10980, 10980), dtype=uint16, chunksize=(1, 10980, 10980), chunktype=numpy.ndarray>
Coordinates:
  * band     (band) int64 1 1
  * y        (y) float64 8.3e+06 8.3e+06 8.3e+06 ... 8.19e+06 8.19e+06 8.19e+06
  * x        (x) float64 5e+05 5e+05 5e+05 ... 6.098e+05 6.098e+05 6.098e+05
Attributes:
    transform:      (10.0, 0.0, 499980.0, 0.0, -10.0, 8300040.0)
    crs:            +init=epsg:32633
    res:            (10.0, 10.0)
    is_tiled:       1
    nodatavals:     (nan,)
    scales:         (1.0,)
    offsets:        (0.0,)
    AREA_OR_POINT:  Area

Yeah, releasing shortly after pystac 1.0 is my hope.
From: Scott Henderson @.>
Sent: Thursday, June 24, 2021 3:51 PM
To: intake/intake-stac @.>
Cc: Tom Augspurger @.>; Mention @.>
Subject: Re: [intake/intake-stac] Support STAC 1.0 - part 0 (#96)
@scottyhq approved this pull request.
Looks great @TomAugspurgerhttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FTomAugspurger&data=04|01|tom.augspurger%40microsoft.com|460730dac7aa466e0f8108d93751bf90|72f988bf86f141af91ab2d7cd011db47|1|0|637601646517676073|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|1000&sdata=uqTOFbKdi0HJMhFpFMUshrrpuK9oRGsbu2l4O2LQvmc%3D&reserved=0 ! Would be happy to merge this as is. We can add some additional tests in future PRs and hopefully release 1.0.0 shortly after pystac 1.0.0 ?

You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fintake%2Fintake-stac%2Fpull%2F96%23pullrequestreview-692215052&data=04|01|tom.augspurger%40microsoft.com|460730dac7aa466e0f8108d93751bf90|72f988bf86f141af91ab2d7cd011db47|1|0|637601646517686066|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|1000&sdata=T1nF2M7oKHkFvXcscyqTinq8pyvuAcuVOuRKKBY92C4%3D&reserved=0, or unsubscribehttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAAKAOISKA35ZETYHEJTXVQDTUOLCPANCNFSM47ALDUVQ&data=04|01|tom.augspurger%40microsoft.com|460730dac7aa466e0f8108d93751bf90|72f988bf86f141af91ab2d7cd011db47|1|0|637601646517686066|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|1000&sdata=4M%2BLtrn82uiFPWn8EltwWY%2FAijnFMjeK8MX5LA%2Fo6pI%3D&reserved=0.


Synced files

Issue #, if available:
https://sim.amazon.com/issues/TBGeneral-686
Description of changes:
Syncing Changes from GitFarm to GitHub before the changes gets published.
The changes include Adding loggers to Create , Read, List, Delete Handlers. Increase the junit branch coverage for CreateHandlerTest and DeleteHandlerTest
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Syncing Changes from GitFarm to GitHub before the changes gets published.
The changes include Adding loggers to Create , Read, List, Delete Handlers. Increase the junit branch coverage for CreateHandlerTest and DeleteHandlerTest


ReorderableListView should add grab handles like on web.

Steps to Reproduce
I use VS code and run the application in debug mode (pressing F5).

Run flutter create --sample=material.ReorderableListView.1 mysample
Run the application on phone (emulator or device)

Expected results:
The same behavior as shown in the docs: https://api.flutter.dev/flutter/material/ReorderableListView-class.html
Actual results:

There are no handles to drag and drop
It is not possible to drag and drop the items

Logs

[  +60 ms] executing: [C:\SDK\flutter/] git -c log.showSignature=false log -n 1 --pretty=format:%H
[  +48 ms] Exit code 0 from: git -c log.showSignature=false log -n 1 --pretty=format:%H
[        ] c5a4b4029c0798f37c4a39b479d7cb75daa7b05c
[        ] executing: [C:\SDK\flutter/] git tag --points-at c5a4b4029c0798f37c4a39b479d7cb75daa7b05c
[  +33 ms] Exit code 0 from: git tag --points-at c5a4b4029c0798f37c4a39b479d7cb75daa7b05c
[        ] 2.0.1
[  +32 ms] executing: [C:\SDK\flutter/] git rev-parse --abbrev-ref --symbolic @{u}
[  +24 ms] Exit code 0 from: git rev-parse --abbrev-ref --symbolic @{u}
[        ] origin/stable
[        ] executing: [C:\SDK\flutter/] git ls-remote --get-url origin
[  +21 ms] Exit code 0 from: git ls-remote --get-url origin
[        ] https://github.com/flutter/flutter.git
[  +51 ms] executing: [C:\SDK\flutter/] git rev-parse --abbrev-ref HEAD
[  +23 ms] Exit code 0 from: git rev-parse --abbrev-ref HEAD
[        ] stable
[  +57 ms] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update.
[   +2 ms] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update.
[  +42 ms] executing: C:\Users\MTNie\AppData\Local\Android\Sdk\platform-tools\adb.exe devices -l
[  +30 ms] List of devices attached
           PMF4C17912020505       device product:WAS-LX1 model:WAS_LX1 device:HWWAS-H transport_id:2
           emulator-5554          device product:sdk_gphone_x86_arm model:AOSP_on_IA_Emulator device:generic_x86_arm transport_id:1
[   +5 ms] C:\Users\MTNie\AppData\Local\Android\Sdk\platform-tools\adb.exe -s PMF4C17912020505 shell getprop
[  +64 ms] C:\Users\MTNie\AppData\Local\Android\Sdk\platform-tools\adb.exe -s emulator-5554 shell getprop
[  +41 ms] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update.
[   +6 ms] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update.
[  +60 ms] Multiple devices found:
[   +3 ms] ro.hardware = hi6250
[        ] ro.build.characteristics = default
[   +1 ms] ro.hardware = ranchu
[  +13 ms] WAS LX1 (mobile)             • PMF4C17912020505 • android-arm64  • Android 8.0.0 (API 26)
[   +1 ms] AOSP on IA Emulator (mobile) • emulator-5554    • android-x86    • Android 9 (API 28) (emulator)
[        ] Chrome (web)                 • chrome           • web-javascript • Google Chrome 88.0.4324.190
[        ] Edge (web)                   • edge             • web-javascript • Microsoft Edge 89.0.774.45
[   +1 ms] [1]: WAS LX1 (PMF4C17912020505)
[        ] [2]: AOSP on IA Emulator (emulator-5554)
[        ] [3]: Chrome (chrome)
[        ] [4]: Edge (edge)

Analyzing mysample...
No issues found! (ran in 1.2s)

[√] Flutter (Channel stable, 2.0.1, on Microsoft Windows [Version 10.0.19041.804], locale en-DK)
    • Flutter version 2.0.1 at C:\SDK\flutter
    • Framework revision c5a4b4029c (6 days ago), 2021-03-04 09:47:48 -0800
    • Engine revision 40441def69
    • Dart version 2.12.0

[√] Android toolchain - develop for Android devices (Android SDK version 30.0.3)
    • Android SDK at C:\Users\MTNie\AppData\Local\Android\Sdk
    • Platform android-30, build-tools 30.0.3
    • ANDROID_HOME = C:\Users\MTNie\AppData\Local\Android\Sdk
    • Java binary at: C:\Program Files\Android\Android Studio\jre\bin\java
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)
    • All Android licenses accepted.

[√] Chrome - develop for the web
    • Chrome at C:\Program Files (x86)\Google\Chrome\Application\chrome.exe

[√] Android Studio (version 4.1.0)
    • Android Studio at C:\Program Files\Android\Android Studio
    • Flutter plugin can be installed from:
       https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
       https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)

[√] VS Code (version 1.54.1)
    • VS Code at C:\Users\MTNie\AppData\Local\Programs\Microsoft VS Code
    • Flutter extension version 3.20.0

[√] Connected device (4 available)
    • WAS LX1 (mobile)             • PMF4C17912020505 • android-arm64  • Android 8.0.0 (API 26)
    • AOSP on IA Emulator (mobile) • emulator-5554    • android-x86    • Android 9 (API 28) (emulator)
    • Chrome (web)                 • chrome           • web-javascript • Google Chrome 88.0.4324.190
    • Edge (web)                   • edge             • web-javascript • Microsoft Edge 89.0.774.45

• No issues found!

@MortenTobiasNielsen
Tried the sample code from the link using latest master on iOS 14.3 and was able to drag and drop properly without any issues.
https://user-images.githubusercontent.com/67046386/110749645-67398f80-8267-11eb-88c3-b4fdf95b05f0.MP4

flutter doctor -v
[✓] Flutter (Channel master, 2.1.0-11.0.pre.205, on Mac OS X 10.15.4 19E2269
    darwin-x64, locale en-GB)
    • Flutter version 2.1.0-11.0.pre.205 at
      /Users/dhs/documents/Fluttersdk/flutter
    • Framework revision 267f66a7dc (3 hours ago), 2021-03-10 23:15:03 -0500
    • Engine revision 1b68503bc8
    • Dart version 2.13.0 (build 2.13.0-125.0.dev)

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.0)
    • Android SDK at /Users/dhs/Library/Android/sdk
    • Platform android-30, build-tools 30.0.0
    • Java binary at: /Applications/Android
      Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6915495)
    • All Android licenses accepted.

[!] Xcode - develop for iOS and macOS
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 12.3, Build version 12C33
    ! CocoaPods 1.9.3 out of date (1.10.0 is recommended).
        CocoaPods is used to retrieve the iOS and macOS platform side's plugin
        code that responds to your plugin usage on the Dart side.
        Without CocoaPods, plugins will not work on iOS or macOS.
        For more info, see https://flutter.dev/platform-plugins
      To upgrade see
      https://guides.cocoapods.org/using/getting-started.html#installation for
      instructions.

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 4.1)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6915495)

[✓] VS Code (version 1.54.1)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.18.1

[✓] Connected device (4 available)
    • sdk google atv x86 (mobile) • emulator-5554                            •
      android-x86    • Android 10 (API 29) (emulator)
    • Darshan's iphone (mobile)   • 21150b119064aecc249dfcfe05e259197461ce23 •
      ios            • iOS 14.2
    • macOS (desktop)             • macos                                    •
      darwin-x64     • Mac OS X 10.15.4 19E2269 darwin-x64
    • Chrome (web)                • chrome                                   •
      web-javascript • Google Chrome 89.0.4389.82

! Doctor found issues in 1 category.

Strange. The handles are missing, but clearly you can drag and drop. When I try to do this on a pixel 4 API 28 I get this result:
https://user-images.githubusercontent.com/48355480/110754561-41e95900-8248-11eb-8f8a-5783a50ba3e7.mp4

@MortenTobiasNielsen
Tried again on iPhone simulator, Pixel XL emulator and Samsung 8.1.0 device and works properly on all.   If I press for an illogical amount of time it will drag and drop - it feels very unnatural, but it works.
Are the ReorderableListView not supposed to look like it does in the docs, where there are the intuitive handle indicators? https://api.flutter.dev/flutter/material/ReorderableListView-class.html

Thanks for pointing out the handles missing. I also verified on previous stable (1.22.6) and don't see the handles as well.

Maybe the documentation/ sample demo is not in sync.

Maybe it is only intended for the web, but I would really like to have the handles on mobile as well. It makes it so much more intuitive and the UI is more responsive to my gesture of trying to drag and drop.

Ye I encountered the same "issue" https://github.com/flutter/flutter/issues/76923, also with a solution.
It is supposed to work like that. The handle is hidden on mobile by default. But I don't get it either, it is a standard indication to a user that he is able to reorder items.

Unfortunately, the inconsistent behavior is intentional — see the last few comments at #46805 .
However, given that this default behavior is inconsistent with the official Material guidelines as well as with the standard iOS behavior, it would be great if the default mobile behavior was changed to use single-tap drag handles just like on web and desktop platforms.

@darshankawar Would the team accept a PR to change the default behavior here to match the official Material spec?


Curators can include gene sets with published datasets.

Story
A curator can include gene sets with published datasets so that the reusability of the data they curate is increased.

The most up-to-date validation requirements for the file format are defined in the Gene Set File Format.

See Gene Set Requirements for Portal.
The original gene set design for linking between datasets and gene sets was simplified, after modeling with "outlier" collections. See Link by adding a gene set “set” to a dataset in the thought experiments document.

UX Design
Add Gene Sets

Closing. Per the 2022 Q1 plan, the design would embed gene sets in datasets.


Signpost height/position issues in datagrid and cut-off issue in modal

Select one ...  (check one with "x")
[x] bug
[ ] feature request
[ ] enhancement

Expected behavior

Signpost should not be taller in expanded area of datagrid.
Signpost arrow position should not be that far to its icon.
Signpost should not be chopped inside a modal.
Signpost header should not be that low.

Actual behavior
Described as above.

Reproduction of behavior
Please see code and comment in Plunker.

Include a link to the reproduction scenario you created by forking one of the Clarity Plunker Templates:
https://plnkr.co/edit/fxlV8B?p=preview

Environment details

Angular version: 4.3.0

Clarity version: 0.10.2

OS and version: MacOS El Captain

Browser: Google Chrome | 60.0.3112.113 (Official Build) (64-bit)

The modal cutoff issue may be fixed with #932 ... Check back after that is done.
The other issue still needs to be looked at <= @hippee-lee

@hippee-lee
Any word on this?


Fix test ruby apps for new version of buildpack

Does this PR modify CLI v6, CLI v7, or CLI v8?
This should be included main, v8, and v7.
Description of the Change
Fixes ruby apps for integration tests.
Why Is This PR Valuable?
We would be able to run integration tests
How Urgent Is The Change?
Help us release cli.

/easycla


Prepare release 3.0.3

Coverage remained the same at 98.408% when pulling 949520a9ecdf12b46c917f54f7566edf536e008e on ryanpetrello:release_3.0.3 into a4156075ceff13a084c4436b94f9f0048c516d6d on ansible:master.

Coverage remained the same at 98.408% when pulling 949520a9ecdf12b46c917f54f7566edf536e008e on ryanpetrello:release_3.0.3 into a4156075ceff13a084c4436b94f9f0048c516d6d on ansible:master.


Fixing token verification when no keys are loeaded yet

I had to add this minor fix to make it work with Keycloak (Red Hat SSO).  Let me know if this is not a good way to do it.

oidcc is not fetching keys upfront anymore, only when needed, so always starting with an empty list of keys

Are you saying I should be loading the keys somehow manually? The library doesn't seem to know them, in validate_signature function, I must be missing something.

no, oidcc should fetch them when entering the second round (line 254).
the issue is that erljwt can't handle the atom, it should just return invalid ... then everything should pass.
and that is implemented in the latest version of erjwt, could you please try updating the deps.

That was it. I had an outdated erljwt dependency. Thank you for your help.

you are welcome, feel free to point me to an elli_oidc implementation at some point ;)

I would but I gave up on it. We've decided to go back to Cowboy...


after i test deployed my project to hosting, Image Asset not load/show image in mobile web if open with phone web browser, but in desktop mode or normal open with laptop images is showed.

after i deployed the web to hosting, i found this issue :
Expected results:
Images asset must can see in web, image is showed in web. time i inspect with show in frame mobile showed too.

Actual results:
images asset only show on web with desktop mode, not show in mobile web
in chrome mobile I see this :

if I set mobile web to desktop mode :
on pixel 3 XL Phone show this :

on android pad/tablet show this :

Code sample

import 'package:flutter/material.dart';

void main() {
  runApp(const MyApp());
}

class MyApp extends StatelessWidget {
  const MyApp({super.key});

  // This widget is the root of your application.
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(
        // This is the theme of your application.
        //
        // Try running your application with "flutter run". You'll see the
        // application has a blue toolbar. Then, without quitting the app, try
        // changing the primarySwatch below to Colors.green and then invoke
        // "hot reload" (press "r" in the console where you ran "flutter run",
        // or simply save your changes to "hot reload" in a Flutter IDE).
        // Notice that the counter didn't reset back to zero; the application
        // is not restarted.
        primarySwatch: Colors.blue,
      ),
      home: const MyHomePage(title: 'Flutter Demo Home Page'),
    );
  }
}

class MyHomePage extends StatefulWidget {
  const MyHomePage({super.key, required this.title});

  // This widget is the home page of your application. It is stateful, meaning
  // that it has a State object (defined below) that contains fields that affect
  // how it looks.

  // This class is the configuration for the state. It holds the values (in this
  // case the title) provided by the parent (in this case the App widget) and
  // used by the build method of the State. Fields in a Widget subclass are
  // always marked "final".

  final String title;

  @override
  State<MyHomePage> createState() => _MyHomePageState();
}

class _MyHomePageState extends State<MyHomePage> {
  int _counter = 0;

  void _incrementCounter() {
    setState(() {
      // This call to setState tells the Flutter framework that something has
      // changed in this State, which causes it to rerun the build method below
      // so that the display can reflect the updated values. If we changed
      // _counter without calling setState(), then the build method would not be
      // called again, and so nothing would appear to happen.
      _counter++;
    });
  }

  @override
  Widget build(BuildContext context) {
    // This method is rerun every time setState is called, for instance as done
    // by the _incrementCounter method above.
    //
    // The Flutter framework has been optimized to make rerunning build methods
    // fast, so that you can just rebuild anything that needs updating rather
    // than having to individually change instances of widgets.
    return Scaffold(
      appBar: AppBar(
        // Here we take the value from the MyHomePage object that was created by
        // the App.build method, and use it to set our appbar title.
        title: Text(widget.title),
      ),
      body: Center(
        // Center is a layout widget. It takes a single child and positions it
        // in the middle of the parent.
        child: Column(
          // Column is also a layout widget. It takes a list of children and
          // arranges them vertically. By default, it sizes itself to fit its
          // children horizontally, and tries to be as tall as its parent.
          //
          // Invoke "debug painting" (press "p" in the console, choose the
          // "Toggle Debug Paint" action from the Flutter Inspector in Android
          // Studio, or the "Toggle Debug Paint" command in Visual Studio Code)
          // to see the wireframe for each widget.
          //
          // Column has various properties to control how it sizes itself and
          // how it positions its children. Here we use mainAxisAlignment to
          // center the children vertically; the main axis here is the vertical
          // axis because Columns are vertical (the cross axis would be
          // horizontal).
          mainAxisAlignment: MainAxisAlignment.center,
          children: <Widget>[
            const Text(
              'You have pushed the button this many times:',
            ),
            Text(
              '$_counter',
              style: Theme.of(context).textTheme.headline4,
            ),
            Image.asset(
              "assets/tes.jpeg",
              height: 200,
            ),
          ],
        ),
      ),
      floatingActionButton: FloatingActionButton(
        onPressed: _incrementCounter,
        tooltip: 'Increment',
        child: const Icon(Icons.add),
      ), // This trailing comma makes auto-formatting nicer for build methods.
    );
  }
}

Logs

nothing error in log

No issues found! (ran in 4.4s)

[✓] Flutter (Channel stable, 3.3.8, on macOS 12.6.1 21G217 darwin-x64, locale en-ID)
    • Flutter version 3.3.8 on channel stable at /Users/qj_am/Developer/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 52b3dc25f6 (8 weeks ago), 2022-11-09 12:09:26 +0800
    • Engine revision 857bd6b74c
    • Dart version 2.18.4
    • DevTools version 2.15.0

[!] Android toolchain - develop for Android devices (Android SDK version 33.0.0-rc1)
    • Android SDK at /Users/qj_am/Library/Android/sdk
    • Platform android-32, build-tools 33.0.0-rc1
    • Java binary at: /Applications/Android Studio.app/Contents/jre/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 11.0.12+0-b1504.28-7817840)
    ✗ Android license status unknown.
      Run `flutter doctor --android-licenses` to accept the SDK licenses.
      See https://flutter.dev/docs/get-started/install/macos#android-setup for more details.

[✓] Xcode - develop for iOS and macOS (Xcode 13.2.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Build 13C100
    • CocoaPods version 1.11.3

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 2021.2)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.12+0-b1504.28-7817840)

[✓] VS Code (version 1.73.1)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.56.0

[✓] Connected device (2 available)
    • macOS (desktop) • macos  • darwin-x64     • macOS 12.6.1 21G217 darwin-x64
    • Chrome (web)    • chrome • web-javascript • Google Chrome 108.0.5359.124

[✓] HTTP Host Availability
    • All required HTTP hosts are available

! Doctor found issues in 1 category.

Hi @rizkijuliansyaham, are you facing this issue with a specific image, or are all images affected?
I tested an image from Unsplash and couldn't reproduce the issue.
If you are facing this issue with a specific image, kindly share the image. Can you also try upgrading to the latest version of stable to see if you still experience the issue?
Lastly, what renderer did you specify/use to build the app before deployment?

screenshots

do we have to do CORS configuration?
I encountered the problem above when I used Image Asset, when I tried with Image Network, the image was loaded normally like this :
(top image.asset, bottom image.network)

but if i see in desktop mode checked, output like this :

I did deploy using 3 ways that I have tried
html renderer
canvaskit renderer
and the default flutter web build --release.
however it produces the same output when I hosted it.

do we have to do CORS configuration?

If you're loading from an asset, this should not be necessary.

Can you use the chrome inspect tool to see if there's an error being thrown in the console?

Can you also share the asset image you're using so we can try to replicate this on our end?

Also, does this happen only in chrome, or are other browsers affected as well?

Lastly, what device are you testing with?

@rizkijuliansyaham
I had the same problem. My image is located in the assets folder: assets/card1.png.
I load the image data via Image.asset('card1.png') which works fine on my local machine.
But when I deploy it to production the image is not shown
This is because the requested URL for Image.asset('card1.png') is
http://localhost:61278/**assets/cards1.png** (ok for localhost)
But in production the asset is located in:
https://lemondashboard.web.app/**assets/assets/cards1.png**
So if I load the image with Image.asset('assets/card1.png') everything is working fine.
Maybe this helps?


New version: MeshCat v0.8.0

Registering package: MeshCat
Repository: https://github.com/rdeits/MeshCat.jl
Created by: @rdeits
Version: v0.8.0
Commit: 66a3c1d51708c14af43fd45ff7a0a8e2d3599201
Reviewed by: @rdeits
Reference: https://github.com/rdeits/MeshCat.jl/commit/66a3c1d51708c14af43fd45ff7a0a8e2d3599201#commitcomment-34212574

Needs a rebase/retrigger due to #1864

bump @rdeits

Closing for now.


Multi-project function

It would be great if it was possible to open another project without closing the program. It is very comfortable

At this moment this feature is impossible and I'm really sure it's really needed. Switching projects is not a regular case and will be done using a hub application which is in development now,


Switch run_iree_dispatch_profiler to use install-dir.

Progress on https://github.com/openxla/iree/issues/16203
Test run triggered at https://github.com/openxla/iree/actions/runs/7792358411
skip-ci: not covered by presubmit CI

Test run completed. Same errors as tip of tree, so no regression at least.


Added custom exceptions

To allow for better exception handling, custom exceptions
have been created in place of where the more generic
Exceptions class was used.

Current coverage is 85.12% (diff: 100%)

Merging #2 into master will increase coverage by 0.55%

@@             master         #2   diff @@
==========================================
  Files             1          2     +1
  Lines           188        195     +7
  Methods           0          0
  Messages          0          0
  Branches         22         19     -3
==========================================
+ Hits            159        166     +7
  Misses           26         26
  Partials          3          3

Powered by Codecov. Last update 3aa2713...cbce0cc


Add parameter to hide current_params in the logs for DSFault message

Description:
We have introduced a system property to hide current params in the logs for dataservice fault message
-Ddss.disable.current.params=true \
This has to be added to the docs
Suggested Labels:

Suggested Assignees:

Affected Product Version:
OS, DB, other environment details and versions:
Steps to reproduce:
Related Issues:
https://github.com/wso2/product-ei/issues/5133

PR: https://github.com/wso2/docs-mi/pull/1137


'New Day' theme update

I updated the theme, added some more colors to scss and javascript.

cool thanks


use form post if scopes include email or name

Fixes #214 by setting the response_mode to form_post if the scopes includes email or name.

Ehhh, I'm very hesitant on this. Changing response_mode entirely changes how the flow works and so IMO should be set explicitly by the dev. The scopes parameter should also only affect the scope URL parameter and nothing else.


Docker Container

I simply add a line to the README for Docker. I included an explanation for the link. We can discuss more on Twitter. I wanted to commit this message to check if I'm doing the right way.
I don't know why all these changes are listed below :(
I only added:
128:To install the package in a Docker container, see the page here:
129:
130: . _Docker: https://hub.docker.com/r/bkavlak/geemap

You can also add the lines by yourself.
We can create an account for the package on Docker Hub and push the image there to be consistent.

When submitting a pull request, only commit changes to the file that has been changed. In this case, it is just the README.rst. Do not commit unnecessary changes to other files, which might fail to pass the automated test. You can either resubmit the pull request or I can add those lines for you. Thank you.


Confirm SNAP calculations for HHs with people 60+  / disabilities

As per KB discussions with Caleb Pena:
When I tested the profile shown in the handwritten sheet attached (in slack if sheet didn't come through in ticket), MFB gave me $166 in SNAP results v. $188.
For MFB to give me $166, my net income would have to be $417. Backing into the numbers, my shelter deduction would have been $1986:

$2000 income - $198 standard deduction - $200 earned income deduction = $1602
50% of $1602 = $801
excess shelter deduction: $1986 (??) - $801 = $1185
$1602 - $1185 = $417
$417 x 30% = $125
$291 max  allotment - $125 = $166

How did MFB calculate shelter costs / excess shelter deduction in this case?

@kbottagaro is this something that just needs research. . .?

I've done the research and would like Caleb to check the backend Policy
Engine calculation re: the excess shelter deduction to see why my numbers
don't align with Policy Engine (but my numbers do align with SNAP Screener).
On Fri, Feb 2, 2024 at 10:29 AM sydney-devine @.***>
wrote:

@kbottagaro https://github.com/kbottagaro is this something that just
needs research. . .?
—
Reply to this email directly, view it on GitHub
https://github.com/Gary-Community-Ventures/benefits-calculator/issues/912#issuecomment-1924357852,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/BDVPUZLOXAXVRKTG7QB75TTYRUO6LAVCNFSM6AAAAABCV2KSYKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSMRUGM2TOOBVGI
.
You are receiving this because you were mentioned.Message ID:
@.***
com>


Enhance UrlConstraints with allowed_hosts attribute.

Initial Checks

[X] I have searched Google & GitHub for similar requests and couldn't find anything
[X] I have read and followed the docs and still think this feature is missing

Description
Currently, Pydantic's UrlConstraints allows specifying allowed_schemes via the allowed_schemes parameter. However, there is no built-in mechanism to restrict Url validation to specific hosts.
I propose enhancing the UrlConstraints class in Pydantic by adding an allowed_hosts attribute. This attribute would allow users to specify a list of valid hosts for Url validation. The addition of the allowed_hosts attribute would provide users with more granular control over Url validation.
A demo of how code might look when setting the allowed_hosts parameter in UrlConstraints 👇
from typing import Annotated
from pydantic import BaseModel, HttpUrl, UrlConstraints

class Model(BaseModel):
    url: Annotated[HttpUrl, UrlConstraints(allowed_hosts=["www.github.com", "google.com"])]

Affected Components

[ ] Compatibility between releases
[X] Data validation/parsing
[ ] Data serialization - .model_dump() and .model_dump_json()
[ ] JSON Schema
[X] Dataclasses
[ ] Model Config
[ ] Field Types - adding or changing a particular data type
[ ] Function validation decorator
[ ] Generic Models
[ ] Other Model behaviour - model_construct(), pickling, private attributes, ORM mode
[ ] Plugins and integration with other tools - mypy, FastAPI, python-devtools, Hypothesis, VS Code, PyCharm, etc.

@nimaxin,
Seems like a reasonable request. I believe we might be moving all of the annotated url types to concrete subclasses, so maybe we could add more support when we make that change, see https://github.com/pydantic/pydantic/issues/7353.


Config options in README are outdated

Can you please check the section about config file settings in README? I don't think the code supports it now. Also, I thought the second line below should have had ">>" instead of ">", to have both lines in the config file.
echo key ~/tpm2/key.pub > ~/.tpm2/config
echo "key_handle 0x81010010" > ~/.tpm2/config

Thanks

Fixed with commit 21cb46f5491e99d4175aa1fc88dde3224e3dbc82


Add archive/unarchive button to edit bookmark page

Feature request
Can you add an Archive button to the edit bookmark page?
Use case
i just bought an article on my todo list. while changing the tags from todo to bought i had to to Save my entry and Archiveit afterwards.  An Archive or Save and archive button would be useful.
Vice versa there should be an button to Restore the link from the archive if the entry is already archived.
hidden feature request
You may want to change the title from Edit bookmark to Edit archived bookmark if you edit an archived bookmark,
Example

Mhh maybe, though I would prefer to keep it as simple yes/no thing since that's easier/faster to process. I'll leave it open and wait for more feedback.
Not questioning your workflow, I find it interesting what kind of processes people are building around the tool. But personally I would try to keep it simpler, I find that keeping track of stuff in such detail usually has little value. A #todo that is archived could just be interpreted as done for example. Or maybe use #tobuy and then archive to mark it as bought.

I see what you mean. The simple design is great and this would expand it more and more. I´ll close this issue for now.

Reopening because this has been requested again.


Support port-forwarding for services

Contributes to #234.

Create follow-up tickets for:

Showing port-forward status in modeline;
Command to stop an existing port-forward;
Completion support for exposed ports on the given service;
Generalize to all port-forwardable resources (deployments, pods, etc.)

Codecov Report
Attention: Patch coverage is 0% with 30 lines in your changes missing coverage. Please review.

Project coverage is 57.70%. Comparing base (ce12adb) to head (e341603).

Files with missing lines
Patch %
Lines

kele.el
0.00%
30 Missing :warning:

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #237      +/-   ##
==========================================
- Coverage   59.85%   57.70%   -2.15%
==========================================
  Files           1        1
  Lines         807      837      +30
==========================================
  Hits          483      483
- Misses        324      354      +30

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


A directory called files_shouldnt_be_copy gets copied across to the home folder

Thank you for
On the last merge, we refactored the copy process.
We removed the use of nohup because we found unstable behavior on different instances (server and desktop).
We also no longer need the files_shouldnt_be_copy directory.
Likewise, we have changed this fragment from
# Copy files from repositories to general folder
# move readme files to temporary dir to exclude them from copying process
mkdir -p ~/files_shouldnt_be_copy
mv ~/geocint-openstreetmap/README.md ~/files_shouldnt_be_copy/osm_readme.md
mv ~/$PRIVATE_REPO_NAME/README.md ~/files_shouldnt_be_copy/private_readme.md

# use nohup to make cp return error when target file already exists
rm -f ~/nohup.out
nohup cp -ia ~/geocint-runner/* ~/$GENERAL_FOLDER 2>>~/nohup.out &
nohup cp -ia ~/geocint-openstreetmap/* ~/$GENERAL_FOLDER 2>>~/nohup.out &
nohup cp -ia ~/$PRIVATE_REPO_NAME/* ~/$GENERAL_FOLDER 2>>~/nohup.out &

# move readme back after copying process
mv ~/files_shouldnt_be_copy/osm_readme.md ~/geocint-openstreetmap/README.md
mv ~/files_shouldnt_be_copy/private_readme.md ~/$PRIVATE_REPO_NAME/README.md
rm -r ~/files_shouldnt_be_copy

# count number of copy conflicts
sed -i '/^nohup/d' ~/nohup.out
nohup_length="$(cat ~/nohup.out | grep -v ^$ | wc -l)"

# if number of copy conflicts more than 0  - exit and send message with details to slack channel
if [ $nohup_length -eq 0 ]
then
  echo "Copy from geocint-runner, geocint-openstreetmap and $PRIVATE_REPO_NAME to geocint folder completed successfully" | python3 ~/geocint-runner/scripts/slack_message.py $SLACK_CHANNEL "$SLACK_BOT_NAME" $SLACK_BOT_EMOJI
else
  echo "Skip start: duplicate files were found while copying files to a geocint folder: $(cat ~/nohup.out)" | python3 ~/geocint-runner/scripts/slack_message.py $SLACK_CHANNEL "$SLACK_BOT_NAME" $SLACK_BOT_EMOJI
  exit 1
fi

to
#Merge geocint-runner, geocint-openstreetmap and your private repo to one folder and check duplicated files
# This script uses IGNORE_EXISTED_FILE variable from confic.inc.sh (by default it ignores README.md and LICENSE files in a root of every repo)
copy_message="$(python geocint-runner/scripts/merge_repos_and_check_duplicates.py geocint-runner geocint-openstreetmap $PRIVATE_REPO_NAME)"

# This script sends 2 different messages.
# check if the message starts with "Copy..". Then copying was successful.
# if it does, send this message and continue. The message will say that the copying was completed nicely.
# if not, it sends the message starting with "Skip start: duplicate files were found".
# then it may be a situation when there is no message at all. It requires investigation.
# if the message about duplicates is present, need to learn where are the duplicates.
# after the message is sent at the negative case, exiting happens with 1 code
if [ "$(echo $copy_message | head -c 1)" = "C" ]
then
   echo $copy_message | python ~/geocint-runner/scripts/slack_message.py $SLACK_CHANNEL "$SLACK_BOT_NAME" $SLACK_BOT_EMOJI
else
   echo $copy_message | python ~/geocint-runner/scripts/slack_message.py $SLACK_CHANNEL "$SLACK_BOT_NAME" $SLACK_BOT_EMOJI
   exit 1
fi

We also added a new variable to the config file to be able to ignore duplicate files.
# ignored files
# this variable contains filenames, that should be ignored in the copy process
# add here are the names of the files that got duplicated between geocint-runner, geocint-openstreetmap and your private repository
# this files will not be copied from all the repositories
# Use ',' as a delimiter
# By default this variable contains README.md and LICENSE files that have duplicates
# Keep in mind that if you want to add a file you should remove it from the file-path repository
# eg: geocint-runner/scripts/script_do_smth.py >>> scripts/script_do_smth.py
IGNORE_EXISTED_FILE='README.md,LICENSE'

This allows us to make the message in the slack channel more informative, from

to (test case with empty IGNORE_EXISTED_FILE variable)


fix: handling symlinks for bashrc and zshrc files

If you are using symlinks to store your .bashrc or .zshrc file elsewhere, ProxyMan will overwrite them when setting or unsetting them.
With this fix, this will allow people to use symlinks for these configuration files.

Hi @matthieusb
Sorry for the late reply. I really appreciate your contribution.
GNU sed has --follow-symlink support, but not BSD sed, esp. the one which comes shipped with MacOS by default.
Although, I am not a Mac user, some way to support those who would perhaps be using ProxyMan on Macs would be better.
I found readlink -f and realpath to be a good-choice, and decided to go with readlink -f. more
Since, it has been a delay on my part, I shall fix this on this same branch and merge.
Thanks :relaxed:

Fixes #77

No problem for the delays. I did not know about bsd sed, thanks for the hands up !
And thanks for making your tool available, it is a blessing !


Automatic Visibility scenarios(read, create, update, etc.)

Cadl Ranch Contribution Checklist:

[x] I have written a scenario spec
[x] I have meaningful @scenario names. Someone can look at the list of scenarios and understand what I'm covering.
[x] I have written a mock API
[x] I have used @scenarioDocs for extra scenario description and to tell people how to pass my mock api check.

Wondering if we should not step back from this spec. There is a few issues:

scenario names don't make sense right now. what are they really testing
this spec is specific to visibility read. We should really have a visibility spec instead that cover(read, create, etc.). Readonly not being that special of a case(It is in openapi but not in cadl)

Hi @timotheeguerin , thanks for taking review!
Agree that we can have a test spec for visibility which includes visibility("read") as part of it.  I updated to change the spec to be a test of visibility of read/write/create/update.
I'm not sure my understanding of the create/update visibility are right, would you take a look at the mockapi implementation?
https://github.com/Azure/cadl-ranch/pull/163/files#diff-f1f73eea37f49652a997a7fa21f7d524b9a83a5f4f324fe94b3bc7cf2a2be2b5R31-R50
(here I assume visibility("create") property should be used in the request of PUT&POST)

Does python generate all these VisibilityModelCreate / VisibilityModelCreateOrUpdate / VisibilityModelDelete / VisibilityModelQuery ?
What about round-trip model?
https://cadlplayground.z22.web.core.windows.net/cadl-azure/?c=aW1wb3J0ICJAY2FkbC1sYW5nL3Jlc3QiOwoKdXNpbmcgQ2FkbC5IdHRwOwoKQGRvYygiSWxsdXN0cmF0ZXMgbW9kZWxzIHdpdGggdmlzaWJpbGl0eSBwcm9wZXJ0aWVzLiIpCkBzZXJ2aWNlCm5hbWVzcGFjZSBNxTguVskzLkF1dG9tYXRpY8loT3V0cHV0xmPfYsYkyk7FXyB7CiAgxktSZXF1aXJlZCBzdHJpbmcsIGnoAMTkAONhIHJlYWRvbmzJV3nEVSAgQMpxKCLEJMUWxAlQcm9wOsdOOwrSaGludDMy0WdxdWVy3WTFIcUXxQrGZsVM1GXGf1td0WhjcmVhdGXcacYixRjGC%2BwA0Vtd1G7lAIfTbXVwZN9txiLFGMYL6wDY1mxib29s0WlkZWxl3mnGIsUYxgvGacROZWFuOwp9CgpAZ2V0Cm9wIGdldOUCJShAYm9keSBpbnB1dDrwAkIp0RLkAp1oZWFkxEPECN9ExkRPa1Jlc3BvbnNlxD9wdeUAgXB1%2FwCBxz12b2lkxTdhdGNoxTnECd87zztvc8Zzb3PfdM855gFFxDvGCt89yz0%3D


set gyp.devDir so headers are downloaded correctly

Closes https://github.com/mafintosh/prebuild/issues/172

cc @mathiask88

Maybe we should give the user the opportunity to pass a --devdir argument accordingly to node-gyp. Otherwise LGTM.

I hear you, at the same time I want to add as little complexity as possible until someone really needs to configure ~/.node-gyp to something else.

6.2.1


Live editing the options

Hello,
Thank you for this great plugins, anyway is there any chance that I can do live editing on the options of seatchart? let say I want to change the row number and column number by using textfield.
I already looking for any event or trigger or any function that I can use to reload the map options after I change the option, but I didn't found anything.

Any help would be appreciated 🙏🏼

Silly me, turns out I just need to add key in the seatchart tag like this:
    <Seatchart key={somRandomKey} ref={seatchartRef} options={options} />

And make sure the random key will always changed when I input the row numbers.


Add High Sierra support to prepare_iso.sh

This PR

adds support for High Sierra to prepare_iso.sh
Removes some whitespace, converts tabs to spaces
A few minor changes suggested by shellcheck
Sets checksum values to "none" since Packer warns if there is no checksum or checksum type specified

Why

Even though we can't install unsigned packages on anything beyond 10.12.3, I think having this script support High Sierra is still useful.

For what it's worth I used this PR yesterday to build an iso with High Sierra 👍 . Might be nice to verify against an older OS version.

@americanhanko Do I get it right that this is just "make this script understand the changes in the High Sierra" installer but outputs a non-bootable iso, because of the signing mess?

If yes, I just got a little excited.
Thanks for you work anyways. Would like to see this merged

Why was it not merged so far?

Hi everyone!
Any updates here?
Do you consider merging this PR?

Following the test performed.
==> virtualbox-iso: Waiting for SSH to become available...

Same issue here with 10.14.2.
No Idea how to fix this.
I played with the USB -> xhci and the mouse to be USB.

@timsutton @americanhanko @tzeejay any updates on this PR? I am glad to help and review or make some PRs! think this is also a necessary patch in order to support Mojave as well

Starting with 10.14/Mojave BaseSystem.dmg mounts as /Volumes/macOS Base System rather than /Volumes/OS X Base System


Prepare for release

Doing all necessary steps to publish this package to pub.dev under https://pub.dev/packages/codemagic_app_preview

⬇ Generated builds by Codemagic for commit b0fb5a480de6ccfe4b6ed205e438a0a5208d6b62 ⬇

iOS
Android

  Download link
  Download link