CONCEPTION II: Children of the Seven Stars [PCSE00376]

Game summary

Game name: CONCEPTION II: Children of the Seven Stars
Game serial: PCSE00376
Game version: 01.00

Vita3K summary

Version: v0.1
Build number: 1316
Commit hash: https://github.com/vita3k/vita3k/commit/d5378b8

Test environment summary

Tested by: IllusionMan1212
OS: Windows 10 Pro
CPU: AMD Ryzen 5 1600
GPU: NVIDIA GTX 1050Ti
RAM: 8 GB

Issues
Unicorn error after a missing NID
Screenshots
None at the moment
Log
vita3k.log

Vita3K summary

Version: v0.1.5
Build number: 2627
Commit hash: https://github.com/vita3k/vita3k/commit/a31fd85c
CPU backend: Dynamic

Test environment summary

Tested by: othmanead
OS: Windows 11
CPU: Intel i5-10300H
GPU: RTX 3060 mobile
RAM: 16 GB

Issue:

game goes bootable with a black screen

Screenshots:

Log
vita3k.log
Recommended labels

Bootable

Is there any news on this game getting updated any time soon? I really wanna play it.

Game is still only bootable.


[Bug]: fixing web design on Safari

What happened?
The gifs within the cards need to be optimized for the Safari browser on mobile devices. It would be great if someone could check how the website appears on desktops because unfortunately, I don't have the option to do so.
Add screenshots

What browsers are you seeing the problem on?
Safari
Code of Conduct

[X] I agree to follow this project's Code of Conduct

Looks fine to me. I checked on desktop firefox for both full size and iPhone 12/13 pro in responsive mode

Have you checked using Safari browser?

Oops sorry misread that. Unfortunately, I don't have Safari as I'm using Windows.

Oops sorry misread that. Unfortunately, I don't have Safari as I'm using Windows.

it's ok, no worries!

Have you checked using Safari browser? That's where the bug shows

Safari browser appears to be fine for me currently. (Also, hello! I just stumbled upon the project and I'm hoping to help out where I can)

Hope this gets fixed soon. Perhaps adding more labels to the issue will help?


k8s-unauthorized-exec-into-pod

Background
Alert if users are exec'ing into k8s pods.
Allow for temporary exceptions.
Include global_helpers/gcp_environment to specify constants specific to an environment and rule_exceptions
Changes
Adds a detection and global helper
Testing
Tested in our Panther instance for a month

Hey @kbroughton I love the detection idea. This is great. It looks like you have an unsupported Key in your .yml ("SchemaWrongKeyError("'SampleQuery' not in list of valid keys:") which is causing a unit test error.
Could you give quick reasoning for why the allow is structured the way it is? I like the added flexibility but have 2 comments:

It looks like TTL and Env are not used in the allow decision, should those be added to the conditional on line 17? or are they used somewhere else?
Up to this point, we have added allowlists directly to the rule for readability unless the allowlist is going to be used across multiple rules. Do you expect to use the "gcp_k8s_exec_into_pod" "allowed_principals" dictionary across multiple rules?

Thanks

Thanks for the review @k-bailey .

It looks like TTL and Env are not used in the allow decision, should those be added to the conditional on line 17? or are they used somewhere else?

Correct, I'll add them to the conditional. We hadn't needed it ourselves yet, but I think it's best practice.

Up to this point, we have added allowlists directly to the rule for readability unless the allowlist is going to be used across multiple rules. Do you expect to use the "gcp_k8s_exec_into_pod" "allowed_principals" dictionary across multiple rules?

The main reason i factored it out is because if we put the allowlist in the gcp_k8s_exec_into_pod file it will mean merge conflicts for anyone who customizes it AND makes contributions.
This can be handled with .gitattributes merge directives like
README.md merge=ours
config.php merge=ours
.gitattributes merge=ours
.gitignore merge=ours
.cache/ merge=ours

but this is quite a bit of overhead if you have dozens of tunings.
By putting all the allow_rules in one file, you only have one merge conflict to worry about.

Regarding the SampleQuery, I added it to the dict hoping that additional dict entries would be allowed but not parsed.
The idea behind it is that currently when you have a detection you can "View with Data Explorer",
but that pulls existing detections based on alertId.  Eg.
SELECT
 *
FROM panther_rule_matches.public.gcp_auditlog t
WHERE t.p_rule_id='GCP.K8s.ExecIntoPod'
AND (p_alert_update_time between '2022-03-08 20:15:39Z' AND '2022-08-06 00:00:00Z')
LIMIT 100

When you are developing or tuning a detection, it would be nice to have a query that better captures the
detection method rather than the results. So the following query is a lot closer to the logic of the detection,
leaving out allow_rules.
SampleQuery: >
  SELECT PROTOPAYLOAD:authenticationInfo:principalEmail,
        PROTOPAYLOAD:resourceName,
        resource:labels:project_id,
        p_event_time
  FROM PANTHER_RULE_MATCHES.PUBLIC.GCP_AUDITLOG
  WHERE p_rule_id = 'GCP.K8s.ExecIntoPod'
  AND DATE(p_event_time) > DATEADD(Day, -30, CURRENT_DATE)
  LIMIT 100;

I included this as kind of a generic proposal to allow including a SampleQuery for any detection.
If it's not of interest, I can remove it.

Thanks for updating the allow.

The main reason i factored it out is because if we put the allowlist in the gcp_k8s_exec_into_pod file it will mean merge conflicts for anyone who customizes it AND makes contributions.

This is clever and something we should share more broadly so others can avoid merge conflicts. Let me chat with the team internally and I will circle back.

Regarding the SampleQuery, I added it to the dict hoping that additional dict entries would be allowed but not parsed. The idea behind it is that currently when you have a detection you can "View with Data Explorer", but that pulls existing detections based on alertId.

Ya, I understand this. I know the product teams are actively thinking about in-product solutions to tie queries to alerts. One workaround, for the time being, is to save the SQL as a "Saved query" in the UI and then add the link to either the "Runbook" or "Description" field.  It looks like there is no way around this in PAT.

@k-bailey
All checks are passing now.

I'm reminded of Threatstack which had a very nice suppression query language. Basically, if an alert fired and you wanted to suppress all cases where a user = X or date < y or really anything available in the alert body, you could write a quick suppression.  That might be a nicer way to approach this than building suppressions into every query if you have
a lot of ephemeral suppressions that should go away after a while.
So the architecture would be
Log Stream -> Detections -> Suppressions -> Alerting
When you want a robust exception for all time, you might put it in detections.
For noisy alerts where you have to write a lot of exceptions, something with UI support is more appropriate.


Added MagicCraft

Add MagicCraft (1.17.1) - Disneyland Paris Recreation

Could you resolve this? @MrUnic0rn0

Thanks!


Chrome : Testcafe browser connected after tests may not start.

What is your Test Scenario?
Run the same test several times in succession.
The reason why the same test is performed consecutively is that the test is performed while switching browsers in series.
What is the Current behavior?
Testing may not start after the browser connects to TestCafe.
What is the Expected behavior?
Testing begins after the browser connects to TestCafe.
What is your web application and your TestCafe test code?

Your website URL (or attach your complete example):https://devexpress.github.io/testcafe/example/

Your complete test code (or attach your test files):

control_test.js

 const Runner = require('testcafe');

let testcafe = null;

let runner;

const args = process.argv;
const browser = args[2];
const screenshot_dir = args[3];

Runner(null, '8000', '8001', null, true)
    .then(tc => {
        testcafe = tc;
        runner = testcafe.createRunner();
        return runner
            .src(`tests/example_pages.js`)
            .browsers(browser)
            .screenshots(screenshot_dir)
            .run();
    })
    .finally(() => {
        testcafe.close();
    });

tests/example_pages.js

import { Selector } from 'testcafe';

fixture`Getting Started`.page`http://devexpress.github.io/testcafe/example`;

test('My first test', async t => {
    await t.takeScreenshot();
    await t.typeText('#developer-name', 'John Smith');
    const osName = t.browser.os.name.toLowerCase();
    if (osName === 'windows') {
        await t.click(Selector('#windows'));
    } else if (osName === 'macos') {
        await t.click(Selector('#macos'));
    } else {
        await t.click(Selector('#linux'));
    }
    await t.click('#submit-button');
    await t.takeScreenshot();
});

examples codes: https://github.com/minotier89/testcafe-examples

Steps to Reproduce:

Run the test.
Note:No error message is displayed when this event occurs.
You will also need to manually reload the page to begin testing.
Your Environment details:

testcafe version:                    1.7.1
node.js version:                    12.13.1
command-line arguments:  node control_test.js chrome result or testcafe chrome tests/example_pages.js -s result
browser name and version: Chrome 79.0.3945.88
platform and version:          macOS 10.15.2

@minotier89
Hello,
I wasn't able to reproduce the issue (yes, there is some delay in concurrent mode, but all tests pass without any additional "manually reload" actions) in the following cases:

testcafe chrome -c 10 -s result

node control_test.js
I added the concurrnecy option to your runner:

const Runner = require('testcafe');

let testcafe = null;

let runner;

// const args = process.argv;
const browser = 'chrome';
const screenshot_dir = 'result';

Runner(null, '8000', '8001')
    .then(tc => {
        testcafe = tc;
        runner = testcafe.createRunner();
        return runner
            .src(`tests/example_pages.js`)
            .browsers(browser)
+           .concurrency(10)
            .screenshots(screenshot_dir)
            .run();
    })
    .finally(() => {
        testcafe.close();
    });

Could you please provide the correct project so that we can reproduce the issue in both these cases? We will examine it and check for a suitable solution.

@Farfurix
Indeed, the problem does not seem to be reproduced in the concurrency mode.
This makes it difficult to create a project that reproduces the problem in concurrent mode, but in a single browser instance:

testcafe.close is an asynchronous function returning a Promise. It means that its return value should be returned from the finally handler to allow TestCafe to properly terminate browser processes. Otherwise, Node.js can terminate your runner script before browsers are closed.
Also please note that the async/await syntax can be easier to read and find inconsistencies like this one:
const Runner = require('testcafe');

let testcafe = null;

let runner;

const args = process.argv;
const browser = args[2];
const screenshot_dir = args[3];

(async () => {
    const testcafe = await Runner(null, '8000', '8001', null, true);
    try {
        await testcafe
            .createRunner();
            .src(`tests/example_pages.js`)
            .browsers(browser)
            .screenshots(screenshot_dir)
            .run();
    }
    finally {
        await testcafe.close();
    }
})();


Improve imports, removed session from env constructor

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Codecov Report

Merging #45 into r2.0 will increase coverage by 1.23%.
The diff coverage is 100%.

@@            Coverage Diff            @@
##            r2.0      #45      +/-   ##
=========================================
+ Coverage   96.5%   97.74%   +1.23%
=========================================
  Files          7        6       -1
  Lines        315      310       -5
  Branches      22       22
=========================================
- Hits         304      303       -1
+ Misses         7        4       -3
+ Partials       4        3       -1

Impacted Files
Coverage Δ

src/sagemaker_containers/env.py
98.53% <100%> (ø)

src/sagemaker_containers/cli/serve.py
60% <100%> (-6.67%)
:arrow_down:

src/sagemaker_containers/functions.py
93.33% <100%> (ø)
:arrow_up:

src/sagemaker_containers/server.py
96.87% <100%> (+0.1%)
:arrow_up:

src/sagemaker_containers/modules.py
100% <100%> (ø)
:arrow_up:

Continue to review full report at Codecov.

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


Compilation problem on Ubuntu

CMake Error at cmake/freetype/CMakeLists.txt:70 (add_library):
Cannot find source file:
flatui/dependencies/flatui/src/libpng_to_stbimage/pngshim.cpp
actually pngshim.cpp
is in flatui/src/libpng_to_stbimage/pngshim.cpp
so the CMakeLists.txt should be changed from
${dependencies_flatui_dir}/src/libpng_to_stbimage/pngshim.cpp
to
${CMAKE_SOURCE_DIR}/src/libpng_to_stbimage/pngshim.cpp
motive doesn't appear in dependencies, despite having cloned with --recursive and cmake fails because it cannot find it.
I have download motive from https://github.com/google/motive and placed in dependencies.
At this point cmake complete successful.
I had to remove -Werror flag because both motive don't compile.
The first because of the loc 200 and 206 in matrix_processor.cpp
That trigger the warning strict-aliasing.
Compiling sample fails because this command at line 262 of main CMakeLists.txt is wrong:
COMMAND ${CMAKE_COMMAND} -E copy
${dependencies_flatui_dir}/sample/serialization/first_menu.json ${flatui_assets_dir}/serialization
COMMAND ${CMAKE_COMMAND} -E copy
${dependencies_flatui_dir}/sample/serialization/second_menu.json ${flatui_assets_dir}/serialization)
Should be
COMMAND ${CMAKE_COMMAND} -E copy
${CMAKE_SOURCE_DIR}/sample/serialization/first_menu.json ${flatui_assets_dir}/serialization
COMMAND ${CMAKE_COMMAND} -E copy
${CMAKE_SOURCE_DIR}/sample/serialization/second_menu.json ${flatui_assets_dir}/serialization)
Once compiled I tryed to run any samples, but nothing is displayed and to kill the application I have to kill it with -9.
Any Ideas of what I am doing wrong?

