Using 3rd party assembly routines in Custom Methods

@frhagn - we are yet another grateful consumer of your handy package. thank you!
i was hoping to use Humanizer nuget package to do some automatic property name camelCasing... i thought it'd be simple using Humanizer; but it seems the TypeWriter template context is only aware of Microsoft, System & Typewriter namespaces.
Any help?

Not sure if this is exactly related. I'd like to be able to share code between templates. ie. I'd like to be able to write my own helper methods that are reused across templates. This could be by writing a separate assembly that is referenced or (ideally) a .cs class that has access to the Typewriter types.

Yes, that would be great!

Right now whenever I find some problem in my template I have to copy and paste the fix in dozens of files...

Same here. It would be great to be able to add our own extensions to Typewriter, so we could centralize code

Another idea would be to allow referencing/including other template files. A path relative to the current template would be fine for our use case. Allowing inclusion of templates relative to $(SolutionDir) would be ideal.

@TripleEmcoder
I'm working on that feature. Right now it works with both absolute and relative paths (relative to the current template) and I think that adding support for $(SolutionDir) or other variables wouldn't be a big deal.
There are still things to do before this can be considered a finished feature though.
Most important thing: you don't want your "partials" to be rendered by themselves, as they are meant to be included in some other file. So a different file extension should be introduced that benefits from the nice Roslyn-based editor as .tst does, but without rendering.
Second thing: I don't have any experience with the VS extensibility model, so I couldn't manage to introduce a new token for this kind of directive and I just assumed that $Include(path) was enough. But I don't like it. The dollar sign is used for referencing methods. A more clean solution would be something like #include "path", like #include "$(SolutionDir)Client\templates\utility.tstp".
But we need to teach the editor that new syntax somehow.
I'll see what I can do.
Any help is apreciated of course :)
-rodro-

It sucks that the original feature request of the OP seems to have been lost by all the "I'd also likes".  Being able to import and use 3rd party libraries like Humanizer, MoreLinq, and many others would be invaluable in Typewriter.

