text:
flatcar image with open-vm-tools + cloud-init metadata from openstacks' metadata_urls

Current situation
We are running Openstack for management and vSphere/ESXi as hypervisor.
The openstack flatcar image does get cloud-init data from the usual metadata_urls but does not have open-vm-tools installed.
The vmware flatcar image does try to get cloud-init data from somewhere else (config-drive? i'll have a look at the logs if that it important) and fails but does have open-vm-tools installed.
Impact
If we select one of the images we loose certain functions.
Ideal future situation
An image with cloud-init getting data from openstacks' metadata_url AND open-vm-tools installed.
Implementation options
Create an image with both options OR make the vmware images' cloud-init also try the metadata_url.
Additional information
asked on twitter before and had a quick chat (thanks)
https://twitter.com/fink_/status/1356191173426208772
cc @pothos

Do you have a way of specifying VMware guestinfo variables for the instances?
You should use the VMware images (e.g., ova) and set the guestinfo.ignition.config.url to point to the OpenStack metadata URL.
Here are the details: https://kinvolk.io/docs/flatcar-container-linux/latest/installing/cloud/vmware/
Noteworthy is that the Ignition with VMware can only use DHCP, do you have DHCP?
(There are kernel parameters to specify a static IP address but you can't set them via guestinfo variables).

Thanks for the quick reply.
I think we could get there, but we'd have to automate that for every new VM with a flatcar image.
I suspect that this will not happen as it would require some engineering effort.
An easy way out would be a mixed image with vmware-tools+metadata from openstack :)

You could modify the flatcar image you use by embedding a default config.ign  ignition file on the OEM partition which contains a replace directive to point to the openstack URL:
{ "ignition": { "version": "2.1.0", "config": { "replace": { "source": "http://..." } } } }

Thanks, that looks like a solution for us.
I'll close the ticket and eventually add a note with the commands/script that we used. You can then use it in your docs if you like.

somehow this did not work as expected and i cant find something pointing to errors in the oem-ignition file...
I added the file via guestfish:
guestfish --rw -a flatcar_production_vmware_image.vmdk <<EOF
run
mount /dev/sda6 /
write "/base/user.ign" "{ \"ignition\": { \"version\": \"2.1.0\", \"config\": { \"replace\": { \"source\": \"http://169.254.169.254:80/\" } } } }"
umount /
EOF

That did create this file: /usr/share/oem/base/user.ign

Thanks for sharing. Can you try again using /config.ign instead? And I think the URL would be http://169.254.169.254:80/latest/meta-data, or?

Yes, the URI was of course wrong. Do you mean partition6/config.ign or partition3/config.ign?
I tried to put it in partition6 and now have a loop starting some services. As i get new logs every few seconds i cant scroll up. systemd.debug-shell, earlyprink and console did also not work to get logs to ttyS0.
https://kinvolk.io/docs/flatcar-container-linux/latest/provisioning/ignition/boot-process/ sadly also did not help. Is there some documentation on how to debug the boot process?

Partition 6 is correct. Hm, having it loop means that Ignition runs into some problem either when accessing http://169.254.169.254:80/latest/meta-data or when processing its contents. The logs should go to the serial console with someting like console=ttyS1 earlyprintk=serial,ttyS1 (use ttyS1,57600n8 or similar depending on your hardware), is it blank for you?

Closing but feel free to ask follow up questions

authors: Finkregh pothos

repo: flatcar-linux/Flatcar


text:
update: gcc

Name: gcc
CVEs: CVE-2023-4039
CVSSs: 4.8
Action Needed: update to >= 13.2.1_p20231014
Summary: A failure in the -fstack-protector feature in GCC-based toolchains that target AArch64 allows an attacker to exploit an existing buffer overflow in dynamically-sized local variables in your application without this being detected. This stack-protector failure only applies to C99-style dynamically-sized local variables or those created using alloca(). The stack-protector operates as intended for statically-sized local variables. The default behavior when the stack-protector detects an overflow is to terminate your application, resulting in controlled loss of availability. An attacker who can exploit a buffer overflow without triggering the stack-protector might be able to change program flow control to cause an uncontrolled loss of availability or to go further and affect confidentiality or integrity.
refmap.gentoo: https://bugs.gentoo.org/914070

Fixed in 13.2.1_p20231014.

source: gharchive/issue

repo: flatcar/Flatcar

license_type: permissive

license_source: github-api


text:
build_library/grub_install: Try mounting ESP directory in a loop

Apparently successful [[ -b "${LOOP_DEV}p1" ]] check is not enough - the mount can still fail. So instead of doing those checks, try mounting and reprobing in the loop with some small exponential backoffs.
Tested in http://jenkins.infra.kinvolk.io:8080/job/container/job/image/3905/
09:08:56  INFO    grub_install.sh: Installing GRUB arm64-efi in flatcar_production_image.bin
09:08:56  mount: /tmp/tmp.zIJJtMzPZe: special device /dev/loop0p1 does not exist.
09:08:56         dmesg(1) may have more information after failed mount system call.
09:08:56  WARNING grub_install.sh: loopback device node /dev/loop0p1 still missing, reprobing...
09:08:56  INFO    grub_install.sh: Compressing modules in flatcar/grub/arm64-efi
09:08:58  INFO    grub_install.sh: Generating flatcar/grub/arm64-efi/load.cfg

Backported to 3033, 3510, 3602 and 3745.

source: gharchive/pull-request

repo: flatcar/scripts


text:
Support changing of App ID

The current way of changing the App ID (e.g. when you moved your Homepage) is to create a new App with the new ID and put a flathub.json with a end-of-life and end-of-life-rebase in the old Repo. But this is currently not supported by the Website.
Let's take a look at CherryTree for example. Old ID was com.giuspen.cherrytre, new ID is net.giuspen.cherrytree. If we take a look at the old Repo, we can find this flathub.json:
{
  "end-of-life": "The application has been renamed to net.giuspen.cherrytree",
  "end-of-life-rebase": "net.giuspen.cherrytree"
}

It clearly says that the App has changed it's ID to net.giuspen.cherrytree.
Now let's try to access https://beta.flathub.org/de/apps/details/com.giuspen.cherrytree. It will give you a 404. So it will break all existing Links, which is a bad user experience. Instead of doing that, this Page should redirect to https://beta.flathub.org/de/apps/details/net.giuspen.cherrytree.
It should also move all Data to the new ID. Currently these are only the Download stats, but there will maybe more in the future.

Relevant issue #51

Closing, as the main thing has been achived.
Migrating downloads is being discussed here: https://github.com/flathub/website/pull/833

authors: JakobDev bilelmoussaoui razzeee

repo: flathub/website


text:
Added loadedPlugins attribute on fp instance

I was looking for a clean way to check that the monthSelect plugin has been loaded inside the confirmDate plugin (to enable the confirm button if the monthSelect is loaded) and there wasn't any. I added an attribute called loadedPlugins on the fp instance in which each plugin pushes its own name.
Same problem was referenced in #1217

Looks fantastic, great idea @viorelsfetea

authors: chmln viorelsfetea

repo: flatpickr/flatpickr

license: MIT


text:
Failed to start Flutter renderer: No available configurations for the given RGBA pixel format

Please note, I believe this issue was previously reported both in https://github.com/flet-dev/flet/issues/166 and in https://github.com/AppFlowy-IO/AppFlowy/issues/418
However in those issues there was no response/follow-up, and so the issue was closed before it could be resolved.
My best guess right now is that this issue affects all users who are trying to run Appflowy on any Ubuntu-based OS distribution - and possibly other Linux distributions as well.
I've tried installing Appflowy in two ways (Docker and "Building the docker image") as described in this document:
https://appflowy.gitbook.io/docs/essential-documentation/install-appflowy/installation-methods/installing-with-docker
Both methods have failed with the same error as follows:
 $ docker-compose up
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 699, in urlopen
    httplib_response = self._make_request(
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 394, in _make_request
    conn.request(method, url, **httplib_request_kw)
  File "/usr/lib/python3.10/http/client.py", line 1282, in request
    self._send_request(method, url, body, headers, encode_chunked)
  File "/usr/lib/python3.10/http/client.py", line 1328, in _send_request
    self.endheaders(body, encode_chunked=encode_chunked)
  File "/usr/lib/python3.10/http/client.py", line 1277, in endheaders
    self._send_output(message_body, encode_chunked=encode_chunked)
  File "/usr/lib/python3.10/http/client.py", line 1037, in _send_output
    self.send(msg)
  File "/usr/lib/python3.10/http/client.py", line 975, in send
    self.connect()
  File "/usr/lib/python3/dist-packages/docker/transport/unixconn.py", line 30, in connect
    sock.connect(self.unix_socket)
PermissionError: [Errno 13] Permission denied

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/requests/adapters.py", line 439, in send
    resp = conn.urlopen(
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 755, in urlopen
    retries = retries.increment(
  File "/usr/lib/python3/dist-packages/urllib3/util/retry.py", line 532, in increment
    raise six.reraise(type(error), error, _stacktrace)
  File "/usr/lib/python3/dist-packages/six.py", line 718, in reraise
    raise value.with_traceback(tb)
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 699, in urlopen
    httplib_response = self._make_request(
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 394, in _make_request
    conn.request(method, url, **httplib_request_kw)
  File "/usr/lib/python3.10/http/client.py", line 1282, in request
    self._send_request(method, url, body, headers, encode_chunked)
  File "/usr/lib/python3.10/http/client.py", line 1328, in _send_request
    self.endheaders(body, encode_chunked=encode_chunked)
  File "/usr/lib/python3.10/http/client.py", line 1277, in endheaders
    self._send_output(message_body, encode_chunked=encode_chunked)
  File "/usr/lib/python3.10/http/client.py", line 1037, in _send_output
    self.send(msg)
  File "/usr/lib/python3.10/http/client.py", line 975, in send
    self.connect()
  File "/usr/lib/python3/dist-packages/docker/transport/unixconn.py", line 30, in connect
    sock.connect(self.unix_socket)
urllib3.exceptions.ProtocolError: ('Connection aborted.', PermissionError(13, 'Permission denied'))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/docker/api/client.py", line 214, in _retrieve_server_version
    return self.version(api_version=False)["ApiVersion"]
  File "/usr/lib/python3/dist-packages/docker/api/daemon.py", line 181, in version
    return self._result(self._get(url), json=True)
  File "/usr/lib/python3/dist-packages/docker/utils/decorators.py", line 46, in inner
    return f(self, *args, **kwargs)
  File "/usr/lib/python3/dist-packages/docker/api/client.py", line 237, in _get
    return self.get(url, **self._set_request_timeout(kwargs))
  File "/usr/lib/python3/dist-packages/requests/sessions.py", line 555, in get
    return self.request('GET', url, **kwargs)
  File "/usr/lib/python3/dist-packages/requests/sessions.py", line 542, in request
    resp = self.send(prep, **send_kwargs)
  File "/usr/lib/python3/dist-packages/requests/sessions.py", line 655, in send
    r = adapter.send(request, **kwargs)
  File "/usr/lib/python3/dist-packages/requests/adapters.py", line 498, in send
    raise ConnectionError(err, request=request)
requests.exceptions.ConnectionError: ('Connection aborted.', PermissionError(13, 'Permission denied'))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/bin/docker-compose", line 33, in <module>
    sys.exit(load_entry_point('docker-compose==1.29.2', 'console_scripts', 'docker-compose')())
  File "/usr/lib/python3/dist-packages/compose/cli/main.py", line 81, in main
    command_func()
  File "/usr/lib/python3/dist-packages/compose/cli/main.py", line 200, in perform_command
    project = project_from_options('.', options)
  File "/usr/lib/python3/dist-packages/compose/cli/command.py", line 60, in project_from_options
    return get_project(
  File "/usr/lib/python3/dist-packages/compose/cli/command.py", line 152, in get_project
    client = get_client(
  File "/usr/lib/python3/dist-packages/compose/cli/docker_client.py", line 41, in get_client
    client = docker_client(
  File "/usr/lib/python3/dist-packages/compose/cli/docker_client.py", line 170, in docker_client
    client = APIClient(use_ssh_client=not use_paramiko_ssh, **kwargs)
  File "/usr/lib/python3/dist-packages/docker/api/client.py", line 197, in __init__
    self._version = self._retrieve_server_version()
  File "/usr/lib/python3/dist-packages/docker/api/client.py", line 221, in _retrieve_server_version
    raise DockerException(
docker.errors.DockerException: Error while fetching server API version: ('Connection aborted.', PermissionError(13, 'Permission denied'))

OS environment:
Ubuntu 22.04.1 LTS \n \l
plasmashell 5.24.6

Also, mentioning just in case it's useful - there also seem to be some reference to this mentioned in a flutter github issue:
https://github.com/flutter/flutter/issues/59738
I think this issue is worth addressing for a few reasons.  Appflowy is intended to be a replacement for Notion.so, especially from a security stand-point, and many security conscious folks will be Linux desktop users.  Also, the issue has been reported previously more than once, so it is likely to occur again as more Notion.so users become aware of Appflowy.

Have you accidentally posted this issue in Flet repository?

Yes I did, thanks for the heads up.  I'll move it.

Issue moved to correct repo: https://github.com/AppFlowy-IO/AppFlowy/issues/1689

authors: FeodorFitsner jbobbylopez

repo: flet-dev/flet


text:
fix: Refactor Azure Unused Volumes, Unused IPs CWF Actions

Description
Refactors the CWF Actions for Azure Unused Volumes Policy and Azure Unused IP Address Policy

These changes already merged with #1463


text:
Add Bash example

What is the purpose of the change
Add Bash example.

Codecov Report

Merging #258 (d5e2c40) into master (1b89be2) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #258   +/-   ##
=======================================
  Coverage   66.81%   66.81%
=======================================
  Files         206      206
  Lines       15509    15509
  Branches     2329     2329
=======================================
  Hits        10363    10363
  Misses       4579     4579
  Partials      567      567

Impacted Files
Coverage Δ

ai_flow/store/sqlalchemy_store.py
75.21% <0.00%> (-0.19%)
:arrow_down:

..._service/notification_service/high_availability.py
85.41% <0.00%> (+1.38%)
:arrow_up:

Continue to review full report at Codecov.

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

authors: codecov-commenter wuchaochen

repo: flink-extended/ai-flow


text:
Provide a simple rest endpoint for both metric/state query and dynamic configuration

Motivation
Currently, the metric query is supported by the metric server and no other state query or dynamic configuration is supported. A unified rest endpoint can be implemented to take care of all these requirements.
Changes
There are many existing rest framework or web service, for example, Jersey and Jetty. We can just wrap these framework and supply some simple API like register handler and lifecycle management. Other component like ShuffleWorker and ShuffleManager can use the rest endpoint directly. In this step, metric query should be also supported and the current metric server can be removed.
Test

Unit test.
Test manually on a cluster.

Merged into master as cadb74b2437253da987f572f29066a9522a60213

authors: TanYuxin-tyx wsry

repo: flink-extended/flink-remote-shuffle


text:
[Dreamcast Arch]: Incorrect sampling rate for Sound IC

The Sound Integrated Circuit or ‘IC’: A set of modules (Synthesiser, DSP and Mixer) that generates the audio signal and applies effects on it. It supports up to 64 PCM channels with a resolution of 16 or 8 bits and a sampling rate of 44.1MHz

A sampling rate in the house of Megahertz seems astronomical. 44.1 KHz would be the correct rate as found in CDs.

I agree, cheers

authors: GithubPrankster flipacholas

repo: flipacholas/Architecture-of-consoles


text:
@floating-ui/vue "MaybeReadonlyRef" => MaybeRefOrGetter

I apologize for neglecting the bug report template. I'm on my phone making this and things are a bit tough.
The instance if the issue that I'm seeing is
useFloating(ref, ref, {
strategy: () => props.strategy
})

This synatx is available in Vue 3.3. The only way to make strategy reactive correctly is to create an intermediate ref like so (assuming the composable accepts reactivity, which I'm sure you are correctly doing this)
useFloating(ref, ref, {
strategy: toRef(props, 'strategy')
})

This isn't necessarily a bad thing, but can have performance benefits by not creating intermediate refs. In addition, the getter syntax is more straightforward. It would be nice if this was supported globally. I'm not necessarily sure if "Read-only" is required as a typing
I suppose this is a feature request more than a bug report. I could submit a PR in a few days if needed

I am planning on building a PR sometime next week. So no worries

@lozinsky can you take a look at this and the PR?

Requires a breaking change. toValue is not supported by Vue 2 or @vue/composition-api

Ok, we can revisit once Vue 2 is officially EOL.

Ok, we can revisit once Vue 2 is officially EOL.

Perhaps a BREAKING_CHANGE label may help it so this issue doesn't get lost in the void

authors: VividLemon atomiks

repo: floating-ui/floating-ui

license: mit

license_source: bigquery


text:
Example page shows test examples, how about run examples?

I'm trying to get real ads coming in, using my account number, but the ads are not showing. When I use the test example, it works, but I can't get the live ads to show. What am I doing wrong? Thanks for any help.
This is what I have on the html page:
var admobid = {};
if( /(android)/i.test(navigator.userAgent) ) {
    admobid = { // for Android
        banner: 'ca-app-pub-xxxxxxxxxxxxxx',
        interstitial: 'ca-app-pub-xxxxxxxxxxxxxx'
    };
} else if(/(ipod|iphone|ipad)/i.test(navigator.userAgent)) {
    admobid = { // for iOS
        banner: 'ca-app-pub-xxxxxxxxxxxxxx',
        interstitial: 'ca-app-pub-xxxxxxxxxxxxxx'
    };
} else {
    admobid = { // for Windows Phone
        banner: 'ca-app-pub-xxxxxxxxxxxxxx',
        interstitial: 'ca-app-pub-xxxxxxxxxxxxxx'
    };
}

AdMob.createBanner( {
    adId:admobid.banner,
    position:AdMob.AD_POSITION.BOTTOM_CENTER,
    autoShow:true} );

// prepare at beginning of a game level
AdMob.prepareInterstitial({
    adId: admobid.interstitial,
    autoShow: false
});
// check and show it at end of a game level
AdMob.isInterstitialReady(function(isready){
    if(isready) AdMob.showInterstitial();
});

document.addEventListener('deviceready', initApp, false);

You need configure your own ad unit id in the admob portal. Remember to create separate id for android and ios, using android id in ios won't work.
You need to run the app on device to get a live ad. Running app in simulator cannot get live ad.

authors: floatinghotpot jamminjames

repo: floatinghotpot/cordova-admob-pro


text:
#529 Allow nodes to declare their inputs and params as regular function parameters

Why is this change needed?
Currently a node receives its inputs as an array. It's been reported that the ordering of inputs do not stay fixed. We need a way for nodes to identify inputs by their name.
What is the solution implemented?
This PR add support for nodes to receive inputs and params as regular python function parameters.
It achieves it by utilizing the type hints of the function parameters. For example, the SINE node can be changed
from:
def SINE(dc_inputs: list[DataContainer], params: dict) -> DataContainer:

to:
def SINE(default: DataContainer, waveform: str, amplitude: float, frequency: float, offset: float, phase: float) -> DataContainer:

How was this change tested?
On my local machine, I ran the default app with the modified version of the SINE node. It is working. See the screenshot below for the console printouts of how the inputs and params are being processed.

Note

The change is backward compatible, meaning the old style node signature will still work which should allow us to migrate incrementally.
To be able to write node function as regular python function, this PR has to be merged first https://github.com/flojoy-io/studio/pull/556

Issue: https://github.com/flojoy-io/studio/issues/529

In the future, when all the nodes are migrated to the new format, we can remove the backward compatibility code from here.

Updated the code. Now it doesn't type check the node inputs and params. Still kept the backward compatibility code.

authors: dev-nested itsjoeoui

repo: flojoy-io/python


text:
Reminder: combined image/sampler objects for sokol_imgui.h, sokol_nuklear.h

The texture handles in Dear ImGui and Nuklear might be only 32-bits wide (Dear ImGui allows to define this via imconfig.h, but that's a bit awkward to offload this task to the sokol_imgui.h user).
To be able to provide both a sokol-gfx image- and sampler-handle, add new functions:

simgui_texture tex = simgui_make_texture(&(simgui_texture_desc){ .image = img, .sampler = smp });
simgui_destroy_texture(tex)
void* simgui_textureid(tex)

(likewise in sokol_nuklear.h)
Underneath it's just the usual handle-pool.
(depends on: https://github.com/floooh/sokol/pull/842)

Oops, duplicate: #860

repo: floooh/sokol

license: Zlib


text:
Issue with get_tzone blowing up

I'm using Rails 2.3, rufus-scheduler 3.4, resque-scheduler 4.3, and tzinfo 0.3.53, et-orbi 1.0.3
When I start the scheduler, I'm getting
NoMethodError: undefined method `identifier' for nil:NilClass
.rvm/gems/ruby-2.3.3/gems/tzinfo-0.3.53/lib/tzinfo/timezone.rb:502:in `<=>'
.rvm/gems/ruby-2.3.3/gems/et-orbi-1.0.3/lib/et-orbi.rb:92:in `=='

What I'm finding is that I have a timezone set for the get_tzone function and it doesn't know how to respond to the == nil or the == :local from lines 92 and 93.
In order to make it work, I simply moved the return if you have a timezone above the nil and local check so it now looks like
return o if o.is_a?(::TZInfo::Timezone)
return nil if o == nil
return local_tzone if o == :local
return ::TZInfo::Timezone.get('Zulu') if o == 'Z'

tzinfo 0.3.53: https://github.com/tzinfo/tzinfo/blob/015768f4a1656ced80af6183f093e6ba8dd15276/lib/tzinfo/timezone.rb#L501-L503
    def <=>(tz)
      identifier <=> tz.identifier
    end

tzinfo 1.2.3: https://github.com/tzinfo/tzinfo/blob/02bcddd3ee748b4e9556335b3d714c7e1f459c77/lib/tzinfo/timezone.rb#L616-L619
    def <=>(tz)
      return nil unless tz.is_a?(Timezone)
      identifier <=> tz.identifier
    end

An easy fix would be to recommend upgrading Timezone, but Rails here is a 2.x so that probably pins Timezone to this older version. Easier to fix that at the et-orbi level.

et-orbi 1.0.4, which includes this change, has been released https://rubygems.org/gems/et-orbi/versions/1.0.4

Thanks a lot!

authors: jmettraux jstrouse

repo: floraison/et-orbi


text:
ExpansionLayout do not save expanded state

Any android component with ID can save own state.

so, add id on it ?

and this doesn't work.

check in you example app. Headers and layouts with id but when screen rotate layout is back to initial state...

Oh ok, i juste have tout handle onSaveInstanceState
Le 23 févr. 2018 22:26, "Alex" notifications@github.com a écrit :

check in you example app. Headers and layouts with id but when screen
rotate layout is back to initial state...
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/florent37/ExpansionPanel/issues/14#issuecomment-368143011,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AFfQXAwLt6oOQn4KNJm_hLPDEBkzLpnZks5tXyztgaJpZM4SIIQZ
.

I added this into 1.0.9 can you try ?

its partially work, after rotating expanded state is saved but then can't collapse view

expansionLayout is null after call setup() from onRestoreInstanceState(...)

Ok, will fix it
Le 24 févr. 2018 20:16, "Alex" notifications@github.com a écrit :
expansionLayout is null after call setup() from onRestoreInstanceState(...)
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/florent37/ExpansionPanel/issues/14#issuecomment-368252229,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AFfQXG5DGP3jGeNUqOBYo2yjCMO_P1Ehks5tYF_xgaJpZM4SIIQZ
.

I'm on this now
2018-02-25 10:21 GMT+01:00 Alex notifications@github.com:

Problem with the call to restore super state. I fix this with extends
View.BaseSavedState. But found another bug, when header use identical id's
in View or RecuclerView, in this case, state is single for all headers.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/florent37/ExpansionPanel/issues/14#issuecomment-368295004,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AFfQXFiAM24PZgtDc9hJIrOm4OK79liXks5tYSY1gaJpZM4SIIQZ
.

I fixed the saved/restore instance, but yes I have the same bug as you : if
all the views have the same Identfier... I've got the same restored instance
2018-02-25 10:24 GMT+01:00 Florent Champigny champigny.florent@gmail.com:

I'm on this now
2018-02-25 10:21 GMT+01:00 Alex notifications@github.com:

Problem with the call to restore super state. I fix this with extends
View.BaseSavedState. But found another bug, when header use identical id's
in View or RecuclerView, in this case, state is single for all headers.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/florent37/ExpansionPanel/issues/14#issuecomment-368295004,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AFfQXFiAM24PZgtDc9hJIrOm4OK79liXks5tYSY1gaJpZM4SIIQZ
.

but with differents id, it will work
2018-02-25 10:32 GMT+01:00 Florent Champigny champigny.florent@gmail.com:

I fixed the saved/restore instance, but yes I have the same bug as you :
if all the views have the same Identfier... I've got the same restored
instance
2018-02-25 10:24 GMT+01:00 Florent Champigny champigny.florent@gmail.com
:

I'm on this now
2018-02-25 10:21 GMT+01:00 Alex notifications@github.com:

Problem with the call to restore super state. I fix this with extends
View.BaseSavedState. But found another bug, when header use identical id's
in View or RecuclerView, in this case, state is single for all headers.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/florent37/ExpansionPanel/issues/14#issuecomment-368295004,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AFfQXFiAM24PZgtDc9hJIrOm4OK79liXks5tYSY1gaJpZM4SIIQZ
.

for RecyclerView this is important

you've got an idea how to fix it ?

because on RecyclerView, each view can have same ids

currently, no...

Can you release latest fixes?

I already pushed it un 1.0.2, Can you clean the gradle cache for this lib ?
Le 26 févr. 2018 15:48, "Alex" notifications@github.com a écrit :

Can you release latest fixes?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/florent37/ExpansionPanel/issues/14#issuecomment-368526607,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AFfQXNbIHS0AcybcSoHsQaaFxm3p3Jhkks5tYsQogaJpZM4SIIQZ
.

If you can't i will publish a 1.0.3
Le 26 févr. 2018 16:34, "Florent Champigny" champigny.florent@gmail.com a
écrit :

I already pushed it un 1.0.2, Can you clean the gradle cache for this lib ?
Le 26 févr. 2018 15:48, "Alex" notifications@github.com a écrit :

Can you release latest fixes?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/florent37/ExpansionPanel/issues/14#issuecomment-368526607,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AFfQXNbIHS0AcybcSoHsQaaFxm3p3Jhkks5tYsQogaJpZM4SIIQZ
.

How can we fix this in recyclerview? If i expand several panels, press the home button and come back, everything is reset

I think that for the recyclerview it is best to implement something like this:
In Recyclerview the following article can be adapted
Android: Handling Checkbox state in Recycler Views.
Use SparseBooleanArray for save state each expandable state
private SparseBooleanArray itemStateArray= new SparseBooleanArray();

Detect expandable state in Viewholder
expansionLayout.addListener(new ExpansionLayout.Listener() {
    @Override
    public void onExpansionChanged(ExpansionLayout expansionLayout, boolean expanded) {
            itemStateArray.put(adapterPosition, true);
    }
});

https://stackoverflow.com/questions/35424232/issue-refreshing-a-view-of-a-row-in-recyclerview?rq=1
This may help to avoid recreating all views and your state will not be changed. You can update only specific view that you need.


text:
Feature suggestion: Travelling from on-curve nodes to segment nodes

This is brilliant! It is such an efficient way of selecting instead of constantly using the mouse/trackpad to drag. I was looking for something like this so I had started a script that would cycle through the nodes along the outline but then ran into difficulty going across outlines. Your approach cuts through all of that.
If I can make a suggestion/wish.
I constantly find myself either selecting a single on-curve node or both the off-curve nodes of a curved segment.
Would it be possible to add a feature that allows for travelling from an on-curve node to segment nodes? I've been trying the multiple selection feature but it doesn't feel as predictable. If this was possible, I could almost drop the use of a trackpad while editing outlines.

Glad you like it! Just to make sure I understand correctly: you want to toggle between on-curve node selected to both of it’s off-curve handles selected.
So, from this:

to this:

and the other way around. Right?

I was thinking this.

Not sure if the multiple selection feature would always keep these neatly in sync.

This can go into a script, no plugin needed. I’ll try adding that to my scripts collection. Stay tuned :)

Would you still be able to freely travel across the nodes and segments like this?

My current idea is to add scripts that you can assign custom shortcuts in preferences. So Keyboard Selection Travel would still work. The scripts would be something like: “Select Handles to the Right/Left/Top/Bottom” and “Select Handles Node to the Right/Left/Top/Bottom”.

Cool. I'll keep my eyes open for those!

The scripts are up! There are four scripts, one for left, right, up, and down.
https://github.com/florianpircher/Glyphs-Scripts/tree/main/Scripts/Selection/Travel
This is what it looks like:

For these shortcuts to be useful, you’ll need to define shortcuts in the preferences. This my setup:

Installation of the scripts somewhat tricky. If you know what to do, great! If not, I will try to get my scripts collection added to the plugin manager in the following days. That would make the installation a lot easier.

Got the scripts all set-up and working in conjunction with the plugin.
I'll have to share with you how I'm using it once I get a good workflow going.
Thank you, Florian!

The scripts are now downloadable from the Plugin Manager.

authors: florianpircher gorjious


text:
Demo Page(s) v0.1

Create some demo pages that show off the features. This could be all in one or spread out over the features in docs.
Acceptance
Tasks
...

This issue is now not called Demo Page but we still want docs pages for each feature.

repo: flowershow/flowershow


text:
Ensure link to ff is generated in NR menu

Issue raised here: https://github.com/flowforge/flowforge/issues/269#issuecomment-1180448539

@sammachin @knolleary - please comment...
I have a whole bunch of changes (local git branch) to make better use of existing node-red theming methods and settings.js entries (removes much of the "in-theme" scripting/hacks to set images, title and URLs) - but as Sam points out, this stalled due to extensive works for Project Link.
I am happy to pick this up (after figma review) and get it into a better shape for 0.9
However, for this release, I can...

Remove "Manage Flowforge" Main Menu item (as per Nicks suggestion)
Rename FlowForge Website' --> 'About FlowForge' which links to flowforge.com (as per Nicks suggestion)
Ensure Header ICON and User Menu link back to the owner FF instance

Please let me know if these ↑ are acceptable for 0.8 release.

@Steve-Mcl you appear to be proposing what I proposed. Please make it so.

@Steve-Mcl you appear to be proposing what I proposed. Please make it so.

Almost ;)

Regarding bullet 1: your code suggestion makes it clear this is a now (0.8) thing
Regarding bullet 2: it wasnt 100% clear to me if that was future or 0.8 (ref: "I propose" ... "We schedule a task for 0.9 to...")
Regarding bullet 3: This wasnt mentioned so I wanted confirmation before doing something not explicitly requested.

Having spent more time using multiple projects locally, not having the project name was visible at a glance was a huge pain. I know it can be hacked by editing the template for each project - assuming the template enables editing the title.

Not exactly a hack - more of a "temporary feature" since projects cannot be renamed. "flaming-blue-sparrow-1234" means nothing anyone!
I would propose in next iteration, the project name is used as the default for title - or - title is remapped to project name (but only once project names can be changed)

The header icon/text already do link back to the project page... so i assumed there wasn't anything else to add on that one.

Tested locally - all looking good.

authors: Steve-Mcl knolleary

repo: flowforge/flowforge-nr-theme


text:
[question] Bundle as a dependency

How is one supposed to get the dist/the-graph.js bundle if the-graph library is an NPM dependency (specified in package.json)? After npm install I have all the sources in node_modules/the-graph, but no dist directory. Thanks.

In noflo-ui we're building the-graph in the same WebPack bundle as our other modules. But indeed, maybe it would make sense to include a pre-built version in the NPM module for those that don't want to build

I don't use WebPack in my project so that's pretty much not an option for me. Please comment here after you've decided whether to include a pre-built library in the NPM module or not so that I can close the issue. Thanks.

Just-released 0.10.3 contains the dist/ directory, as will future releases. Thanks for reporting

authors: YanDoroshenko bergie jonnor

repo: flowhub/the-graph


text:
mlpregressor.pd?

Hi,
I'm trying to do mlpregression in pure data but can't find the respective objects, even after compiling from source. Aren't they included in the distribution? Is this documented somewhere?
--
Orm

Hi James, thanks a lot, that works! If it isn't mentioned anywhere in the docs maybe it'd be good to do so.
BTW (in case you don't know it): You don't necessarily have to load the lib on startup but could also load the lib using the "declare" object like this:

I'll work through the Max/MSP example and will port it to pd for reference. Would anyone be interested to include it in the repository?

It may not be obviated enough by the docs but the "QuickStart.md" file describes these things:
https://github.com/flucoma/flucoma-pd/blob/main/QuickStart.md
Where might you expect to read it so we can make it more immediate. I realise GitHub gives you instructions on compiling rather than on installing so maybe that's the place?
Another question is, how idiomatic is it to use declare over setting up your libs via the preferences?

I'll work through the Max/MSP example and will port it to pd for reference. Would anyone be interested to include it in the repository?

It depends on where @tremblap is at, but I definitely think he (as the main pd maintainer) would appreciate community contributions especially from what I sense to be a seasoned user ;)

Hello!
Indeed we should mention it in the doc. I wonder if we should do belt and braces and include a declare -lib as well as instructions for proper installation...
as for translating, i can send you the 6 from the Max youtube tutorials (mlpregressor mlpclassifier and the 4 2d navigation) - the example folder of the max package is in mutation at the moment, and some of it is translated already, and the helpfiles are being translated so at the moment pd has 3 versions cohabitating:

the new blue-header format (translated)
the old grey format (old max translated)
the instantiation test ones (embarrassingly not good)

with a few exception (a few blue and a few grey unfinished / in progress)
but the good news is that we have someone working with me to translate at least all the helpfiles in the next few months. If you want to join, I can let you know what we haven't got on our radar and any help is definitely welcome!

I looked for a replacement doing it all within pd and found flucoma.

ok I've attached the example that is doing a regressor - the same as this video in Max: https://www.youtube.com/watch?v=3XSy297v9vk

In example patches I would definitely recommend declare statements as they take care of loading libraries without having to set it up in the preferences.

ok I'll keep that in mind for my translation.
thanks for the offer to help, and feel free to send comments/offer/code along.
Archive.zip

What I forgot: It is common practise to put a version statement into the setup routine in a pd lib. That way you see when and whether pd loads a library and which version gets loaded.
So the last line in the definition of fluid_libmanipulation_setup in fluid_libmanipulation.cpp should contain something like
post("fluid_libmanipulation: 1.0.0-TB2.beta6");
Not sure where this has to be put for cmake to generate libmanipulation.cpp accordingly, so I couldn't issue a pull request, but maybe you want to add this.

@weefuzzy and I tried to not pollute the post window... hence the optional version message. We'll consider. I also thought of adding it to the (updated) overview (attached here
FluidCorpusManipulationOverview.pd.zip
)

I see your point and definitely agree about post window pollution, but one line should be ok, especially since I don't know of any pd lib which doesn't do this as there is no way to tell, whether a lib has been loaded, because pd unfortunately doesn't issue an error message if it can't find a library to load (in contrast to an external).

I made a small fix in the mlpregression example (taking care the xy-plot doesn't draw out of bounds and fixing the coordinate range). How can I submit?

If you're comfortable with GitHub you can make a pull request. Otherwise linking the patch inline here is already helpful!

Submitting here, or even better on the discourse since these are not included in the package (yet)

I'll attach here. I'd be grateful to get pointers how to enter discourse as I guess this is getting too much off-topic for a closed issue ;-)
mlp-example.zip

https://discourse.flucoma.org/
top right: sign up button
I'll take your example and update mine, then push it when I updated with the new interface on the example folder I think. @jamesb93 and @tedmoore and I are meeting on monday to talk about their future across CCEs (Max Pd and SC)

I did that 6 days ago and after signing up got notified that it needs approval. I didn't hear back yet and now my name is taken ;-) Icould repeat with a different but would prefer using "orm"...

If your name is taken then you probably did get approved but the notification either didn't happen or went into your junk. I'm beginning to suspect this might be happening a lot because I keep approving users who then don't post anything!

maybe we should put a note on discourse for people to check their junk mail - the approval is usually within one working day, I log every day for sure and approve right away (we administrators get a red dot, almost impossible to miss!)

I just reset my password and it worked, thanks for the input! Is there a place/topic/forum dedicated to pd?
I'm on linux and can volunteer to check out things related to it (it seems most people here are on OSX). BTW: the ending ".pd_linux" for abstractions is ok, but I suggest to specify the processor architecture (".l_ia64" for 64-bit and ".l_i386" for 32-bit) for disambiguation (and maybe even provide 32-bit binaries). pd will first search for the architecture-specific binaries before resorting to .pd_linux.

BTW: the ending ".pd_linux" for abstractions is ok, but I suggest to specify the processor architecture (".l_ia64" for 64-bit and ".l_i386" for 32-bit) for disambiguation (and maybe even provide 32-bit binaries). pd will first search for the architecture-specific binaries before resorting to .pd_linux.

I'll make a new issue to review this in the CMake. Is there a good place to find the best things to do for arm64, and for other OSes (e.g. does this apply to pd_darwin on macOS too? What about Windows?).
We dropped 32-bit packages a while ago, primarily because the Apple tooling has stopped supporting it. Is there still widespread demand for 32-bit stuff?

@weefuzzy

(e.g. does this apply to pd_darwin on macOS too? What about Windows?)

I don't know (asked about in on pd's ML sometime ago but never got a response).

Is there still widespread demand for 32-bit stuff?

As pd runs on about any hardware on embedded Linux I could imagine there's use for it. I still do have some old laptops lying around with 32bit architecture, but I wouldn't give it too much thought. OTOH as it's just a compile flag it's not difficult to support it.

authors: jamesb93 ormf tremblap weefuzzy

repo: flucoma/flucoma-pd


text:
msi: migrate to "Fluent Package"

NOTE: need to consider renaming td-agent-gem.bat and td-agent.bat
TODO: follow up to  #461 need to tweak PR again.

rebase after #461 was merged.

CI failed:
2023-05-16T04:22:04.6869797Z Errno::ENOENT: No such file or directory @ rb_sysopen - msi/assets/td-agent-prom
2023-05-16T04:22:04.6871026Z pt.bat

td-agen-version.bat might be still needed but we'll add it in another PR if it's really needed.

Thanks!

authors: ashie kenhys

repo: fluent/fluent-package-builder


text:
Images unable to start with Read-Only ConfigMaps

In response to https://github.com/kubernetes/kubernetes/issues/60814, the Kubernetes team pushed out https://github.com/kubernetes/kubernetes/pull/58720. This was also patched into the latest versions of 1.7.x, 1.8.x, and 1.9.x.
It makes mounted ConfigMaps ready only by default.
As a result, the sed commands in the default entrypoint for all images in this repo fail (combined with set -e causes the full entrypoint to fail, and thus enter a CrashLoopBackoff.
Entrypoint: https://github.com/fluent/fluentd-kubernetes-daemonset/blob/master/templates/entrypoint.sh
As a work-around, I've bypassed the entrypoint.sh file by specifying the command specifically, ie:
      containers:
      - name: fluentd
         image: fluent/fluentd-kubernetes-daemonset:v0.12-alpine-s3
         command:
           - fluentd
           - -c
           - /fluentd/etc/fluent.conf
         ...

This works for now, however it's definitely not the best, or an appropriate permanent, solution.
Any thoughts on how we can get this updated to avoid writes to mounted ConfigMaps?

Seeing this same issue, my (hopefully temporary) hack workaround was to add
            - name: FLUENT_ELASTICSEARCH_USER
              value: none
            - name: FLUENT_ELASTICSEARCH_PASSWORD
              value: none

to the container env section.

Further, shouldn't the two conditionals in entrypoint.sh us -n instead of -z?

@nrmitchi we need to add "-p /fluentd/plugins" under command to add the plugins

Good call; I'll probably switch to @rdpa 's solution which seems slightly more clean until it's fixed

You can use an init container to copy the configmap's data to an emptydir. I pull this trick all the time when I want to tweak the configmap in the pod during deployment.

@kfox1111  got a pr in for the helm chart to do that https://github.com/kubernetes/charts/pull/5210

Which approach is better for fixing this issue?
Modify entrypoint.sh or update daemonset yaml with jpke's way?

Here is an example workaround the AWS EKS Workshop website suggests, using an init container similar to the helm chart approach.
https://eksworkshop.com/logging/deploy/
https://eksworkshop.com/logging/deploy.files/fluentd.yml
      # Because the image's entrypoint requires to write on /fluentd/etc but we mount configmap there which is read-only,
      # this initContainers workaround or other is needed.
      # See https://github.com/fluent/fluentd-kubernetes-daemonset/issues/90
      initContainers:
      - name: copy-fluentd-config
        image: busybox
        command: ['sh', '-c', 'cp /config-volume/..data/* /fluentd/etc']
        volumeMounts:
        - name: config-volume
          mountPath: /config-volume
        - name: fluentdconf
          mountPath: /fluentd/etc

authors: Itfly jpke kfox1111 nrmitchi pierrebeaucamp rdpa repeatedly whereisaaron

repo: fluent/fluentd-kubernetes-daemonset


text:
record_transformer keep_keys option creates keys with 'nil' values for unset keys.

Check CONTRIBUTING guideline first and here is the list to help us investigate the problem.
I saw this on 0.12 but it looks like it still works the same way.
If you configure i.e.
<filter XXX>
  type record_transformer
  renew_record true
  keep_keys a,b,c
</filter>

Then the resulting record will always have 'a', 'b', and 'c' set, even if those keys were not present in the original record (in which case they get nil values).
instead of
@keep_keys.each {|k| new_record[k] = record[k]} if @keep_keys and @renew_record
should we do?
@keep_keys.each {|k| new_record[k] = record[k] if record.has_key?(k)} if @keep_keys and @renew_record
BTW, perhaps this should be a different issue but we also found it surprising/confusing that if you write
keep_keys a, b, c
those spaces get into the actual keys which are then named "a", " b", and " c".

@sonots Could you check it?

@sonots ping

I will take care of this later, but PR is always welcome!

@keep_keys.each {|k| new_record[k] = record[k] if record.has_key?(k)} if @keep_keys and @renew_record

agree

BTW, perhaps this should be a different issue but we also found it surprising/confusing that if you write keep_keys a, b, c those spaces get into the actual keys which are then named "a", " b", and " c".

The specification disallows to specify keys with white spaces, so I can not accept it.
We should be able to use a array parameter now, but it breaks compatibility, so let me keep as is.

Another option is to use a array parameter type, but it breaks compatibility, so let me keep as is.

array parameter now has simplifed syntax feature: http://www.fluentd.org/blog/fluentd-v0.12.27-has-been-released

@sonots ping?

array parameter looks sweet. PR is always welcome!

authors: mr-salty repeatedly sonots

repo: fluent/fluentd


text:
This pr is to add License of script_gen_helper.go

Ⅰ. Describe what this PR does
This pr is to add License of pkg/application/inject/fuse/poststart/script_gen_helper.go
Ⅱ. Does this pull request fix one issue?

fixes #XXXX
Ⅲ. List the added test cases (unit test/integration test) if any, please explain if no tests are needed.
Ⅳ. Describe how to verify it
Ⅴ. Special notes for reviews

/lgtm

repo: fluid-cloudnative/fluid


text:
FLUID-6288 Add Dockerfile

This is necessary so a Docker image can be created and used to serve the website.
To test:
$ docker build -t infusion-docs .
$ docker run --rm -ti -p 8000:80 infusion-docs
$ open http://localhost:8000

This PR was submitted and closed before because it couldn't build. This is a new PR with the fix/workaround necessary to make DocPad work inside a Docker container.

CC @jobara @waharnum @cindyli @amb26 could you help review this PR? Thanks!

merged at 369bf01b66126024d94f781255d369ad45aec34c

authors: gtirloni jobara

repo: fluid-project/infusion-docs


text:
Migrate to sound null safety

Description

Migrate to sound null safety
Bump up package version

Any news ?

Any news ?

yup! there is an attached PR that will resolve this issue :)

Great news ! Thanks @adarsh-technocrat. Hope it gets accepted soon!

@2534290808 could you accept the null safety PR please?

@adarsh-technocrat how add this in my project ?
flutter_icons:
git:
url: https://github.com/adarsh-technocrat/flutter-icons/tree/null-safety-migration
don't work here, Could you upload your changes to your project's main?

flutter_icons

Hey, @joaovvrodrigues I would prefer you to make a different branch for your null safety version!
here I will change the base branch to that null safety branch and then you can merge it =)

@adarsh-technocrat while waiting for your PR to be accepted did you succeed in importing your own branch into your project ? How do you do that ?

@adarsh-technocrat while waiting for your PR to be accepted did you succeed in importing your own branch into your project ? How do you do that ?

Sorry @LearningRaph I could not get you  but as far as I could understand I just went through the series of steps for migrating this sample and package :-

Forked the official  repo
Cloned the forked repo to my local machine
Created the different branch for the null safety migration  eg here :-  git branch  null-safety-migration
Applied Migration  in the  null-safety-migration  branch
Committed the changes
Pushed the branch to my forked repo
Finally Generated the PR.

Im not Sure @LearningRaph  is this is the right Answer for your Question!

Nope :) I was wondering if you could use your fork in your flutter app. If we don't have news from the creator it would be a good option...

Ahh.. no @LearningRaph  until and unless it is Publish to the pub. div I think we cannot use the null-safety version of this package :)

@adarsh-technocrat @LearningRaph
in fact you can, and that's what I'm trying to say,
If you move your changes to the project's Branch Master, you can use the package directly from git.
`
flutter_icons:
git:
url: https://github.com/adarsh-technocrat/flutter-icons
`

@adarsh-technocrat @LearningRaph
in fact you can, and that's what I'm trying to say,
If you move your changes to the project's Branch Master, you can use the package directly from git.
flutter_icons:
 git:
 url: https://github.com/adarsh-technocrat/flutter-icons

because you created a new branch, then we can't access it, it needs to be on the master, as far as I know.

oooh got it @joaovvrodrigues  thanks  I'll do the changes right now =)

Hey, @joaovvrodrigues I merged the null-safety-migration branch to the master branch see now if you can access the null safety version!

It worked just fine! 🥇

Works for me too ! Great team work :)

As an info
some_package:
  git:
    url: blabla
    ref: some_branch

works to use a certain branch of a project instead of master

@flutter-studio or @2534290808 Are you planning on accepting  @adarsh-technocrat 's Null-safety PR? Also are you planning on maintaining this package? Or are you considering accepting new maintainers?

Until this PR has been merged to master and the package has been published to pub.dev, you can update your pubspec.yaml to:
  flutter_icons:
    git:
      url: https://github.com/adarsh-technocrat/flutter-icons.git
      branch: null-safety-migration

any one tried to contact this package owner
...it will be great If they left a number /email or WhatsApp so we can contact them...it seem this and other packages I have used in my app are tending towards the possibility of  being abandoned or not maintain or worse discontinued

Until this PR has been merged to master and the package has been published to pub.dev, you can update your pubspec.yaml to:
  flutter_icons:
    git:
      url: https://github.com/adarsh-technocrat/flutter-icons.git
      branch: null-safety-migration

your package need null safety support too (fluid bottom nav bar)

It is April, will this package be maintained in the future? We are depending on it a lot. If not, we will try to migrate to another solution unfortunately :/

@aytunch I agree with you, I believe that I will take the same action. There are similar packages that have already been migrated and I am constantly updating.

@aytunch I agree with you, I believe that I will take the same action. There are similar packages that have already been migrated and are constantly being updated. Last update of the package was in June 2020.

@joaovvrodrigues i hear you. Would you please share some of the alternatives which are being maintained and support null-safety so others can benefit as well

I believe that this package here will meet this need: https://pub.dev/packages/fluttericon

Any news? I am waiting for this part too!

Any update?

Any updates on migration to null safety?

Any news on migration to null safety?

+1

@udiedrichsen  any news?

Why was it closed?

https://pub.dev/packages/flutter_vector_icons

Any update ? Update to null safety.

@adarsh-technocrat I am using your fork after null-safety but there is a dependency issue as you can see below.

Because flutter_native_splash >=1.1.9 depends on args ^2.1.1 and flutter_launcher_icons 0.9.0 depends on args 2.0.0, flutter_native_splash >=1.1.9 is incompatible with flutter_launcher_icons 0.9.0.
And because no versions of flutter_launcher_icons match >0.9.0 <0.10.0, flutter_native_splash >=1.1.9 is incompatible with flutter_launcher_icons ^0.9.0.
So, because bare_bones depends on both flutter_launcher_icons ^0.9.0 and flutter_native_splash ^1.2.0, version solving failed.
pub get failed (1; So, because bare_bones depends on both flutter_launcher_icons ^0.9.0 and flutter_native_splash ^1.2.0, version solving failed.)
exit code 1

Deprecate this lib , avvoid using it any longer, I have removed all icons from this lib, using FluentIcons instead.

repo: flutter-studio/flutter-icons


text:
Allow await on helper start call

Because the return value of start is void rather than Future it is impossible to await it's completion because it has been flagged as async.
Users choosing to allow the call to be completed asynchronously can simply ignore the Future but those wanting to act after registration is complete cannot do so without this change.

Only saw this after doing the new release, I'll get it in with the next version.

authors: Perondas joates-mobilus

repo: flutter-webrtc/dart-sip-ua


text:
Remove Primary Scroll Controller for Flutter Desktop apps

Common desktop error: The provided ScrollController is currently attached to more than one ScrollPosition.
From medium article: https://andrewzuo.com/flutter-for-desktop-apps-isnt-ready-yet-663664262dde
For context, desktop apps frequently have multiple vertical scroll areas, e.g. desktop_photo_search has a sidebar and mainn content area, both of which scroll vertically.
This combination results in a runtime error from a cranky primary scroll controller, as mentioned above. Work around is manually instantiate a scroll controller, e.g. https://github.com/flutter/samples/blob/master/desktop_photo_search/material/lib/src/widgets/unsplash_search_content.dart#L23

Unfortunately I do not think this will be ass straightforward as I had hoped. Couple of findings:

The PrimaryScrollController is also used in the NestedScrollView in order to have the inner scroll view inherit the scroll controller that it manipulates to keep the 2 positions in sync.

So we would have to find a way around this or it would break the NestedScrollView for desktop applications.

Default keyboard scroll actions on desktop actually rely on the PrimaryScrollController to work. A PSC is created for each route, and when the user taps the arrow keys, if the current focus is not enclosed by a scrollable, it looks up the PSC as a fallback to automatically have keyboard scrolling shortcuts work.

In this case, I think the same more than one position attached... issue actually applies to scroll actions too, if not I do not think the user would want multiple scroll views to move in response to a key stroke. If we disable the automatic attachment of PSC completely, the user would have to specify which scrollview they want to be the default for scroll actions by setting ScrollView.primary to true. I think this would be an ok trade-off but it is still one to consider carefully.

⭐ ➡  I think for now, the best workaround is to set primary: false on ScrollViews that should not connect to the PSC. I think it is better than setting an individual scroll controller for each.
If anyone has thoughts on this, please do share. I am still investigating a few more options here.

authors: Piinks domesticmouse

repo: flutter/flutter


text:
[Flutter drive] cannot find relative imports to parent directory when running on web

Repro:

clone https://github.com/cedvdb/flutter_repros/tree/integration_test_failing_imports (integration_test_failing_imports branch)
run pub get
Run test in web flutter drive --driver=test/integration_test_driver.dart --target=test/acceptance/tests/feature/feature_acceptance_test.dart --no-pub --device-id=web-server --no-headless

(optionally run test on android)
Run test in android flutter drive --driver=test/integration_test_driver.dart --target=test/acceptance/tests/feature/feature_acceptance_test.dart --no-pub
Result
org-dartlang-app:/feature_acceptance_test.dart:6:8: Error: Error when reading 'org-dartlang-app:/utils/add.dart': File not found
import '../../utils/add.dart';

Expected  Result
For it to run like on android, allowing us to execute our acceptance tests on all platforms.
version
$ flutter --version
Flutter 2.13.0-0.0.pre.618 • channel master • https://github.com/flutter/flutter.git
Framework • revision ef5a6da35a (5 days ago) • 2022-04-19 19:19:08 +0800
Engine • revision acd27a4b58
Tools • Dart 2.18.0 (build 2.18.0-30.0.dev) • DevTools 2.12.2

@cedvdb
Not sure but I am wondering if it has to do with the hierarchy of your project and specially the test folder structure and if web handles imports like this in a different way import '../../../../test/acceptance/utils/add.dart';
It looks similar case as dart:io imports are not supported in flutter web and could be related to it. Also, since int add(int a, int b) => a + b; seems to be coming from dart and hence the web part may not be handling it as simiilar to https://github.com/flutter/flutter/issues/39998. Please check and confirm.

@darshankawar What exactly do you need me to check and confirm ? It's not clear.
As for the folder structure, it was my assumption as well.

Ence why I see the error Error when reading 'org-dartlang-app:/... That'd certainly make sense.

That's my assumption as well and hence I think that it could be similar to the issue I linked earlier. https://github.com/flutter/flutter/issues/39998
For now, since I do see the same behavior / error after running your code, I'll go ahead and label it for further insights from the team on the intended behavior and whether the root-cause is same and duplicate of    https://github.com/flutter/flutter/issues/39998

 stable, master flutter doctor -v

[✓] Flutter (Channel stable, 2.10.5, on macOS 12.2.1 21D62 darwin-x64, locale
    en-GB)
    • Flutter version 2.10.5 at /Users/dhs/documents/fluttersdk/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 5464c5bac7 (12 hours ago), 2022-04-18 09:55:37 -0700
    • Engine revision 57d3bac3dd
    • Dart version 2.16.2
    • DevTools version 2.9.2

[!] Xcode - develop for iOS and macOS (Xcode 12.3)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    ! Flutter recommends a minimum Xcode version of 13.
      Download the latest version or update via the Mac App Store.
    • CocoaPods version 1.11.2

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

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

[✓] Connected device (5 available)
    • SM G975F (mobile)       • RZ8M802WY0X • android-arm64   • Android 11 (API 30)
    • Darshan's iphone (mobile)  • 21150b119064aecc249dfcfe05e259197461ce23 •
      ios            • iOS 14.4.1 18D61
    • iPhone 12 Pro Max (mobile) • A5473606-0213-4FD8-BA16-553433949729     •
      ios            • com.apple.CoreSimulator.SimRuntime.iOS-14-3 (simulator)
    • macOS (desktop)            • macos                                    •
      darwin-x64     • Mac OS X 10.15.4 19E2269 darwin-x64
    • Chrome (web)               • chrome                                   •
      web-javascript • Google Chrome 98.0.4758.80

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

! Doctor found issues in 1 category.

[✓] Flutter (Channel master, 2.13.0-0.0.pre.732, on macOS 12.2.1 21D62
    darwin-x64, locale en-GB)
    • Flutter version 2.13.0-0.0.pre.732 at
      /Users/dhs/documents/fluttersdk/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision fa96ddd427 (59 minutes ago), 2022-04-25 21:39:07 -0700
    • Engine revision 4df9cf2705
    • Dart version 2.18.0 (build 2.18.0-56.0.dev)
    • DevTools version 2.12.2

[!] Xcode - develop for iOS and macOS (Xcode 12.3)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    ! Flutter recommends a minimum Xcode version of 13.
      Download the latest version or update via the Mac App Store.
    • CocoaPods version 1.11.2

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

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

[✓] Connected device (5 available)
    • SM G975F (mobile)       • RZ8M802WY0X • android-arm64   • Android 11 (API 30)
    • Darshan's iphone (mobile)  • 21150b119064aecc249dfcfe05e259197461ce23 •
      ios            • iOS 14.4.1 18D61
    • iPhone 12 Pro Max (mobile) • A5473606-0213-4FD8-BA16-553433949729     •
      ios            • com.apple.CoreSimulator.SimRuntime.iOS-14-3 (simulator)
    • macOS (desktop)            • macos                                    •
      darwin-x64     • Mac OS X 10.15.4 19E2269 darwin-x64
    • Chrome (web)               • chrome                                   •
      web-javascript • Google Chrome 98.0.4758.80

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

! Doctor found issues in 1 category.

Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel beta, 2.13.0-0.1.pre, on macOS 12.2.1 21D62 darwin-x64,
    locale en-GB)
[✓] Xcode - develop for iOS and macOS (Xcode 13.2.1)
[✓] Chrome - develop for the web
[✓] IntelliJ IDEA Ultimate Edition (version 2021.3.2)
[✓] VS Code (version 1.62.0)
[✓] Connected device (3 available)
[✓] HTTP Host Availability

/cc @yjbanov

I'd hope this won't be labeled as a duplicate as it is blocking acceptance tests and the other issue seems to be a bigger one.
Maybe switching putting our test folder into the package folder with its own pubspec.yaml could work as a workaround.

This looks like a bug either in the tool or in the compiler.

It may be because the entrypoint for the target is under the test/ directory. As a workaround, try using the file structure described in https://docs.flutter.dev/cookbook/testing/integration/introduction

@yjbanov I confirm that moving /test to /lib/test is a valid workaround. Thanks

@yjbanov the workaround you proposed does not work. The issue is with the ../.. in the import paths, simply renaming the top folder has no bearing in that error. It seems like you misunderstood the issue, please reconsider the label P5 in light of this.
The only (annoying) workaround that was found was to put the test files under the lib folder, but then the dev dependencies have to be moved to normal dependencies to have imports work well with intellisens (I guess dev deps are not supposed to be imported there so they do not appear).

@darshankawar Could you add the appropriate labels as it is found in flutter 3 ? I think there is a label regarding dart2js missing too ? And the low priority here is beyond comprehension to me but so be it.

@cedvdb I ran the tests on android and it seems to succeed with relative imports, But when running on the web the test fails, I  moved feature_acceptance_test.dart and add.dart under test and the test succeeds. This issue is reproducible on both the latest stable and the master channel.
I do see the same has been mentioned above by @darshankawar

Not sure but I am wondering if it has to do with the hierarchy of your project and specially the test folder structure and if web handles imports like this in a different way import '../../../../test/acceptance/utils/add.dart';
It looks similar case as dart:io

Android test passes with relative imports
mahesh@Maheshs-MacBook-Air-M1 flutter_repros % flutter drive --driver=test/integration_test_driver.dart --target=test/acceptance/tests/feature/feature_acceptance_test.dart --no-pub
Warning: Mapping new ns http://schemas.android.com/repository/android/common/02 to old ns http://schemas.android.com/repository/android/common/01
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
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
Warning: Mapping new ns http://schemas.android.com/repository/android/common/02 to old ns http://schemas.android.com/repository/android/common/01
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
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
Running Gradle task 'assembleDebug'...                             37.1s
✓  Built build/app/outputs/flutter-apk/app-debug.apk.
Installing build/app/outputs/flutter-apk/app.apk...                883ms
W/.flutter_repro( 1513): Accessing hidden method
Landroid/app/ActivityThread;->currentActivityThread()Landroid/app/ActivityThread; (greylist, linking, allowed)
W/.flutter_repro( 1513): Accessing hidden method
Landroid/app/ActivityThread;->getActivity(Landroid/os/IBinder;)Landroid/app/Activity; (greylist, linking, allowed)
VMServiceFlutterDriver: Connecting to Flutter application at http://127.0.0.1:61462/Kx-qdyjZBh8=/
VMServiceFlutterDriver: Isolate found with number: 3222012541120307
VMServiceFlutterDriver: Isolate is paused at start.
VMServiceFlutterDriver: Attempting to resume isolate
I/flutter ( 1513): 00:00 +0: end-to-end test tap on the floating action button, verify counter
VMServiceFlutterDriver: Connected to Flutter application.
I/flutter ( 1513): 00:01 +1: (tearDownAll)
All tests passed.
I/flutter ( 1513): 00:01 +2: All tests passed!

Tests on the web fails with relative imports
mahesh@Maheshs-MacBook-Air-M1 flutter_repros % flutter drive --driver=test/integration_test_driver.dart --target=test/acceptance/tests/feature/feature_acceptance_test.dart -d web-server
Running "flutter pub get" in flutter_repros...                     343ms
Launching test/acceptance/tests/feature/feature_acceptance_test.dart on Web Server in debug mode...
org-dartlang-app:/feature_acceptance_test.dart:6:8: Error: Error when reading 'org-dartlang-app:/utils/add.dart':
File not found
import '../../utils/add.dart';
       ^
org-dartlang-app:/feature_acceptance_test.dart:19:14: Error: Method not found: 'add'.
      expect(add(1, 2), equals(3));
             ^^^
Waiting for connection from debug service on Web Server...         10.6s
Failed to compile application.
Application exited before the test started. Check web driver logs for possible application-side errors.

mahesh@Maheshs-MacBook-Air-M1 flutter_repros % flutter drive --driver=test/integration_test_driver.dart --target=test/feature_acceptance_test.dart -d web-server
Running "flutter pub get" in flutter_repros...                     386ms
Launching test/feature_acceptance_test.dart on Web Server in debug mode...
Waiting for connection from debug service on Web Server...         10.5s
test/feature_acceptance_test.dart is being served at http://localhost:63600
The web-server device requires the Dart Debug Chrome extension for debugging. Consider using the Chrome or Edge
devices for an improved development workflow.
Unable to start a WebDriver session for web testing.
Make sure you have the correct WebDriver server (e.g. chromedriver) running at 4444.
For instructions on how to obtain and run a WebDriver server, see:
https://flutter.dev/docs/testing/integration-tests#running-in-a-browser

mahesh@Maheshs-MacBook-Air-M1 flutter_repros % flutter drive --driver=test/integration_test_driver.dart --target=test/feature_acceptance_test.dart -d web-server
Running "flutter pub get" in flutter_repros...                     270ms
Launching test/feature_acceptance_test.dart on Web Server in debug mode...
Waiting for connection from debug service on Web Server...         10.6s
test/feature_acceptance_test.dart is being served at http://localhost:63710
The web-server device requires the Dart Debug Chrome extension for debugging. Consider using the
Chrome or Edge devices for an improved development workflow.
All tests passed.
Application finished.

flutter doctor -v (mac)
[✓] Flutter (Channel stable, 3.0.2, on macOS 12.4 21F79 darwin-arm, locale en-IN)
    • Flutter version 3.0.2 at /Users/mahesh/Documents/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision cd41fdd495 (5 days ago), 2022-06-08 09:52:13 -0700
    • Engine revision f15f824b57
    • Dart version 2.17.3
    • DevTools version 2.12.2

[✓] Android toolchain - develop for Android devices (Android SDK version 33.0.0-rc4)
    • Android SDK at /Users/mahesh/Library/Android/sdk
    • Platform android-32, build-tools 33.0.0-rc4
    • ANDROID_HOME = /Users/mahesh/Library/Android/sdk
    • Java binary at: /Applications/Android Studio.app/Contents/jre/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 11.0.12+0-b1504.28-7817840)
    • All Android licenses accepted.

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

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

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

[✓] IntelliJ IDEA Community Edition (version 2021.2.1)
    • IntelliJ at /Applications/IntelliJ IDEA CE.app
    • Flutter plugin version 61.2.4
    • Dart plugin version 212.5080.8

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

[✓] Connected device (3 available)
    • sdk gphone arm64 (mobile) • emulator-5554 • android-arm64  • Android 11 (API 30) (emulator)
    • macOS (desktop)           • macos         • darwin-arm64   • macOS 12.4 21F79 darwin-arm
    • Chrome (web)              • chrome        • web-javascript • Google Chrome 102.0.5005.61

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

• No issues found!

[✓] Flutter (Channel master, 3.1.0-0.0.pre.1237, on macOS 12.4 21F79 darwin-arm, locale en-IN)
    • Flutter version 3.1.0-0.0.pre.1237 at /Users/mahesh/Documents/flutter_master
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 6062e40510 (64 minutes ago), 2022-06-12 23:53:08 -0400
    • Engine revision f80294b57e
    • Dart version 2.18.0 (build 2.18.0-180.0.dev)
    • DevTools version 2.14.0

[✓] Android toolchain - develop for Android devices (Android SDK version 33.0.0-rc4)
    • Android SDK at /Users/mahesh/Library/Android/sdk
    • Platform android-32, build-tools 33.0.0-rc4
    • ANDROID_HOME = /Users/mahesh/Library/Android/sdk
    • Java binary at: /Applications/Android Studio.app/Contents/jre/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 11.0.12+0-b1504.28-7817840)
    • All Android licenses accepted.

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

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

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

[✓] IntelliJ IDEA Community Edition (version 2021.2.1)
    • IntelliJ at /Applications/IntelliJ IDEA CE.app
    • Flutter plugin version 61.2.4
    • Dart plugin version 212.5080.8

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

[✓] Connected device (3 available)
    • sdk gphone arm64 (mobile) • emulator-5554 • android-arm64  • Android 11 (API 30) (emulator)
    • macOS (desktop)           • macos         • darwin-arm64   • macOS 12.4 21F79 darwin-arm
    • Chrome (web)              • chrome        • web-javascript • Google Chrome 102.0.5005.61

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

• No issues found!

Any news on this? or workaround? This is a huge blocker.

Still no news? I too don't get why this has the lowest priority. This issue is blocking us from running our integration test suite for web because we have a bunch of integration test related utility functions that we need to import in each test..

Everyone who is affected by this issue, Please upvote the original issue report. The number of upvotes helps to understand the no of users affected by this issue. The number of upvotes is one among many factors to bump up the priority.

I has this issue. I fix by running in profile mode or release mode because in my. understanding if you import file with ../ in dev mode that' file is not include to the test if you running in profile or release mode after running test it's compile you code include another folder. that's why can fix my problem
before i run this command
flutter drive --driver=test_driver/integration_test.dart --target=integration_test/b/foo_test.dart -d chrome
after
flutter drive --driver=test_driver/integration_test.dart --target=integration_test/b/foo_test.dart -d chrome --release
my code
my folder structure
integration_test/
├── a/
          ├── foo_test.dart
├── b/
          ├── bar_test.dart

my code in bar_test.dart need to import file from folder a/

import '../foo_test.dart';  <--- has issue if import another folder

P.S. so sorry in my bad english but i hope to solve your problem

Still no news? I too don't get why this has the lowest priority. This issue is blocking us from running our integration test suite for web because we have a bunch of integration test related utility functions that we need to import in each test..
Edit: Relative import without dots ../ seems so work, so for now we can proceed by having our util file in the same folder as the web test files (not ideal and probably not a solution for everyone):
file structure:
integration_test/
    mobile/
        foo_test.dart
        bar_test.dart
    web/
        foo_test.dart
        bar_test.dart
        util.dart

import in the web/ test files:
import 'util.dart';

The issue is still reproduced in Flutter 3.7.1

So, adding the project root path to the compiler seems to make it able to resolve these relative imports, but I'm not entirely clear exactly why it works or where to add tests. If CI reveals something obvious, I can give it a further shot. Otherwise, PR #120944 is a one-liner that seems to fix it for me so far (only for my project, without any rigorous testing).

tl;dr: The next thing to investigate is probably that something is stripping away the relative path elements from the import directives.
So I've run a different test with my hack, which leads me to not recommend that we move forward with my hack, but may shed some further light on a root cause. Essentially my hack takes advantage of noticing that the error messages complained about not being able to find the imports under the root directory. (e.g. for the OP's case of ../../util/add.dart, Error when reading 'org-dartlang-app:/utils/add.dart': File not found.) Thus, adding the actual project root to the project roots passed to the compiler kinda works, since these relative paths are likely to .. up to the project root anyway.
However, a) it looks like the compiler is simply stripping away the relative path elements, which is probably a bug and the root cause, and b) this hack doesn't always work, if the relative directory doesn't path up all the way to the project root (or the immediate parent or test folder, which are also added as project roots to the compiler).
Example, if I have directory structure
integration_test/
    foo_test.dart
test/
    src/
        foo_dep.dart
        bar_dep.dart
        baz_dep.dart

and integration_test/foo_test.dart
import '../test/src/foo_dep.dart';
import './test/src/bar_dep.dart';
import '../../test/src/baz_dep.dart';

with my patch, the test happily succeeds since it's able to find all those files under the project root.
If on the other hand my directory structure is
integration_test/
    foo/
        bar_test.dart
        baz.dart

and I have integration_test/foo/foo_test.dart
import '../foo/baz.dart';

even though the IDE and Android build think everything should be fine, flutter drive -t integration_test/foo/foo_test.dart -d chrome fails with the familiar
org-dartlang-app:/bar_test.dart:1:8: Error: Error when reading 'org-dartlang-app:/foo/baz.dart': File not found
import '../foo/baz.dart';
       ^

When running on web, I am seeing the same error:
flutter drive --no-pub --driver=test_driver/integration_test.dart --target=integration_test/app_test.dart -d chrome
Launching integration_test/app_test.dart on Chrome in debug mode...
org-dartlang-app:/app_test.dart:11:8: Error: Error when reading 'org-dartlang-app:/test/home_widget_test.dart':
File not found
import '../test/home_widget_test.dart';

Works fine when running on mobile:
flutter test integration_test/app_test.dart
...
02:12 +1: All tests passed!

Sill no fix for this issue?

authors: AsturaPhoenix Maarten0110 Mohammad3id cedvdb darshankawar jithware maheshmnj maxeema ominibyte tee-theeraporn-hugeman yjbanov


text:
Comparison method violates its general contract! error across many Android tests.

(part of https://github.com/flutter/flutter/issues/97036)
Two flakes in recent 100 commits:
https://ci.chromium.org/ui/p/flutter/builders/prod/Windows build_tests_2_3/4557/overview
https://ci.chromium.org/ui/p/flutter/builders/prod/Windows build_tests_2_3/4552/overview
 > Configure project :
[        ] Evaluating root project 'android' using build file 'C:\b\s\w\ir\x\w\flutter\examples\hello_world\android\build.gradle'.
[        ] Loaded lock state for configuration ':classpath'
[+1604 ms] > Configure project :app
[        ] Evaluating project ':app' using build file 'C:\b\s\w\ir\x\w\flutter\examples\hello_world\android\app\build.gradle'.
[        ] Creating configuration androidTestUtil
[   +1 ms] FAILURE: Build failed with an exception.
[   +2 ms] * Where:
[        ] Script 'C:\b\s\w\ir\x\w\flutter\packages\flutter_tools\gradle\flutter.gradle' line: 293
[        ] * What went wrong:
[        ] A problem occurred evaluating script.
[        ] > Failed to apply plugin class 'FlutterPlugin'.
[        ]    > Comparison method violates its general contract!
[        ] * Try:
[        ] Run with --debug option to get more log output. Run with --scan to get full insights.
[        ] * Exception is:
[        ] org.gradle.api.GradleScriptException: A problem occurred evaluating script.
[        ] 	at org.gradle.groovy.scripts.internal.DefaultScriptRunnerFactory$ScriptRunnerImpl.run(DefaultScriptRunnerFactory.java:93)
[        ] 	at org.gradle.configuration.DefaultScriptPluginFactory$ScriptPluginImpl.lambda$apply$0(DefaultScriptPluginFactory.java:133)
[        ] 	at org.gradle.configuration.DefaultScriptTarget.addConfiguration(DefaultScriptTarget.java:74)
[        ] 	at org.gradle.configuration.DefaultScriptPluginFactory$ScriptPluginImpl.apply(DefaultScriptPluginFactory.java:136)
[        ] 	at org.gradle.configuration.BuildOperationScriptPlugin$1.run(BuildOperationScriptPlugin.java:65)
[        ] 	at org.gradle.internal.operations.DefaultBuildOperationRunner$1.execute(DefaultBuildOperationRunner.java:29)
[        ] 	at org.gradle.internal.operations.DefaultBuildOperationRunner$1.execute(DefaultBuildOperationRunner.java:26)
[        ] 	at org.gradle.internal.operations.DefaultBuildOperationRunner$3.execute(DefaultBuildOperationRunner.java:75)
[        ] 	at org.gradle.internal.operations.DefaultBuildOperationRunner$3.execute(DefaultBuildOperationRunner.java:68)
[        ] 	at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:153)
[        ] 	at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:68)
[        ] 	at org.gradle.internal.operations.DefaultBuildOperationRunner.run(DefaultBuildOperationRunner.java:56)
[        ] 	at org.gradle.internal.operations.DefaultBuildOperationExecutor.lambda$run$1(DefaultBuildOperationExecutor.java:71)
[        ] 	at org.gradle.internal.operations.UnmanagedBuildOperationWrapper.runWithUnmanagedSupport(UnmanagedBuildOperationWrapper.java:45)
[        ] 	at org.gradle.internal.operations.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:71)
[        ] 	at org.gradle.configuration.BuildOperationScriptPlugin.lambda$apply$0(BuildOperationScriptPlugin.java:62)
[        ] 	at org.gradle.configuration.internal.DefaultUserCodeApplicationContext.apply(DefaultUserCodeApplicationContext.java:43)
[        ] 	at org.gradle.configuration.BuildOperationScriptPlugin.apply(BuildOperationScriptPlugin.java:62)
[        ] 	at org.gradle.api.internal.plugins.DefaultObjectConfigurationAction.applyScript(DefaultObjectConfigurationAction.java:149)
[        ] 	at org.gradle.api.internal.plugins.DefaultObjectConfigurationAction.access$000(DefaultObjectConfigurationAction.java:42)
[        ] 	at org.gradle.api.internal.plugins.DefaultObjectConfigurationAction$1.run(DefaultObjectConfigurationAction.java:75)
[        ] 	at org.gradle.api.internal.plugins.DefaultObjectConfigurationAction.execute(DefaultObjectConfigurationAction.java:183)
[        ] 	at org.gradle.api.internal.project.AbstractPluginAware.apply(AbstractPluginAware.java:49)
[        ] 	at org.gradle.api.internal.project.ProjectScript.apply(ProjectScript.java:37)
[        ] 	at org.gradle.api.Script$apply.callCurrent(Unknown Source)

@blasten In https://github.com/flutter/flutter/issues/96784, you mentioned adding code to log a stack trace. Does this help?

This issue is coming from https://github.com/flutter/flutter/blob/a9ac7fb03be1d574d726e98b90743015716de7fd/packages/flutter_tools/gradle/flutter.gradle#L293.
I asked on the Android Gradle chat to see if there's a fix for this specific issue. For now, the lowest hanging fruit is to upgrade Gradle and the Android plugin to see if that fixes this issue as well.
https://github.com/flutter/flutter/issues/102183.
cc @GaryQian

From the AGP team:

it looks like a bug in Groovy's dynamic dispatch. If you invoke the method from something statically compiled (Java or Kotlin) you should be fine (or even just use @CompileStatic if you don't want to convert)
For context, we got rid of all groovy production code in AGP many years ago for performance and correctness reasons

This has caused multiple builders to be flaky with high ratios.
3 flakes today on Windows tool_integration_tests_1_6
This also cause
1 flake on Windows build_tests_1_3
1 flake on Windows tool_integration_tests_2_6
Also considering the above referenced flaky bugs, I am bumping the priority to P1.

Sounds like the best plan we have is to apply https://github.com/flutter/flutter/issues/102183?

The tests seem to be stable over past 200 runs, with one failure. This puts it well under threshold.

I have not had the bandwidth to look at this in the past week, but will try to get to it this week.

https://github.com/flutter/flutter/issues/108020 is another issue to look for to re-enable tests after this is fixed.

To programmatically bump gradle versions, https://github.com/flutter/flutter/pull/107665 and https://github.com/flutter/flutter/pull/108146 need to land to have operational migrate tool.

Is there any way to not gate this on the migrate command? It's going to take me awhile to review those PRs.

I could run this with a local version of the command, or bump gradle versions manually. I believe Emmanuel tried to do so before, but was blocked on test failures and had to roll back. Let me find the PR.

https://github.com/flutter/flutter/pull/108197 Manually performs upgrades of gradle across a subset of projects.

https://github.com/flutter/flutter/pull/108355 relands after revert.

https://github.com/flutter/flutter/pull/108355 landed July 26 4:23 PM PDT. When the flaky bot comments next week on the particular shard bugs, we should verify if there any instances of this flake after that commit.

https://github.com/flutter/flutter/pull/108510 landed again, this time it seems to have stuck. :)
There should be other sample apps/test apps that can also be version bumped as https://github.com/flutter/flutter/pull/108510 only upgraded a subset

Another instance https://ci.chromium.org/ui/p/flutter/builders/prod/Windows build_tests_1_3/5902/overview at commit https://github.com/flutter/flutter/commit/3ce2ab91598819cc31e614debf357b1c0859f56e, merged after https://github.com/flutter/flutter/pull/108510

Still getting reports of this from the flaky bot: https://github.com/flutter/flutter/issues/108890

https://github.com/flutter/flutter/pull/109211 Updates AGP used in flutter.gradle

I saw this one in CI on my PR too.

This issue doesn't seem to have triggered the threshold for 20+ days, though when it is actively flaking, it seems to flake much more consistently. Continuing to monitor.

Reducing priority as we are no longer actively seeing this

Saw this on Engine -> Framework roll presubmits here https://ci.chromium.org/ui/p/flutter/builders/try/Windows tool_integration_tests_1_6/7443/overview

Saw this on Windows module_custom_host_app_name_test

Landed https://github.com/flutter/flutter/pull/111747 to see if it helps

https://github.com/flutter/flutter/pull/113845 Removed the map literal, waiting to observe if the flake is still present.

I  upgrade flutter to 3.3.5  and it incurred this issue.  To avoid it, I  tried to downgrade to 3.3.4  , and it worked

3.3.5 vs 3.3.4 should not have made a difference as this issue predates both those versions by quite a bit. https://github.com/flutter/flutter/pull/113845 made it into 3.3.6, could you try to see if you encounter it on 3.3.6?

Just hit this on framework post-submit https://ci.chromium.org/p/flutter/builders/prod/Windows build_tests_2_3/7564

Converting this section of the code to use the Kotlin DSL should work around the problem as well as move towards using kotlin as recommended by Android.

Gary is on vacation but when you return can you give us some guidance around what the next steps should be?
@GaryQian

@GaryQian and I believe that this has slightly improved and has taken a significant amount of time (40+ engineering hours) and he is out of ideas for the remaining windows flakes.
Our current plan is to drop the priority of this bug given the stability on linux, that if this test fails a re-run succeeds so it does not block the tree, and it is set to automatically rerun. Basically the cost to the team for continuing to make unknown progress doesnt match the value. If you disagree please let me know.

We expect that the bots will continue to escalate flakes here but there no way to disable this specific line as it is used in all android builds. Please keep attaching issues to this ticket even though we will not make any progress on this in 22q4 or 23q1. Our hope is that is magically fixed by updating the versions of gradle but have no evidence to say that will work.

Yup no problem. Will keep an eye out for future failures.

authors: GaryQian GerogeLeon Hixie blasten christopherfujino keyonghan reidbaker ricardoamador stuartmorgan zanderso


text:
Identify framework post-submit iOS tests which catch dart regressions

Dart/flutter engprod team is working on a HHH repo to run tests from dart, engine, and also framework to catch potential dart regressions quickly without waiting until rolled into downstreams.
This bug aims to collect a small subset of framework iOS tests that are suitable for the above purpose.
/cc @whesse

@jmagman Could you help us on this? We are targeting top 1 iOS test in the very beginning, but it would be helpful if you could provide a list, maybe ordered by their weights. Thanks!

@keyonghan are these hostonly, or can I choose tests that need a physical device?

@keyonghan are these hostonly, or can I choose tests that need a physical device?

For both, whichever could help catch potential dart regressions.

Hm, maybe hot_mode_dev_cycle_ios__benchmark since it builds, launches, and hot reloads so is a pretty good end-to-end test.  Though I don't recall that one ever finding many issues.  And we wouldn't want to upload the benchmarks unless we can keep it separate from the x64 version in the data.
@zanderso @christopherfujino do you have ideas?

Hm, maybe hot_mode_dev_cycle_ios__benchmark since it builds, launches, and hot reloads so is a pretty good end-to-end test. Though I don't recall that one ever finding many issues. And we wouldn't want to upload the benchmarks unless we can keep it separate from the x64 version in the data. @zanderso @christopherfujino do you have ideas?

Would a simulator test make sense, or do we want to run this on a real iPhone?

The context is that that particular benchmark is having a lot of flake problems at the moment...

All the iOS hot reload ones have the same issues I guess.
Maybe complex_layout_scroll_perf_ios__timeline_summary?

hot_mode_dev_cycle_ios__benchmark is no longer flaky.  Any benchmarks we use would need a no-upload option https://flutter-review.googlesource.com/c/recipes/+/18020.
The most useful tests are devicelab iOS tests that actually build and run and test and hot reload on a physical device, like hot_mode_dev_cycle_ios__benchmark or complex_layout_scroll_perf_ios__timeline_summary.  The hostonly iOS tests are mostly validating the tool logic, and aren't usually impacted by dart regressions.  The hostonly tests most likely to be impacted by dart regressions aren't iOS specific tests, but just run on a Mac, like Mac framework_tests_widgets.

@whesse Could we start with the host only test Mac framework_tests_widgets as Jenn suggested?

authors: christopherfujino jmagman keyonghan