Thank you for trying to dig past these errors.
There is a problem in our config that's causing flatui to be searched for in the dependencies path of flatui (As you've noticed, it's not supposed to be a dependency of itself). Jason has a fix coming soon.

What about motive missing? and the fact that it fails to compile due to the -Werror flag?

I can't say for certain. I tested on Mac having many of the same issues, and so I'm thinking many of your problems will go away with the proper pathing fix. Motive has been addressed.
The warnings may be specific to the linux build? I was testing on OSX, but I'll make sure Jason is aware, since he's the one patching this up right now.

Hi filippobrizzi, thanks for pointing this out. There were a couple of bugs here that are causing the two problems your seeing in the GitHub directory layout. I have fixes for them internally. Will push them tomorrow.

Hey filippobrizzi, I've uploaded fixes to flatui and fplutil for the issues with Ubuntu that you found.
I also noticed that we're missing build instructions for some of the tools that are needed to build flatui under Ubuntu. I've made an internal bug for me to update the build instructions, but in the meanwhile, can you please install the prerequisites for FPLBase? (http://google.github.io/fplbase/fplbase_guide_linux.html)
Please let me know if you're still having troubles, and thanks again for pointing them out.

Wow now everything worked super smooth!
Thank you for the quick fix!


Update README.md

replace compile with implementation when using gradle
compile  used to be the way to declare dependencies in earlier versions of Gradle, but it has been deprecated in favor of implementation .
In general, it's recommended to use implementation  instead of compile , as it can help reduce build times and avoid potential conflicts between dependencies.

Thanks for suggested changes. Please correct all checks

Thanks for suggested changes. Please correct all checks

thanks for your kindly mention, this question fixed, and all check pass.


[h2v] Repush optimization for chunked topics

Implemented object reuse for chunked topics. Because the logic is more complex, it is still not as efficient as non-chunked, but nonetheless better than before. The memory requirement is now to buffer the bytes of all shuffled chunks rather than the objects of all shuffled events.
Also removed an unnecessary optional for the reducer hot path for all implementations (including regular VPJ and repush).
How was this PR tested?
Unit tests (updated to new code structure)
Internal CI (green!)
Does this PR introduce any user-facing changes?

[x] No. You can skip the rest of this section.
[ ] Yes. Make sure to explain your proposed changes and call out the behavior change.

Sorry, I amended and force pushed instead of adding one more commit... old habits die hard 😅 ... all comments are addressed.


Storing date information for the occurrence of fault conditions in a specific vehicle

occurredIn would be the perfect place to store the date (WHEN did it occur?)
however, again leads to the issue of requiring a relation with properties (not directly feasible in RDF)
could be implemented via additional concept, e.g., FaultCondition -> manifestsIn -> FaultCase -> occurredIn -> Vehicle

However, if this kind of info is stored in a database anyway, I could just request all the fault cases by VIN and don't need it as part of the ontology. Postponing this decision.


Tips on Establishing Macro Traffic Simulation Model of Large Urban Area by TransCAD - AeroliTh.ink | 像陨石一样思考

https://aerolith.ink/2018/07/12/TCxc/
你来了

~hi


Issue 1652

Description
Rewrote the core/ledger/ledger_test.go using Ginkgo and Gomega. Tried to add in more comprehensive validation to the existing tests. Also refactored some of the foriegn helper functions to be more localized to the test suite.
Motivation and Context
The ledger tests used some bespoke assertion capability. There are many well traveled golang packages that provide more robust capability. I used this as an example of a possible direction for the remainder of the testing.
Fixes #1652
How Has This Been Tested?
Added test directory with new test suite using Ginko/Gomega - 72/73 tests pass. One test is left in Pending state (PIt) that reveals a possible bug in the database or ledger that leaves state from a prior database. This needs some further investigation.
Checklist:

[x] I have added a Signed-off-by
[x] Either no new documentation is required by this change, OR I added new documentation
[x] Either no new tests are required by this change, OR I added new tests
[x] I have run goimports, go vet, and golint. I have cleaned up all valid errors and warnings in code I have added or modified. These tools may generate false positives.  The goal is clean, consistent, and readable code.

Signed-off-by: Christopher Ferris<EMAIL_ADDRESS>

ah, I may need to add ginkgo and gomega to the vendored packages in the development environment

@christo4ferris OMG, Please do! We'll be all over it !!!

pushed commit which has triggered rebuild

reverify jenkins

Really appreciate you adding Ginkgo @christo4ferris!
LGTM

I should also probably mention that once this is merged, and with @srderson concurrence I would follow this up by fleshing out the remaining tests in the ledger package as ginkgo tests, and once those are merged and demonstrating at least equivalent coverage with  what is there now, I would replace the current tests with the ginkgo based tests so that we can formally measure coverage.

I'd love to see examples of mocking interfaces with the new test framework.

This LGTM.  @christo4ferris this appears to be a candidate for a squash merge.  Would you be ok with that?
@binhn @srderson @jeffgarratt you guys have any opinion on the addition (or possible future wholesale replacement) of the unit test framework?
Reviewed-by: Greg Haskins<EMAIL_ADDRESS>

Some more context/earlier discussions around Ginkgo/BDD can be found also here: #1589

It seems from the conversation that @jeffgarratt isn't opposed to alternate frameworks per se, so thats a postive in favor of accepting this.  Anyone else have a comment?

BTW: I'm happy to go ahead with this, also because Ginkgo plays nice with the existing Go's testing framework/infrastructure... going forward, if we ever choose/consider another testing framework, we can re-evaluate where we stand there and then. At this point, echo'ing what I read around it from everyone, it is already a big improvement.

Thanks! LGTM


Right Clicking on my "Quests Merchant"

(Required) What is your Quests version / build number (do not say "latest")?
3.2.4-b255
(Required) Please describe the problem and how to replicate it. Any console errors?
When I rightclick on the npc it just prompts to tell me the npc id in chat and not the gui.
(Optional) Can you provide an example quest from quests.yml using Pastebin.com?

This is not an error. There is currently no way to enter an NPC ID through a GUI.


[Gally]: master <- dev

Automatically created by Git-Ally

:tada: This PR is included in version 2.10.26 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Sign Up with GitHub Not Working

Expected Behavior
If applicable, add screenshots to help explain your problem, or include Carbon links that recreate
your issue.
Info
Please complete the following information:
OS [e.g. macOS, Linux, Windows, iOS]:
Browser [e.g. Chrome, Safari, Firefox]:

@Joshmatjjen could you give me more information on the issue you are seeing? Which browser/operating system were you using? Can you provide a screenshot or screen recording of the issue you are noticing?

Actually, just realized this is a duplicate of #1058. Will close this one and continue the thread there.


add available balance

it will be so nice to have available balance information :)

Duplicate of https://github.com/iancoleman/bip39/issues/305


Force change directory in the Quick Start doc

As discuss in #1156, I propose to force the change directory with static value, instead of create a new branch (due to automatic parameter {{site.data.istio.version}} )

@jsenon: The close prow plugin is deprecated, please migrate to the lifecycle plugin before April 2018

In response to this:

/close

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

/close


feat: auto scroll and infinite words

[ ] add words as typing near end
[x] auto scroll

move to #24


Output provider labels do not match up with the config

Describe the bug
In these images you can see that the label does not match the config

To Reproduce
Steps to reproduce the behavior, including example Promptfoo configurations if applicable:
Here's my provider config:
providers:
  - id: file://provider_structured_response.py
    label: claude-3-5-sonnet
    config:
      provider: anthropic
      model: claude-3-5-sonnet-20240620
      model_args:
        temperature: 0.0
  - id: file://provider_structured_response.py
    label: openai_gpt-4o
    config:
      provider: openai
      model: gpt-4o
      model_args:
        temperature: 0.0

Run it a few times. About half of the time it is correct and half the time wrong
System information (please complete the following information):

Promptfoo version: 0.92.0

Additional context
Before I added the labels, both of the results were merged into a single output column

This is worse than I realised - not only do the label no match up with the provider but the pass rate is shuffled compared to the metric

I don't know which result actually matches up with which model

I've just checked and this doesn't happen in version 0.91.3
Maybe due to https://github.com/promptfoo/promptfoo/pull/1776 @sklein12?

I'll take a look

@brendanator I found the bug, thanks for reporting! It was just a display issue, so all your stats and results from previous runs will still be valid.

Fixed in release https://github.com/promptfoo/promptfoo/releases/tag/0.92.1


Share Badge / Level-up Public Share Page

Pretend the user clicked 'Share' and various options are available to the user like facebook, twitter, etc. Now pretend the user selected any of those. The message should be something like "I won the badge blah blah blah, check it out at this link... http://www.flyapp.com/share/666/".
What we need now is a UI page for that link. The purpose is that we provide a link that's public to everyone and communicates either the User's success (badge/xp levelup) and is accessible by non-registered users. Furthermore, new users will be enticed to join the site with a link somewhere at the bottom encouraging the user to go to the landpage.
I need you to create this UI page. Make sure it has:

UI is stand-alone and unique
Make sure the UI looks like an award or a celebration for the user.
Has a title, body and icons
Has a link to the landpage
Uses jQuery-Mobile

share-page.html


Added async support ; fix SQLite filtering error

Coverage issue due to non-detection of async method tests


implement update / setting socials + email

Will also need to make sure it tracks the OK and CANCEL button correctly
Need to check it updates both the profile and the database and the respective objects


[release-2.7] Update OWNERS

Signed-off-by: Dale Haiducek<EMAIL_ADDRESS>

/retest

/override ci/prow/test-e2e-grc-framework


This reference is undefined in template's v-for loops

Version
2.6.10
Reproduction link
https://jsfiddle.net/caxzegtw/
Steps to reproduce

Look at the two this pointers; only one is working

What is expected?
This pointer should refer to the Vue instance.
What is actually happening?
In the fiddle; the this.message is not showing inside the v-for.
In our project; this is undefined and throws an error in the console.

Never use this in templates

Never use this in templates
Where is that defined/ documented? If that is so important, why isn't it enforced?

if you still having the issue here is a workaround I'm using.
in your data add a variable like myRef: this and use myRef in the v-for loop instead of this