Hi @pbarranis ,
I actually implemented the original feature request and made a PR for it (#274).
Stay tuned!
-Rodro-

@rodro75 that's a god-send.  Thank you!

@rodro75 I hate to ask, but is there a simple example of how to get this working?  It took me a good amount of time just to sort through the PR and figure out whether the group had settled on "$Reference" or "#reference" from the PR discussion.  After about 3 hours of trying to get a one-line call to Humanizer's Humanize() call on an enum working, I had to give up and moving to pressing things.  Any sort of example would be hugely helpful.
On a side-note, referencing a DLL from a NuGet package appears to be a real pain-in-the-rear since it's not stored locally to the solution, which means each developer on the project could have it in a different place.  I didn't foresee that, unfortunately.

Great work @frhagn and @rodro75.  I just spent the last 3 days trying this out.  The C# code block makes it so extendable.  The only problem I have to workaround is the export path limited to the location of the tst file.
@pbarranis, you can create a csproj call MyTypewriterHelper.csproj.  a public static class MyTypewriterHelper with static method of string GetImports(Class c) { ... }.
In the template, do something like this, where the double tilda is the solution directory.  or use single tilda for project directory.
// tslint:disable
// This file is auto-generated. Do not modify.
#reference "~~\Path\Relative\To\Solution\MyTypewriterHelper.dll"
${
    using Typewriter.Extensions.Types;
    using MyTypewriterHelper;  // the namespace of your project

    Template(Settings settings) { settings.IncludeCurrentProject(); }

    string PrintTimestamp(File f) => string.Format("// Generated on {0:yyyy-MM-dd HH:mm:ss tt}", DateTime.Now);
    string Imports(Class c) => String.Join(Environment.NewLine, MyTypewriterHelper.GetImports(c));

}$PrintTimestamp
$Classes($HasExportToTypeScriptAttribute)[
$Imports

export interface $Name$TypeParameters$Inherit {
    $Properties[
    $Readonly$Name$Optional: $Type;]
    $Methods[
    $Name($Parameters[$name: $Type, ]): $Type;]
}]

@PoyangLiu Thank you for the attempt, though Typewriter is saying the using statement is invalid.  I can't imagine what I'm doing wrong, but maybe you can make heads or tails of this problem.  First, I'm running Typewriter 1.19.0 from 25-Jul-2018, and it's on the latest update of VS 2017 Pro.
Next, I grabbed a production copy of Humanizer.dll and put it in the root folder of my project; it's in the same folder of the .csproj file.  (Humanizer is a popular open-source project available through NuGet.)
Then, I updated the first few lines of my .tst file as follows:
#reference "~\Humanizer.dll";

${
  using Typewriter.Extensions.Types;
  using System.Text.RegularExpressions;
  using Humanizer;

The right side of the 'using' statement appears with a red line under it, and the following is in the Output window:
10:40:01.410 ERROR: Reference Error: System.IO.FileLoadException: The given assembly name or codebase was invalid. (Exception from HRESULT: 0x80131047)
   at System.Reflection.AssemblyName.nInit(RuntimeAssembly& assembly, Boolean forIntrospection, Boolean raiseResolveEvent)
   at System.Reflection.AssemblyName..ctor(String assemblyName)
   at Microsoft.VisualStudio.Platform.VsAppDomainManager.<GetAssemblyPaths>d__23.MoveNext()
   at Microsoft.VisualStudio.Platform.VsAppDomainManager.FindAssembly(String name, IEnumerable`1 probingPaths)
   at Microsoft.VisualStudio.Platform.VsAppDomainManager.InnerResolveHandler(String name)
   at Microsoft.VisualStudio.Platform.VsAppDomainManager.ResolveHandler(Object sender, ResolveEventArgs args)
   at System.AppDomain.OnAssemblyResolveEvent(RuntimeAssembly assembly, String assemblyFullName)
   at System.Reflection.AssemblyName.nInit(RuntimeAssembly& assembly, Boolean forIntrospection, Boolean raiseResolveEvent)
   at System.Reflection.RuntimeAssembly.CreateAssemblyName(String assemblyString, Boolean forIntrospection, RuntimeAssembly& assemblyFromResolveEvent)
   at System.Reflection.RuntimeAssembly.InternalLoad(String assemblyString, Evidence assemblySecurity, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean forIntrospection)
   at System.Reflection.RuntimeAssembly.InternalLoad(String assemblyString, Evidence assemblySecurity, StackCrawlMark& stackMark, Boolean forIntrospection)
   at System.Reflection.Assembly.Load(String assemblyString)
   at Typewriter.TemplateEditor.Lexing.Roslyn.ShadowClass.AddReference(String pathOrName)
   at Typewriter.Generation.TemplateCodeParser.ParseReference(Stream stream, ShadowClass shadowClass, ProjectItem templateProjectItem)
10:40:01.428 WARNING: Template error: CS0246 The type or namespace name 'Humanizer' could not be found (are you missing a using directive or an assembly reference?)

I'm 100% sure the file is in the place I've described, is a valid file that works in other projects, and the name matches exactly as described.  I run a normal x64 Windows OS and compile my projects with default 'bitness' settings.
I don't normally run VS in an elevated (UAC) configuration.  I ran it as Administrator just to check and see if that solved the problem, and I received exactly the same error.
What could possibly be the problem?  Any help would be greatly appreciated.

@pbarranis, I think what you are running into is a difference of framework.  Typewriter is built on .Net 4.5 with runtime dependency of 4.0.  Humanizer seems to be built on .Net core.

@PoyangLiu Thank you!  That at least answers this frustrating mystery.  My entire project is built on .NET Core 2.1.  Humanizer is actually built for .NET Standard, so it should work with both Core and Framework consuming libraries equally well.  This is disappointing :(

I wonder if the problem is the visual studio plugin hosting environment not
being able to load netstandard assemblies?
On Fri, 10 Aug 2018 at 11:08, pbarranis<EMAIL_ADDRESS>wrote:

@PoyangLiu https://github.com/PoyangLiu Thank you! That at least
answers this frustrating mystery. My entire project is built on .NET Core
2.1. Humanizer is actually built for .NET Standard, so it should work with
both Core and Framework consuming libraries equally well. This is
disappointing :(
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/frhagn/Typewriter/issues/232#issuecomment-412111557,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AANX6dsYjF3dhCX-esu8ZjluzoqIb2vFks5uPaHQgaJpZM4QJYLK
.


epic: v6 release

BREAKING CHANGE: v6 release
Types of Changes
What types of changes does your code introduce? Put an x in all the boxes that apply:

[ ] Bug fix (non-breaking change which fixes an issue, please reference the issue id)
[ ] New feature (non-breaking change which adds functionality, make sure to open an associated issue first)
[x] Breaking change (fix or feature that would cause existing functionality to change)
[ ] My change requires a change to the documentation
[ ] I have updated the documentation accordingly
[ ] I have added tests to cover my changes
[ ] All new and existing tests passed

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Feature request: date format

Would it be possible to add an option to specify your own date format for the log timestamp?

done, check setTimestampFormat() method

works great. Appreciate your excellent responsiveness!


Benchmarking

Load & Capacity Measurement
(some people call this "stress testing")

Use multiple instances of virtual-lorawan-device

e.g., Debug with sniffer tutorial

Use multiple Organizations, each with a unique NetID
Intentionally induce DevAddr collisions across these different (fake) organizations
Measure load on an isolated instance of Router to determine practical thresholds for LoRaWAN traffic capacity
Attempt to simulate real-world use cases

Tasks:

[ ] Implement on dev router instance
[ ] Measure on various small-ish AWS server instances

It's of interest, I have an OUI with 8 devaddr slab running on Hetzner. I can provide access

A minor issue: router seems to only permit one gateway coming from a single IP address.
The solution could be simply to run gateway-rs from multiple AWS server instances (e.g., spot instances) which would also avoid resource contention from a single host sending all those uplinks.  Multiple hosts was initially avoided to reduce complexity.

Finally have all configured devices utilizing all gateway-rs instances on a single machine.  (There was an off-by-one error in a Bash excerpt used for generating IP port number offsets.)
We also have a few AWS server instances ready for running there, which will reduce Internet latency.

On the larger run with hundreds of devices from an AWS server instance running gateway-rs and virtual-lorawan-device, the vast majority of devices were unable to Join.
Investigating...

There seems to be a resource limit on number of gateway-rs inbound socket connections (and therefore limits number of concurrent virtual-lorawan-device instances per gateway instance).
Investigating gateway-rs code and dependencies (e.g., Tokio), but Linux kernel vars seem sufficient (i.e., somaxconn).

huh? why would a single gateway-rs need to handle more than a few connections?

huh? why would a single gateway-rs need to handle more than a few connections?

This is for driving artificial load for sake of determining capacity of a particular size AWS server instance running router. Yes, it's far beyond the originally intended use cases for gateway-rs, so 100 devices per organization means hundreds of concurrent connections.

huh? why would a single gateway-rs need to handle more than a few connections?

This is for driving artificial load for sake of determining capacity of a particular size AWS server instance running router. Yes, it's far beyond the originally intended use cases for gateway-rs, so 100 devices per organization means hundreds of concurrent connections.

uhh.. isn't that just the virtual lorawan device simulating hundreds of devices but it's still a single connection to gateway-rs for that packet forwarder? What am I missing?

virtual lorawan device simulating hundreds of devices

Yes, this looks like the best path.  Either way, there will be new Rust code!
(I was first exploring the least coding effort, but that's been sufficiently exhausted now.)

Now that we're using virtual-lorawan-device for driving 100 devices per organization, driving load at scale is successful.
This also confirms abuse-prevention measures of the new reputation system, and that gets triggered within a minute or so. (Reputation score exceeded 50 in about 1 minute).
Packet uplink offers are getting dropped by router due to "devaddr not in subnet", so @lthiery it may be time to take you up on that kind offer of using your 8 devaddr slab.

Clarified my understanding of a few points and updated the docs PR with more to come.
e.g., Location distances only comes into play when same device sends via different gateway, but we do not yet have the means to have round-robin per device uplinks.  I'll put that feature on my to-do list.
Adding more instances of gateway-rs and asserting their locations to an obviously bogus location such as a six meters above a lake.

On a non-trivial but light run, Grafana indicated 98%-99% for Packet Offer Rate success.
This run involved 5 gateways, 2 organizations each with 100 devices all driven from same region within AWS to minimize Internet latency.
The graph dipped briefly to 95%-96% a few times within the first ten minutes and then down towards 75% for next ten minutes.
Meanwhile, even though router's reputation response was temporarily disabled yet still keeping score, these 5 gateways each have a score in the thousands; e.g., 4k, 5k after only ten minutes; over 10k around 15 minute mark;
Run began at time = Tue Apr 26 22:04:01 2022 GMT and ended at 22:28:26  GMT.
This is NOT using a purely dedicated server for benchmarking yet.

An issue with benchmark runs is that occasionally a gateway-rs instance or two will disconnect from its upstream validator.  When this happens, traffic drops-off because devices going through that gw can't reach router.
That apparently happened with yesterday's run and again just now.
We may have to wait to get real results until after gateway-rs v1.0 is official (still v1.0 alpha at the moment, according to its repo).
There is an upcoming release for Validators, gateway-rs, etc.
My understanding is that newer Validator code will listen on changed/additional IP ports that are not yet open.  This means that upon starting gateway-rs today, it will sometimes take an hour to connect because of trying (currently) invalid port numbers.

Regarding devaddr allocation with an 8 slab:

200 devices total was fine, third set of 100 were unable to Join

2 separate instances of gateway-rs
each gateway-rs on a unique Public IP address
100 devices per Organization
each org unique to a single instance of virtual-lorawan-device
Each device: default_secs_between_transmits = 15

Third org containing 100 saw 100% failure to join

via new instance of virtual-lorawan-device
hitting an existing gateway-rs already servicing first org with 100 devices

After adding third org, traffic for first two orgs were apparently unharmed
More fine-grained tests have yet to be run for finding more precise value

smaller tranche sizes; e.g., 100 -> 50, 25, 15, 10, 5

When using lower time between transmits such as 10 or 5, there were too many late downlinks, so either gateway-rs or virtual-lorawan-device would need to be patched.
Note:
Neither gateway-rs nor virtual-lorawan-device were intended to be used for this use-case, so we may ultimately need to modify one or the other.  While some transient errors are expected, I'm exploring a feature of virtual-lorawan-device to steadily increase pre-configured devices (rather than current behavior of all-or-nothing) while remaining within a configurable error rate, defaulting to 1:500 or so.

The upper limit seems to be approximately 2250 devices for an 8 slab devaddr, but results still need to be replicated and bracketed.
To sanity-check my thought process here: despite some noise upon starting each batch, once each batch's Joins have all settled, I take that to mean the devaddr 8 slab + MIC disambiguation resolution has absorbed the pool of new devices.
The last 100 devices-- of which only about half were able to Join-- took dozens of attempts to Join.  This is likely due to our own traffic interfering with itself while abusing gateway-rs and the artificial nature of this simulation.
This latest run used the following configuration:

3 hotspots on AWS instance 1
2 hotspots on AWS instance 2
1k devices in first org on instance 1 spraying across those 3 hotspots
1k devices in first org on instance 2 spraying across those 2 hotspots
added another org, each with 100 devices per AWS host, also spraying across hotspots
Upon adding that final 100 devices, it's estimated that half were never able to Join

Very ineresting work, well done!
Did you record cpu usage data for the router? I'm curious whether the bottleneck is cpu power (so larger reuse would be possible by adding more cpu cores, or faster cores if the bottleneck is single threaded), or if the bottleneck is caused by collissions (more than 1 device key matches the mic, resulting in ambiguity that cannot be resolved).

Status update and highlights of corrections:

Prior benchmark runs had non-conforming App EUI and App Keys for devices (must be unique)-- now fixed
Prior runs intending to have more than zero seconds between device transmits remained at zero-- now fixed
Router's method of tracking unique devices has been revised-- let's just say it's been battle-tested...
Since previous update, use of a multiplexer has been added:

More accurately reflects real-world use cases because each device's packets go through all routers known to the muxer
Prior config generation remains in doc but commented-out as optional

Draft doc has been revised (also linked from ticket description)

https://deploy-preview-846--helium-docs.netlify.app/use-the-network/run-a-network-server/router-benchmarking/

Update after several successful runs:

First, router-dev does not have an 8 slab devaddr block but instead is a 1024 slab

@mfalkvidd , I misspoke previously
This is why the count was so much higher than you expected

The upper limit on concurrent devaddr allocations on router-dev seems to be 5800

We still need to reproduce for confirmation of the number
The actual count was 5806
We highly encourage the Community to attempt reproducing our results and reporting

Interpretation of graphs in Grafana from which we reached that number has been updated in the doc
Final updates to the doc include a few lines of Bash for leveling traffic load on Router and host sending traffic
At time of writing this post, there is an issue with upstream Validators that currently impacts further testing

Similarly, text and procedures have been added to the doc for diagnosing such issues
e.g., using API into gateway-rs instead of extracting from its logs for more reliable results

Thank you, everyone, for your patience with this endeavor!

Planning and executing this is unlike its equivalent for HTTP traffic
The number of experimental conditions and variables to track with each run is like doing multi-variate analysis or holding a large polynomial equation in one's head, but hopefully the doc accommodates copy/paste


Webpack5

Codecov Report

Merging #143 (afff6d9) into main (0718e10) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main     #143   +/-   ##
=======================================
  Coverage   98.29%   98.29%
=======================================
  Files          15       15
  Lines         941      941
  Branches      205      205
=======================================
  Hits          925      925
  Misses         16       16

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 0718e10...afff6d9. Read the comment docs.


Make S3 connection as input and output possible

We would need to have a connection possibility to S3 bucket for open shift use in order to be able to test the whole pipeline.

for that there should be a feature in settings file that states if s3 is used or not
in the server files all functions have to be adjusted to download the data first to a specified folder before it can be used
at the end interim files or final files have to be loaded to s3 again
python packages have to be added
boto3 functions should be added to the path and Docker files

Please use the following branch for implementation of this:
Branch feature/2023.04-os-test

I have now implemented a running pipeline on open shift which uses branch feature/2023.04-os-test of the corporate_data_extraction repo and connects to S3.

You can now log into the main_terminal pod and make train_on_pdf.py for the TEST project with S3 connection.

You can now log into the main_terminal pod and make infer_on_pdf.py for the TEST project with S3 connection for ML and RB.

Afterwards you can see all important results in the S3 bucket:

The code is now asking if you want to use s3 or not. If yes it will load the s3_settings.yaml which is expected to be in the data folder /data_extractor/data/s3_settings.yaml. As this might vary for everybody you can not locate it on S3 as you are obviously trying to load s3_data. This file does not store credentials (!!!) but just the names of the secret keys in the deployment, So if you want to use s3 your deployments need to have secrets. A documentation for open shift usage will follow.

Implemented via branch feature/2023.04-os-test


Lenatim 23 12 - Improved huntbooks

Checks

[x] Your YAML file has required fields as listed in Specs
[x] All checks have passed yaml-lint passed
[x] You agree to contribute your work under MIT license

@THaenlein is my team mate.


Langhain.js does not work with gpt-4o when for question answering agent in sql

Checked other resources

[X] I added a very descriptive title to this issue.
[X] I searched the LangChain.js documentation with the integrated search.
[X] I used the GitHub search to find a similar question and didn't find it.
[X] I am sure that this is a bug in LangChain.js rather than my code.
[X] The bug is not resolved by updating to the latest stable version of LangChain (or the specific integration package).

Example Code
import DataEntity, { Data } from '../../domain/entities/data.entity';
import { DataInterface } from '../../domain/interfaces/data.interface';
import { AppDataSource } from '../migrations/data-source';
import { ChatOpenAI } from '@langchain/openai';
import { createSqlQueryChain } from 'langchain/chains/sql_db';
import { SqlDatabase } from 'langchain/sql_db';

import { PromptTemplate } from '@langchain/core/prompts';
import { StringOutputParser } from '@langchain/core/output_parsers';
import {
  RunnablePassthrough,
  RunnableSequence,
} from '@langchain/core/runnables';
import { QuerySqlTool } from 'langchain/tools/sql';

class DataRepository implements DataInterface {
  async getAllData(tableName: string): Promise<DataEntity[] | undefined> {
    console.log(tableName);
    try {
      const data = await AppDataSource.getRepository(Data).find();
      if (!data) {
        return undefined;
      }
      const formattedData = data.map(
        (item) => new DataEntity(item.id!.toString(), item.name!, item.age!),
      );

      const db = await SqlDatabase.fromDataSourceParams({
        appDataSource: AppDataSource,
      });

      const llm = new ChatOpenAI({ model: 'gpt-4', temperature: 0 });
      const executeQuery = new QuerySqlTool(db);
      const writeQuery = await createSqlQueryChain({
        llm,
        db,
        dialect: 'mysql',
      });

      const answerPrompt =
        PromptTemplate.fromTemplate(`Given the following user question, corresponding SQL query, and SQL result, answer the user question.

        Question: {question}
        SQL Query: {query}
        SQL Result: {result}
Answer: `);

      const answerChain = answerPrompt.pipe(llm).pipe(new StringOutputParser());

      const chain = RunnableSequence.from([
        RunnablePassthrough.assign({ query: writeQuery }).assign({
          result: (i: { query: string }) => executeQuery.invoke(i.query),
        }),
        answerChain,
      ]);
      console.log(
        await chain.invoke({ question: 'How many names are there' }),
      );
      return formattedData;
    } catch (e) {
      throw new Error(`Error while fetching data ${e}`);
    }
  }
}

export default DataRepository;

I am using the above code and it always says syntax error in SQL

However if I use gpt-4 instead then it works.

I am using the code from the official docs only:
https://js.langchain.com/v0.2/docs/tutorials/sql_qa
Error Message and Stack Trace (if applicable)
No response
Description
I am trying to use langchain.js using gpt-4o. But it is throwing error every time
System Info
"@langchain/community": "^0.2.16",
"@langchain/openai": "^0.2.1",
"langchain": "^0.2.8",

Platform Linux/ubuntu 24.04
Node 20
bun version 1.1.16

You may need to downgrade or tweak the prompts yourself - they will not be perfect for every model.


Changed name of library and paths - [merged]

In GitLab by @cmastalli on Dec 12, 2018, 12:46
Merges name -> devel
This PR changed the name of the library as suggested here #22. This change in the name triggered changes in the path of the core functions. Additionally, I reorganized a bit the files to have a more easy to understand structure. Finally I included a README file with the respective Licence.

In GitLab by @cmastalli on Dec 12, 2018, 12:46
mentioned in commit 8773c4ae072c4c6b209cef4cecff3b81fcd2c9cc

In GitLab by @cmastalli on Dec 12, 2018, 12:46
merged


Gblessylva

Description
Improved to meet Codacy Standard
All pull requests should be related to open issues. Indicate the issue(s) bellow and remove this line:
Fixes #(issue number 1) #16
Checklist:

[ x] My code follows the style guidelines of this project
[ x] I have performed a self-review of my own code
[x ] I have commented my code, particularly in hard-to-understand areas
[ x] I have added necessary inline code documentation
[ x] I have added tests that prove my fix is effective and that this feature works
[x ] New and existing unit tests pass locally with my changes

 Here is an overview of what got changed by this pull request:

Issues
======
- Added 1

See the complete overview on Codacy


Extract Countable to a reusable module

I've seen a lot of custom matchers, and ours included, reimplement the same interface of #once, #twice, #at_least etc. Sometimes partially, sometimes completely.
A Countable module can be used in matchers from Expectations (include) and Mocks (receive), and third-party extensions.
Expected behavior
RSpec::Matchers.define :drink_tea do |expected|
  include RSpec::Matchers::Countable
end

it { is_expected.to drink_tea.twice }

The problem here is that Mocks do not depend on Expectations, and Support might not be the best place for it (can't find the discussion about extracting, can only recall the word "bag" was used).

I'm not sure we want to make it a public api though...

have_enqueued_mail is yet another example.

Mocks cannot depend on Expectations for such core functionality, if you do want to extract it, then it would need to go to support. The current implementation is not suitable for extraction as we would need a single concrete way for a 3rd party to define how countable works.


Auto-save/Field validation notifications constantly refreshing

Hello:
Upon installing the package and editing a new post, I'm immediately presented with the "blog title is a required field" warning. Upon filling in a title, the "saved" notification appears again and again even when the page is idle and no text is being entered.
Great package, though.
Nick

Fixed in #150

Resolved. Thanks!


✨ Added giscus integration

Do not merge until GISCUS_REPO_ID secret is created
Relates to https://github.com/SSWConsulting/SSW.Rules/issues/1363

Does this mean we will lose all previous comments and interactions on Rules?

Does this mean we will lose all previous comments and interactions on Rules?

@fenix2222 @JackDevAU
No, we need a migration plan. For now Adam suggested we have 2 comments boxes Discus and Giscus

Hey @fenix2222
Closing this PR as we have integrated Giscus as part of another PR - https://github.com/SSWConsulting/SSW.Rules/pull/1579
Currently it is deployed to staging - https://sarulesstagbbfslamgwndh2.z8.web.core.windows.net/rules/


[WIP] Don't merge, just for CI test

What is the purpose of the change
CI test for https://issues.apache.org/jira/browse/FLINK-18356
Brief change log
Verifying this change
Does this pull request potentially affect one of the following parts:

Dependencies (does it add or upgrade a dependency): no
The public API, i.e., is any changed class annotated with @Public(Evolving): no
The serializers: no
The runtime per-record code paths (performance sensitive): no
Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Kubernetes/Yarn, ZooKeeper: no
The S3 file system connector: no

Documentation

Does this pull request introduce a new feature? no
If yes, how is the feature documented? not documented

@flinkbot run azure

@swuferhong run azure

@flinkbot run azure

Hi @PatrickRen , @MartijnVisser, @XComp and @snuyanzin . The CI error Exit 137 is easy to reproduce while reuseForks equals true in table planner module (https://issues.apache.org/jira/browse/FLINK-18356). Is there any good way to dump the JVM memory usage of the current mvn execution thread on the CI machine? Thanks!

Had an offline discussion with @swuferhong and he'll manually take memory dumps on the CI machine for debugging this issue.

@flinkbot run azure

@flinkbot run azure

@flinkbot run azure

@flinkbot run azure

@flinkbot run azure

@flinkbot run azure

@flinkbot run azure


Automatically remove untriaged label across all dotnet/runtime areas

We're interested in expanding the automated removal of the untriaged label based on heuristics, such that the automation covers more or all of the dotnet/runtime areas (and not just the Libraries Area Pods).
For the Libraries Areas Pods, we automatically remove the untriaged label when any of these 4 events occurs:

The issue is closed
A milestone is applied
The needs-author-action label is applied
The api-ready-for-review label is applied

While rules 3 and 4 are somewhat subjective from area to area, rules 1 and 2 are broadly agreed upon.
@jeffschwMSFT, @marek-safar, @karelz:

Would you like to have the untriaged label automatically removed from your teams' areas when the issue is closed or a milestone is applied?
Are there any other conditions you'd like to trigger the removal?

+1 for less manual work.  I see the value of 1 and 2, can you explain the rationale for 3 and 4?  In the case of 4, I would hope that milestone would also be applied.

The needs-author-action label means we don't have enough information from the author and we're waiting on them (or another contributor) to add more information. Until that information arrives, it's not actionable by area owners. Once a community comment comes in, the issue shows back up on our triage project boards to ensure we follow up on it. For issues of this ilk that look like potential regressions, we will also apply the current milestone to the issue to ensure follow-up during this release.
The api-ready-for-review label denotes a new feature, so the risk of this being a regression that needs addressed in the current release is nil. But if we haven't already applied a milestone by the time we reach that point, then that indicates we're waiting for the API Review to make a decision on the milestone. Either way, no further "triage" is required on the issue.

Thanks for the explanations, for me personally I see the value of 1 and 2 broadly across our other labels.  I am not convinced of the other uses, but they may also not be as widely used in areas for my team.  Interested in more opinions.

Note: we have the flexibility to apply 1+2 across all areas and keep 3+4 scoped to the Libraries Area Pods (where we're using the aforementioned issue triage boards). But I'll wait for input from others before we conclude that direction.

Would you like to have the untriaged label automatically removed from your teams' areas when the issue is closed or a milestone is applied?

YES!

Are there any other conditions you'd like to trigger the removal?

I cannot think of any right now but would love to see the label back when the conditions are removed.


Issue: "Cannot find symbol" Error using Native Ads

Plugin Version

google_mobile_ads: ^1.2.0
Steps to Reproduce

Followed the tutorial at https://developers.google.com/admob/flutter/native
And also https://codelabs.developers.google.com/codelabs/admob-inline-ads-in-flutter#7
Then after implementing MainActivity.java and NativeAdFactoryExample.java (even if I copy from the examples including the Github example) I always get the error below after running the App.
Checked Stackoverflow, I tried the popular solutions including "flutter clean", changing the "android/app/build.gradle" file to 31 and add: android.useAndroidX=true android.enableJetifier=true to the "gradle.properties" file. Nothing worked.

Expected results:
The native ad running.
Actual results:

[ +299 ms] C:\flutter-apps\gamerpower_app\gamerpower - Copy
(12-error)\android\app\src\main\java\com\app\gamerpower\adFactoryExample.java:38: error: cannot find symbol
[   +1 ms]     final NativeAdView adView = (NativeAdView) layoutInflater.inflate(R.layout.my_native_ad, null);
[        ]                                                                               ^
[        ]   symbol:   variable my_native_ad
[        ]   location: class layout
[        ] C:\flutter-apps\gamerpower_app\gamerpower - Copy
(12-error)\android\app\src\main\java\com\app\gamerpower\adFactoryExample.java:41: error: cannot find symbol
[        ]     adView.setMediaView((MediaView) adView.findViewById(R.id.ad_media));
[        ]                                                             ^
[        ]   symbol:   variable ad_media
[        ]   location: class id
[        ] C:\flutter-apps\gamerpower_app\gamerpower - Copy
(12-error)\android\app\src\main\java\com\app\gamerpower\adFactoryExample.java:44: error: cannot find symbol
[        ]     adView.setHeadlineView(adView.findViewById(R.id.ad_headline));
[        ]                                                    ^
[        ]   symbol:   variable ad_headline
[        ]   location: class id
[        ] > Task :app:compileDebugJavaWithJavac FAILED
[        ] C:\flutter-apps\gamerpower_app\gamerpower - Copy
(12-error)\android\app\src\main\java\com\app\gamerpower\adFactoryExample.java:45: error: cannot find symbol
[        ]     adView.setBodyView(adView.findViewById(R.id.ad_body));
[        ]                                                ^
[        ]   symbol:   variable ad_body
[        ]   location: class id
[        ] C:\flutter-apps\gamerpower_app\gamerpower - Copy
(12-error)\android\app\src\main\java\com\app\gamerpower\adFactoryExample.java:46: error: cannot find symbol
[        ]     adView.setCallToActionView(adView.findViewById(R.id.ad_call_to_action));
[        ]                                                        ^
[        ]   symbol:   variable ad_call_to_action
[        ]   location: class id
[        ] C:\flutter-apps\gamerpower_app\gamerpower - Copy
(12-error)\android\app\src\main\java\com\app\gamerpower\adFactoryExample.java:47: error: cannot find symbol
[        ]     adView.setIconView(adView.findViewById(R.id.ad_app_icon));
[        ]                                                ^
[        ]   symbol:   variable ad_app_icon
[        ]   location: class id
[        ] C:\flutter-apps\gamerpower_app\gamerpower - Copy
(12-error)\android\app\src\main\java\com\app\gamerpower\adFactoryExample.java:48: error: cannot find symbol
[        ]     adView.setPriceView(adView.findViewById(R.id.ad_price));
[        ]                                                 ^
[        ]   symbol:   variable ad_price
[        ]   location: class id
[        ] C:\flutter-apps\gamerpower_app\gamerpower - Copy
(12-error)\android\app\src\main\java\com\app\gamerpower\adFactoryExample.java:49: error: cannot find symbol
[   +1 ms]     adView.setStarRatingView(adView.findViewById(R.id.ad_stars));
[        ]                                                      ^
[        ]   symbol:   variable ad_stars
[        ]   location: class id
[        ] C:\flutter-apps\gamerpower_app\gamerpower - Copy
(12-error)\android\app\src\main\java\com\app\gamerpower\adFactoryExample.java:50: error: cannot find symbol
[        ]     adView.setStoreView(adView.findViewById(R.id.ad_store));
[        ]                                                 ^
[        ]   symbol:   variable ad_store
[        ]   location: class id
[        ] C:\flutter-apps\gamerpower_app\gamerpower - Copy
(12-error)\android\app\src\main\java\com\app\gamerpower\adFactoryExample.java:51: error: cannot find symbol
[        ]     adView.setAdvertiserView(adView.findViewById(R.id.ad_advertiser));
[   +1 ms]                                                      ^
[        ]   symbol:   variable ad_advertiser
[        ]   location: class id
[        ] 10 errors
[  +26 ms] FAILURE: Build failed with an exception.
[        ] * What went wrong:
[        ] Execution failed for task ':app:compileDebugJavaWithJavac'.
[   +1 ms] > Compilation failed; see the compiler error output for details.
[        ] * 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
[        ] Deprecated Gradle features were used in this build, making it incompatible with Gradle 7.0.
[        ] Use '--warning-mode all' to show the individual deprecation warnings.
[        ] See https://docs.gradle.org/6.7/userguide/command_line_interface.html#sec:command_line_warnings
[        ] 90 actionable tasks: 5 executed, 85 up-to-date
[ +534 ms] Running Gradle task 'assembleDebug'... (completed in 7.1s)
[+2710 ms] Exception: Gradle task assembleDebug failed with exit code 1
[   +1 ms] "flutter run" took 10,749ms.
[   +3 ms]
           #0      throwToolExit (package:flutter_tools/src/base/common.dart:10:3)
           <asynchronous suspension>
           #2      FlutterCommand.run.<anonymous closure>
(package:flutter_tools/src/runner/flutter_command.dart:1161:27)
           <asynchronous suspension>
           #3      AppContext.run.<anonymous closure> (package:flutter_tools/src/base/context.dart:150:19)
           <asynchronous suspension>
           #4      CommandRunner.runCommand (package:args/command_runner.dart:209:13)
           <asynchronous suspension>
           #5      FlutterCommandRunner.runCommand.<anonymous closure>
           (package:flutter_tools/src/runner/flutter_command_runner.dart:281:9)
           <asynchronous suspension>
           <asynchronous suspension>
           #7      FlutterCommandRunner.runCommand
(package:flutter_tools/src/runner/flutter_command_runner.dart:229:5)
           <asynchronous suspension>
           #8      run.<anonymous closure>.<anonymous closure> (package:flutter_tools/runner.dart:62:9)
           <asynchronous suspension>
           #9      AppContext.run.<anonymous closure> (package:flutter_tools/src/base/context.dart:150:19)
           <asynchronous suspension>
           #10     main (package:flutter_tools/executable.dart:94:3)
           <asynchronous suspension>

Logs

[  +55 ms] executing: [C:\src\flutter/] git -c log.showSignature=false log -n 1 --pretty=format:%H
[  +61 ms] Exit code 0 from: git -c log.showSignature=false log -n 1 --pretty=format:%H
[        ] 5464c5bac742001448fe4fc0597be939379f88ea
[        ] executing: [C:\src\flutter/] git tag --points-at 5464c5bac742001448fe4fc0597be939379f88ea
[  +49 ms] Exit code 0 from: git tag --points-at 5464c5bac742001448fe4fc0597be939379f88ea
[        ] 2.10.5
[   +7 ms] executing: [C:\src\flutter/] git rev-parse --abbrev-ref --symbolic @{u}
[  +38 ms] Exit code 0 from: git rev-parse --abbrev-ref --symbolic @{u}
[        ] origin/stable
[        ] executing: [C:\src\flutter/] git ls-remote --get-url origin
[  +36 ms] Exit code 0 from: git ls-remote --get-url origin
[        ] https://github.com/flutter/flutter.git
[ +105 ms] executing: [C:\src\flutter/] git rev-parse --abbrev-ref HEAD
[  +41 ms] Exit code 0 from: git rev-parse --abbrev-ref HEAD
[        ] stable
[  +65 ms] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update.
[   +1 ms] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update.
[   +6 ms] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'WindowsUwpEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update.
[  +54 ms] executing: C:\Users\justpaulo\AppData\Local\Android\sdk\platform-tools\adb.exe devices -l
[  +42 ms] List of devices attached
           emulator-5554          device product:sdk_gphone_x86 model:sdk_gphone_x86 device:generic_x86_arm
           transport_id:8
[   +8 ms] C:\Users\justpaulo\AppData\Local\Android\sdk\platform-tools\adb.exe -s emulator-5554 shell getprop
[  +46 ms] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update.
[   +1 ms] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update.
[   +7 ms] Artifact Instance of 'WindowsUwpEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update.
[ +114 ms] Skipping pub get: version match.
[  +33 ms] Found plugin google_mobile_ads at
C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\google_mobile_ads-1.2.0\
[  +12 ms] Found plugin path_provider at C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\path_provider-2.0.9\
[   +1 ms] Found plugin path_provider_android at
C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\path_provider_android-2.0.12\
[   +2 ms] Found plugin path_provider_ios at
C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\path_provider_ios-2.0.8\
[   +2 ms] Found plugin path_provider_linux at
C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\path_provider_linux-2.1.5\
[   +2 ms] Found plugin path_provider_macos at
C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\path_provider_macos-2.0.5\
[   +4 ms] Found plugin path_provider_windows at
C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\path_provider_windows-2.0.5\
[   +9 ms] Found plugin shared_preferences at
C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\shared_preferences-2.0.13\
[   +1 ms] Found plugin shared_preferences_android at
C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\shared_preferences_android-2.0.11\
[   +2 ms] Found plugin shared_preferences_ios at
C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\shared_preferences_ios-2.1.0\
[   +2 ms] Found plugin shared_preferences_linux at
C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\shared_preferences_linux-2.1.0\
[   +2 ms] Found plugin shared_preferences_macos at
C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\shared_preferences_macos-2.0.3\
[   +2 ms] Found plugin shared_preferences_web at
C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\shared_preferences_web-2.0.3\
[   +2 ms] Found plugin shared_preferences_windows at
C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\shared_preferences_windows-2.1.0\
[   +2 ms] Found plugin sqflite at C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\sqflite-2.0.2\
[   +8 ms] Found plugin url_launcher at C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\url_launcher-6.0.20\
[   +1 ms] Found plugin url_launcher_android at
C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\url_launcher_android-6.0.15\
[   +1 ms] Found plugin url_launcher_ios at
C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\url_launcher_ios-6.0.15\
[   +1 ms] Found plugin url_launcher_linux at
C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\url_launcher_linux-3.0.0\
[   +2 ms] Found plugin url_launcher_macos at
C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\url_launcher_macos-3.0.0\
[   +2 ms] Found plugin url_launcher_web at
C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\url_launcher_web-2.0.9\
[   +1 ms] Found plugin url_launcher_windows at
C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\url_launcher_windows-3.0.0\
[  +41 ms] Found plugin google_mobile_ads at
C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\google_mobile_ads-1.2.0\
[   +8 ms] Found plugin path_provider at C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\path_provider-2.0.9\
[   +1 ms] Found plugin path_provider_android at
C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\path_provider_android-2.0.12\
[   +2 ms] Found plugin path_provider_ios at
C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\path_provider_ios-2.0.8\
[   +1 ms] Found plugin path_provider_linux at
C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\path_provider_linux-2.1.5\
[   +1 ms] Found plugin path_provider_macos at
C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\path_provider_macos-2.0.5\
[   +2 ms] Found plugin path_provider_windows at
C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\path_provider_windows-2.0.5\
[   +6 ms] Found plugin shared_preferences at
C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\shared_preferences-2.0.13\
[   +2 ms] Found plugin shared_preferences_android at
C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\shared_preferences_android-2.0.11\
[   +1 ms] Found plugin shared_preferences_ios at
C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\shared_preferences_ios-2.1.0\
[   +1 ms] Found plugin shared_preferences_linux at
C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\shared_preferences_linux-2.1.0\
[   +1 ms] Found plugin shared_preferences_macos at
C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\shared_preferences_macos-2.0.3\
[   +2 ms] Found plugin shared_preferences_web at
C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\shared_preferences_web-2.0.3\
[   +1 ms] Found plugin shared_preferences_windows at
C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\shared_preferences_windows-2.1.0\
[   +2 ms] Found plugin sqflite at C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\sqflite-2.0.2\
[   +6 ms] Found plugin url_launcher at C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\url_launcher-6.0.20\
[   +1 ms] Found plugin url_launcher_android at
C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\url_launcher_android-6.0.15\
[   +1 ms] Found plugin url_launcher_ios at
C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\url_launcher_ios-6.0.15\
[   +1 ms] Found plugin url_launcher_linux at
C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\url_launcher_linux-3.0.0\
[   +2 ms] Found plugin url_launcher_macos at
C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\url_launcher_macos-3.0.0\
[   +2 ms] Found plugin url_launcher_web at
C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\url_launcher_web-2.0.9\
[   +1 ms] Found plugin url_launcher_windows at
C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\url_launcher_windows-3.0.0\
[  +12 ms] Generating C:\flutter-apps\gamerpower_app\gamerpower - Copy
(12-error)\android\app\src\main\java\io\flutter\plugins\GeneratedPluginRegistrant.java
[  +62 ms] ro.hardware = ranchu
[  +14 ms] Using hardware rendering with device sdk gphone x86. If you notice graphics artifacts, consider
enabling
           software rendering with "--enable-software-rendering".
[  +24 ms] Initializing file store
[  +15 ms] Skipping target: gen_localizations
[   +5 ms] gen_dart_plugin_registrant: Starting due to {InvalidatedReasonKind.inputChanged: The following inputshave updated contents: C:\flutter-apps\gamerpower_app\gamerpower - Copy
(12-error)\.dart_tool\package_config_subset,C:\flutter-apps\gamerpower_app\gamerpower - Copy
(12-error)\.dart_tool\flutter_build\generated_main.dart}
[  +19 ms] Found plugin google_mobile_ads at
C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\google_mobile_ads-1.2.0\
[   +8 ms] Found plugin path_provider at C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\path_provider-2.0.9\
[   +1 ms] Found plugin path_provider_android at
C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\path_provider_android-2.0.12\
[   +1 ms] Found plugin path_provider_ios at
C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\path_provider_ios-2.0.8\
[   +1 ms] Found plugin path_provider_linux at
C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\path_provider_linux-2.1.5\
[   +1 ms] Found plugin path_provider_macos at
C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\path_provider_macos-2.0.5\
[   +2 ms] Found plugin path_provider_windows at
C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\path_provider_windows-2.0.5\
[   +3 ms] Found plugin shared_preferences at
C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\shared_preferences-2.0.13\
[   +1 ms] Found plugin shared_preferences_android at
C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\shared_preferences_android-2.0.11\
[   +2 ms] Found plugin shared_preferences_ios at
C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\shared_preferences_ios-2.1.0\
[   +1 ms] Found plugin shared_preferences_linux at
C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\shared_preferences_linux-2.1.0\
[   +1 ms] Found plugin shared_preferences_macos at
C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\shared_preferences_macos-2.0.3\
[   +1 ms] Found plugin shared_preferences_web at
C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\shared_preferences_web-2.0.3\
[   +1 ms] Found plugin shared_preferences_windows at
C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\shared_preferences_windows-2.1.0\
[   +2 ms] Found plugin sqflite at C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\sqflite-2.0.2\
[   +5 ms] Found plugin url_launcher at C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\url_launcher-6.0.20\
[   +1 ms] Found plugin url_launcher_android at
C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\url_launcher_android-6.0.15\
[   +1 ms] Found plugin url_launcher_ios at
C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\url_launcher_ios-6.0.15\
[   +2 ms] Found plugin url_launcher_linux at
C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\url_launcher_linux-3.0.0\
[   +1 ms] Found plugin url_launcher_macos at
C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\url_launcher_macos-3.0.0\
[   +3 ms] Found plugin url_launcher_web at
C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\url_launcher_web-2.0.9\
[   +2 ms] Found plugin url_launcher_windows at
C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\url_launcher_windows-3.0.0\
[  +10 ms] gen_dart_plugin_registrant: Complete
[   +2 ms] Skipping target: _composite
[   +2 ms] complete
[   +5 ms] Launching lib\main.dart on sdk gphone x86 in debug mode...
[   +5 ms] C:\src\flutter\bin\cache\dart-sdk\bin\dart.exe --disable-dart-dev
C:\src\flutter\bin\cache\artifacts\engine\windows-x64\frontend_server.dart.snapshot --sdk-root
C:\src\flutter\bin\cache\artifacts\engine\common\flutter_patched_sdk/ --incremental --target=flutter
--debugger-module-names --experimental-emit-debug-metadata -DFLUTTER_WEB_AUTO_DETECT=true --output-dill
C:\Users\JUSTPA~1\AppData\Local\Temp\flutter_tools.e0c200ea\flutter_tool.fdb9f58d\app.dill --packages
C:\flutter-apps\gamerpower_app\gamerpower - Copy (12-error)\.dart_tool\package_config.json
-Ddart.vm.profile=false -Ddart.vm.product=false --enable-asserts --track-widget-creation --filesystem-scheme
org-dartlang-root --initialize-from-dill build\c075001b96339384a97db4862b8ab8db.cache.dill.track.dill
--enable-experiment=alternative-invalidation-strategy
[  +12 ms] executing: C:\Users\justpaulo\AppData\Local\Android\sdk\platform-tools\adb.exe -s emulator-5554 shell-x logcat -v time -t 1
[  +14 ms] <- compile
file:///C:/flutter-apps/gamerpower_app/gamerpower%20-%20Copy%20(12-error)/.dart_tool/flutter_build/generated_main.dart
[  +41 ms] --------- beginning of main
           05-19 20:58:50.159 E/wifi_forwarder(  468): RemoteConnection failed to initialize: RemoteConnection
           failed to open pipe
[  +29 ms] executing: C:\Users\justpaulo\AppData\Local\Android\sdk\platform-tools\adb.exe version
[  +22 ms] Android Debug Bridge version 1.0.41
           Version 31.0.3-7562133
           Installed as C:\Users\justpaulo\AppData\Local\Android\sdk\platform-tools\adb.exe
[   +2 ms] executing: C:\Users\justpaulo\AppData\Local\Android\sdk\platform-tools\adb.exe start-server
[  +22 ms] Building APK
[  +15 ms] Running Gradle task 'assembleDebug'...
[   +4 ms] Using gradle from C:\flutter-apps\gamerpower_app\gamerpower - Copy (12-error)\android\gradlew.bat.
[  +13 ms] executing: C:\Program Files\Android\Android Studio\jre\bin\java -version
[ +123 ms] Exit code 0 from: C:\Program Files\Android\Android Studio\jre\bin\java -version
[   +1 ms] openjdk version "11.0.11" 2021-04-20
           OpenJDK Runtime Environment (build 11.0.11+9-b60-7590822)
           OpenJDK 64-Bit Server VM (build 11.0.11+9-b60-7590822, mixed mode)
[   +2 ms] executing: C:\Program Files\Android\Android Studio\jre\bin\java -version
[ +108 ms] Exit code 0 from: C:\Program Files\Android\Android Studio\jre\bin\java -version
[        ] openjdk version "11.0.11" 2021-04-20
           OpenJDK Runtime Environment (build 11.0.11+9-b60-7590822)
           OpenJDK 64-Bit Server VM (build 11.0.11+9-b60-7590822, mixed mode)
[   +1 ms] executing: [C:\flutter-apps\gamerpower_app\gamerpower - Copy (12-error)\android/]
C:\flutter-apps\gamerpower_app\gamerpower - Copy (12-error)\android\gradlew.bat -Pverbose=true
-Ptarget-platform=android-x86 -Ptarget=C:\flutter-apps\gamerpower_app\gamerpower - Copy (12-error)\lib\main.dart-Pbase-application-name=android.app.Application -Pdart-defines=RkxVVFRFUl9XRUJfQVVUT19ERVRFQ1Q9dHJ1ZQ==
-Pdart-obfuscation=false -Ptrack-widget-creation=true -Ptree-shake-icons=false
-Pfilesystem-scheme=org-dartlang-root assembleDebug
[+1446 ms] Warning: Mapping new ns http://schemas.android.com/repository/android/common/02 to old ns
http://schemas.android.com/repository/android/common/01
[   +2 ms] Warning: Mapping new ns http://schemas.android.com/repository/android/generic/02 to old ns
http://schemas.android.com/repository/android/generic/01
[        ] Warning: Mapping new ns http://schemas.android.com/sdk/android/repo/addon2/02 to old ns
http://schemas.android.com/sdk/android/repo/addon2/01
[        ] Warning: Mapping new ns http://schemas.android.com/sdk/android/repo/repository2/02 to old ns
http://schemas.android.com/sdk/android/repo/repository2/01
[   +1 ms] Warning: Mapping new ns http://schemas.android.com/sdk/android/repo/sys-img2/02 to old ns
http://schemas.android.com/sdk/android/repo/sys-img2/01
[+2078 ms] > Task :app:compileFlutterBuildDebug
[   +1 ms] [  +55 ms] executing: [C:\src\flutter/] git -c log.showSignature=false log -n 1 --pretty=format:%H
[        ] [  +63 ms] Exit code 0 from: git -c log.showSignature=false log -n 1 --pretty=format:%H
[        ] [        ] 5464c5bac742001448fe4fc0597be939379f88ea
[        ] [        ] executing: [C:\src\flutter/] git tag --points-at 5464c5bac742001448fe4fc0597be939379f88ea
[        ] [  +52 ms] Exit code 0 from: git tag --points-at 5464c5bac742001448fe4fc0597be939379f88ea
[        ] [        ] 2.10.5
[        ] [   +6 ms] executing: [C:\src\flutter/] git rev-parse --abbrev-ref --symbolic @{u}
[        ] [  +43 ms] Exit code 0 from: git rev-parse --abbrev-ref --symbolic @{u}
[        ] [        ] origin/stable
[        ] [        ] executing: [C:\src\flutter/] git ls-remote --get-url origin
[        ] [  +35 ms] Exit code 0 from: git ls-remote --get-url origin
[        ] [        ] https://github.com/flutter/flutter.git
[        ] [  +49 ms] executing: [C:\src\flutter/] git rev-parse --abbrev-ref HEAD
[   +1 ms] [  +41 ms] Exit code 0 from: git rev-parse --abbrev-ref HEAD
[        ] [        ] stable
[        ] [  +62 ms] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update.
[        ] [   +5 ms] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'WindowsUwpEngineArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update.
[        ] [ +103 ms] Artifact Instance of 'MaterialFonts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'GradleWrapper' is not required, skipping update.
[        ] [   +4 ms] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update.
[        ] [        ] Artifact Instance of 'FlutterSdk' is not required, skipping update.
[        ] [        ] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'WindowsUwpEngineArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update.
[        ] [        ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'FontSubsetArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'PubDependencies' is not required, skipping update.
[        ] [  +77 ms] Initializing file store
[        ] [  +15 ms] Done initializing file store
[        ] [  +47 ms] Skipping target: gen_localizations
[        ] [  +12 ms] Skipping target: gen_dart_plugin_registrant
[        ] [ +677 ms] Skipping target: kernel_snapshot
[        ] [   +9 ms] invalidated build due to missing files: C:\flutter-apps\gamerpower_app\gamerpower - Copy
(12-error)\DOES_NOT_EXIST_RERUN_FOR_WILDCARD714662207
[ +269 ms] [ +324 ms] debug_android_application: Starting due to {InvalidatedReasonKind.inputMissing: The
following inputs were missing: C:\flutter-apps\gamerpower_app\gamerpower - Copy
(12-error)\DOES_NOT_EXIST_RERUN_FOR_WILDCARD714662207}
[ +206 ms] [ +205 ms] Manifest contained wildcard assets. Inserting missing file into build graph to force
rerun. for more information see #56466.
[ +303 ms] [ +242 ms] debug_android_application: Complete
[ +192 ms] [ +262 ms] Persisting file store
[   +1 ms] [   +9 ms] Done persisting file store
[        ] [   +6 ms] build succeeded.
[        ] [  +15 ms] "flutter assemble" took 2,039ms.
[  +93 ms] [   +8 ms] ensureAnalyticsSent: 4ms
[   +1 ms] [        ] Running shutdown hooks
[        ] [        ] Shutdown hooks complete
[        ] [   +1 ms] exiting with code 0
[        ] Parameter format not correct -
[        ] > Task :app:packLibsflutterBuildDebug UP-TO-DATE
[        ] > Task :app:preBuild UP-TO-DATE
[        ] > Task :app:preDebugBuild UP-TO-DATE
[        ] > Task :google_mobile_ads:preBuild UP-TO-DATE
[        ] > Task :google_mobile_ads:preDebugBuild UP-TO-DATE
[        ] > Task :google_mobile_ads:compileDebugAidl NO-SOURCE
[        ] > Task :path_provider_android:preBuild UP-TO-DATE
[        ] > Task :path_provider_android:preDebugBuild UP-TO-DATE
[        ] > Task :path_provider_android:compileDebugAidl NO-SOURCE
[        ] > Task :shared_preferences_android:preBuild UP-TO-DATE
[        ] > Task :shared_preferences_android:preDebugBuild UP-TO-DATE
[        ] > Task :shared_preferences_android:compileDebugAidl NO-SOURCE
[        ] > Task :sqflite:preBuild UP-TO-DATE
[        ] > Task :sqflite:preDebugBuild UP-TO-DATE
[        ] > Task :sqflite:compileDebugAidl NO-SOURCE
[        ] > Task :url_launcher_android:preBuild UP-TO-DATE
[        ] > Task :url_launcher_android:preDebugBuild UP-TO-DATE
[  +96 ms] > Task :url_launcher_android:compileDebugAidl NO-SOURCE
[        ] > Task :app:compileDebugAidl NO-SOURCE
[        ] > Task :google_mobile_ads:packageDebugRenderscript NO-SOURCE
[        ] > Task :path_provider_android:packageDebugRenderscript NO-SOURCE
[        ] > Task :shared_preferences_android:packageDebugRenderscript NO-SOURCE
[        ] > Task :sqflite:packageDebugRenderscript NO-SOURCE
[        ] > Task :url_launcher_android:packageDebugRenderscript NO-SOURCE
[        ] > Task :app:compileDebugRenderscript NO-SOURCE
[        ] > Task :app:generateDebugBuildConfig UP-TO-DATE
[        ] > Task :google_mobile_ads:writeDebugAarMetadata UP-TO-DATE
[        ] > Task :path_provider_android:writeDebugAarMetadata UP-TO-DATE
[        ] > Task :shared_preferences_android:writeDebugAarMetadata UP-TO-DATE
[        ] > Task :sqflite:writeDebugAarMetadata UP-TO-DATE
[        ] > Task :url_launcher_android:writeDebugAarMetadata UP-TO-DATE
[        ] > Task :app:checkDebugAarMetadata UP-TO-DATE
[  +87 ms] > Task :app:cleanMergeDebugAssets
[        ] > Task :app:mergeDebugShaders UP-TO-DATE
[        ] > Task :app:compileDebugShaders NO-SOURCE
[        ] > Task :app:generateDebugAssets UP-TO-DATE
[        ] > Task :google_mobile_ads:mergeDebugShaders UP-TO-DATE
[        ] > Task :google_mobile_ads:compileDebugShaders NO-SOURCE
[        ] > Task :google_mobile_ads:generateDebugAssets UP-TO-DATE
[        ] > Task :google_mobile_ads:packageDebugAssets UP-TO-DATE
[        ] > Task :path_provider_android:mergeDebugShaders UP-TO-DATE
[        ] > Task :path_provider_android:compileDebugShaders NO-SOURCE
[        ] > Task :path_provider_android:generateDebugAssets UP-TO-DATE
[        ] > Task :path_provider_android:packageDebugAssets UP-TO-DATE
[        ] > Task :shared_preferences_android:mergeDebugShaders UP-TO-DATE
[        ] > Task :shared_preferences_android:compileDebugShaders NO-SOURCE
[        ] > Task :shared_preferences_android:generateDebugAssets UP-TO-DATE
[        ] > Task :shared_preferences_android:packageDebugAssets UP-TO-DATE
[        ] > Task :sqflite:mergeDebugShaders UP-TO-DATE
[        ] > Task :sqflite:compileDebugShaders NO-SOURCE
[        ] > Task :sqflite:generateDebugAssets UP-TO-DATE
[        ] > Task :sqflite:packageDebugAssets UP-TO-DATE
[        ] > Task :url_launcher_android:mergeDebugShaders UP-TO-DATE
[        ] > Task :url_launcher_android:compileDebugShaders NO-SOURCE
[        ] > Task :url_launcher_android:generateDebugAssets UP-TO-DATE
[        ] > Task :url_launcher_android:packageDebugAssets UP-TO-DATE
[        ] > Task :app:mergeDebugAssets
[ +481 ms] > Task :app:copyFlutterAssetsDebug
[        ] > Task :app:generateDebugResValues UP-TO-DATE
[        ] > Task :app:generateDebugResources UP-TO-DATE
[        ] > Task :app:processDebugGoogleServices UP-TO-DATE
[        ] > Task :google_mobile_ads:compileDebugRenderscript NO-SOURCE
[        ] > Task :google_mobile_ads:generateDebugResValues UP-TO-DATE
[        ] > Task :google_mobile_ads:generateDebugResources UP-TO-DATE
[        ] > Task :google_mobile_ads:packageDebugResources UP-TO-DATE
[        ] > Task :path_provider_android:compileDebugRenderscript NO-SOURCE
[        ] > Task :path_provider_android:generateDebugResValues UP-TO-DATE
[        ] > Task :path_provider_android:generateDebugResources UP-TO-DATE
[        ] > Task :path_provider_android:packageDebugResources UP-TO-DATE
[        ] > Task :shared_preferences_android:compileDebugRenderscript NO-SOURCE
[        ] > Task :shared_preferences_android:generateDebugResValues UP-TO-DATE
[        ] > Task :shared_preferences_android:generateDebugResources UP-TO-DATE
[        ] > Task :shared_preferences_android:packageDebugResources UP-TO-DATE
[        ] > Task :sqflite:compileDebugRenderscript NO-SOURCE
[        ] > Task :sqflite:generateDebugResValues UP-TO-DATE
[        ] > Task :sqflite:generateDebugResources UP-TO-DATE
[        ] > Task :sqflite:packageDebugResources UP-TO-DATE
[        ] > Task :url_launcher_android:compileDebugRenderscript NO-SOURCE
[        ] > Task :url_launcher_android:generateDebugResValues UP-TO-DATE
[        ] > Task :url_launcher_android:generateDebugResources UP-TO-DATE
[        ] > Task :url_launcher_android:packageDebugResources UP-TO-DATE
[        ] > Task :app:mergeDebugResources UP-TO-DATE
[        ] > Task :app:createDebugCompatibleScreenManifests UP-TO-DATE
[        ] > Task :app:extractDeepLinksDebug UP-TO-DATE
[        ] > Task :google_mobile_ads:extractDeepLinksDebug UP-TO-DATE
[        ] > Task :google_mobile_ads:processDebugManifest UP-TO-DATE
[        ] > Task :path_provider_android:extractDeepLinksDebug UP-TO-DATE
[        ] > Task :path_provider_android:processDebugManifest UP-TO-DATE
[        ] > Task :shared_preferences_android:extractDeepLinksDebug UP-TO-DATE
[        ] > Task :shared_preferences_android:processDebugManifest UP-TO-DATE
[        ] > Task :sqflite:extractDeepLinksDebug UP-TO-DATE
[        ] > Task :sqflite:processDebugManifest UP-TO-DATE
[        ] > Task :url_launcher_android:extractDeepLinksDebug UP-TO-DATE
[  +88 ms] > Task :url_launcher_android:processDebugManifest UP-TO-DATE
[   +1 ms] > Task :app:processDebugMainManifest UP-TO-DATE
[        ] > Task :app:processDebugManifest UP-TO-DATE
[        ] > Task :app:processDebugManifestForPackage UP-TO-DATE
[        ] > Task :google_mobile_ads:compileDebugLibraryResources UP-TO-DATE
[        ] > Task :google_mobile_ads:parseDebugLocalResources UP-TO-DATE
[        ] > Task :google_mobile_ads:generateDebugRFile UP-TO-DATE
[        ] > Task :path_provider_android:compileDebugLibraryResources UP-TO-DATE
[        ] > Task :path_provider_android:parseDebugLocalResources UP-TO-DATE
[        ] > Task :path_provider_android:generateDebugRFile UP-TO-DATE
[        ] > Task :shared_preferences_android:compileDebugLibraryResources UP-TO-DATE
[        ] > Task :shared_preferences_android:parseDebugLocalResources UP-TO-DATE
[        ] > Task :shared_preferences_android:generateDebugRFile UP-TO-DATE
[        ] > Task :sqflite:compileDebugLibraryResources UP-TO-DATE
[        ] > Task :sqflite:parseDebugLocalResources UP-TO-DATE
[  +83 ms] > Task :sqflite:generateDebugRFile UP-TO-DATE
[        ] > Task :url_launcher_android:compileDebugLibraryResources UP-TO-DATE
[        ] > Task :url_launcher_android:parseDebugLocalResources UP-TO-DATE
[        ] > Task :url_launcher_android:generateDebugRFile UP-TO-DATE
[        ] > Task :app:processDebugResources UP-TO-DATE
[        ] > Task :google_mobile_ads:generateDebugBuildConfig UP-TO-DATE
[        ] > Task :google_mobile_ads:javaPreCompileDebug UP-TO-DATE
[        ] > Task :google_mobile_ads:compileDebugJavaWithJavac UP-TO-DATE
[        ] > Task :google_mobile_ads:bundleLibCompileToJarDebug UP-TO-DATE
[        ] > Task :path_provider_android:generateDebugBuildConfig UP-TO-DATE
[        ] > Task :path_provider_android:javaPreCompileDebug UP-TO-DATE
[  +89 ms] > Task :path_provider_android:compileDebugJavaWithJavac UP-TO-DATE
[   +1 ms] > Task :path_provider_android:bundleLibCompileToJarDebug UP-TO-DATE
[        ] > Task :shared_preferences_android:generateDebugBuildConfig UP-TO-DATE
[        ] > Task :shared_preferences_android:javaPreCompileDebug UP-TO-DATE
[        ] > Task :shared_preferences_android:compileDebugJavaWithJavac UP-TO-DATE
[        ] > Task :shared_preferences_android:bundleLibCompileToJarDebug UP-TO-DATE
[        ] > Task :sqflite:generateDebugBuildConfig UP-TO-DATE
[        ] > Task :sqflite:javaPreCompileDebug UP-TO-DATE
[        ] > Task :sqflite:compileDebugJavaWithJavac UP-TO-DATE
[        ] > Task :sqflite:bundleLibCompileToJarDebug UP-TO-DATE
[        ] > Task :url_launcher_android:generateDebugBuildConfig UP-TO-DATE
[        ] > Task :url_launcher_android:javaPreCompileDebug UP-TO-DATE
[        ] > Task :url_launcher_android:compileDebugJavaWithJavac UP-TO-DATE
[        ] > Task :url_launcher_android:bundleLibCompileToJarDebug UP-TO-DATE
[        ] > Task :app:compileDebugKotlin UP-TO-DATE
[        ] > Task :app:javaPreCompileDebug UP-TO-DATE
[ +386 ms] > Task :app:compileDebugJavaWithJavac FAILED
[   +1 ms] C:\flutter-apps\gamerpower_app\gamerpower - Copy
(12-error)\android\app\src\main\java\com\app\gamerpower\adFactoryExample.java:38: error: cannot find symbol
[   +1 ms]     final NativeAdView adView = (NativeAdView) layoutInflater.inflate(R.layout.my_native_ad, null);
[        ]                                                                               ^
[        ]   symbol:   variable my_native_ad
[        ]   location: class layout
[        ] C:\flutter-apps\gamerpower_app\gamerpower - Copy
(12-error)\android\app\src\main\java\com\app\gamerpower\adFactoryExample.java:41: error: cannot find symbol
[        ]     adView.setMediaView((MediaView) adView.findViewById(R.id.ad_media));
[        ]                                                             ^
[        ]   symbol:   variable ad_media
[        ]   location: class id
[        ] C:\flutter-apps\gamerpower_app\gamerpower - Copy
(12-error)\android\app\src\main\java\com\app\gamerpower\adFactoryExample.java:44: error: cannot find symbol
[   +1 ms]     adView.setHeadlineView(adView.findViewById(R.id.ad_headline));
[        ]                                                    ^
[        ]   symbol:   variable ad_headline
[        ]   location: class id
[   +1 ms] C:\flutter-apps\gamerpower_app\gamerpower - Copy
(12-error)\android\app\src\main\java\com\app\gamerpower\adFactoryExample.java:45: error: cannot find symbol
[   +1 ms]     adView.setBodyView(adView.findViewById(R.id.ad_body));
[   +1 ms]                                                ^
[        ]   symbol:   variable ad_body
[        ]   location: class id
[        ] C:\flutter-apps\gamerpower_app\gamerpower - Copy
(12-error)\android\app\src\main\java\com\app\gamerpower\adFactoryExample.java:46: error: cannot find symbol
[   +1 ms]     adView.setCallToActionView(adView.findViewById(R.id.ad_call_to_action));
[        ]                                                        ^
[        ]   symbol:   variable ad_call_to_action
[        ]   location: class id
[        ] C:\flutter-apps\gamerpower_app\gamerpower - Copy
(12-error)\android\app\src\main\java\com\app\gamerpower\adFactoryExample.java:47: error: cannot find symbol
[        ]     adView.setIconView(adView.findViewById(R.id.ad_app_icon));
[        ]                                                ^
[        ]   symbol:   variable ad_app_icon
[        ]   location: class id
[        ] C:\flutter-apps\gamerpower_app\gamerpower - Copy
(12-error)\android\app\src\main\java\com\app\gamerpower\adFactoryExample.java:48: error: cannot find symbol
[        ]     adView.setPriceView(adView.findViewById(R.id.ad_price));
[        ]                                                 ^
[        ]   symbol:   variable ad_price
[        ]   location: class id
[        ] C:\flutter-apps\gamerpower_app\gamerpower - Copy
(12-error)\android\app\src\main\java\com\app\gamerpower\adFactoryExample.java:49: error: cannot find symbol
[        ]     adView.setStarRatingView(adView.findViewById(R.id.ad_stars));
[        ]                                                      ^
[        ]   symbol:   variable ad_stars
[        ]   location: class id
[        ] C:\flutter-apps\gamerpower_app\gamerpower - Copy
(12-error)\android\app\src\main\java\com\app\gamerpower\adFactoryExample.java:50: error: cannot find symbol
[   +1 ms]     adView.setStoreView(adView.findViewById(R.id.ad_store));
[        ]                                                 ^
[        ]   symbol:   variable ad_store
[        ]   location: class id
[        ] C:\flutter-apps\gamerpower_app\gamerpower - Copy
(12-error)\android\app\src\main\java\com\app\gamerpower\adFactoryExample.java:51: error: cannot find symbol
[        ]     adView.setAdvertiserView(adView.findViewById(R.id.ad_advertiser));
[        ]                                                      ^
[        ]   symbol:   variable ad_advertiser
[        ]   location: class id
[        ] 10 errors
[        ] FAILURE: Build failed with an exception.
[        ] * What went wrong:
[        ] Execution failed for task ':app:compileDebugJavaWithJavac'.
[        ] > Compilation failed; see the compiler error output for details.
[        ] * 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
[        ] Deprecated Gradle features were used in this build, making it incompatible with Gradle 7.0.
[        ] Use '--warning-mode all' to show the individual deprecation warnings.
[        ] See https://docs.gradle.org/6.7/userguide/command_line_interface.html#sec:command_line_warnings
[        ] 90 actionable tasks: 5 executed, 85 up-to-date
[ +527 ms] Running Gradle task 'assembleDebug'... (completed in 6.9s)
[+2930 ms] Exception: Gradle task assembleDebug failed with exit code 1
[   +1 ms] "flutter run" took 10,712ms.
[   +3 ms]
           #0      throwToolExit (package:flutter_tools/src/base/common.dart:10:3)
           #1      RunCommand.runCommand (package:flutter_tools/src/commands/run.dart:687:9)
           <asynchronous suspension>
           #2      FlutterCommand.run.<anonymous closure>
(package:flutter_tools/src/runner/flutter_command.dart:1161:27)
           <asynchronous suspension>
           #3      AppContext.run.<anonymous closure> (package:flutter_tools/src/base/context.dart:150:19)
           <asynchronous suspension>
           #4      CommandRunner.runCommand (package:args/command_runner.dart:209:13)
           <asynchronous suspension>
           #5      FlutterCommandRunner.runCommand.<anonymous closure>
           (package:flutter_tools/src/runner/flutter_command_runner.dart:281:9)
           <asynchronous suspension>
           #6      AppContext.run.<anonymous closure> (package:flutter_tools/src/base/context.dart:150:19)
           <asynchronous suspension>
           #7      FlutterCommandRunner.runCommand
(package:flutter_tools/src/runner/flutter_command_runner.dart:229:5)
           <asynchronous suspension>
           #8      run.<anonymous closure>.<anonymous closure> (package:flutter_tools/runner.dart:62:9)
           <asynchronous suspension>
           #9      AppContext.run.<anonymous closure> (package:flutter_tools/src/base/context.dart:150:19)
           <asynchronous suspension>
           #10     main (package:flutter_tools/executable.dart:94:3)
           <asynchronous suspension>

[   +8 ms] ensureAnalyticsSent: 2ms
[   +1 ms] Running shutdown hooks
[        ] Shutdown hooks complete
[        ] exiting with code 1

warning - The include file 'package:flutter_lints/flutter.yaml' in 'C:\flutter-apps\gamerpower_app\gamerpower -
       Copy (12-error)\analysis_options.yaml' can't be found when analyzing
       'C:\flutter-apps\gamerpower_app\gamerpower - Copy (12-error)' - analysis_options.yaml:10:10 -
       include_file_not_found
   info - Unused import: '../models/http_exception.dart' - lib\providers\explore_provider.dart:5:8 -
          unused_import
   info - Unused import: '../models/http_exception.dart' - lib\providers\giveaways_provider.dart:5:8 -
          unused_import
   info - Unused import: '../models/http_exception.dart' - lib\providers\my_offers.dart:5:8 - unused_import
   info - Unused import: 'auth_provider.dart' - lib\providers\my_offers.dart:6:8 - unused_import
   info - Unused import: '../models/offer.dart' - lib\providers\my_stats.dart:2:8 - unused_import
   info - Unused import: '../models/http_exception.dart' - lib\providers\my_stats.dart:5:8 - unused_import
   info - Unused import: 'auth_provider.dart' - lib\providers\my_stats.dart:6:8 - unused_import
   info - Unused import: '../models/offer.dart' - lib\providers\search_delegate.dart:3:8 - unused_import
   info - Unused import: 'package:cached_network_image/cached_network_image.dart' -
          lib\providers\search_delegate.dart:8:8 - unused_import
   info - Unused import: '../models/http_exception.dart' - lib\providers\search_provider.dart:5:8 -
          unused_import
   info - Unused import: 'auth_provider.dart' - lib\providers\search_provider.dart:6:8 - unused_import
   info - Unused import: 'package:http/http.dart' - lib\screens\collection_screen.dart:4:8 - unused_import
   info - Unused import: '../widgets/badge.dart' - lib\screens\collection_screen.dart:6:8 - unused_import
   info - Unused import: 'package:font_awesome_flutter/font_awesome_flutter.dart' -
          lib\screens\collection_screen.dart:13:8 - unused_import
   info - Unused import: 'dart:developer' - lib\screens\details_screen.dart:7:8 - unused_import
   info - The value of the local variable 'rarity' isn't used - lib\screens\details_screen.dart:76:9 -
          unused_local_variable
   info - Unused import: 'package:http/http.dart' - lib\screens\explore_screen.dart:2:8 - unused_import
   info - Unused import: 'dart:convert' - lib\screens\explore_screen.dart:3:8 - unused_import
   info - Unused import: 'package:google_mobile_ads/google_mobile_ads.dart' -
          lib\screens\explore_screen.dart:4:8 - unused_import
   info - Unused import: '/ad_helper.dart' - lib\screens\explore_screen.dart:5:8 - unused_import
   info - Unused import: '../models/offer.dart' - lib\screens\explore_screen.dart:9:8 - unused_import
   info - Unused import: 'package:font_awesome_flutter/font_awesome_flutter.dart' -
          lib\screens\explore_screen.dart:11:8 - unused_import
   info - Unused import: '../widgets/trending_horizontal_slider.dart' - lib\screens\explore_screen.dart:14:8 -
          unused_import
   info - Unused import: '../widgets/banner_widget.dart' - lib\screens\explore_screen.dart:15:8 - unused_import
   info - The value of the local variable 'deviceSize' isn't used - lib\screens\explore_screen.dart:25:11 -
          unused_local_variable
   info - The parameter 'padding' is required - lib\screens\explore_screen.dart:752:41 - missing_required_param
   info - Unused import: 'package:http/http.dart' - lib\screens\giveaways_screen - Copy.dart:2:8 - unused_import   info - Unused import: 'dart:convert' - lib\screens\giveaways_screen - Copy.dart:3:8 - unused_import
   info - Unused import: 'package:http/http.dart' - lib\screens\giveaways_screen.dart:2:8 - unused_import
   info - Unused import: 'dart:convert' - lib\screens\giveaways_screen.dart:3:8 - unused_import
   info - The declaration '_initGoogleMobileAds' isn't referenced - lib\screens\giveaways_screen.dart:24:32 -
          unused_element
   info - The declaration '_getDestinationItemIndex' isn't referenced - lib\screens\giveaways_screen.dart:57:7 -          unused_element
   info - Unused import: 'test_screen.dart' - lib\screens\home_screen.dart:5:8 - unused_import
   info - Unused import: 'dart:math' - lib\screens\login_screen.dart:1:8 - unused_import
   info - The value of the field '_isLoading' isn't used - lib\screens\login_screen.dart:98:7 - unused_field
   info - The declaration '_switchAuthMode' isn't referenced - lib\screens\login_screen.dart:205:8 -
          unused_element
   info - This function has a return type of 'String', but doesn't end with a return statement -
          lib\screens\login_screen.dart:242:30 - missing_return
   info - This function has a return type of 'String', but doesn't end with a return statement -
          lib\screens\login_screen.dart:255:30 - missing_return
   info - This function has a return type of 'String', but doesn't end with a return statement -
          lib\screens\login_screen.dart:281:31 - missing_return
   info - Unused import: 'dart:math' - lib\screens\register_screen.dart:1:8 - unused_import
   info - The value of the field '_isLoading' isn't used - lib\screens\register_screen.dart:98:7 - unused_field
   info - The value of the field '_slideAnimation' isn't used - lib\screens\register_screen.dart:101:21 -
          unused_field
   info - The value of the field '_opacityAnimation' isn't used - lib\screens\register_screen.dart:102:21 -
          unused_field
   info - 'RaisedButton' is deprecated and shouldn't be used. Use ElevatedButton instead. See the migration
          guide in flutter.dev/go/material-button-migration-guide). This feature was deprecated after
          v1.26.0-18.0.pre. - lib\screens\register_screen.dart:144:11 - deprecated_member_use
   info - 'RaisedButton.RaisedButton' is deprecated and shouldn't be used. Use ElevatedButton instead. See the
          migration guide in flutter.dev/go/material-button-migration-guide). This feature was deprecated after
          v1.26.0-18.0.pre. - lib\screens\register_screen.dart:144:11 - deprecated_member_use
   info - The declaration '_switchAuthMode' isn't referenced - lib\screens\register_screen.dart:209:8 -
          unused_element
   info - 'accentColor' is deprecated and shouldn't be used. Use colorScheme.secondary instead. For more
          information, consult the migration guide at
          https://flutter.dev/docs/release/breaking-changes/theme-data-accent-properties#migration-guide. This
          feature was deprecated after v2.3.0-0.1.pre. - lib\widgets\badge.dart:29:64 - deprecated_member_use
   info - The declaration '_initGoogleMobileAds' isn't referenced - lib\widgets\banner_widget.dart:15:32 -
          unused_element
   info - This method overrides a method annotated as '@mustCallSuper' in 'State', but doesn't invoke the
          overridden method - lib\widgets\banner_widget.dart:27:8 - must_call_super
   info - The value of the field '_getMoreData' isn't used - lib\widgets\trending_horizontal_slider.dart:17:8 -
          unused_field
   info - The parameter 'tag' is required - lib\widgets\trending_horizontal_slider.dart:88:20 -
          missing_required_param
   info - The parameter 'image' is required - lib\widgets\trending_horizontal_slider.dart:94:26 -
          missing_required_param

53 issues found. (ran in 2.5s)

[√] Flutter (Channel stable, 2.10.5, on Microsoft Windows [Version 10.0.19044.1645], locale en-US)
    • Flutter version 2.10.5 at C:\src\flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 5464c5bac7 (4 weeks ago), 2022-04-18 09:55:37 -0700
    • Engine revision 57d3bac3dd
    • Dart version 2.16.2
    • DevTools version 2.9.2

[√] Android toolchain - develop for Android devices (Android SDK version 31.0.0)
    • Android SDK at C:\Users\justpaulo\AppData\Local\Android\sdk
    • Platform android-31, build-tools 31.0.0
    • Java binary at: C:\Program Files\Android\Android Studio\jre\bin\java
    • Java version OpenJDK Runtime Environment (build 11.0.11+9-b60-7590822)
    • All Android licenses accepted.

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

[X] Visual Studio - develop for Windows
    X Visual Studio not installed; this is necessary for Windows development.
      Download at https://visualstudio.microsoft.com/downloads/.
      Please install the "Desktop development with C++" workload, including all of its default components

[√] Android Studio (version 2021.1)
    • Android Studio at C:\Program Files\Android\Android Studio
    • Flutter plugin can be installed from:
       https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
       https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.11+9-b60-7590822)

[√] VS Code (version 1.67.2)
    • VS Code at C:\Users\justpaulo\AppData\Local\Programs\Microsoft VS Code
    • Flutter extension version 3.40.0

[√] Connected device (4 available)
    • sdk gphone x86 (mobile) • emulator-5554 • android-x86    • Android 11 (API 30) (emulator)
    • Windows (desktop)       • windows       • windows-x64    • Microsoft Windows [Version 10.0.19044.1645]
    • Chrome (web)            • chrome        • web-javascript • Google Chrome 101.0.4951.67
    • Edge (web)              • edge          • web-javascript • Microsoft Edge 101.0.1210.47

[!] HTTP Host Availability
    X HTTP host https://maven.google.com/ is not reachable. Reason: An error occurred while checking the HTTP
      host: Failed host lookup: 'maven.google.com'
    X HTTP host https://pub.dev/ is not reachable. Reason: An error occurred while checking the HTTP host:
      Failed host lookup: 'pub.dev'
    X HTTP host https://cloud.google.com/ is not reachable. Reason: An error occurred while checking the HTTP
      host: Failed host lookup: 'cloud.google.com'

! Doctor found issues in 2 categories.

Hi @ldobreira, Thanks for filing the issue. I directly ran the native ads example from the repo and it seems to work fine

Hi @maheshmnj, unfortunately, the native ads example from the repo is giving me another error: "Build failed due to use of deprecated Android v1 embedding"...
And yes the "error: cannot find symbol" is the reason for the build failure, specifically the file adFactoryExample.java, however that file is a copy of the tutorials/repo, so I don't understand how I can fix the error...

@maheshmnj I was able to make the codelabs repo to work but I also found another interesting detail, that is maybe the real problem, the admob-inline-ads-in-flutter example from Codelabs is actually really different from the googleads-mobile-flutter examples and documentation...
Just compare the ListTileNativeAdFactory.java (from Codelabs) with NativeAdFactoryExample.java (from googleads).
For some reason the Codelabs version seems to work better since I'm getting the "cannot find symbol" error because i'm trying to follow the googleads-mobile-flutter examples...

Seems that this error is related with the NativeAdFactory file (eg: ListTileNativeAdFactory.java) and the layout at app/src/main/res/layout/list_title_native_ad.xml
This is how I fix it: I went to the Google Codelabs example at https://github.com/googlecodelabs/admob-inline-ads-in-flutter/tree/main/complete and just copied those 2 files exactly like the example. That solved the issue.
I believe using both Codelabs and the official Documentation was the cause for this issue since they are very different, anyone that tries to use and adapt both examples will probably replicate the issue.

We’re closing this issue due to inactivity. If you’re still impacted, please create a new issue via the Developer Forum.


Dockerizing an ASP.NET Core Web API app and SQL Server

Proposed title of article
[Containers] Dockerizing an ASP.NET Core Web API app and SQL Server
Introduction paragraph:
In the past years, ASP.NET web apps used to be deployed on Windows Server and IIS which were not cloud-native. However, since the introduction of open-source and cross-platform .NET Core and SQL Server for Linux, the applications are now cloud-friendly.
Moreover, with the combination of container management platforms such as Docker, it is easy to run high-performance .NET services in the cloud.
In this tutorial, we will build a CRUD application in ASP.NET Core with SQL Server and run it in a Docker container.
Key takeaways:
At the end of the tutorial, the learner will be able to:

configure ASP.NET and SQL Server to run on Docker
create a REST API to perform CRUD operations
use Entity Framework Core to interact with SQL Server Docker container

References:

https://docs.microsoft.com/en-us/dotnet/core/docker/build-container?tabs=windows
https://docs.docker.com/samples/dotnetcore/
https://www.sqlshack.com/how-to-set-up-and-run-sql-server-docker-image/

Good afternoon and thank you for submitting your topic suggestion.
Your topic form has been entered into our queue and should be reviewed (for approval) as soon as a content moderator is finished reviewing the ones in the queue before it.

We're really looking for unique/original content, and based on the content provided, it seems that information that you intend to cover is already readily available through the documentation or via many other blog sites.
Could you please expand upon how your content will differ from what is already available through other websites and documentation? We lean towards content that offers an original viewpoint/approach around programming-centric topics.
@lewe01

We're really looking for unique/original content, and based on the content provided, it seems that information that you intend to cover is already readily available through the documentation or via many other blog sites.
Could you please expand upon how your content will differ from what is already available through other websites and documentation? We lean towards content that offers an original viewpoint/approach around programming-centric topics.
@lewe01

@hectorkambow Thank you for the feedback. The suggested article will differ in the following ways:

I will use container orchestration to run both ASP.NET Core container and SQL Server container, unlike a number of articles readily available in the blog sites which runs both separately
I will create a CRUD RESTful API using Docker for ASP.NET and SQL Server instead of standalone application discussed in already existing articles
I will use database migration such that in case data schema changes, they are synced with application data model unlike in existing articles which are normal SQL databases.
Looking forward to topic approval.
cc @WanjaMIKE

Sounds like a helpful topic - let's please be sure it adds value beyond what is in any official docs and/or what is covered in other blog sites. (the articles should go beyond a basic explanation - and it is always best to reference any EngEd article and build upon it). @lewe01
Please be attentive to grammar/readability and make sure that you put your article through a thorough editing review prior to submitting it for final approval. (There are some great free tools that we reference in EngEd resources.)
ANY ARTICLE SUBMITTED WITH GLARING ERRORS WILL BE IMMEDIATELY CLOSED.
Please be sure to double-check that it does not overlap with any existing EngEd articles, articles on other blog sites, or any incoming EngEd topic suggestions (if you haven't already) to avoid any potential article closure, please reference any relevant EngEd articles in yours. - Approved

Closing due to inactivity

closed #3884 via #5183


Return orignal signin error code to caller.

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