@gewoonwoutje You could access the parent scope with either $data or $props ($methods do not work and I did not try to access a parent scope's computed).

{{item}}:{{$data.message}}


Allow banning people who are not in the group

When people who are not in the group get banned, they can't join.
Removed strings which were rendered unused by the change.
Also, added configuration.lua (not configuration.example.lua) to .gitignore.
Offtopic:

My editor claims that ban plugin somehow has WIndows style line endings.
Please create, test and commit a Vagrantfile or Dockerfile, so it's easier to set up development environment.

Since there are conflicts with the language files I'd rather implement this patch server-side and this will be in the next commit, thanks.

Well
All I did to language files was removing stuff that became obsolete, unused. And my text editor added newline at the end of the files, because if you don't... try cating a file which doesn't.
So, I believe the conflicts can be easily resolved using git cli, using theirs parameter to recursive stragegy. You could do similiar thing with rebase, if you want to avoid merge commit (I always avoid them, I'd consider not doing that only when branch was big).


Fix from_cache being unset in orig response hook

response.from_cache needs to be set before the original Session.send

lmao woops


Feature request: add option to force $VAR to ${VAR}

It would be nice if the formatter could force the variables to use the curly bracket style for variables to ensure consistency throughout a script.
echo "$VAR"
# vs
echo "${VAR}"

Why? Keep consistency with your code, not with barbed-wire-decorations. Unless you use positional arguments above 9 often, it would be far more consistent and readable to keep  $var and ${var:-default} separate.
A quick glance will at the second character tell me if someone is just using the variable, or that they're doing something special with it.
And it's far too common for people to use ${var} as a magical shield, because "that's what they used!". I've had to explain why ${var} is the same as $var more often than I've had to explain why a parameter expansion has to be quoted.

Because it is the design choice made the team I'm in, as simple as that. We use beautysh otherwise for styling, and it not handeling this in any way makes it lack something as a formatter.
While I can accept what you say as a rather bash savvy individual, I have a hard time speaking for the entire body of developers, so just gonna leave it there. Nothing wrong with your arguments.
I guess the alternative here would be to strip the decorations where they serve no purpose. That would be rather easy to sell. :)


ccls install failed

Describe the bug
Tried to install ccls with :LspInstallInfo but the installation failed
Screenshots

System info (please complete the following information):

OS: ArchLinux
Neovim version:0.7

Check health output (:checkhealth nvim-lsp-installer):
nvim-lsp-installer: require("nvim-lsp-installer.health").check()
========================================================================
## nvim-lsp-installer report
  - WARNING: **Go**: not available
  - WARNING: **Composer**: not available
  - WARNING: **PHP**: not available
  - WARNING: **java**: not available
  - OK: **tar**: `tar (GNU tar) 1.34`
  - OK: **gzip**: `gzip 1.10`
  - OK: **curl**: `curl 7.75.0 (x86_64-pc-linux-gnu) libcurl/7.75.0 OpenSSL/1.1.1k zlib/1.2.11 zstd/1.4.9 libidn2/2.3.0 libpsl/0.21.1 (+libidn2/2.3.0) libssh2/1.9.0 nghttp2/1.43.0`
  - OK: **wget**: `GNU Wget 1.21.1 built on linux-gnu.`
  - OK: **python3**: `Python 3.9.2`
  - OK: **node**: `v15.12.0`
  - OK: **Ruby**: `ruby 2.7.2p137 (2020-10-01 revision 5445e04352) [x86_64-linux]`
  - OK: **sh**: `Ok`
  - OK: **bash**: `GNU bash, version 5.1.4(1)-release (x86_64-pc-linux-gnu)`
  - OK: **RubyGem**: `3.2.13`
  - OK: **npm**: `7.7.5`
  - OK: **pip3**: `pip 20.3.1 from /usr/lib/python3.9/site-packages/pip (python 3.9)`

My issue is similar to this https://github.com/williamboman/nvim-lsp-installer/issues/337
I tried installing llvm,clang using pacman, still, the issue persists
I used to use ccls with coc before

Having the same issue, using Arch Linux

Hello! It's been quite unclear to me to what degree the LLVM release binaries can be used on different Linux distros. Could you provide the last couple of lines of the build output? In the screenshot there's only output for tar unpacking stuff

the last lines are:
make[2]: *** No rule to make target '/usr/lib/x86_64-linux-gnu/libtinfo.so, needed by 'ccls'. Stop'
make[1]: ***[CmakeFiles/Makefile:87: CmakeFiles/ccls.dir/all] Error 2
make: *** [Makefile:136: all] Error 2

I use Arch and have a same problem with him so...

@ruanyouxing Could you try the branch fix-ccls-arch-linux?

it builed to 100% but it have a new error:
[100%] Linking CXX executable ccls
/usr/bin/ld: cannot find -lexecinfo
collect2: error: ld returned 1 exit status
make[2]: *** [CmakeFiles/ccls.dir/build.make:796: ccls] Error 1
make[1]: *** [CmakeFiles/Makefile2:87: CmakeFiles/ccls.dir/all] Error 2
make: ***[Makefile:146: all] Error 2

@williamboman Sorry for the late reply
Screenshot of fix-ccls-arch-linux

Same error here on Ubuntu Server 20.04 LTS. Has the same output as the original screenshot of the issue.

@JuniorSuperTux Hmm Ubuntu should work fine 🤔. Are you on the latest plugin version? Usually it's the very last few lines that have the interesting information, in OPs screenshot we only see tar unpacking stuff (so it'll look the same for everyone, even if it's successful). If you're on the latest plugin version and it still doesn't work, make sure you have libncurses5 installed (sudo apt install libncurses5)

so how about arch?

so how about arch?

It seems like the proposed fix fixed the first issue, but produced another one. There's apparently some BSD-specific artifacts in the LLVM distribution. I'll need to set up an Arch container to properly debug this, will do so when I find the time. If you'd like to try and build ccls manually and report back what worked that'd be helpful as well.
Otherwise I believe ccls is distributed among most package managers, so for the time being you might want to manage it outside of nvim-lsp-installer (I'm somewhat starting to lean towards removing ccls from this plugin due to how difficult it is to provide cross-platform support, or at the very least tightening the requirements a bit). To set up ccls outside of nvim-lsp-installer you may interact directly with lspconfig, like so:
local lspconfig = require("lspconfig")

lspconfig.ccls.setup {}

I'm somewhat starting to lean towards removing ccls from this plugin due to how difficult it is to provide cross-platform support

I'm very much in favor of removing this until it's guaranteed that the cmake recipe can handle finding all the dependencies. The overhead here is way over what's reasonable, imho.
It's worth mentioning that ccls has barely had 10 commits over this past year compared to the very active and capable clangd.

I'm very much in favor of removing this until it's guaranteed that the cmake recipe can handle finding all the dependencies. The overhead here is way over what's reasonable, imho.

Let's give the following mechanism a try first: If prebuilt clang+llvm distribution exist for the current OS & arch, install and use it for building. Otherwise default to using system clang+llvm (on macOS we can definitely check whether this exists because we just use Homebrew, with Linux we'll let the build fail if these deps aren't installed).

See #414 for impl

@ruanyouxing @MohamedIrfanAM try pulling the latest plugin version and install ccls now. You will have to install llvm separately before that though:
$ pacman -Sy llvm

@williamboman  It works!!. Thank you

@ruanyouxing @MohamedIrfanAM try pulling the latest plugin version and install ccls now. You will have to install llvm separately before that though:
$ pacman -Sy llvm

i did it but when i tried to install ccls again, it still says 'cannot find -lexecinfo' and quit the installation

@ruanyouxing Could you submit a new issue, using the appropriate issue template :pray:? It's so much easier for me if the information that's being asked for in that form is provided from the start.
If you'd like to do some investigation on your own, I'd recommend trying to compile ccls yourself by following the instructions here, this could help determine whether it's a plugin issue or a broader issue with your system.

@ruanyouxing Could you submit a new issue, using the appropriate issue template pray? It's so much easier for me if the information that's being asked for in that form is provided from the start.
If you'd like to do some investigation on your own, I'd recommend trying to compile ccls yourself by following the instructions here, this could help determine whether it's a plugin issue or a broader issue with your system.

This really helps, i was here to search for an answer to my ccls install bug. But after looking at the instructions you mentioned and install all the required dependencies there, it automatically works :D


meta: Fix ASAN Static Order Initialization Errors

Changes static init variables into functions to ensure their correct initalization order.
Also removes destruct guard by ensuring their construction occurs before any IdString.

The std::vector default constructor is constexpr (since C++20 I think), and we should probably make the hashlib default constructors constexpr as well..

My understanding was that Yosys is supposed to compile with c++11. Are you proposing making that requirement c++20?

I'm okay either way, but I do need to get this one resolved sooner rather than later.

I would assume that the code generated by virtually every optimizing compiler would have static initialization for empty std::vector, even in c++11 mode.
What I'm proposing is to build with -std=c++20 for ASAN. Can you confirm that the ASAN issues for the std::vector cases are resolved when building with -std=c++20 (and using a C++20 std library)?

The ASAN issue was found in c++20 mode.

I can't reproduce this. I've built with SANITIZER=address and used the following command line
ASAN_OPTIONS="check_initialization_order=true:print_stats=true:atexit=true" ./yosys -p 'read_verilog tests/simple/fiedler-cooley.v; synth -auto-top'

With this I got no ASAN errors at all. This is with
Yosys 0.36+58 (git sha1 ea7818d31, clang 18.0.0 -fPIC -Os -O1 -fno-omit-frame-pointer -fno-optimize-sibling-calls -fsanitize=address)

I've also created this small demo to help discussing the meaning of that asan check wrt std::vector and relevant compiler options:
https://github.com/clairexen/handicraft/tree/handicraft-2023/asan-initfiasc-demo

With https://github.com/YosysHQ/yosys/pull/4097 I get no errors for ASAN_OPTIONS=strict_init_order=true, no constinit required. This is the Makefile.conf that I used:
SANITIZER = address
CXXSTD = c++20
LDFLAGS += -stdlib=libc++
CXXFLAGS += -stdlib=libc++

Merged #4097

Thanks @clairexen! Sorry for the late reply. Looks like this should work


Parser: declare local vars of indirect type declarations in call args

Fixes #11982

Hi guys, can this be merged or is it waiting for something? It's not urgent, just asking.

I think this will be a breaking change.

Hm, is it a breaking change? What would be a program that did compile before this change and doesn't afterwards?

This one:
macro let(x)
  {{x}}
end

let x : Int32 = 1
puts x

Oh, wait... it seems that didn't compile before either 🤔
I'm surprised it didn't work before... I guess it's fine to merge this, then.

Hm, yeah that's odd. Because the type restriction seems to actually apply to the local variable, so it must be declared:
macro let(x)
  {{x}}
end

let x : Int32 = 1

x = "" # type must be Int32, not (Int32 | String)

Will this go into 1.6?

This currently works:
macro let(x)
  {{ x }}
end

let x : Int32 = 1
puts {{ "x".id }} # => 1


WIP: Stack ui

Add a Stack view for swarm mode
Need to fix multiple issue :

[ ] Sorting issue in stack detail view (See https://github.com/michaelbromley/angularUtils/tree/master/src/directives/pagination#multiple-pagination-instances-on-one-page)
[x] Spinner issue in stacks summary view
[ ] Task count for global service in stack detail
[ ] Add stack status if #688 is merged
[ ] Add stack rm and stack deploy view if #695 is merged
[x] Display compose stack with container label : com.docker.compose.project
[ ] Need to display services list of compose stack - In services view ?
[ ] Stack view should be visible even if not in swarm mode...

Some screen shots :
Stacks summary :

Stack detail :

Add stack view for compose stack (started with docker-compose up -d)
Based on containers labels
The modified stacks view with 2 types of stacks :

The new composeStack view for compose stack detail :

Is this feature for next Portainer version?

It's not planned for 1.13 that will be released soon, probably 1.13.x or 1.14.

Alright right @deviantony, this is a nice feature.
Another feature I guess would be have is a log view per Services.
Thanks!

@alexsandro-xpt

Another feature I guess would be have is a log view per Services.

See #671

Closing this, will be replaced by #959


Platform view stays on the screen when navigating away on android

Steps to Reproduce
I created a small demo over here: https://github.com/shilangyu/mapbox_demo. Relevant files: lib/{main.dart,native_maps.dart} and mapbox_demo/android/app/src/main/kotlin/com/example/mapbox_demo/{MainActivity.kt,NativeMapView.kt}. Unfortunately it requires a mapbox token to download the sdk. One can get such an access token for free from mapbox. I can also provide privately an access token to be able to run the demo.

Start the app on an android device. You can see a map and a button underneath it.
Press the button, you are navigated to a different screen.
At this point the map either disappeared (correct behavior) or is still shown (incorrect behavior).
Minimalize the app (trigger onPause) and open it again (trigger onResume). The map returns and is drawn over everything.

Expected results: the platform view should not be visible if we are on a different screen.
Actual results: the platform view is drawn over everything.

Code sample
The whole code can be found in the linked demo project. Below are the essential parts:
Creating the view on flutter's side:
import 'package:flutter/foundation.dart';
import 'package:flutter/gestures.dart';
import 'package:flutter/material.dart';
import 'package:flutter/rendering.dart';
import 'package:flutter/services.dart';

class NativeMaps extends StatelessWidget {
  const NativeMaps({
    super.key,
    required this.accessToken,
  });

  final String accessToken;

  static const viewType = 'NativeMapView';

  @override
  Widget build(BuildContext context) {
    return PlatformViewLink(
      viewType: viewType,
      surfaceFactory: (context, controller) {
        return AndroidViewSurface(
          controller: controller as AndroidViewController,
          gestureRecognizers: const <Factory<OneSequenceGestureRecognizer>>{
            Factory<OneSequenceGestureRecognizer>(
              EagerGestureRecognizer.new,
            ),
          },
          hitTestBehavior: PlatformViewHitTestBehavior.opaque,
        );
      },
      onCreatePlatformView: (params) {
        return PlatformViewsService.initExpensiveAndroidView(
          id: params.id,
          viewType: viewType,
          layoutDirection: TextDirection.ltr,
          creationParams: accessToken,
          creationParamsCodec: const StandardMessageCodec(),
          onFocus: () {
            params.onFocusChanged(true);
          },
        )
          ..addOnPlatformViewCreatedListener((id) {
            params.onPlatformViewCreated(id);
          })
          ..create();
      },
    );
  }
}

Platform view on kotlin's side:
package com.example.mapbox_demo

import android.annotation.SuppressLint
import android.content.Context
import android.view.View
import androidx.lifecycle.DefaultLifecycleObserver
import androidx.lifecycle.Lifecycle
import androidx.lifecycle.LifecycleOwner
import com.mapbox.maps.*
import com.mapbox.maps.plugin.Plugin
import io.flutter.plugin.common.BinaryMessenger
import io.flutter.plugin.common.StandardMessageCodec
import io.flutter.plugin.platform.PlatformView
import io.flutter.plugin.platform.PlatformViewFactory
import com.mapbox.bindgen.Value
import com.mapbox.common.TileDataDomain
import com.mapbox.common.TileStore
import com.mapbox.common.TileStoreOptions
import com.mapbox.maps.ResourceOptions
import com.mapbox.maps.TileStoreUsageMode

class MapViewWrapper(
    context: Context, accessToken: String
) : DefaultLifecycleObserver {
    val mapView: MapView

    init {
        mapView = MapView(
            context, mapInitOptions = MapInitOptions(
                context,
                resourceOptions = ResourceOptions.Builder().accessToken(accessToken)
                    .tileStore(TileStore.create().also {
                        it.setOption(
                            TileStoreOptions.MAPBOX_ACCESS_TOKEN,
                            TileDataDomain.MAPS,
                            Value(accessToken),
                        )
                    }).tileStoreUsageMode(TileStoreUsageMode.READ_AND_UPDATE).build(),
                plugins = listOf(
                    Plugin.Mapbox(Plugin.MAPBOX_CAMERA_PLUGIN_ID),
                    Plugin.Mapbox(Plugin.MAPBOX_GESTURES_PLUGIN_ID),
                )
            )
        )
    }

    // We need to manually implement lifecycle, since FlutterActivity is not really an appcompat
    // activity and the default MapBox lifecycle plugin won't be able to register itself

    @SuppressLint("Lifecycle")
    fun dispose() {
        mapView.onDestroy()
    }

    @SuppressLint("Lifecycle")
    override fun onStart(owner: LifecycleOwner) {
        mapView.onStart()
    }

    @SuppressLint("Lifecycle")
    override fun onStop(owner: LifecycleOwner) {
        mapView.onStop()
    }

    @SuppressLint("Lifecycle")
    override fun onDestroy(owner: LifecycleOwner) {
        mapView.onDestroy()
    }
}

class NativeMapView(
    context: Context, accessToken: String, private val lifecycle: Lifecycle
) : PlatformView {
    private var mapViewWrapper: MapViewWrapper?

    init {
        mapViewWrapper = MapViewWrapper(
            context, accessToken
        )
        lifecycle.addObserver(mapViewWrapper!!)
    }

    override fun getView(): View {
        return mapViewWrapper!!.mapView
    }

    override fun dispose() {
        lifecycle.removeObserver(mapViewWrapper!!)
        mapViewWrapper!!.dispose()

        mapViewWrapper = null
    }

    class Factory(private val lifecycle: Lifecycle) :
        PlatformViewFactory(StandardMessageCodec.INSTANCE) {
        override fun create(context: Context?, viewId: Int, args: Any?): PlatformView {
            val accessToken = args as String
            return NativeMapView(context!!, accessToken, lifecycle)
        }
    }
}

Logs
Not sure if any of it is relevant, but including it anyway. Logs shown after minimalizing:
I/ViewRootImpl@a2a9bc0[MainActivity](31637): MSG_WINDOW_FOCUS_CHANGED 0 1
I/SurfaceControl(31637): nativeRelease nativeObject s[-5476376650336744048]
I/SurfaceControl(31637): nativeRelease nativeObject e[-5476376650336744048]
I/SurfaceControl(31637): nativeRelease nativeObject s[-5476376650336756816]
I/SurfaceControl(31637): nativeRelease nativeObject e[-5476376650336756816]
I/SurfaceControl(31637): nativeRelease nativeObject s[-5476376650336803632]
I/SurfaceControl(31637): nativeRelease nativeObject e[-5476376650336803632]
D/InputTransport(31637): Input channel destroyed: 'ClientS', fd=141
I/SurfaceControl(31637): nativeRelease nativeObject s[-5476376650336802624]
I/SurfaceControl(31637): nativeRelease nativeObject e[-5476376650336802624]
I/SurfaceView(31637): onWindowVisibilityChanged(8) false io.flutter.embedding.android.FlutterSurfaceView{5bb523 V.E...... ........ 0,0-1920,1128} of ViewRootImpl@a2a9bc0[MainActivity]
I/SurfaceView(31637): surfaceDestroyed callback.size 1 #2 io.flutter.embedding.android.FlutterSurfaceView{5bb523 V.E...... ........ 0,0-1920,1128}
I/SurfaceView(31637): updateSurface: visible = false mSurface.isValid() = true
I/SurfaceView(31637): updateSurface: releaseSurfaces() #2
I/SurfaceView(31637): releaseSurfaces: set mRtReleaseSurfaces = true
I/SurfaceView(31637): onWindowVisibilityChanged(8) false android.view.SurfaceView{d850bbf V.E...... ........ 0,0-1920,450} of ViewRootImpl@a2a9bc0[MainActivity]
I/SurfaceView(31637): surfaceDestroyed callback.size 1 #2 android.view.SurfaceView{d850bbf V.E...... ........ 0,0-1920,450}
I/Mapbox  (31637): [maps-android\Mbgl-RenderThread]: RenderThread : surface destroyed
I/SurfaceView(31637): updateSurface: visible = false mSurface.isValid() = true
I/SurfaceView(31637): updateSurface: releaseSurfaces() #2
I/SurfaceView(31637): remove() android.view.SurfaceView{d850bbf V.E...... ........ 0,0-1920,450} Surface(name=SurfaceView - com.example.mapbox_demo/com.example.mapbox_demo.MainActivity@d850bbf@2)/@0x5fbff73
I/SurfaceControl(31637): nativeRelease nativeObject s[-5476376650336760176]
I/SurfaceControl(31637): nativeRelease nativeObject e[-5476376650336760176]
I/SurfaceControl(31637): nativeRelease nativeObject s[-5476376650336777312]
I/SurfaceControl(31637): nativeRelease nativeObject e[-5476376650336777312]
I/SurfaceView(31637): 118222028 wPL, frameNr = 0
I/SurfaceView(31637): remove() from RT android.view.SurfaceView$3@70beccc Surface(name=SurfaceView - com.example.mapbox_demo/com.example.mapbox_demo.MainActivity@5bb523@2)/@0x7cffe2
I/SurfaceControl(31637): nativeRelease nativeObject s[-5476376650336751440]
I/SurfaceControl(31637): nativeRelease nativeObject e[-5476376650336751440]
I/SurfaceControl(31637): nativeRelease nativeObject s[-5476376650336764880]
I/SurfaceControl(31637): nativeRelease nativeObject e[-5476376650336764880]
I/SurfaceControl(31637): nativeRelease nativeObject s[-5476376650336758384]
I/SurfaceControl(31637): nativeRelease nativeObject e[-5476376650336758384]
I/SurfaceControl(31637): assignNativeObject: nativeObject = 0 Surface(name=null)/@0x54aee2a / android.view.SurfaceControl.readFromParcel:1117 android.view.IWindowSession$Stub$Proxy.relayout:1826 android.view.ViewRootImpl.relayoutWindow:9132 android.view.ViewRootImpl.performTraversals:3422 android.view.ViewRootImpl.doTraversal:2671 android.view.ViewRootImpl$TraversalRunnable.run:10094 android.view.Choreographer$CallbackRecord.run:1010 android.view.Choreographer.doCallbacks:809 android.view.Choreographer.doFrame:744 android.view.Choreographer$FrameDisplayEventReceiver.run:995
I/SurfaceControl(31637): assignNativeObject: nativeObject = 0 Surface(name=null)/@0x44efa20 / android.view.SurfaceControl.readFromParcel:1117 android.view.IWindowSession$Stub$Proxy.relayout:1836 android.view.ViewRootImpl.relayoutWindow:9132 android.view.ViewRootImpl.performTraversals:3422 android.view.ViewRootImpl.doTraversal:2671 android.view.ViewRootImpl$TraversalRunnable.run:10094 android.view.Choreographer$CallbackRecord.run:1010 android.view.Choreographer.doCallbacks:809 android.view.Choreographer.doFrame:744 android.view.Choreographer$FrameDisplayEventReceiver.run:995
I/SurfaceControl(31637): nativeRelease nativeObject s[-5476376650336786496]
I/SurfaceControl(31637): nativeRelease nativeObject e[-5476376650336786496]
I/ViewRootImpl@a2a9bc0[MainActivity](31637): Relayout returned: old=(0,0,1920,1200) new=(0,0,1920,1200) req=(1920,1200)8 dur=8 res=0x5 s={false 0} ch=true fn=13
I/SurfaceView(31637): windowStopped(true) false io.flutter.embedding.android.FlutterSurfaceView{5bb523 V.E...... ........ 0,0-1920,1128} of ViewRootImpl@a2a9bc0[MainActivity]
I/SurfaceView(31637): updateSurface: releaseSurfaces() #1
I/SurfaceView(31637): windowStopped(true) false android.view.SurfaceView{d850bbf V.E...... ........ 0,0-1920,450} of ViewRootImpl@a2a9bc0[MainActivity]
3
I/SurfaceView(31637): updateSurface: releaseSurfaces() #1
I/ViewRootImpl@a2a9bc0[MainActivity](31637): stopped(true) old=false
2
I/SurfaceView(31637): updateSurface: releaseSurfaces() #1

Logs after resuming:
I/SurfaceView(31637): onWindowVisibilityChanged(4) false io.flutter.embedding.android.FlutterSurfaceView{5bb523 V.E...... ........ 0,0-1920,1128} of ViewRootImpl@a2a9bc0[MainActivity]
I/SurfaceView(31637): updateSurface: releaseSurfaces() #1
I/SurfaceView(31637): onWindowVisibilityChanged(4) false android.view.SurfaceView{d850bbf V.E...... ........ 0,0-1920,450} of ViewRootImpl@a2a9bc0[MainActivity]
I/SurfaceView(31637): updateSurface: releaseSurfaces() #1
I/SurfaceControl(31637): assignNativeObject: nativeObject = 0 Surface(name=null)/@0x54aee2a / android.view.SurfaceControl.readFromParcel:1117 android.view.IWindowSession$Stub$Proxy.relayout:1826 android.view.ViewRootImpl.relayoutWindow:9132 android.view.ViewRootImpl.performTraversals:3422 android.view.ViewRootImpl.doTraversal:2671 android.view.ViewRootImpl$TraversalRunnable.run:10094 android.view.Choreographer$CallbackRecord.run:1010 android.view.Choreographer.doCallbacks:809 android.view.Choreographer.doFrame:744 android.view.Choreographer$FrameDisplayEventReceiver.run:995
I/SurfaceControl(31637): assignNativeObject: nativeObject = 0 Surface(name=null)/@0x44efa20 / android.view.SurfaceControl.readFromParcel:1117 android.view.IWindowSession$Stub$Proxy.relayout:1836 android.view.ViewRootImpl.relayoutWindow:9132 android.view.ViewRootImpl.performTraversals:3422 android.view.ViewRootImpl.doTraversal:2671 android.view.ViewRootImpl$TraversalRunnable.run:10094 android.view.Choreographer$CallbackRecord.run:1010 android.view.Choreographer.doCallbacks:809 android.view.Choreographer.doFrame:744 android.view.Choreographer$FrameDisplayEventReceiver.run:995
I/ViewRootImpl@a2a9bc0[MainActivity](31637): Relayout returned: old=(0,0,1920,1200) new=(0,0,1920,1200) req=(1920,1200)4 dur=22 res=0x1 s={false 0} ch=false fn=-1
2
I/SurfaceView(31637): updateSurface: releaseSurfaces() #1
I/ViewRootImpl@a2a9bc0[MainActivity](31637): stopped(false) old=true
I/ViewRootImpl@a2a9bc0[MainActivity](31637): stopped(false) old=false
I/SurfaceView(31637): onWindowVisibilityChanged(0) false io.flutter.embedding.android.FlutterSurfaceView{5bb523 V.E...... ........ 0,0-1920,1128} of ViewRootImpl@a2a9bc0[MainActivity]
I/SurfaceView(31637): updateSurface: releaseSurfaces() #1
I/SurfaceView(31637): onWindowVisibilityChanged(0) false android.view.SurfaceView{d850bbf V.E...... ........ 0,0-1920,450} of ViewRootImpl@a2a9bc0[MainActivity]
I/SurfaceView(31637): updateSurface: releaseSurfaces() #1
I/SurfaceControl(31637): assignNativeObject: nativeObject = 0 Surface(name=null)/@0x44efa20 / android.view.SurfaceControl.readFromParcel:1117 android.view.IWindowSession$Stub$Proxy.relayout:1836 android.view.ViewRootImpl.relayoutWindow:9132 android.view.ViewRootImpl.performTraversals:3422 android.view.ViewRootImpl.doTraversal:2671 android.view.ViewRootImpl$TraversalRunnable.run:10094 android.view.Choreographer$CallbackRecord.run:1010 android.view.Choreographer.doCallbacks:809 android.view.Choreographer.doFrame:744 android.view.Choreographer$FrameDisplayEventReceiver.run:995
I/ViewRootImpl@a2a9bc0[MainActivity](31637): Relayout returned: old=(0,0,1920,1200) new=(0,0,1920,1200) req=(1920,1200)0 dur=13 res=0x7 s={true -5476376645503279600} ch=true fn=-1
I/SurfaceView(31637): windowStopped(false) true io.flutter.embedding.android.FlutterSurfaceView{5bb523 V.E...... ........ 0,0-1920,1128} of ViewRootImpl@a2a9bc0[MainActivity]
I/SurfaceView(31637): updateSurface: visible = true mSurface.isValid() = true
I/SurfaceView(31637): updateSurface: mSurfaceCreated = false surfaceChanged = true visibleChanged = true
I/SurfaceView(31637): surfaceCreated 1 #1 io.flutter.embedding.android.FlutterSurfaceView{5bb523 V.E...... ........ 0,0-1920,1128}
I/SurfaceView(31637): surfaceChanged (1920,1128) 1 #1 io.flutter.embedding.android.FlutterSurfaceView{5bb523 V.E...... ........ 0,0-1920,1128}
I/ViewRootImpl@a2a9bc0[MainActivity](31637): [DP] dp(1) 1 android.view.SurfaceView.updateSurface:1379 android.view.SurfaceView.setWindowStopped:354 android.view.SurfaceView.surfaceCreated:1905
I/ViewRootImpl@a2a9bc0[MainActivity](31637): [DP] pdf(0) 1 android.view.SurfaceView.notifyDrawFinished:600 android.view.SurfaceView.performDrawFinished:587 android.view.SurfaceView.lambda$TWz4D2u33ZlAmRtgKzbqqDue3iM:0
I/ViewRootImpl@a2a9bc0[MainActivity](31637): [DP] rdf()
I/SurfaceView(31637): windowStopped(false) true android.view.SurfaceView{d850bbf V.E...... ........ 0,0-1920,450} of ViewRootImpl@a2a9bc0[MainActivity]
I/SurfaceView(31637): updateSurface: visible = true mSurface.isValid() = true
I/SurfaceView(31637): updateSurface: mSurfaceCreated = false surfaceChanged = true visibleChanged = true
I/SurfaceView(31637): surfaceCreated 1 #1 android.view.SurfaceView{d850bbf V.E...... ........ 0,0-1920,450}
I/SurfaceView(31637): surfaceChanged (1920,450) 1 #1 android.view.SurfaceView{d850bbf V.E...... ........ 0,0-1920,450}
I/ViewRootImpl@a2a9bc0[MainActivity](31637): [DP] dp(1) 1 android.view.SurfaceView.updateSurface:1379 android.view.SurfaceView.setWindowStopped:354 android.view.SurfaceView.surfaceCreated:1905
I/ViewRootImpl@a2a9bc0[MainActivity](31637): [DP] pdf(0) 1 android.view.SurfaceView.notifyDrawFinished:600 android.view.SurfaceView.performDrawFinished:587 android.view.SurfaceView.lambda$TWz4D2u33ZlAmRtgKzbqqDue3iM:0
I/ViewRootImpl@a2a9bc0[MainActivity](31637): [DP] rdf()
I/ViewRootImpl@a2a9bc0[MainActivity](31637): updateBoundsLayer: shouldReparent = true t = android.view.SurfaceControl$Transaction@17f1882 sc = Surface(name=Bounds for - com.example.mapbox_demo/com.example.mapbox_demo.MainActivity@3)/@0xab739c7 frame = 1
I/ViewRootImpl@a2a9bc0[MainActivity](31637): [DP] dp(1) 1 android.view.ViewRootImpl.reportNextDraw:11080 android.view.ViewRootImpl.performTraversals:3917 android.view.ViewRootImpl.doTraversal:2671
I/ViewRootImpl@a2a9bc0[MainActivity](31637): [DP] pd() Asnyc report
I/ViewRootImpl@a2a9bc0[MainActivity](31637): mAttachInfo.mThreadedRenderer.draw, mView = DecorView@b62ee54[MainActivity] w = 1920 h = 1200
I/SurfaceView(31637): applySurfaceTransforms: t = android.view.SurfaceControl$Transaction@428e8f4 surfaceControl = Surface(name=SurfaceView - com.example.mapbox_demo/com.example.mapbox_demo.MainActivity@5bb523@3)/@0xa886bf4 frame = 1
I/ViewRootImpl@a2a9bc0[MainActivity](31637): [DP] pdf(0) 1 android.view.ViewRootImpl.lambda$performDraw$1$ViewRootImpl:4745 android.view.-$$Lambda$ViewRootImpl$DJd0VUYJgsebcnSohO6h8zc_ONI.run:6 android.os.Handler.handleCallback:938
I/ViewRootImpl@a2a9bc0[MainActivity](31637): [DP] rdf()
I/ViewRootImpl@a2a9bc0[MainActivity](31637): MSG_WINDOW_FOCUS_CHANGED 1 1
D/InputMethodManager(31637): prepareNavigationBarInfo() DecorView@b62ee54[MainActivity]
D/InputMethodManager(31637): getNavigationBarColor() -855310
D/InputMethodManager(31637): prepareNavigationBarInfo() DecorView@b62ee54[MainActivity]
D/InputMethodManager(31637): getNavigationBarColor() -855310
V/InputMethodManager(31637): Starting input: tba=com.example.mapbox_demo ic=null mNaviBarColor -855310 mIsGetNaviBarColorSuccess true , NavVisible : true , NavTrans : false
D/InputMethodManager(31637): startInputInner - Id : 0
I/InputMethodManager(31637): startInputInner - mService.startInputOrWindowGainedFocus
D/InputTransport(31637): Input channel constructed: 'ClientS', fd=135
I/SurfaceControl(31637): nativeRelease nativeObject s[-5476376650336752448]
I/SurfaceControl(31637): nativeRelease nativeObject e[-5476376650336752448]
I/SurfaceControl(31637): nativeRelease nativeObject s[-5476376650336763536]
I/SurfaceControl(31637): nativeRelease nativeObject e[-5476376650336763536]

Flutter doctor:
[✓] Flutter (Channel stable, 3.3.4, on Arch Linux 6.0.1-arch2-1, locale en_US.UTF-8)
    • Flutter version 3.3.4 on channel stable at /home/shilangyu/fvm/versions/3.3.4
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision eb6d86ee27 (13 days ago), 2022-10-04 22:31:45 -0700
    • Engine revision c08d7d5efc
    • Dart version 2.18.2
    • DevTools version 2.15.0

[✓] Android toolchain - develop for Android devices (Android SDK version 33.0.0-rc4)
    • Android SDK at /home/shilangyu/Android/Sdk
    • Platform android-33, build-tools 33.0.0-rc4
    • Java binary at: /opt/android-studio/jre/bin/java
    • Java version OpenJDK Runtime Environment (build 11.0.13+0-b1751.21-8125866)
    • All Android licenses accepted.

[✗] Chrome - develop for the web (Cannot find Chrome executable at google-chrome)
    ! Cannot find Chrome. Try setting CHROME_EXECUTABLE to a Chrome executable.

[✓] Linux toolchain - develop for Linux desktop
    • clang version 14.0.6
    • cmake version 3.24.2
    • ninja version 1.11.1
    • pkg-config version 1.8.0

[✓] Android Studio (version 2021.3)
    • Android Studio at /opt/android-studio
    • Flutter plugin version 70.2.3
    • Dart plugin version 213.7433
    • Java version OpenJDK Runtime Environment (build 11.0.13+0-b1751.21-8125866)

[✓] Connected device (2 available)
    • SM X205 (mobile) • R9JRC07C1HK • android-arm64 • Android 11 (API 30)
    • Linux (desktop)  • linux       • linux-x64     • Arch Linux 6.0.1-arch2-1

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

! Doctor found issues in 1 category.

Problem analysis
First note this is not related to the recent android platform views changes https://github.com/flutter/flutter/issues/103630. This has been occurring before flutter 3 as well. I presume the problem is related to MapBox being rendered on a EGL surface, because I could not reproduce this issue using standard android widgets (such as a simple TextView). This problem exhibits itself in two ways, sometimes the platform view returns after onResume, but on some devices users have reported that the map just stays on top of the screen without even minimizing the map (below I attached a video showcasing this issue).
Additionally, note that this is not a problem if we first minimalize/resume the app, and then navigate to a new screen. In such a case the map is not drawn over everything (except the case where people have reported that it stays on top always).
Video example
Device: Samsung Galaxy Tab A (2016) Model number: SM-T585
https://user-images.githubusercontent.com/29288116/196410533-2335bc53-5323-44c0-b919-d16913f07ff7.mp4
Video description: the app is opened and the map can be seen. User presses a button to navigate to a new screen (Navigator.of(context).push of a full screen Scaffold). The map is still visible and is drawn over other flutter content.

Hello @shilangyu. Is this issue reproducible with some first party plugins? Like google_maps_flutter or webview_flutter?

This is not reproducible with webview_flutter nor with google_maps_flutter (I tried both hybrid composition and virtual display).

Hello @shilangyu. I am getting the following error when trying to run the app on an Android 13 emulator.

Error Logs
* What went wrong:
Execution failed for task ':app:checkDebugAarMetadata'.
> Could not resolve all files for configuration ':app:debugRuntimeClasspath'.
   > Could not resolve com.mapbox.maps:android:10.8.0.
     Required by:
         project :app
      > Could not resolve com.mapbox.maps:android:10.8.0.
         > Could not get resource 'https://api.mapbox.com/downloads/v2/releases/maven/com/mapbox/maps/android/10.8.0/android-10.8.0.pom'.
            > Could not GET 'https://api.mapbox.com/downloads/v2/releases/maven/com/mapbox/maps/android/10.8.0/android-10.8.0.pom'. Received status code 401 from server: Unauthorized

* Try:
> Run with --stacktrace option to get the stack trace.
> Run with --info or --debug option to get more log output.
> Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 1m 9s
Running Gradle task 'assembleDebug'...                             70.3s
[!] Gradle threw an error while downloading artifacts from the network.
Retrying Gradle Build: #1, wait time: 100ms
Running Gradle task 'assembleDebug'...

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:checkDebugAarMetadata'.
> Could not resolve all files for configuration ':app:debugRuntimeClasspath'.
   > Could not resolve com.mapbox.maps:android:10.8.0.
     Required by:
         project :app
      > Could not resolve com.mapbox.maps:android:10.8.0.
         > Could not get resource 'https://api.mapbox.com/downloads/v2/releases/maven/com/mapbox/maps/android/10.8.0/android-10.8.0.pom'.
            > Could not GET 'https://api.mapbox.com/downloads/v2/releases/maven/com/mapbox/maps/android/10.8.0/android-10.8.0.pom'. Received status code 401 from server: Unauthorized

* Try:
> Run with --stacktrace option to get the stack trace.
> Run with --info or --debug option to get more log output.
> Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 6s
Running Gradle task 'assembleDebug'...                              7.4s
[!] Gradle threw an error while downloading artifacts from the network.
Retrying Gradle Build: #2, wait time: 200ms
Running Gradle task 'assembleDebug'...

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:checkDebugAarMetadata'.
> Could not resolve all files for configuration ':app:debugRuntimeClasspath'.
   > Could not resolve com.mapbox.maps:android:10.8.0.
     Required by:
         project :app
      > Could not resolve com.mapbox.maps:android:10.8.0.
         > Could not get resource 'https://api.mapbox.com/downloads/v2/releases/maven/com/mapbox/maps/android/10.8.0/android-10.8.0.pom'.
            > Could not GET 'https://api.mapbox.com/downloads/v2/releases/maven/com/mapbox/maps/android/10.8.0/android-10.8.0.pom'. Received status code 401 from server: Unauthorized

* Try:
> Run with --stacktrace option to get the stack trace.
> Run with --info or --debug option to get more log output.
> Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 5s
Running Gradle task 'assembleDebug'...                              5.8s
[!] Gradle threw an error while downloading artifacts from the network.
Retrying Gradle Build: #3, wait time: 400ms
Running Gradle task 'assembleDebug'...

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:checkDebugAarMetadata'.
> Could not resolve all files for configuration ':app:debugRuntimeClasspath'.
   > Could not resolve com.mapbox.maps:android:10.8.0.
     Required by:
         project :app
      > Could not resolve com.mapbox.maps:android:10.8.0.
         > Could not get resource 'https://api.mapbox.com/downloads/v2/releases/maven/com/mapbox/maps/android/10.8.0/android-10.8.0.pom'.
            > Could not GET 'https://api.mapbox.com/downloads/v2/releases/maven/com/mapbox/maps/android/10.8.0/android-10.8.0.pom'. Received status code 401 from server: Unauthorized

* Try:
> Run with --stacktrace option to get the stack trace.
> Run with --info or --debug option to get more log output.
> Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 3s
Running Gradle task 'assembleDebug'...                              4.6s
[!] Gradle threw an error while downloading artifacts from the network.
Retrying Gradle Build: #4, wait time: 800ms
Running Gradle task 'assembleDebug'...

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:checkDebugAarMetadata'.
> Could not resolve all files for configuration ':app:debugRuntimeClasspath'.
   > Could not resolve com.mapbox.maps:android:10.8.0.
     Required by:
         project :app
      > Could not resolve com.mapbox.maps:android:10.8.0.
         > Could not get resource 'https://api.mapbox.com/downloads/v2/releases/maven/com/mapbox/maps/android/10.8.0/android-10.8.0.pom'.
            > Could not GET 'https://api.mapbox.com/downloads/v2/releases/maven/com/mapbox/maps/android/10.8.0/android-10.8.0.pom'. Received status code 401 from server: Unauthorized

* Try:
> Run with --stacktrace option to get the stack trace.
> Run with --info or --debug option to get more log output.
> Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 4s
Running Gradle task 'assembleDebug'...                              4.7s
[!] Gradle threw an error while downloading artifacts from the network.
Retrying Gradle Build: #5, wait time: 1600ms
Running Gradle task 'assembleDebug'...

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:checkDebugAarMetadata'.
> Could not resolve all files for configuration ':app:debugRuntimeClasspath'.
   > Could not resolve com.mapbox.maps:android:10.8.0.
     Required by:
         project :app
      > Could not resolve com.mapbox.maps:android:10.8.0.
         > Could not get resource 'https://api.mapbox.com/downloads/v2/releases/maven/com/mapbox/maps/android/10.8.0/android-10.8.0.pom'.
            > Could not GET 'https://api.mapbox.com/downloads/v2/releases/maven/com/mapbox/maps/android/10.8.0/android-10.8.0.pom'. Received status code 401 from server: Unauthorized

* Try:
> Run with --stacktrace option to get the stack trace.
> Run with --info or --debug option to get more log output.
> Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 3s
Running Gradle task 'assembleDebug'...                              4.6s
[!] Gradle threw an error while downloading artifacts from the network.
Retrying Gradle Build: #6, wait time: 3200ms
Running Gradle task 'assembleDebug'...

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:checkDebugAarMetadata'.
> Could not resolve all files for configuration ':app:debugRuntimeClasspath'.
   > Could not resolve com.mapbox.maps:android:10.8.0.
     Required by:
         project :app
      > Could not resolve com.mapbox.maps:android:10.8.0.
         > Could not get resource 'https://api.mapbox.com/downloads/v2/releases/maven/com/mapbox/maps/android/10.8.0/android-10.8.0.pom'.
            > Could not GET 'https://api.mapbox.com/downloads/v2/releases/maven/com/mapbox/maps/android/10.8.0/android-10.8.0.pom'. Received status code 401 from server: Unauthorized

* Try:
> Run with --stacktrace option to get the stack trace.
> Run with --info or --debug option to get more log output.
> Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 3s
Running Gradle task 'assembleDebug'...                              4.5s
[!] Gradle threw an error while downloading artifacts from the network.
Retrying Gradle Build: #7, wait time: 6400ms
Running Gradle task 'assembleDebug'...

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:checkDebugAarMetadata'.
> Could not resolve all files for configuration ':app:debugRuntimeClasspath'.
   > Could not resolve com.mapbox.maps:android:10.8.0.
     Required by:
         project :app
      > Could not resolve com.mapbox.maps:android:10.8.0.
         > Could not get resource 'https://api.mapbox.com/downloads/v2/releases/maven/com/mapbox/maps/android/10.8.0/android-10.8.0.pom'.
            > Could not GET 'https://api.mapbox.com/downloads/v2/releases/maven/com/mapbox/maps/android/10.8.0/android-10.8.0.pom'. Received status code 401 from server: Unauthorized

* Try:
> Run with --stacktrace option to get the stack trace.
> Run with --info or --debug option to get more log output.
> Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 5s
Running Gradle task 'assembleDebug'...                              6.0s
[!] Gradle threw an error while downloading artifacts from the network.
Retrying Gradle Build: #8, wait time: 12800ms
Running Gradle task 'assembleDebug'...

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:checkDebugAarMetadata'.
> Could not resolve all files for configuration ':app:debugRuntimeClasspath'.
   > Could not resolve com.mapbox.maps:android:10.8.0.
     Required by:
         project :app
      > Could not resolve com.mapbox.maps:android:10.8.0.
         > Could not get resource 'https://api.mapbox.com/downloads/v2/releases/maven/com/mapbox/maps/android/10.8.0/android-10.8.0.pom'.
            > Could not GET 'https://api.mapbox.com/downloads/v2/releases/maven/com/mapbox/maps/android/10.8.0/android-10.8.0.pom'. Received status code 401 from server: Unauthorized

* Try:
> Run with --stacktrace option to get the stack trace.
> Run with --info or --debug option to get more log output.
> Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 3s
Running Gradle task 'assembleDebug'...                              4.5s
[!] Gradle threw an error while downloading artifacts from the network.
Retrying Gradle Build: #9, wait time: 25600ms
Running Gradle task 'assembleDebug'...

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:checkDebugAarMetadata'.
> Could not resolve all files for configuration ':app:debugRuntimeClasspath'.
   > Could not resolve com.mapbox.maps:android:10.8.0.
     Required by:
         project :app
      > Could not resolve com.mapbox.maps:android:10.8.0.
         > Could not get resource 'https://api.mapbox.com/downloads/v2/releases/maven/com/mapbox/maps/android/10.8.0/android-10.8.0.pom'.
            > Could not GET 'https://api.mapbox.com/downloads/v2/releases/maven/com/mapbox/maps/android/10.8.0/android-10.8.0.pom'. Received status code 401 from server: Unauthorized

* Try:
> Run with --stacktrace option to get the stack trace.
> Run with --info or --debug option to get more log output.
> Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 3s
Running Gradle task 'assembleDebug'...                              4.3s
[!] Gradle threw an error while downloading artifacts from the network.
Retrying Gradle Build: #10, wait time: 51200ms

I am not familiar with Mapbox. Could you help me solve this issue so that I can verify the issue?

I have pushed a new commit with added tokens, please try now.

Hello @shilangyu. I cannot reproduce this on Android 33, using the latest stable 3.3.5 and your updated code. See the screen shot below. Tested on an emulator.

Hi @exaby73 I am able to reproduce this no problem on Android 33 using stable 3.3.5, see screenshot below. Did you minimalize the app and then resume it?

Hello @shilangyu. This issue looks like a duplicate of https://github.com/flutter/flutter/issues/89558. Therefore, I am closing this one in favor of https://github.com/flutter/flutter/issues/89558. Please follow up on that original issue.
If you disagree with my decision, please comment with your reasoning and I can reopen the issue. Thank you.


Separate random generation from transforms

This PR factors out the random number generation from the transforms. This way, the same random transform can be applied to different inputs (from eventually different domains).
In the dataset, if the user wants to support the same random transforms applied to different input, a set of generators should be passed in the constructor of the dataset.
class MySegmentationDataset(torch.utils.data.Dataset):
    def __init__(self, transforms=None, target_transforms=None, generators=None):
        self.transforms = transforms
        self.target_transforms = target_transforms
        self.generators = generators

    def __getitem__(self, idx):
      # load img and target
      ...
      # generate random numbers, if generator is provided
      if self.generators is not None:
            for g in self.generators:
                g.generate()

        if self.transforms is not None:
            img = self.transforms(img)

        if self.target_transforms is not None:
            target = self.transforms(target)

        return img, target

An example of how it should be used is presented as follows:
# create random generators
crop_generator = torchvision.transforms.RandomCropGenerator()
flip_generator = torchvision.transforms.RandomFlipGenerator()

generators = (crop_generator, flip_generator)

# random transforms that consumes the generators
crop = RandomCrop(img_size, generator=crop_generator)
flip = RandomHorizontalFlip(generator=flip_generator)

# composed transforms that reuses crop and flip
train_input_transform = torchvision.transforms.Compose([
    crop,
    flip,
    torchvision.transforms.ToTensor(),
    normalize,
])
train_target_transform = torchvision.transforms.Compose([
    crop,
    flip,
    torchvision.transforms.ToTensor(),
    torchvision.transforms.Lambda(lambd=lambda x: x.long())
])

# create dataset, but need to pass the generators as well
mydataset = MySegmentationDataset(train_input_transform,
                    train_target_transform,
                    generators)

img, target = mydataset[0]

A few points worth noting:

I'm not sure how the random state generator behaves on a multi-threaded setup (@colesbury ?)
For more complex transforms such as RandomSizedCrop, the size of the image is required for the generator. We can add an extra *args, **kwargs in the call to each generate method. I'll add that if you agree with that.
We need to pass an extra set of generators to the constructor of the dataset, and call generate at each __getitem__, which might not be ideal.

cc @bodokaiser @ellisbrown @desimone @felixgwu

👍
I believe this will not work with num_workers > 1 in DataLoader. Here we see that the loader passes the same dataset instance to all workers so different workers will access same dataset.generators. I guess the best would be to create copies in DataLoader so that every worker has its own dataset instance however this may be a problem with datasets which do a lot of caching for example. So maybe it would be better to create generators on every call to __getitem__ or pass some seed directly to the transform call?

@fmassa can this be closed in favor of #240?


Comparing of Images or Icons

From<EMAIL_ADDRESS>on March 06, 2013 22:33:49
What steps will reproduce the problem? 1.I should be able to compare two images or icons
2.Currently not happening What is the expected output? What do you see instead? Not Available What version of the product are you using? On what operating system? Win 7 Please provide any additional information below.
Original issue: http://code.google.com/p/robotium/issues/detail?id=406

From<EMAIL_ADDRESS>on March 06, 2013 23:35:51
Functionality like this might exist in other tools. This is not something we plan to include into Robotium.
Status: WontFix
Owner<EMAIL_ADDRESS>

From<EMAIL_ADDRESS>on March 12, 2013 21:42:11
Then is there any way to read a Icon and click on that particular icon irrespective of where it is present ...

From<EMAIL_ADDRESS>on April 07, 2014 05:44:41
Then any work around if i want to compare two images ?

From<EMAIL_ADDRESS>on April 07, 2014 05:45:36
No workaround with Robotium.

From<EMAIL_ADDRESS>on April 07, 2014 05:48:19
How can then its possible to automate whole UI via this tool?

From<EMAIL_ADDRESS>on April 07, 2014 05:49:20
Its done on the View object level. Has nothing to do with images and icons.


Add configmap

Signed-off-by: Faizan Ahmad
username: faizanahmad055
email<EMAIL_ADDRESS>What this PR does / why we need it:
Configmaps chart is used in conjunction with other charts. It can come in handy when a public chart does not provide support for the additional configmaps. In that scenario, this chart can be used to deploy additional configmaps.
Checklist
[Place an '[x]' (no spaces) in all applicable fields. Please remove unrelated fields.]

[x] DCO signed
[x] Chart Version bumped
[x] Variables are documented in the README.md

Hi @seanknox and @mgoodness
Can you guys please take a look

I can’t move the pull request along @faizanahmad055. Like you, I am a member of the community. I’m not an approver.

Hi @foxish and @mgoodness
Ping

Hi @foxish and @mgoodness
Ping

Hi @seanknox and @mgoodness
Can you guys take a look? All requested changes have been implemented. If there are any more; please do let me know.

Hi @seanknox and @mgoodness
Ping


Update for GHC 8.4.1/base-4.11

What it says on the tin. Also it looks like the 8.2.2/<IP_ADDRESS> update wasn't pushed to GitHub.

base-<IP_ADDRESS> pushed as 8be3d364afea1586e54aa9f5ed0c769047d69a8f
For base-4.11 I need to check whether I can get away w/ using cabal-version:2.0 (cause base-4.11 requires a Cabal 2.2 spec version; and I can't upload those yet to hackage before a redeployment)

Ah, so that's why base-4.11 is not on Hackage yet.

Resolved via https://hackage.haskell.org/package/base-noprelude-<IP_ADDRESS>


@BindDrawable generates deprecated code on API 22+

When on API level 22+ the code generated by @BindDrawable provokes a deprecation warning because Resource#getDrawable(int) should not be used on API 22+ anymore.

This only matters if you use theme attributes in a drawable XML.

A fix was merged.


Change some typing of function that create error with mypy

Can I merge this one @KarinDuong ?

Yes, ready to merge


Unable to focus on inputs inside modals on touch devices

There is a related issue opened against angular, but I suspect this is an issue specifically with the modals. https://github.com/angular/angular.js/issues/6432
Plnkr is here: http://embed.plnkr.co/gyNF9BhiaBuMtonPXYKS/preview
This repro requires:

Having an input inside of a UI Bootstrap modal box
Having angular-touch enabled (checked against 1.2 and 1.3)
Being on a touch device or using Chrome's touch emulation

Repro steps:
Click the button to open the modal, and then click on the text input field. On touch devices, the field will momentarily get focus and then lose it. With a normal mouse click, it's fine.

Problem is still present, why the issue is closed?

awesome fix ! I'll put a link to it for TextAngular users. Nice editor to use as a edit in place editor.

Is a fix present in angular-touch, because with 1.3 version it is not working.

In my point of view, the hack describe below is not a decent solution. We need a real fix. I will work on it.

I agree with Yappli. This needs to be fixed. It's outrageous that something as simple as a modal window doesn't work across all mobile devices and this bug has been sitting here for a year. We shouldn't have to sprinkle directives all around our code and mess around with the event model just to get a simple modal to work.

The hack suggested works only for input field.

A fix might be on the way for angular-touch :) https://github.com/angular/angular.js/pull/11212

jdhiro's fix worked for select, textarea and checkbox fields in my case.  Thank you!

this fixed the issue on android, however it didn't fix it on ios.

Is this the same problem? -
http://stackoverflow.com/questions/32367621/unable-to-display-right-tick-mark-in-checkbox-in-tablets-and-ipad
But I have already added $event.stopPropagation();
Thanks

this fix is working, although it is not best fix.
i can see the main reason of this bug is about touch and events from the fix, is it right?
thank you

thanks jdhiro, works like a charm

Thanks. Saved me a lot of time and headaches

The proposed directive from jdhiro works great for me. Thank you!

This seems resolved currently - see my comment in https://github.com/angular-ui/bootstrap/issues/4214#issuecomment-152092606, it does not display the prior behavior anymore.

If anyone is struggling with an issue where the modal loses focus when clicking inside a text input field inside the modal, I've been able to resolve it by setting:
.modal { position: absolute }

It looks like position is fixed by default and this was causing some weird behaviour for me in iOS Safari.

@marcelkalveram, I would argue that modals on a mobile device are quite poor UX.  Same with tooltips and popovers.


add newly implemented features in README Quick Start section

Still need to include the images for all the new features


Position bug fixed. Updated 2015.12.14

Many friends got the problem that datetimepicker displayed on a wrong position.
There already have  a solution that delete some lines in [datetimepicker.js] like this:
/if( !elementOrParentIsFixed(this.element) ){
top = top + document.body.scrollTop;
}/
It`s not enough that only delete those lines.
There still be some wrong offset pixels.
So i add a precise offset like this:
top = top - containerOffset.top + 169;
left = left - containerOffset.left + 210;
(The values are not absolute, you can debug in your own project.)
And now it is on the proper position.

Can you file a pull request for this as I am quite busy at the moment? Thanks a lot!

+1
cf. http://gwtbootstrap3.github.io/gwtbootstrap3-demo/snapshot/#dateTimePicker


Unbound isn't able to start.

Hello, I was trying to setup this docker, but it says unbound is always restarting, with the log error "standard_init_linux.go:211: exec user process caused "no such file or directory".

I'm sorry you're having trouble. Can you share more details about how
you're trying to run this? What commands are you using? Are you using a
docker-compose file? If so, what is it? Are you using all default configs?
On Tue, Dec 8, 2020, 10:10 AM Sauron462<EMAIL_ADDRESS>wrote:

Hello, I was trying to setup this docker, but it says unbound is always
restarting, with the log error "standard_init_linux.go:211: exec user
process caused "no such file or directory".
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/MatthewVance/stubby-docker/issues/18, or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAUMHOURBFTD5IRT4TSO7HLSTZFWTANCNFSM4USFYF6Q
.

I'm using the readme instructions to build and run the config, on another note, I don't entirely understand "point your DNS to the IP of your Docker host" however I am using default configs, aside from cleanbrowsing addresses enabled.

Does this work if you pull the Docker images rather than build them
manually?
 Instead, clone the repo. CD into
the directory and then run docker-compose up -d.
For the point to DNS, it means devices on your network will need to set
their OS DNS settings to the IP of the server running the Stubby. Its not
related to running or configuring Stubby itself.
On Tue, Dec 8, 2020, 10:24 AM Sauron462<EMAIL_ADDRESS>wrote:

I'm using the readme instructions to build and run the config, on another
note, I don't entirely understand "point your DNS to the IP of your Docker
host" however I am using default configs, aside from cleanbrowsing
addresses enabled.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/MatthewVance/stubby-docker/issues/18#issuecomment-740736313,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAUMHOSODHTIH4CCI7TOASTSTZHM7ANCNFSM4USFYF6Q
.

Yep, pulling the images worked, and I believe I already have the DNS settings set up.


tBTC Sand Dollar Animation

add animation to token sand dollar graphic.

WIP: https://assets8.lottiefiles.com/packages/lf20_U4XKB2/tbtc-sand-dollar.json

Did this belong in the dApp and do we consider it done?

This is for the giant sand dollar on the home page hero section.


Assert that non-#[entity] fields do not implement Referrer

Codecov Report

Merging #16 (ab254a1) into master (ca4202b) will decrease coverage by 83.43%.
The diff coverage is 0.00%.

@@            Coverage Diff             @@
##           master     #16       +/-   ##
==========================================
- Coverage   84.17%   0.74%   -83.44%
==========================================
  Files          45      28       -17
  Lines        3425     671     -2754
==========================================
- Hits         2883       5     -2878
- Misses        542     666      +124

Impacted Files
Coverage Δ

src/lib.rs
0.00% <ø> (-96.21%)
:arrow_down:

src/macros.rs
0.00% <ø> (-73.34%)
:arrow_down:

src/world/state.rs
0.00% <0.00%> (-75.00%)
:arrow_down:

src/global.rs
0.00% <0.00%> (-100.00%)
:arrow_down:

src/world/offline.rs
0.00% <0.00%> (-100.00%)
:arrow_down:

src/entity/rctrack.rs
0.00% <0.00%> (-100.00%)
:arrow_down:

src/entity/generation.rs
0.00% <0.00%> (-100.00%)
:arrow_down:

src/world/scheduler/state.rs
0.00% <0.00%> (-100.00%)
:arrow_down:

src/system/partition.rs
0.00% <0.00%> (-95.24%)
:arrow_down:

... and 37 more

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


Latest AMI doesn't resize root partition to match volume size

Issue description
Latest 17.09 Ami -nixos-17.09.2681.59661f21be6-x86_64-hvm-ebs (ami-40bee63a) doesn't resize root partition to match volume size.
Unsure if related to https://github.com/NixOS/nixpkgs/issues/22211
Steps to reproduce
Spin up an ec2 instance with EBS storage optimized, with a root volume of any size.
Technical details
Output of fdisk and df:

Disk /dev/nvme0n1: 100 GiB,<PHONE_NUMBER>00 bytes, 209715200 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x373af4ea

Device         Boot Start     End Sectors Size Id Type
/dev/nvme0n1p1       2048 4194303 4192256   2G 83 Linux

Filesystem               1M-blocks  Used Available Use% Mounted on
devtmpfs                       385     0       385   0% /dev
tmpfs                         3847     0      3847   0% /dev/shm
tmpfs                         1924     4      1921   1% /run
tmpfs                         3847     1      3847   1% /run/wrappers
/dev/disk/by-label/nixos      1983   765      1100  42% /
tmpfs                         3847     0      3847   0% /sys/fs/cgroup
tmpfs                          770     0       770   0% /run/user/0

Volume is 100G and I would expect the root partition to be also 100G.

Here's the output of journalctl during startup around resizing the filesystem:
Feb 02 19:21:12 localhost kernel: random: lvm: uninitialized urandom read (4 bytes read)
Feb 02 19:21:12 localhost stage-1-init: FAILED: partition-number must be a number
Feb 02 19:21:12 localhost stage-1-init: checking /dev/disk/by-label/nixos...
Feb 02 19:21:12 localhost stage-1-init: fsck (busybox 1.27.2)
Feb 02 19:21:12 localhost stage-1-init: [fsck.ext4 (1) -- /mnt-root/] fsck.ext4 -a /dev/disk/by-label/nixos
Feb 02 19:21:12 localhost stage-1-init: nixos: clean, 55628/131072 files, 209994/524032 blocks
Feb 02 19:21:12 localhost stage-1-init: resizing /dev/disk/by-label/nixos...
Feb 02 19:21:12 localhost kernel: input: AT Translated Set 2 keyboard as /devices/platform/i8042/serio0/input/input0
Feb 02 19:21:12 localhost kernel: random: fast init done
Feb 02 19:21:12 localhost stage-1-init: nixos: 55628/131072 files (0.1% non-contiguous), 209994/524032 blocks
Feb 02 19:21:12 localhost stage-1-init: resize2fs 1.43.4 (31-Jan-2017)
Feb 02 19:21:12 localhost stage-1-init: The filesystem is already 524032 (4k) blocks long.  Nothing to do!
Feb 02 19:21:12 localhost stage-1-init: mounting /dev/disk/by-label/nixos on /...
Feb 02 19:21:12 localhost kernel: EXT4-fs (nvme0n1p1): mounted filesystem with ordered data mode. Opts: (null)
Feb 02 19:21:12 localhost stage-1-init: getting EC2 instance metadata...
Feb 02 19:21:12 localhost stage-1-init: wget: server returned error: HTTP/1.1 404 Not Found
Feb 02 19:21:12 localhost stage-1-init: skipping unknown device type /dev/xvd[abcde]*
Feb 02 19:21:12 localhost kernel: EXT4-fs (nvme0n1p1): re-mounted. Opts: (null)
Feb 02 19:21:12 localhost unknown: booting system configuration /nix/store/qgnvn1gz06c7m55l2nqjq04h8ady4wxs-nixos-system-unnamed-17.09.2681.59661f21be6

Feb 02 19:21:12 localhost kernel: EXT4-fs (nvme0n1p1): mounted filesystem with ordered data mode. Opts: (null)
Feb 02 19:21:12 localhost stage-1-init: skipping unknown device type /dev/xvd[abcde]*

Perhaps to do with the new NVME devices not resizing properly?

I was able to confirm using an m4 instance works. Using an m5 appears to use nvme for ebs volumes which doesn't work.

Ah yeah, this is the issue:
https://github.com/NixOS/nixpkgs/blob/eddf30cc93e1b778b6bc10d0eb1bb175385d034f/nixos/modules/virtualisation/amazon-image.nix#L92-L96
Probably just needs to expand the pattern, or use a more robust heuristic to talk about devices.

Closing as dupe of #33417.


Graphics Controller undefined

Describe the bug
It doesnt find any graphic 'controllers' on last 2 versions, and cannot return a lot of stats that are available on the site like .temperatureGpu (everything other than whats bellow in output) on versions before 4.34.0.
code used:
const si = require('systeminformation');
si.graphics().then(data => console.log(data));
outputs per version: (versions copied from package.json
"version": "4.34.0",
{
controllers: [
{
vendor: 'Advanced Micro Devices, Inc.',
model: 'AMD Radeon RX 5700',
bus: 'PCI',
vram: 4095,
vramDynamic: true,
subDeviceId: '0B361002'
}
],
"version": "4.34.1",
{
controllers: [ undefined ],
"version": "4.34.2",
{
controllers: [ undefined ],
Environment (please complete the following information):

systeminformation package version: 4.34.0, 4.34.1, 4.34.2 (also tried 4.33, same as 4.34.0)
OS: Windows 10

Additional context
Just tried to get gpu temps but all i got was controllers[undefined], then when i went to older versions i couldnt get temperature either even tho controller was found. cpu shows temps fine
EDIT: Also noticed  vram is wrong, its supposed to be 8gb not  vram: 4095

@xddman sorry for introducing a bug here ... I already fixed it ... Version 4.34.3 just released. Can you test this?
Concerning tram value: can you post the output of the following code:
wmic path win32_VideoController get /value

As fas as I have discovered, here windows reports wrong VRAM values ... but maybe if we see here correct values in wmic my parsing is wrong.

@xddman sorry for introducing a bug here ... I already fixed it ... Version 4.34.3 just released. Can you test this?
Concerning tram value: can you post the output of the following code:
wmic path win32_VideoController get /value

As fas as I have discovered, here windows reports wrong VRAM values ... but maybe if we see here correct values in wmic my parsing is wrong.


Users router

-added endpoint to get all users
-added model functions to use in auth router
-added users seed for testing
-updated server.js to include usersRouter

Not going to delete the branch


Implemented enhancements for property display

Pull request here appears to break the build:
Failed to compile.

[eslint]
src/app/component/ButtonPopover.tsx
  Line 2:8:  'Typography' is defined but never used  @typescript-eslint/no-unused-vars
  Line 3:8:  'Button' is defined but never used      @typescript-eslint/no-unused-vars

src/app/component/HtmlRender.tsx
  Line 1:17:  'Fragment' is defined but never used  @typescript-eslint/no-unused-vars

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':ui:buildWebapp'.
> Process 'command '/home/runner/work/cas-initializr/cas-initializr/ui/.gradle/nodejs/node-v16.14.2-linux-x64/bin/npx'' finished with non-zero exit value 1


Add API documentation.

Add API documentation that documents:

[x] Module exports
[x] Session class
[ ] Channel class
[x] Adapters & Middlewares

This documentation should be Node-like and only show things such as exports, classes, methods and properties instead of being a guide on specifically how to use them. See the koajs/router package API documentation for an example on good documentation in this style.

Closing as channels are not implemented yet and documentation is up to date.


[opentelemetry-collector] update MY_POD_IP with ${env:MY_POD_IP}

close https://github.com/open-telemetry/opentelemetry-helm-charts/issues/761

@JaredTan95 this seems like a breaking change so can you pls bump the minor version of the chart and update the docs ?

this seems like a breaking change

Sorry, I don't understand why it's a breaking change. Can you tell me about it? thx~

Sorry, I don't understand why it's a breaking change. Can you tell me about it? thx~

Reading https://github.com/open-telemetry/opentelemetry-helm-charts/issues/761 seems that ${env:ENV} syntax is not supported before collector 0.71 . We may have users of this helm chart that overwrite the older version of the collector right ?
I would make it clear that it will not work in that case. wdyt ?

@Allex1 @povilasv thx, got you~

Reading https://github.com/open-telemetry/opentelemetry-helm-charts/issues/761 seems that ${env:ENV} syntax is not supported before collector 0.71 . We may have users of this helm chart that overwrite the older version of the collector right ?

0.71.0 got only a fix that is unrelated to our use cases. ${env:...} syntax has been supported for long time. I belive it was added in 2001 :) Not really sure we need the upgrade guidelines

@mx-psi thanks for the details.  @JaredTan95 sorry, but would you be willing to submit another PR touching up the UPGRADING doc saying that using chart version 0.55.1 or higher requires a collector version 0.71.0 or higher?

Oh, @mx-psi is right. I am sorry for causing the confusion!


separate to two standalone sample projects (VR and regular)

Introducing VR/XR into the public samples repositories has caused some issues. OpenXR is not supported on MacOS at all and therefore the Unity Sample repo can not be built to MacOS. Additionally, the VR sample uses the new input system provided by Unity which has caused some issues with the newest release of the SDK, 1.3. These problems do not exist with Unreal Engine currently, but when we introduce a VR Sample into the project it likely will cause the same issues.
Acceptance criteria (Unity)

[x] Create a new blank project
[x] remove unnecessary scenes from the sample project
[x] remove unnecessary packages from the sample project (XR, XR interaction etc.)
[x] remove  unnecessary folders from the sample project
[x] modify manifest.json
[x] Ensure the original sample project works

With all that said, I think it would be worth splitting this PR into two separate ones, similar to how I am doing Unreal. Where we add the blank project first to make sure everything is properly .gitignored and then in a separate branch we go and add daniels CloudXR demo to make sure that everything is working as expected.

Ok, this is done

it doesn't seem like the second gitignore is working. There are 5000+ files in the PR now when it was only 300 before

it doesn't seem like the second gitignore is working. There are 5000+ files in the PR now when it was only 300 before

ohh I committed project first and then git ignore...fixed now

Can you change the base branch you are comparing to, to feature/Split-Sample-Project. I don't think we should put this into main yet since it is completely removing the VR Sample with out replacing it in the new project. I'll approve after that.

Can you change the base branch you are comparing to, to feature/Split-Sample-Project (i already made the branch and published it for you). I don't think we should put this into main yet since it is completely removing the VR Sample with out replacing it in the new project. I'll approve after that.

Ok, done.