Default Admin Account Not Working

I picked the MySQL docker-compose for koel if that changes anything- but, I just can't get past the login screen.

The readme states that with newer versions, it should automatically create a default admin account of email<EMAIL_ADDRESS>|  KoelIsCool. It just hasn't been working for me, and I copy/pasted it, so I know I didn't mistype it or anything.
Am I missing something really obvious here?

Hi, you should exec into the container the command php artisan koel:init --no-assets before logging in. This command will run DB migrations and finish setup. Please see the First run section of the README for the commands.
It is not done automatically by the container, see #68 for more details about that.

Thank you! I cant believe I was missing something really obvious after all. I did see this in the README, but I guessed that it was an either-or situation-- like, v5.1.0 users would use the default account while anyone v5.0 and below users would go through the DB creation setup. I now know it's not quite like that- my bad!
I've gotten to the Web UI itself and now I have two questions:

I'm having trouble connecting my music folder. The absolute path from root to the music folder is /share/CE_CACHEDEV1_DATA/Library/Projects/Koel/music/. I know the path works since I copy/pasted the path when looking for it through SFTP, but koel says its either not valid or readable. Is there a command I need to run to give koel permission to the folder? The folder itself wasn't made with any special permissions in mind, I'm the only person using my NAS.
The Koel demo website has support for displaying YouTube videos - I don't see that in mine. Is there any way to enable that?

Sorry for the misunderstanding, it is still required to run the command the first time you run the container. Let me know if you have ideas on how to phrase it better in the README :wink:.
About question 1., you should make sure the music folder is readable / accessible by the www-data user which should have uid/gid = 1000. The easiest way to check is to exec into the container with docker exec -it <container_name_for_koel> bash and then ls -la /share/CE_CACHEDEV1_DATA/Library/Projects/Koel/music/. Those commands should let you know if there is a filesystem permission problem.
About question 2., I have never done so myself but there is a section in the documentation related to that: Youtube setup. As for the docker container, you can pass it the YOUTUBE_API_KEY env variable. As it should stay secret, I suggest to create an .env file and restrict its permissions and then pass it via docker-compose, for example:
#koel.env
YOUTUBE_API_KEY=<key>

#docker-compose.yml
koel:
  #...
  ports: #...
  env_file:
    - koel.env
  volumes: #...

Oh, this was another silly oversight for me - since I mounted the music folder in my docker-compose, /music links to /Library/Projects/Koel/music/, so actually, all I needed to do was tell the container to point to /music to find my audio.
Thanks a lot! I've actually gotten things set up, connected my music, and my YouTube api key. Things are moving well and I'm able to start moving everything over! I just have two things I'm still thinking about:

Sometimes when rescanning my library, I'll just get "unknown error" as the red popup in the top right. Since all I have to type is /music (and its autofilled when I show up), I know its typed correctly-- and, it'll work if I just tell it to rescan again a few times, but do you have any ideas why it sometimes takes and sometimes doesn't? Kinda feels like when the USB only goes in on the third try
On the topic of rescanning my library, could you guide me through how to [https://docs.koel.dev/watch.html#_2-set-up-a-watcher-script](set up the watcher script) on docker? It seems like the guidance here is moreso if you're running on a desktop, rather than a headless container - I'm just not sure what the docker equivalents of what it's asking for are, and I'm actually not great with Linux either, I'm just some kid who bought a NAS qnq

Thanks so much for helping me get this far!

Hi, I'm glad you could make it work :smiley:.

Sometimes when rescanning my library, I'll just get "unknown error" as the red popup in the top right.

I've encountered that too, and frankly I don't have ideas on why it works sometimes. This is why I preferred to run the scan on the command-line because it gives you more feedback for what the errors were. Maybe you can find the errors in the log files at /var/www/html/storage/laravel.log ? The file might not exist, which would mean there are no logs.

On the topic of rescanning my library, could you guide me through how to [https://docs.koel.dev/watch.html#_2-set-up-a-watcher-script](set up the watcher script) on docker?

Unfortunately, I don't know if I can help you, I've never set this up :sweat_smile:. I don't have the setup to try right now but if inotifywait does not exist on the container, maybe it's possible to install it with apt-get install inotifywait or something similar. The docker image is based on Debian, so commands like apt-get might work.
You're welcome !

hello
using docker-compose + postgresql is not working ; defaut admin account is created with latest koel version, but unable to login.
when I try to change password, I have this issue ; can't explain why.
marc@nas:~/docker/kalif/music-koel$ docker-compose exec koel bash
root@872051bd5ca8:/var/www/html# php artisan koel:admin:change-password

   Illuminate\Database\QueryException

  SQLSTATE[42P01]: Undefined table: 7 ERROR:  relation "users" does not exist
LINE 1: select * from "users" where "is_admin" = $1 limit 1
                      ^ (SQL: select * from "users" where "is_admin" = 1 limit 1)

  at vendor/laravel/framework/src/Illuminate/Database/Connection.php:759
    755▕         // If an exception occurs when attempting to run a query, we'll format the error
    756▕         // message to include the bindings with SQL, which will make this exception a
    757▕         // lot more helpful to the developer instead of just the database's errors.
    758▕         catch (Exception $e) {
  ➜ 759▕             throw new QueryException(
    760▕                 $query, $this->prepareBindings($bindings), $e
    761▕             );
    762▕         }
    763▕     }

      +12 vendor frames
  13  app/Console/Commands/Admin/ChangePasswordCommand.php:30
      Illuminate\Database\Eloquent\Builder::first()

      +13 vendor frames
  27  artisan:35
      Illuminate\Foundation\Console\Kernel::handle()

switching to mysql database is OK for me. Docker-compose.yml file are nearly same as in this repo.


Fix issue in the parsing of tsConfig file

Fix issue in the parsing of tsConfig file, this was fixed in master before, but never ported.
The realizeDiagnosticS function already returns an array, no need to wrap again. The realizeDiagnostic (no S) function returns a single diagnostic.

@mhegazy  can you take a look?

:+1:


Cannot be used with prisma schema parameter output / multiple clients

As the library automatically look for the client at @prisma/client location, if we use the output parameter of prisma to move the location of the prisma client, it fail to run
Also for the same reason, we can't create multiple mock if we have multiple schema to use
Could it be possible to have a way not looking for the default client location ? or a parameter to not load it by default ?

Hello @Valetek ,
I'll have a look to add an option and allow using a different client location. You won't be able to use the automatic configuration with the PrismockClient class but should be able to do it manually, will let you know

:tada: This issue has been resolved in version 1.26.0 :tada:
The release is available on:

GitHub release
npm package (@latest dist-tag)

Your semantic-release bot :package::rocket:


Add hri information

@sbckr: Please review but do not merge, yet.

@strieflin how about adding anchors to the contributor descriptions?
e.g. as follows:

add anchors to docs/community/ecosystem.md

# Carbyne Stack Ecosystem

![Bosch Logo](../images/ecosystem/bosch-logo.png){ class="ecosystem-logo" }
[...]

---

![HRI Logo][...]

---

![UTS Logo][...]

User anchors as link destination in overrides/home.html

[...]

Contributors

[...]

Might especially be interesting once there are more contributors to Carbyne Stack 😉

Anchors have been implemented as proposed.


make ConstRef based on u32 instead of intx::U24

This allows us to remove intx dependency. This was an oversight in a previous PR.

The diff coverage is 40.00%.

@@            Coverage Diff             @@
##           master     #727      +/-   ##
==========================================
- Coverage   79.08%   79.07%   -0.02%
==========================================
  Files         102      102
  Lines        8755     8755
==========================================
- Hits         6924     6923       -1
- Misses       1831     1832       +1

Impacted Files
Coverage Δ

crates/wasmi/src/engine/const_pool.rs
77.27% <40.00%> (-4.55%)
:arrow_down:

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Update vendored fmt library to v9.1

Summary

This is a maintenance PR
It updates our vendored copy of fmt to<EMAIL_ADDRESS>There are two notable API changes that affect us:

The fmt::format_to() API changed. Its first argument is now a std::back_insterter()
fmt no longer implicitly formats custom classes with an operator<<() overload.
We now either need to supply an fmt::formatter overload, a format_to function, or wrap the argument with fmt::streamed(). I used a combination of these to update our fmt usage.

It also updates our blt submodule to the current HEAD of develop (just past<EMAIL_ADDRESS>and our uberenv submodule to the HEAD of main

I'm updating fmt due to an incompatibility that I discovered between the vendored copies of fmt in axom and<EMAIL_ADDRESS>when working on updating our vcpkg build on Windows to include RAJA and Umpire (see
#982). The issue was here: https://github.com/fmtlib/fmt/blob/7bdf0628b1276379886c7f6dda2cef2b3b374f0b/include/fmt/format-inl.h#L30-L33
Specifically, the compiler (MSVC) was unhappy about axom::fmt::detail::null<> strerror_r and umpire::fmt::detail::null<> strerror_r differing only in their return types. And similarly for strerror_s. The newer fmt does not have these functions.
TODO:

[ ] Ensure that the new fmt compiles for all our host-configs
[ ] Ensure that we can build all host-configs using the new uberenv
[ ] Update RELEASE-NOTES

Update:

All of our host-configs are passing on toss3
There are runtime failures with fmt::sprintf() with the XL compiler on blueos
There are build failures related to (missing) floating point conversions for long double with the amdclang compiler on toss4_cray


Detect pending upgrades using dist-upgrade

After changing some apt::source and apt::pin'ing some packages, I was surprised to not see any upgrades in the $::apt_package_updates fact.
Relying on dist-upgrade instead of a bare upgrade made them visible.

Before
After

[u'linux-libc-dev']
[u'e2fslibs', u'e2fsprogs', u'libapparmor1', u'libseccomp2', u'libsystemd0', u'libudev1', u'systemd', u'ifupdown', u'udev', u'libfuse2', u'fuse2fs', u'linux-libc-dev', u'ruby-rgen', u'ruby-safe-yaml', u'puppet', u'puppet-common']

[u'libapr1', u'libconfuse-common', u'libconfuse0', u'libhiredis0.10', u'libvarnishapi1', u'linux-image-3.16.0-4-amd64', u'libserialport0', u'libzip2', u'libsigrok2', u'collectd-core', u'collectd', u'libganglia1', u'librdkafka1', u'linux-compiler-gcc-4.8-x86', u'linux-headers-3.16.0-4-amd64', u'linux-headers-3.16.0-4-common', u'linux-libc-dev', u'ruby-rgen', u'ruby-safe-yaml', u'puppet', u'puppet-common']

Rebasing on top of master now that #633 is merged made TravisCI happy :smile:

I'm not sure this is a great idea... It's normal for dist-upgrade to surface much more packages because of the difference between what upgrade and dist-upgrade do:
upgrade
   upgrade is used to install the newest versions of all packages
   currently installed on the system from the sources enumerated in
   /etc/apt/sources.list. Packages currently installed with new
   versions available are retrieved and upgraded; under no
   circumstances are currently installed packages removed, or packages
   not already installed retrieved and installed. New versions of
   currently installed packages that cannot be upgraded without
   changing the install status of another package will be left at
   their current version. An update must be performed first so that
   apt-get knows that new versions of packages are available.

dist-upgrade
   dist-upgrade in addition to performing the function of upgrade,
   also intelligently handles changing dependencies with new versions
   of packages; apt-get has a "smart" conflict resolution system, and
   it will attempt to upgrade the most important packages at the
   expense of less important ones if necessary. So, dist-upgrade
   command may remove some packages. The /etc/apt/sources.list file
   contains a list of locations from which to retrieve desired package
   files. See also apt_preferences(5) for a mechanism for overriding
   the general settings for individual packages.

dist-upgrade can modify the system in ways that can potentially break things due to how it deals with dependency resolution in this case. It's far more common to run upgrade instead of dist-upgrade and upgrade will still correctly surface security updates and the likes. If you want apt to use these types of packages and essentially upgrade beyond the release's original version boundaries (e.g by using backports) you should change the priorities in order to reflect that which will make upgrade surface the updates.
That said, I think seeing these packages could be useful but they should probably be a separate fact. Especially since the current fact might be used in places to automate updates which up until now has been safe to do based on this fact's output. Your suggested change risks breaking a system.

Prior to puppetlabs-apt 2.3 (which switched away from the apt-check binary to using apt-get in ebf9d9f6a629dc69973cad6092080f36ec5af1d6), packages that are only upgradable via apt-get dist-upgrade were already returned. The old command apt-check -p listed all packages that could be upgraded, whereas the current method of apt-get -s upgrade only lists packages that will be upgraded if the user runs apt-get upgrade.
Example: I have a 16.04 VM which has just been booted from an old cloud image. Running apt-get -s upgrade shows that some vim packages are being held back, and these packages do not show up with Inst lines.
# /usr/bin/apt-get -s upgrade
Reading package lists...
Building dependency tree...
Reading state information...
Calculating upgrade...
The following packages have been kept back:
  vim vim-common vim-runtime vim-tiny
...

The apt_package_updates fact would not list these vim packages as being available for update. However, the previous apt-check -p command does list these packages:
# /usr/lib/update-notifier/apt-check -p 2>&1 | grep vim
vim-common
vim-runtime
vim
vim-tiny

In my case, the results of running apt-get -s dist-upgrade exactly match the set of packages that would previously have been returned from apt-check -p - i.e. the apt dist-upgrade method is actually more compatible with the pre-2.3 behaviour of this puppet module than apt upgrade:
root@app-proxy:~# /usr/lib/update-notifier/apt-check -p 2>&1 | sort > /tmp/apt-check
root@app-proxy:~# /usr/bin/apt-get -s upgrade | grep Inst | awk '{ print $2 }'|sort > /tmp/apt-get-upgrade
root@app-proxy:~# /usr/bin/apt-get -s dist-upgrade | grep Inst | awk '{ print $2 }'|sort > /tmp/apt-get-dist-upgrade
root@app-proxy:~# diff /tmp/apt-check /tmp/apt-get-dist-upgrade
root@app-proxy:~# diff /tmp/apt-get-upgrade /tmp/apt-get-dist-upgrade
47a48
> libpython3.5
78a80,83
> vim
> vim-common
> vim-runtime
> vim-tiny
root@app-proxy:~# diff /tmp/apt-check /tmp/apt-get-upgrade
48d47
< libpython3.5
80,83d78
< vim
< vim-common
< vim-runtime
< vim-tiny

I would prefer this puppet module go back to the previous behaviour of listing all packages that can be upgraded, either by using apt-check (if it's present) or by using apt-get -s dist-upgrade to get the full list of packages that can be upgraded.

@daenney, since we are only listing outdated packages into a fact (without taking any action), I would expect the apt_package_updates fact to report any pending update.
Relying on upgrade rather on dist-upgrade only makes sense for me in regard to actually blindly applying upgrades (changing the system's state).
Do you have in mind some use-cases where having only a part of the available updates (those that will be installed with apt-get upgrade) is more valuable than having all available updates?

What I want to guard against is that by changing this fact you can cause problems for others. If this was in any way relied upon by people to, for example, automate the upgrades of their hosts this could cause issue.
However since it seems that this used to be the behaviour we had before I don't think it's a problem to change it again. But, it should be an explicit decision to do so and to ensure that in the future that is kept. We can't keep doing this where we change an implementation of a fact in point releases which changes the packages it will consider as out of date versus not.

OK, I understand your point: I considered this to be a regression when updating from 2.2.2 to 2.3.0, that only deserved a patch bump to 2.3.1, and as I use cron-apt(8) to install updates, I did not considered applying them through the manifest.
Pinging @robinelfrink, the author of #581 where this behavior has changed, in case he has anything to say in regard to this.
If everyone agrees, maybe this PR can be labelled e.g. "3.0.0"?

This PR becomes oldish…
I just rebased this on top of master.  I had no news since I proposed to add this as part of a future major release, and 2 major releases have shipped since then :disappointed:

Ping @hunner

i am late to the show here, does it make sense that this is a different fact ? so people can pick and choose ?

@smortex Thank you for your contribution.
Based on your suggestion, dist-upgrade has been added as a separate fact as per PR https://github.com/puppetlabs/puppetlabs-apt/pull/719 , and should be released during the next release.
A separate fact will allow end users to pick and choose between either.
I'm therefore closing off this PR.
Thank you
Will

Excellent! Thanks for the heads-up @willmeek!


After integrated the new cSOV token, token balances are not shown... It might be necesary a distinction between old and new cSOV tokens

Describe the bug
The user @matu is inspecting the balance of their assets in the sovryn "MyWallet" tab... but his cSOV are not shown
To Reproduce
If you're a user with a deposit of new cSOV tokens, and inspect in "MyWallet" tab of the UI, the balance should appear
Expected behavior
MyWallet should show the balance of cSOV tokens regardless if they are the new or the old ones
Screenshots
see below
Desktop :
Browser: Chrome,
Windows 10

The user must try the following:
Likely the user is using cached (older) version of the dapp/UI - he needs to refresh his browser, and when refreshing, only one tab of the dapp can be opened (and no more than one), user will be prompted with a blue dialog asking to update dapp version then.

Hi, this is matu#2113
Here's some additional info.

I did see CSOV (version 2) in Sovryn wallet earlier after those were sent

After the recent update of dapp, Sovryn wallet no longer showed the correct balance

Tested above suggested refresh and one tab (by jjmr007) - no change.

Tested with Brave browser and Nifty Wallet with same results: CSOV visible in Web Wallet, but not Sovryn wallet

Tested to back up my wallet from Windows to MAC:

Backed up my wallet to MAC (Big Sur) from my Windows 10 machine.
Used same setup as before with Chrome and Liquality Web Wallet
CSOV (V2) is visible in my web wallet, but not in Sovryn wallet (My Wallet UI)

Other users in TG and Discord are reporting similar behavior, so this is not an isolated issue

Thanks.

Ok, there was indeed a bug should be fixed now (user will need to refresh first).

Yes, working now.  Thanks!


Generate process metrics with semconv yaml

Supplants #160
Changes
This PR adds a yaml version of the process metrics and changes the process metrics documentation to be generated from the yaml instead of hand-written.
Merge requirement checklist

[x] CONTRIBUTING.md guidelines followed.
[x] CHANGELOG.md updated for non-trivial changes.
[x] schema-next.yaml updated with changes to existing conventions.

Needs minor edits for CI to pass but content LGTM

Needs minor edits for CI to pass

Thanks @mx-psi those are fixed now, also added something to .yamllint to not scan node_modulues when running yamllint locally (didn't think it was worth a whole separate PR for something that small).

Looks like these workflows require approval now if someone can press the button for me. :smile:

Thanks, I'll file an issue today and I'll put my thoughts on #260 in there!

I will try to take a look at it today or tomorrow!

It's possible I'm missing some kind of context from discussions around #51, but it seems like what I have here should be fine. With the paging fault type attribute for example: it is in the process.paging.faults namespace. I added that namespace, as the attribute was previously type (just type). process.paging is not any more of a proper namespace than process.paging.faults as far as I can tell.
If I'm indeed missing something extra that's not from #51, and this attribute should go to process.paging, then I can also rename it to fault_type. But I would like to understand why for this and the other pointed out attributes are not following the decision from #51 already.

With the paging fault type attribute for example: it is in the process.paging.faults namespace

The thing I'm not sure if that process.paging.faults is the a metric, not a namespace. From reading #51 and the linked issues, my interpretation is that attributes should go on the namespace , meaning process.paging.* in this case. Maybe we need clarification if attributes can also be nested under the "implicit metric namespace".
CC @open-telemetry/specs-semconv-approvers @open-telemetry/specs-semconv-maintainers

I have updated the PR to match the semantic convention guidance as well as I'm able.
I renamed the metrics that are updowncounters to use the .count pluralization method. I also changed the metric attributes such that they do not use the metric names as namespaces.

I added proposed_changelog.md and proposed_schema_next.yaml, which upon PR approval I will add properly to the CHANGELOG.md and schema-next.yaml files. This is to avoid constantly needing to rebase these giant files if the PR lasts over a long period of time.

LGTM. Let's make sure that we file an issue for moving the attributes to the registry: https://github.com/open-telemetry/semantic-conventions/pull/330#discussion_r1419228700

Opened https://github.com/open-telemetry/semantic-conventions/issues/650 to track this.

This should be ready for merge.

I will bring this up in the semconv SIG meeting today, to raise awareness. I guess we can merge it then later today/tomorrow if no objections.


i found that  SECOND teacher model has low AP .

hello,
i use the checkpoint hv_second_secfpn_6x8_80e_kitti-3d-3class_20200620_230238-9208083a.pth
both v1.0.0rc v1.0.0r2

also point-rcnn  teacher model.

This is normal. The checkpoints of our teacher model were downloaded from the mmdetection3d GitHub. The detection accuracy of these models themselves is normal and reasonable. However, during an update of mmdetection3d, the model structure files of mmdetection3d were uniformly modified, which led to the previous models being unable to infer normally to achieve good results. However, this does not mean that the mAP of these teacher models themselves is low; they were just used incorrectly. Please refer to https://github.com/open-mmlab/mmdetection3d/issues/1339 for more details. Currently, we recommend that you find the latest version of the teacher model weights from mmdetection3d for distillation.

Thank you!

You are welcome.


11.1-11.4 forum links

Job d2l-zh/PR-919/1 is complete.
Check the results at http://preview.d2l.ai/d2l-zh/PR-919/


Image.network inside listview reloads random images

Steps to Reproduce

create list of 10 or more images.
2.now tap on image open another page.
3.just press back of another page , you will see random image is still reloading.

Expected results:
It should not reload as its already loaded.
Actual results:
its reloading random images from list when back from next page.
Please check this video: https://drive.google.com/file/d/1VmNSMTM7puTO-1hBNBGxgs5Z1H3S2Xoz/view?usp=sharing

Logs

[✓] Flutter (Channel stable, 1.22.1, on Mac OS X 10.13.6 17G65, locale en-IN)
    • Flutter version 1.22.1 at /Users/UserA/flutter
    • Framework revision f30b7f4db9 (13 days ago), 2020-10-08 10:06:30 -0700
    • Engine revision 75bef9f6c8
    • Dart version 2.10.1

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

[!] Xcode - develop for iOS and macOS (Xcode 10.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 10.1, Build version 10B61
    ✗ Flutter requires a minimum Xcode version of 11.0.0.
      Download the latest version or update via the Mac App Store.
    • CocoaPods version 1.9.3

[!] Android Studio (version 4.1)
    • Android Studio at /Applications/Android Studio.app/Contents
    ✗ Flutter plugin not installed; this adds Flutter specific functionality.
    ✗ Dart plugin not installed; this adds Dart specific functionality.
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6222593)

[✓] Connected device (1 available)
    • SM G615FU (mobile) • 42007d3b9a168429 • android-arm • Android 8.1.0 (API 27)

and here is code to replicate.
import 'package:flutter/material.dart';
import 'package:flutter_app/screen/AllPictures.dart';

class ImageList extends StatefulWidget {
  @override
  _ImageListState createState() =>  _ImageListState();

}
class  _ImageListState extends State<ImageList> {

  var images=
  ['https://d1k7e91iovemsu.cloudfront.net/images/dev/unoapp/root/ae0da25c-21b5-49d2-bfa2-d2acf7fced6c.jpg',
    'https://d1k7e91iovemsu.cloudfront.net/images/dev/unoapp/root/06e88e20-5b35-4c69-a230-0e150c7717ba.jpg',
    'https://d1k7e91iovemsu.cloudfront.net/images/dev/unoapp/root/c9449c6e-777a-4b46-8e59-8dcec284bcef.jpg',
    'https://d1k7e91iovemsu.cloudfront.net/images/dev/unoapp/root/366debe9-6c67-461d-b3d1-59ea6e4e330b.jpg' ,
    'https://d1k7e91iovemsu.cloudfront.net/images/dev/unoapp/root/d0842219-6324-4057-8cbc-8bc1fc3a6f5d.jpg',
    'https://d1k7e91iovemsu.cloudfront.net/images/dev/unoapp/root/79637540-ed13-4130-9853-569511922a9d.jpg',
    'https://d1k7e91iovemsu.cloudfront.net/images/dev/unoapp/root/31edcdee-ea7f-4335-ae69-905010094ae8.jpg',
    'https://d1k7e91iovemsu.cloudfront.net/images/dev/unoapp/root/9bca781a-6b73-410b-a03b-5db3167f9326.jpg',
    'https://d1k7e91iovemsu.cloudfront.net/images/dev/unoapp/root/cfeb72ef-6069-42a6-9ab7-eebf26461a03.jpg',
    'https://d1k7e91iovemsu.cloudfront.net/images/dev/unoapp/root/d1a8d9ca-5e6c-41c7-aba4-98eb3bbc8255.jpg' ,
    'https://d1k7e91iovemsu.cloudfront.net/images/dev/unoapp/root/5efa4097-e097-47b4-b7f2-b9f64368869c.jpg'];

  @override
  Widget build(BuildContext context) {

    return Scaffold(
        appBar: AppBar(title: Text('Image List'), centerTitle:  true,),
        body: SafeArea(
          top: true, left: true, right: true, bottom: true,
          child: Container(
            padding: EdgeInsets.all(5),
            child: Center(
              child: Column(
                mainAxisAlignment: MainAxisAlignment.center,
                crossAxisAlignment: CrossAxisAlignment.center,
                mainAxisSize: MainAxisSize.max,
                children: [  Flexible(
                    child: Container(
                      width: 150,
                      child: ListView.separated(itemBuilder: (BuildContext context,int index) {
                        return GestureDetector(
                          onTap: (){
                          Navigator.of(context).push( MaterialPageRoute(builder: (context) => AllPictures(images , index)));
                          },
                          child: SizedBox(
                              height: 100.00,
                              child: DecoratedBox(
                                decoration: BoxDecoration(
                                  color: Colors.white,
                                  border: Border.all(width: 0, color: Colors.black12),
                                  borderRadius: BorderRadius.zero,
                                ),
                                child: Image.network(
                                  images[index],
                                  fit: BoxFit.fill,
                                  loadingBuilder: (BuildContext context, Widget child,
                                      ImageChunkEvent loadingProgress) {
                                    if (loadingProgress == null) return child;
                                    return Center(
                                      child: CircularProgressIndicator(
                                        value: loadingProgress.expectedTotalBytes != null
                                            ? loadingProgress.cumulativeBytesLoaded /
                                            loadingProgress.expectedTotalBytes
                                            : null,
                                      ),
                                    );
                                  },
                                ),
                              )),
                        );
                      },shrinkWrap: true, separatorBuilder: (context, index) {return Divider(height: 4,color: Colors.white10,);}, itemCount: images.length),

                    ),
                  ),
                ],
              ),
            ),
          ),
        ),
    );
  }

}

import 'package:flutter/material.dart';

class AllPictures extends StatefulWidget {

  var images =[];
  int selectedIndex = 0;

  AllPictures(this.images,this.selectedIndex);
  @override
  _AllPicturesState createState()=> _AllPicturesState();

}

class _AllPicturesState extends State<AllPictures> {

  PageController controller ;
  TransformationController _transformationController = TransformationController();

  @override
  Widget build(BuildContext context) {
    controller = PageController(viewportFraction: 1, initialPage:widget.selectedIndex );

    return Scaffold(
      appBar: AppBar(title: Text('Pictures') ,centerTitle:  true,
          automaticallyImplyLeading: false,
          leading: IconButton(
              icon: Icon(Icons.arrow_back_ios),
              onPressed: () {
                Navigator.pop(context, false);
              })
      ),
      body: Container(
        child: PageView.builder(
          onPageChanged: (int page){
            setState(() {
              _transformationController.value = Matrix4.identity();
            });

          },
          controller: controller,
          itemCount: widget.images.length,
          itemBuilder: (BuildContext context, int index) {
            return Center(
                child: SizedBox(
                    height:  250,
                    child: Container(
                      width: double.infinity,
                      child: InteractiveViewer(
                        panEnabled: false, // Set it to false to prevent panning.
                        boundaryMargin: EdgeInsets.all(10),
                        transformationController: _transformationController,
                        minScale: 0.5,
                        maxScale: 3.0,
                        child: Image.network(widget.images[index],fit: BoxFit.fill,
                          loadingBuilder: (BuildContext context, Widget child, ImageChunkEvent loadingProgress) {
                            if (loadingProgress == null) return child;
                            return Center(
                              child: CircularProgressIndicator(
                                value: loadingProgress.expectedTotalBytes != null
                                    ? loadingProgress.cumulativeBytesLoaded /
                                    loadingProgress.expectedTotalBytes
                                    : null,
                              ),
                            );
                          },
                        ),
                      ),
                    )
                )
            );
          },
        ),
      ),
    );

  }

}

@mehtahardikr
Tried your code sample. So what's the exact issue ?
68700.mp4.zip
Since you have used Image.network and loadingBuilder, it will load the images when they go off the screen and will render when comes in focus.

@darshankawar  : But why its reloads random images , as per you it should reload all images. in video its shows that its reload random images when back from next page and its happening when in page there are more images upto 6 - 7 images it doesn't reload.

@mehtahardikr
I didn't say it'll reload all images. The widget will reload the images if they go off-screen and come back in focus. Also, I didn't notice random images being loaded when I replicated it.
Since you are using loadingBuilder, do read about it for more details, how it works with Image.network. You may also try to use frameBuilder along with it to see if it works per your need.

@darshankawar  : i will check that doc, but can you please check with new code as i have 2 lists and its happening,Please see attached video : https://drive.google.com/file/d/1dS6MJlHqVaoB9rDHfE2qtqrUu1Q-B5Yo/view?usp=sharing
and updated code for showing list:

Sample Code
import 'package:flutter/material.dart';
import 'package:flutter_app/screen/AllPictures.dart';

class ImageList extends StatefulWidget {
  @override
  _ImageListState createState() =>  _ImageListState();

}
class  _ImageListState extends State<ImageList> {

  var images=
  ['https://d1k7e91iovemsu.cloudfront.net/images/dev/unoapp/root/ae0da25c-21b5-49d2-bfa2-d2acf7fced6c.jpg',
    'https://d1k7e91iovemsu.cloudfront.net/images/dev/unoapp/root/06e88e20-5b35-4c69-a230-0e150c7717ba.jpg',
    'https://d1k7e91iovemsu.cloudfront.net/images/dev/unoapp/root/c9449c6e-777a-4b46-8e59-8dcec284bcef.jpg',
    'https://d1k7e91iovemsu.cloudfront.net/images/dev/unoapp/root/366debe9-6c67-461d-b3d1-59ea6e4e330b.jpg' ,
    'https://d1k7e91iovemsu.cloudfront.net/images/dev/unoapp/root/d0842219-6324-4057-8cbc-8bc1fc3a6f5d.jpg',
    'https://d1k7e91iovemsu.cloudfront.net/images/dev/unoapp/root/79637540-ed13-4130-9853-569511922a9d.jpg',
    'https://d1k7e91iovemsu.cloudfront.net/images/dev/unoapp/root/31edcdee-ea7f-4335-ae69-905010094ae8.jpg',
    'https://d1k7e91iovemsu.cloudfront.net/images/dev/unoapp/root/9bca781a-6b73-410b-a03b-5db3167f9326.jpg',
    'https://d1k7e91iovemsu.cloudfront.net/images/dev/unoapp/root/cfeb72ef-6069-42a6-9ab7-eebf26461a03.jpg',
    'https://d1k7e91iovemsu.cloudfront.net/images/dev/unoapp/root/d1a8d9ca-5e6c-41c7-aba4-98eb3bbc8255.jpg' ,
    'https://d1k7e91iovemsu.cloudfront.net/images/dev/unoapp/root/5efa4097-e097-47b4-b7f2-b9f64368869c.jpg'];

  @override
  Widget build(BuildContext context) {

    return Scaffold(
        appBar: AppBar(title: Text('Image List'), centerTitle:  true,),
        body: SafeArea(
          top: true, left: true, right: true, bottom: true,
          child: Container(
            padding: EdgeInsets.all(5),

              child: Column(
                mainAxisAlignment: MainAxisAlignment.center,
                crossAxisAlignment: CrossAxisAlignment.center,
                mainAxisSize: MainAxisSize.max,
                children: [
                  Row(mainAxisSize: MainAxisSize.min , crossAxisAlignment : CrossAxisAlignment.center,children: [Flexible(
                      child: Container(
                        width: 150,
                        child: ListView.separated(itemBuilder: (BuildContext context,int index) {
                          return GestureDetector(
                            onTap: (){
                            Navigator.of(context).push( MaterialPageRoute(builder: (context) => AllPictures(images , index)));
                            },
                            child: SizedBox(
                                height: 100.00,
                                child: DecoratedBox(
                                  decoration: BoxDecoration(
                                    color: Colors.white,
                                    border: Border.all(width: 0, color: Colors.black12),
                                    borderRadius: BorderRadius.zero,
                                  ),
                                  child: Image.network(
                                    images[index],
                                    fit: BoxFit.fill,
                                    loadingBuilder: (BuildContext context, Widget child,
                                        ImageChunkEvent loadingProgress) {
                                      if (loadingProgress == null) return child;
                                      return Center(
                                        child: CircularProgressIndicator(
                                          value: loadingProgress.expectedTotalBytes != null
                                              ? loadingProgress.cumulativeBytesLoaded /
                                              loadingProgress.expectedTotalBytes
                                              : null,
                                        ),
                                      );
                                    },
                                  ),
                                )),
                          );
                        },shrinkWrap: true, separatorBuilder: (context, index) {return Divider(height: 4,color: Colors.white10,);}, itemCount: images.length),

                      ),
                    ),SizedBox(width: 10),Flexible(child: Container(
                    width: 150,
                    child: ListView.separated(itemBuilder: (BuildContext context,int index) {
                      return GestureDetector(
                        onTap: (){
                          Navigator.of(context).push( MaterialPageRoute(builder: (context) => AllPictures(images , index)));
                        },
                        child: SizedBox(
                            height: 100.00,
                            child: DecoratedBox(
                              decoration: BoxDecoration(
                                color: Colors.white,
                                border: Border.all(width: 0, color: Colors.black12),
                                borderRadius: BorderRadius.zero,
                              ),
                              child: Image.network(
                                images[index],
                                fit: BoxFit.fill,
                                loadingBuilder: (BuildContext context, Widget child,
                                    ImageChunkEvent loadingProgress) {
                                  if (loadingProgress == null) return child;
                                  return Center(
                                    child: CircularProgressIndicator(
                                      value: loadingProgress.expectedTotalBytes != null
                                          ? loadingProgress.cumulativeBytesLoaded /
                                          loadingProgress.expectedTotalBytes
                                          : null,
                                    ),
                                  );
                                },
                              ),
                            )),
                      );
                    },shrinkWrap: true, separatorBuilder: (context, index) {return Divider(height: 4,color: Colors.white10,);}, itemCount: images.length),

                  ),)]),
                ],
              ),

          ),
        ),
    );
  }

}

@mehtahardikr
You are calling the images inside build method, which will be called during every navigation.  As to why, it's loading random images, I am not sure. I'd suggest you to cache the images in order to prevent loading images. For that, as I said earlier, you can try CachedNetworkImage and see if it works for you.
Also, it doesn't seem to be an issue / bug with the framework. You may ask this question on StackOver flow.

@darshankawar  : Why you not try with the same code ? you should able to replicate no ?

@mehtahardikr
Since you have that in ListView. If the listview isn't scrollable, ie, there are not enough items in the list to scroll.

@darshankawar : so because of list its happening ?

@mehtahardikr
if you don't want the images to reload you can
wrap them in a StatefulWidget and extend AutomaticKeepAliveClientMixin in its state
I'm not saying it's a good practice and this will defeat the purpose of the builder in your ListView
but the behavior you are experiencing is intended

@mehtahardikr Please see @iapicca's comment above and possible alternate implementation. Also see https://flutter.dev/community for resources, you may also get some help if you post it on Stack Overflow and if you need help with your code, please see https://www.reddit.com/r/flutterhelp/
Closing, as this isn't an issue with Flutter itself. If you disagree, please write in the comments and I will reopen it.
Thank you

@iapicca  @darshankawar  : if its intended behaviour then why restricted to 2 or 3 random images ? Will try alternate but still this question remains.
Thanks

@darshankawar
actually @mehtahardikr might have a point here
logs from init, dispose and loadingBuilder
at least on web seems to point at a weird behavior:
building sometimes twice the same widget and loading repeatedly the same image

code sample
import 'package:flutter/material.dart';

void main() => runApp(const MyApp());

class MyApp extends StatelessWidget {
  const MyApp() : super(key: const Key('MyApp'));

  @override
  Widget build(BuildContext context) => MaterialApp(
        home: Material(
          child: ListView.builder(
            itemCount: 100,
            itemBuilder: (context, index) => Center(
              child: ImageWidget(
                index,
                MediaQuery.of(context).size,
              ),
            ),
          ),
        ),
      );
}

class ImageWidget extends StatefulWidget {
  ImageWidget(this.index, this.size) : super(key: ValueKey(index));
  final Size size;
  final int index;
  @override
  _ImageWidgetState createState() => _ImageWidgetState();
}

class _ImageWidgetState extends State<ImageWidget> {
  ImageProvider _provider;
  Key _imageKey;

  @override
  void initState() {
    _imageKey = Key('image: ${widget.index}');
    _provider = NetworkImage(
      'https://picsum.photos/id/' +
          '${widget.index}/' +
          '${widget.size.width}/' +
          '${widget.size.height}',
    );
    print('$_imageKey initialized');
    super.initState();
  }

  @override
  void dispose() {
    print('$_imageKey disposed');
    super.dispose();
  }

  @override
  Widget build(BuildContext context) {
    print('building $_imageKey');
    return Image(
      loadingBuilder: (_, Widget child, ImageChunkEvent loading) {
        loading == null
            ? print('$_imageKey: loading completed!')
            : print(
                '$_imageKey:'
                +'${loading.cumulativeBytesLoaded / loading.expectedTotalBytes * 100}'
                +'% complete');
        return loading != null
            ? const Center(
                child: CircularProgressIndicator(),
              )
            : child;
      },
      height: widget.size.height,
      width: widget.size.width,
      image: _provider,
      key: Key('image: ${widget.index}'),
    );
  }
}

logs
 francesco@francesco-yoga720  ~/projects/issue_67800  flutter_master run -d chrome                                                                                 ✔  4794  20:09:54
Downloading Web SDK...                                                               38.3s
Running "flutter pub get" in issue_67800...                        383ms
Launching lib/main.dart on Chrome in debug mode...
Syncing files to device Chrome...                                  19.5s
Debug service listening on ws://<IP_ADDRESS>:45115/dlPLpO4RBcM=

Warning: Flutter's support for web development is not stable yet and hasn't
been thoroughly tested in production environments.
For more information see https://flutter.dev/web

🔥  To hot restart changes while running, press "r" or "R".
For a more detailed help message, press "h".  Android Studio (not installed)
    • Android Studio not found; download from https://developer.android.com/studio/index.html
      (or visit https://flutter.dev/docs/get-started/install/linux#android-setup for detailed instructions).

[✓] Connected device (3 available)
    • Linux (desktop)  • linux      • linux-x64      • Linux
    • Web Server (web) • web-server • web-javascript • Flutter Tools
    • Chrome (web)     • chrome     • web-javascript • Google Chrome 86.0.4240.75

! Doctor found issues in 1 category.

@darshankawar : Please reopen this.
there is something wrong.
@iapicca : Thanks for  the accepting this.

Thanks @iapicca for the insight. Reopening.

Keeping this issue open for further analysis, since navigating back and forth, multiple images are being loaded in no particular order.

@darshankawar  : thanks for reopening.

@darshankawar  : is there any updates ?

I'm seeing the same issue while using ListView.builder

Same herr

I'm seeing the same issue while using ListView.builder
And I've also tried without it return Column(children: listItems); and i get the same result -> returning back to the page is going to reload randomly some images

Same here navigating to a page and coming back reloads the page

@darshankawar is this on anybody's radar right now? as it is causing some pain visually and it is bad I'd say

@mehtahardikr
if you don't want the images to reload you can
wrap them in a StatefulWidget and extend AutomaticKeepAliveClientMixin in its state
I'm not saying it's a good practice and this will defeat the purpose of the builder in your ListView
but the behavior you are experiencing is intended

AutomaticKeepAliveClientMixin seems limited. It does not work in NavigationRail.

@mehtahardikr
if you don't want the images to reload you can
wrap them in a StatefulWidget and extend AutomaticKeepAliveClientMixin in its state
I'm not saying it's a good practice and this will defeat the purpose of the builder in your ListView
but the behavior you are experiencing is intended

AutomaticKeepAliveClientMixin seems limited. It does not work in NavigationRail.
Is this really its intended behavior? it does not look good if every time the row gets visible, we see a progress indicator re-loading the image (even if it's cached)

@chitgoks
please see my later post

I had the same issue until I realized some of the images were getting removed from cache in order to save space - default image cache size is 100 MB and I had more than 100 MB worth of images loaded on the screen. If you want to set a custom cache size, you can place this at the beginning of main.dart:
WidgetsFlutterBinding.ensureInitialized();
PaintingBinding.instance!.imageCache!.maximumSizeBytes = 1024 * 1024 * 300; // 300 MB

I had this same issue, if the ListView with network image is scrolled the images that goes out of the screen gets reloaded.
I solved this by setting the listview's shrinkwrap to true and setting the physics to NeverScrollableScrollPhysics and then finally wrapping the list in SingleChildScrollView, so the list is not scrolling but the scrollview is and the images don't reload.
Hope this helps :)

@surajboniwal can you provide some fast code examples please ? ☺

@surajboniwal can you provide some fast code examples please ? relaxed

Sure,
SingleChildScrollView(                       child: ListView.builder(                         shrinkWrap: true,                         physics: NeverScrollableScrollPhysics(),                         itemCount: items.lenght,                         itemBuilder: (context, index) => Image.network(                           items[index].url,                         ),                       ),                     ),
Also if you need to use scroll controller use it with the SingleChildScrollView and not with the ListView. :)

Hey, any updates on this. We are trying to make a second hand marketplace app, so this really hinders with the overall user experience.

I have this problem in my social media app. This is Flutter's worst feature. It needs to be resolved urgently. It trashes the charisma of the app.

I found this: It's worked
class CustomImageCache extends WidgetsFlutterBinding {
@override
ImageCache createImageCache() {
ImageCache imageCache = super.createImageCache();
// Set your image cache size
imageCache.maximumSizeBytes = 1024 * 1024 * 500; // 500 MB
return imageCache;
}
}
void main() async {
WidgetsFlutterBinding.ensureInitialized();
if (kReleaseMode) {
CustomImageCache();
}
runApp(MyApp());
}

This worked for me
Future<List> _loadImageUrls() async {
//List of images
return controller.imageUrls;
}
FutureBuilder<List>(
future: _loadImageUrls(),
builder: (context, snapshot) {
if (snapshot.hasData) {
return InteractiveViewer(
child: ListView.builder(
controller: controller.scrollController.value,
itemCount: snapshot.data?.length ?? 0,
itemBuilder: (context, index) {
return CachedNetworkImage(
imageUrl: snapshot.data![index],
useOldImageOnUrlChange: true,
memCacheWidth: Get.width.toInt(),
placeholder: (context, url) {
return Container(
height: Get.height * 0.6,
width: double.infinity,
color: Theme.of(context).colorScheme.background,
// ignore: prefer_const_constructors
child: Column(
crossAxisAlignment: CrossAxisAlignment.center,
mainAxisAlignment: MainAxisAlignment.center,
children: const [
SizedBox(
width: 14,
height: 14,
child: Center(
child: CircularProgressIndicator(
strokeWidth: 2,
),
),
),
],
),
);
},
);
},
),
);
} else {
return const CircularProgressIndicator();
}
},
)

I am not able to notice any erratic loading while scrolling through a list of images. Below is the code sample I am using. But I am unsure of what the error is supposed to look like. @iapicca Since you initially confirmed this behavior, do you have any insights on this? I do not feel safe closing this issue as fixed, and would like a second opinion.

I am not able to notice any erratic loading while scrolling through a list of images. Below is the code sample I am using. But I am unsure of what the error is supposed to look like. @iapicca Since you initially confirmed this behavior, do you have any insights on this? I do not feel safe closing this issue as fixed, and would like a second opinion.

thanks for asking @exaby73!
I do experience blank images when scrolling back quickly (see 9th second in the gif), but...

I think this behavior is to be expected and loading/evicting image cache happens on the main tread
(which I hate, but team doesn't want to change it, see issue)
unlike before logs are very clean

[<'image: 14'>] initialized
building [<'image: 14'>]
[<'image: 14'>]: loading completed!
[<'image: 17'>] disposed
[<'image: 13'>] initialized
building [<'image: 13'>]
[<'image: 13'>]: loading completed!
[<'image: 16'>] disposed
[<'image: 12'>] initialized
building [<'image: 12'>]
[<'image: 12'>]: loading completed!
[<'image: 15'>] disposed
[<'image: 11'>] initialized
building [<'image: 11'>]
[<'image: 11'>]: loading completed!
[<'image: 14'>] disposed
[<'image: 10'>] initialized
building [<'image: 10'>]
[<'image: 10'>]: loading completed!
[<'image: 13'>] disposed
[<'image: 9'>] initialized
building [<'image: 9'>]
[<'image: 9'>]: loading completed!
[<'image: 12'>] disposed
[<'image: 8'>] initialized
building [<'image: 8'>]
[<'image: 8'>]: loading completed!
[<'image: 11'>] disposed
[<'image: 7'>] initialized
building [<'image: 7'>]
[<'image: 7'>]: loading completed!
[<'image: 10'>] disposed
[<'image: 6'>] initialized
building [<'image: 6'>]
[<'image: 6'>]: loading completed!
[<'image: 9'>] disposed
[<'image: 5'>] initialized
building [<'image: 5'>]
[<'image: 5'>]: loading completed!
[<'image: 8'>] disposed
[<'image: 4'>] initialized
building [<'image: 4'>]
[<'image: 4'>]: loading completed!
[<'image: 7'>] disposed
[<'image: 3'>] initialized
building [<'image: 3'>]
[<'image: 3'>]: loading completed!
[<'image: 6'>] disposed
[<'image: 2'>] initialized
building [<'image: 2'>]
[<'image: 2'>]: loading completed!
[<'image: 5'>] disposed
[<'image: 1'>] initialized
building [<'image: 1'>]
[<'image: 1'>]: loading completed!
[<'image: 4'>] disposed
[<'image: 0'>] initialized
building [<'image: 0'>]
[<'image: 0'>]: loading completed!
[<'image: 3'>] disposed
[<'image: 2'>] disposed
Application finished.
➜  issue_68700

I'd feel safe to close it

I too notice some loading when scrolling back, and yes that is currently expected behavior. Thanks @iapicca for the insights :) Due to reasons mentioned in https://github.com/flutter/flutter/issues/68700#issuecomment-1402198147, I feel safe to close this issue as fixed. Thank you


Doesn't work with CreateConsoleScreenBuffer/SetConsoleActiveScreenBuffer

If a program uses CreateConsoleScreenBuffer() and SetConsoleActiveScreenBuffer(), it doesn't work on winpty.
Here is a sample: https://gist.github.com/k-takata/4564ae4deca758420514

Vim 7.4.851 and later doesn't work on winpty anymore, because it uses CreateConsoleScreenBuffer() and SetConsoleActiveScreenBuffer().

This issue isn't fixed on Windows 7.  I think it's only fixed on later versions.

i.e. See issue #42.


Add Tuya soil sensor _TZE200_ga1maeof variant

Proposed change

Add a new tuya soil sensor variant "_TZE200_ga1maeof".
Fix https://github.com/zigpy/zha-device-handlers/issues/2497
Additional information

Checklist

[ ] The changes are tested and work correctly
[ ] pre-commit checks pass / the code has been formatted using Black
[ ] Tests have been added to verify that the new code works

Just to confirm, since you didn't check the box with "The changes are tested and work correctly":
Were you (or @npa-homeassistan) able to test this with a custom quirk to see if this works?

No, I will need some free time to do the custom quirk and explain to @npa-homeassistant how to test

Thank you


Not sure what .goBack('home') means and how it works

I don't fully understand what this section of the documentation means:
Optionally provide a key, which specifies the route to go back from. By default, goBack will close the route that it is called from. If the goal is to go back anywhere, without specifying what is getting closed, call .goBack(null);

Here's what I am trying to do, I have the stack like this:

home
email
credit-card

Notice that I am using REDUX! From inside the credit-card scene I am doing the following hoping it will "pop" both credit-card and email scenes to finally show the home screen:
navigation.goBack('home');

This is doing nothing, and the stack is not being altered in any way. How can I accomplish this? (I volunteer to enhance the documentation once I figure out how it works).

I found the problem, the stack router is comparing by key, when according to the state I have in my app, it should be comparing by routeName:
      if (action.type === NavigationActions.BACK) {
        let backRouteIndex = null;
        if (action.key) {
          const backRoute = state.routes.find(route => route.key === action.key);
          backRouteIndex = state.routes.indexOf(backRoute);
        }
        if (backRouteIndex == null) {
          return StateUtils.pop(state);
        }
        if (backRouteIndex > 0) {
          return {
            ...state,
            routes: state.routes.slice(0, backRouteIndex),
            index: backRouteIndex - 1,
          };
        }
      }

https://github.com/react-community/react-navigation/blob/master/src/routers/StackRouter.js#L207

When I changed the following to compare using routeName:
const backRoute = state.routes.find(route => route.routeName === action.key);
I can tell now that the functionality is poping all the scenes including the routeName one. I believe that we could really use a goBackTo that leaves the routeName in the stack (backRouteIndex - 1).

I had the same understanding of what the goBack('Home') should have done and I struggle with the same issue.
However, I don't understand why this issue was closed. Is this fixed ? Is there a PR for this ?

This is not clear to me too. Explicitly, I don't understand how to implement something like popN() or popToTop() from Navigator/NavigatorIOS.

What I understood from @machadogj's explanation and after a quick look at the code, the "bug" can easily be fixed : right now goBack(screenKey) takes the user to the screen before the screen with 'screenKey' as key. But it would be nice to give the screen name as parameter.
But I'm still not sure if the fix is something wanted by the Contributors or not. I tried to ping @machadogj several times but never succeeded :(

I kinda understand that logic, but I was also wondering how to retrieve the screenkey of the route I want to go back to. I tried to look into the chrome debugger and it seems they are all randomly generated at runtime.

I mean if I can do it by key, no biggie. Do you know how to retrieve the key of each screen/route? @aimak

'key -> routeName' seems to be a forgotten change.
ping @skevy @grabbou @satya164
P.S. This repo moves quite slowly, it's a hurry to make it a replacement for Navigator (and even you guys deprecated Navigator before 0.43 release!)

Agreed with the activity on the repo.
On Mon, Mar 27, 2017 at 10:32 PM sunnylqm<EMAIL_ADDRESS>wrote:

'key -> routeName' seems to be a forgotten change.
ping @skevy https://github.com/skevy @grabbou
https://github.com/grabbou @satya164 https://github.com/satya164
P.S. This repo moves quite slowly, it's a hurry to make it a replacement
for Navigator (and even you guys deprecated Navigator before 0.43 release!)
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/react-community/react-navigation/issues/285#issuecomment-289638594,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AHuI6km7xzjom6umxH_BQqY8Ce8alhU7ks5rqGejgaJpZM4L9y-q
.

I try to modify the code effect is reached But the return of animation Seems a little bit not normal
if (action.type === NavigationActions.BACK) {
    let backRouteIndex = null;
    if (action.key) {
      /* $FlowFixMe */
      const backRoute = state.routes.find((route: *) => route.key === action.key);
      /* $FlowFixMe */
      backRouteIndex = state.routes.indexOf(backRoute);
    }
    if (backRouteIndex == null) {
      return StateUtils.pop(state);
    }

    if (state.routes.length >= 2 && backRouteIndex < state.routes.length ) {
      return {
        ...state,
        routes: state.routes.slice(0, backRouteIndex+1),
        index: backRouteIndex,
      };
    }
  }
  return state;
},

I call
global.navigatorApp._navigation.goBack(global.navigatorApp.state.nav.routes[1].key);

I have 3 pages   1 2 3      I return from 3 to 1  But he carried out two times return to animation  3 to 2 to 1

According to the roadmap this will not be used in core? roadmap

it also doesn't work for me when i try go back by Key. Why is this closed?

This works. But the api is a bit confusing.
Consider the following scenes on stack
A -> B -> C -> D
if you want to go to A from D you should do navigation.goBack(keyOfB) in D.
Its sort of confusing and would have been simpler if you could pop to the specified scene id.

@mu1ex how do you retrieve the key of B from D?

@edo1493 You cant get the key of B from D. You should have retrieved it when you were at B and pass them as props when you're navigating. Or if you use redux save it there. Save this.props.navigation.state.key when you enter B and pass it as props to C & D and then use navigation.goBack() at D. Im not sure if this can be done in some other way. Its ugly though this way.

https://github.com/gorokhovich/react-navigation/tree/feature/goback-functionality
in this fork I added two features: goBack N screens and goBack to specific screen in stack.

@maksim-harakhovich-itechart can you make it a PR ?

@aimak will do it over weekends, need to take look on tests and docs

@maksim-harakhovich-itechart good work :) i am waiting for you fix then, fingers crossed

@maksim-harakhovich-itechart do you need any help on this ? :)

Flicker can be solved @maksim-harakhovich-itechart

https://github.com/react-community/react-navigation/pull/905

Hmm any solution for flashing screen which @janiokq described when doing .back({ key: 'A'}) from screen D?
@maksim-harakhovich-itechart PR is closed :(

There is a way to hack scenes reducer to avoid the flashing effect: only make the previously active scene as a stale scene, instead of keeping all stale scenes around.

Yes, a hack. I have it in my repo.
I can separate it into other branch and do PR. @ericvicenti @alimek

I think it is not a hack if we assume that Transitioner is designed to only display one screen at a time

@ericvicenti alright :) Will do soon

@mu1ex it works.
i have three screen A B C.
I get the screen key of A when at B screen.then i pass the screen key of A  to  C screen by params
navigate('C',{screenKeyOfA:screenKeyOfA})
finally,i get the screen key of A at C screen.Thank you very much!
sorry, my english is poor :)

@alimek  , @janiokq hi guys, did u fixed the issue of flashing screen?

The example in the documentation is at best misleading :
https://reactnavigation.org/docs/navigators/navigation-actions#Back
Instead of having 'Profile' in the example, it should be 'id-xxxxxxxx-#' to make it perfectly clear that it's referring to the [randomly] generated key and not the name of the route, which 'Profile' implies.
Overall this behavior is quite badly architected.  It would be much more convenient to specify the route name to go back from.  My guess is that the authors wanted to be able to handle duplicate routes on the stack such as A -> B -> A -> C.  IMHO that's an anti-pattern in routing and they should leave the handling of that to the few people who want that behavior.

@peacechen   hi, if I goback from C to A , how can I avoid that screen B flashing in the middle?

@guoliang1206  what about call reset ? https://reactnavigation.org/docs/navigators/navigation-actions#Reset

@guoliang1206   On a stack with A -> B -> C, I don't see B flash when going back from C to A on iOS.  Are you by chance running on Android?

@peacechen @ColCh  In fact, my route stack like this
Main:TabNavigator
and route in Main ：
TabA  -> ScreenA1 ->ScreenA2
TabB
TabC

Now I need back to TabA from ScreenA2, but ScreenA1 will flashing , it is appear at iOS .
And I try like this in ScreenA2:
 let navigateAction = NavigationActions.back({
            key:"TabA",
        });
        this.props.navigation.dispatch(navigateAction);

the key of TabA I have saw is "TabA",  and I have also try this 2 :
 this.props.navigation.state.params.key,    key of ScreenA1 passed by  'params.key'
 this.props.navigation.state.key,    key of ScreenA2

Nope.
And I have try like this:
let  navigateAction =  NavigationActions.reset({
            index: 0,
            actions: [
                NavigationActions.navigate({ routeName: 'Jobs'})  //or routeName:'Main'
            ]
        });
        this.props.navigation.dispatch(navigateAction);

Nope.
So guys, can you show me the simple code ,how to handle this? back to root and no flashing of middle screen.

@mu1ex Did you have find a better way to get screen key of B when in screen D?

@mu1ex  i met a problem the same with you ,i have a stacks include A,B,C,D;  i navigate from A to D one by one;  if i  want to goBack to A from D, i  need to do navigation.goBack(keyOfB).
Have you understood why  it  act like this, i annoy with this for  hours.
Looking forward to your answer.

@guoliang1206 this is somewhat harder
with your snippet
// TabA  -> ScreenA1 ->ScreenA2

let navigateAction = NavigationActions.back({
            key:"TabA",
        });

so you want transition from ScreenA2 to TabA
The key passed to goBack should be key of ScreenA1
key of "TabA" is not right, because argument for goBack is a route key go back from, and it can't go back from first route in stack.
I'm using approach with key of ScreenA1 passed by  'params.key'. I wonder if there is better solution for this

@ColCh your answer solve my confuse perfectly.thanks

@ColCh  it was my mistake ,
 const MainScreen = TabNavigator({
    Jobs: {screen: Jobs},
    Message: {screen: MessageList},
    InfoCenter: {screen: InfoScreen},
    Setting: {screen: Setting},
});

and  StackNavigator
StackNavigator({

    Login:{ screen:LoginScreen},
    Main: { screen: MainScreen },
    ScreenA:{ screen: ScreenA},
    ScreenB:{ screen:ScreenB},
    ScreenC:{ screen:ScreenC}
})

And the stack like this: Jobs ->ScreenA->ScreenB->ScreenC , and I need back to jobs from C

@ranran2 You're welcome. I just not understand why react-native has deprecated Navigator component in favor by react-navigation. It has much less features than deprecated component.
@guoliang1206 I have same thing in my app. Finally, I'm passing key of ScreenA route through ScreenB to ScreenC with params. Then, in ScreenC call of navigation.goBack(keyOf_ScreenA) will go back to Jobs screen.
It looks like this:
// Jobs
this.props.navigation.navigate('ScreenA');

// ScreenA
this.props.navigation.navigate('ScreenB', { screenAKey: this.props.navigation.state.key, });

// ScreenB
this.props.navigation.navigate('ScreenC', { screenAKey: this.props.navigation.state.params.screenAKey, });

// ScreenC
this.props.navigation.goBack(this.props.navigation.state.params.screenAKey);

I really don't know if this is right solution for this, or reset action should be used here

Or may be use some function in route params??
Jobs ->ScreenA->ScreenB->ScreenC
// Jobs
this.props.navigation.navigate('ScreenA');

// ScreenA
const goBackToJobs = () => this.props.navigation.goBack(this.props.navigation.state.key);
this.props.navigation.navigate('ScreenB', { goBackToJobs, });

// ScreenB
this.props.navigation.navigate('ScreenC', { goBackToJobs: this.props.navigation.state.params.goBackToJobs, });

// ScreenC
this.props.navigation.state.params.goBackToJobs();

At least this looks much more neat :D

@ColCh  I could back to Jobs from ScreenC like your ways, but ScreenB will flashing . see at above likes janiokq 's issue.

@guoliang1206 Ah, sorry. Now I understand the issue. Yeah it seems that reset action should be used in this case

Jobs is the subtab in TabNavigator ,and I go to ScreenC from Jobs, Jobs -> A->B->C ,now I need back to Jobs from C, so if use reset function , is  the destination route should be set "Jobs"?

@ColCh  the Navigator is influent  and doesn't fit between  the two platform. react-navigaton fix this and  is more fluent. it have advantages in the data transfer,tab and so on.it also support redux.  Totally,it's powerful though it need us spare some time to learn it.

@guoliang1206 this is the document ,https://reactnavigation.org/docs/navigators/navigation-actions#Reset   it have a nice example to reset.

@ranran2 @guoliang1206  I couldn't fix this issue too using reset action :( so @ranran2 maybe you can share you code to show how you fix this issue using reset?

in your code ,the routeName should be 'Jobs'

@aimak In fact, I have tried use
Back
 let navigateAction = NavigationActions.back({
             key:"Jobs",
});
  this.props.navigation.dispatch(navigateAction);

Reset
 let navigateAction = NavigationActions.reset({
      index: 0,
     actions: [
     NavigationActions.navigate({ routeName: 'Main'})]   //and also try routeName: 'Jobs'
});
  this.props.navigation.dispatch(navigateAction);

.goBack();
this.props.navigation.goBack({key:'Jobs'});  //also tried key:'Main' ,  {numberOfPages:2}

All of these ways can not solve my problem.

@guoliang1206 Does   your problem is when your reset, the screen between will flash??   if is, now the only way to solve this is to forbid the animation.

@guoliang1206 can you provide minimal launchable example?  On https://expo.io/ or something

@guoliang1206  i met this flash before, and the best way  i  found  is to  forbid the animation  when you reset .

@guoliang1206
Be sure to use the route's key (e.g. 'id-xxxxxxxx-#') and not its routeName parameter (in your case ScreenA1).  This underscores the need to fix the documentation.

@peacechen  The screen in the Tab, key of that is "ScreenName",

And then I push subScreens from this screen which in the tab. Now I need back to this tab screen, should I use what key ?

Hope the next release will include something like goBack(2) and goBack('routeName')

@guoliang1206  did you find a solution? I tried all the items you've tried

@nwkeeley no, I didn't find a perfect solution, now I only forbid the animation when it pop to rootView

Any solution for this? It's preventing my app from passing quality assurance.
Should be as simple as goBack('nameofscreen') but that produces flashing and doesn't work half of the time.

if our scrrens are like A - B - C - D
if we want to go back to A from D we need to store the key of B like this
navigator.navigate('Scrren',{screenKey:navigation.state.key})
so in all the screen we can access screenKey using navigation.state.params.screenKeyand while we are in the screen D to go back to A
navigation.goBack(navigation.state.params.screenKey)
Now we are in scrrenn A and B - C - D are removed from stack

I tried the solution provided by santhosh77h and it worked, and be aware that we need to pass down the target screen's screenKey as the navigation parameter along the navigation chain so that the last screen in the chain would be able to get the target screen's screenKey.

the goBack api has no problem, think about this situation:
register need 3 steps from Home, so the stack like this:
Home - p1 - p2 - p3
when we in p3(sometimes the success page), we need close p3, pop p2,p1 and go back to Home, so call goBack(key of p1) in p3 is ok
but, maybe you like call goBack('Home') in p3
if there is another way to start register, such as pay screen, so the stack maybe like this:
Home - some product - pay - p1 - p2 - p3
so, we can't  call goBack('Home') in p3, but call goBack(key of p1) in p3 is still ok !
now, the problem is how to store the key of p1, just write your store code in p1
navigator.navigate('Scrren',{screenKey:navigation.state.key})
and call navigation.goBack(navigation.state.params.screenKey) in p3
because the store code in p1 means we will start a progress (p1-p2-p3), and the key of p1 is the start point, when you want to finish this progress, call goBack(progress start point)

A->B->C->D(Cureent)
just   navigation.navigate('B')


updating token name

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 82.95%. Comparing base (d1fee5e) to head (0538cde).
Report is 43 commits behind head on main.

:exclamation:  There is a different number of reports uploaded between BASE (d1fee5e) and HEAD (0538cde). Click for more details.
HEAD has 1 upload less than BASE

Flag
BASE (d1fee5e)
HEAD (0538cde)

unittests
3
2

Additional details and impacted files
@@            Coverage Diff             @@
##             main      #25      +/-   ##
==========================================
- Coverage   89.09%   82.95%   -6.14%
==========================================
  Files           3        3
  Lines          55       88      +33
==========================================
+ Hits           49       73      +24
- Misses          6       15       +9

Flag
Coverage Δ

unittests
82.95% <100.00%> (-6.14%)
:arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.

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


How do you automatically set second container's layout to v_accordion?

I'm trying to have two stacked columns, and automatically nest new windows in a vertical accordion. The best workflow I've figured out is:
default-root-container-layout = 'tiles'
enable-normalization-flatten-containers = false
enable-normalization-opposite-orientation-for-nested-containers = true

open second window (column 2) - tiles to the right
open third window - tiles to the right
join-with third window into second window - creates vertical tiles container
change layout of container to accordion
repeat for first window (column 1)

Is it possible to automate some of this? Thanks for the amazing app!

I found a faster way:

bind ['split vertical', 'layout v_accordion']
run on root container windows (desired stacked columns)

It seems if on-window-detected had a "root node leaf" condition, this could be done automatically (once more run commands are supported).

Another option could be to use enable-normalization-flatten-containers = false with move-through and allow for a callback if it nests to run 'layout v_accordion'].

Another option would be to provide for a layout change after a successful join-with to toggle v_accordion. That would allow use of enable-normalization-flatten-containers = true.

Closing this issue in favor of #260


[WIP] Added scale down flag to cluster autoscaler

What this PR does / why we need it:
By default the scale down of a node happens when the utilisation of CPU/RAM goes below 50%. It would be great to expose the scale-down-utilization-threshold flag as a shoot configuration option in the spec.
    cluster-autoscaler:
      enabled: true
      scale-down-utilization-threshold: 0.6

Which issue(s) this PR fixes:
Fixes #1030
Release note:
Added scale down flag to cluster autoscaler

I just realized, that we are deprecating the autoscaler addon in the shoot spec. :-/ Not sure what to do about that.

There is also https://github.com/gardener/gardener/issues/546 (pretty much a duplicate of #1030).
.spec.addons.cluster-autoscaler is deprecated and will be removed soon, yes.
WDYT about introducing .spec.kubernetes.clusterAutoscaler (next to the other control plane components) and expose it there?

Yes, .spec.kubernetes.clusterAutoscaler is probably a better place for the auto scaler configuration. Let me refactor this.

Ok, I moved the flags to spec.kubernetes.clusterAutoscaler.  I totally missed the discussion in #546 on this topic. @rfranzke do you think we should freeze this for now or should we go ahead and expose the autoscaler configuration in the kuberentes part of the shoot spec?

@afritzler can you also add the other flags (https://github.com/gardener/gardener/issues/546) that make sense to be exposed?

Sure thing.


Add platformFilter to PBXTargetDependency

Resolves https://github.com/tuist/xcodeproj/issues/525
Short description 📝
It adds a missing property that is available on PBXTargetDependency.

Your contribution has been released as part of 7.11.1 🚀


[help wanted] service.Run: telegrambot.New: Not Found

Error:-
PS H:\me-sniper> go run cmd/me-sniper/main.go
2024/02/04 01:05:30 service.Run: telegrambot.New: Not Found
exit status 1
My values_yaml.local is:-
solana-endpoint: 'alchemy rpc url'
bot-api-key:
me-api-key:
private-key:
I left bot-api-key, me-api-ey and private-key empty,..
I don't need to bot feature, my goal with this product is to buy nft's of a specified collection using private key
all the packages are installed using "go mod download"
am I doing something wrong here, no clue..,
I'm very new to go Lang,
waiting for your guide or help
thanks in Advance

Hello, it seems like I lost this feature when refactor code, so I fixed it now, try it again.


Fix the warnings given by test module

Description:
$subject. Refer to issue #34884 description for more details.

Affected Versions:
2201.0.0 RC3

Documentation was not included which caused the warnings to appear.


Add Duna Direct from SpaceDock

This pull request was automatically generated by SpaceDock on behalf of bcink, to add Duna Direct to CKAN.
Mod details:
name = /mod/1994/Duna%20Direct
author = bcink
abstract = Based on the proposal for Mars Direct. Extraplanetary lander and parts pack.
license = CC-BY-4.0 https://creativecommons.org/licenses/by/4.0/
Homepage = https://forum.kerbalspaceprogram.com/index.php?/topic/177889-wipduna-direct-formerly-mars-direct/
description = Duna Direct
Extraplanetary lander and parts pack for Kerbal Space Program
by bcink
Release 1.0 for KSP 1.5x
Based on the proposal for "Mars Direct" by Robert Zubrin and David Baker of Martin Marietta, 1990.
Use without mods as stock
Play the mission Duna Direct: The First Flight!
Using mods requires Module Manager
Comaptible with the following mods (automatically applied upon mod detection):
Connected Living Space - adds passable option
CommunityResourcePack - adds built-in Sabatier ISRU for conversion of fuel while on Duna
Kerbal Inventory System - adds KIS inventory space
Realchute - changes parachute paramaters
Realplume - improves engine plumes
Remote Tech - makes antetnna compatible with Remote Tech
Snacks! - adds Snacks compatibility
TAC Life Support - adds TAC Life Support compatibility
Tweakscale - adds Tweakscale compatibility
Installation:
Extract the contents of the GameData folder to your GameData folder. Structure should then read GameData\MarsDirect\
Extract the contents of the Missions folder to your Missions folder. Structure should then read Missions\Duna Direct_ The First Flight\
Mission is also available from the Steam Workshop and it's link https://steamcommunity.com/sharedfiles/filedetails/?id=1557258246
Fly the Duna Direct mission!
Flight plan:
Launch inside 5m expanded fairing
Aim for Duna
Aerobreaking entry at Duna
Heatshield jettison and parachute deployment
Landing gear deployment and reverse thrust
Perform science!
Built-in Sabatier conversion regenerates fuel for return
Repack parachute
Launch for Kerbin
Jettison first stage
Atmospheric re-entry at Kerbin
Parachute deployment and landing
Flight crew:
Pilot for vessel control
Engineer for repacking parachutes
Two scientists for running the science lab
Parts List:
Zubrin Command Pod - Kerbin return vehicle. 20x built-in RCS ports, science lab, science experiments, SAS module, IVA, RTG, lights.
Baker 1st Stage - The large first stage houses a cargo bay and four inset landing legs. Contains bay light and exterior spotlights.
Rudaux Nosecone - Animated nosecone opens to reveal docking port and parachutes. Has ablative shieldling for atmospheric entry or re-entry protection.
Marietta Engines - A pair of these engines power the Kerbin Return Vehicle. Very high efficiency. Animated gimbals and emissives.
MIRA LM-20 Engines - Four sets of four advanced MIRA engines power the landing and ascent of the Duna Direct vehicle. Animated gimbals and emissives.
Acidalia Huggers - These collapsable landing legs are a staple design element of the vehicle.
Svalinn Heatshield - Expanding heatshield designed for atmospheric entry and aerobraking. Contains solar panels for extra power generation in flight. Contains
Elysium Space Stairs - The trusty ladder to climb or descend to and from the Kerbin Return Vehicle while landed.
Alba Mons Talking Stick - Expanding radio antenna which mounts on the front of the Kerbin Return Vehicle.
Duna Direct Flag - Agency flag / decal
Thank you for downloading Duna Direct!
A SPECIAL THANK YOU TO ALL THE TESTERS WHO ADDED VALUABLE FEEDBACK AND SUGGESTED MANY IMPROVEMENTS WHICH WERE ADDED!
Duna Direct is License CC-BY-4.0
https://creativecommons.org/licenses/by/4.0/
Please direct questions about this pull request to bcink.

This was added in #6827.


Implemented my version of the calculator

@Hullaah this looks so perfect but the directory src should be renamed to hullaah-c just for the demo project to explicitly identify a directory s yours and you'll know what directory to update in future

Okay but it seems you've updated the name. Thanks though
On Mon, Jul 10, 2023 at 11:03 AM Destiny Saturday @.***>
wrote:

Merged #11 https://github.com/ALX-SE-Algorithmia/Demo-Project/pull/11
into main.
—
Reply to this email directly, view it on GitHub
https://github.com/ALX-SE-Algorithmia/Demo-Project/pull/11#event-9772745241,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/A3CXDVGJDS37YIBPG76U4LLXPPHQRANCNFSM6AAAAAA2EHWTVI
.
You are receiving this because you were mentioned.Message ID:
@.***
com>


feat: enable automerge

As title says

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 94.20%. Comparing base (421bb64) to head (8e20999).

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #240   +/-   ##
=======================================
  Coverage   94.20%   94.20%
=======================================
  Files           3        3
  Lines          69       69
=======================================
  Hits           65       65
  Misses          4        4

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

I'll be merging this and verifying with dependabot and pre-commit.ci.. might take a few days


some problem with CMsgClientHello ?

Client_Shared.js:116
reject(new Error("Failed to connect to Steam"));
^
Error: Failed to connect to Steam

Which game?

730

i have added version in it but still doesnt work

My first theory was that the CS2 backend now wants a valid version, but adding it indeed does not work. I am not sure what the issue is. I will have to take a deeper look some time later.


how to use it with single article as input and pretrained model outputs summary?

Thanks for you interest in this repository! However, could you elaborate more detail about the issue?
Note that is repository is more of a research code base than a general summarization API. It is most likely that we will not support your use case. However, feel free to fork and add your own enhancement (and cite our paper when appropriate :) ).

I read the decode_full_model.py,it seems it is used for validation or test purpose, and I read the readme it doesn't point out how to summarize a document.I want to know how to use it as other summarize project's general usage. string of single document -> string of summary.

It is not currently supported (and probably won't ever be).
You can try to do it in 2 ways:

preprocess your data into the same dataset form
incorporate the necessary API (including PTBTokenizer) into decode_full_model.py

Feel free to submit a pull request if you add this functionality.

thanks for your response,I'll see what I can do on this.

I'm closing the issue now since there's no bug in the code. Feel free to discuss the implementation in this thread.

I don't get the point,my question is single article as input and outputs summary, this function takes articles and abstracts outputs a Json file, what does it to with my question?

so you split out the preparation and save the outputs for decode usage, does it means it always need a set of data to preparation and decode, that's why ChenRocks says "It is not currently supported" the feature in my question?

Thanks @Pked01 for providing the short script! Some minor issues worth notice here: the original preprocessing is based on CoreNLP PTBTokenizer so there could be quality issues on the summary due to train-test mismatch on preprocessing. Also the fact that when testing on a new dataset, there's no guarantee on accuracy (ROUGE).
@bung87 you can still use a single article to create a single json file with this approach to get what you want. However, due to above accuracy reason I currently have no plan to provide such an API in this repository.

Thanks guys! It helps me out ,it generates summary loss word's case.I think I will use non-deep-learning technic for now.

@ChenRocks one doubt from my side...
I have seen very similar data preparation method in some other summarization method..pointer generator is one of them,,,
is it a standard approach...?
Or is there any particular advantages of using this method(using StanfordNLP, sentence , syntax etc.)?

The pointer generator work you mentioned (See et al, 2017) is the first work standardizing the non-anonymized CNN/DM dataset. Since this is a research work, we followed their preprocessing steps for a fair comparison and evaluation.
If you have your own training dataset, you can use whatever tokenization you like. Or you can re-tokenize the CNN/DM training data and re-train the model using a different tokenizer. The idea is to keep the training and testing preprocessing consistent.


cloudflare_logpush_job error: "Key is missing"

Confirmation

[X] My issue isn't already found on the issue tracker.
[X] I have replicated my issue using the latest version of the provider and it is still present.

Terraform and Cloudflare provider version
Terraform v1.4.6
on darwin_arm64

provider registry.terraform.io/cloudflare/cloudflare v4.6.0

Affected resource(s)
cloudflare_logpush_job
Terraform configuration files
resource "cloudflare_logpush_job" "logpush_nr_workers_trace_events" {
  account_id       = "1234567890"
  dataset          = "workers_trace_events"
  destination_conf = "https://log-api.newrelic.com/log/v1?Api-Key=12345678&format=cloudflare&dataset=workers_trace_events"
  enabled          = true
  filter = jsonencode(
    {
      key      = "ScriptName"
      operator = "contains"
      value    = "dev"
    }
  )
  frequency           = "high"
  logpull_options     = "fields=DispatchNamespace,Event,EventTimestampMs,EventType,Exceptions,Logs,Outcome,ScriptName,ScriptTags&timestamps=unix"
  name                = "dev-workers-trace-events"
  ownership_challenge = "0000000000000"
}

Link to debug output
https://gist.github.com/lra/b4a62ab1c55fd9226384692b49f99c56
Panic output
No response
Expected output
The logpush job to be created
Actual output
Error: error parsing logpush job from resource: Key is missing
Steps to reproduce
terraform apply
Additional factoids
No response
References
This has been reported and closed at https://github.com/cloudflare/terraform-provider-cloudflare/issues/2181

logfile added

your log file is incomplete and references modules; are you able to provide the log file without modules demonstrating this behaviour?

Updated the log and the PR desc.

Found the issue, the filter attribute need to start with a where key.
Instead of:
resource "cloudflare_logpush_job" "logpush_nr_workers_trace_events" {
  account_id       = "1234567890"
  dataset          = "workers_trace_events"
  destination_conf = "https://log-api.newrelic.com/log/v1?Api-Key=12345678&format=cloudflare&dataset=workers_trace_events"
  enabled          = true
  filter = jsonencode(
    {
      key      = "ScriptName"
      operator = "contains"
      value    = "dev"
    }
  )
  frequency           = "high"
  logpull_options     = "fields=DispatchNamespace,Event,EventTimestampMs,EventType,Exceptions,Logs,Outcome,ScriptName,ScriptTags&timestamps=unix"
  name                = "dev-workers-trace-events"
}

we need to do:
resource "cloudflare_logpush_job" "logpush_nr_workers_trace_events" {
  account_id = local.cf_account_id
  enabled    = true
  filter = jsonencode({
    where = {
      key      = "ScriptName"
      operator = "contains"
      value    = var.environment
    }
  })
  name             = "${var.environment}-workers-trace-events"
  logpull_options  = local.cf_workers_trace_events_fields
  destination_conf = "https://log-api.newrelic.com/log/v1?Api-Key=${module.newrelic_api_key.secret}&format=cloudflare&dataset=workers_trace_events"
  dataset          = "workers_trace_events"
}

This could be clearer in the doc: https://developers.cloudflare.com/logs/reference/filters/

This really needs to be clearer in the docs. Not sure why @lra closed this, but docs need to be updated. Currenly, the where is only shown as being necessary with multiple filters.

this isn't something specific to the Terraform implementation. the error here is coming from the API so I would recommend opening a support ticket that can be routed to the service team in this one.


[PUI] Order Parts Wizard

Implements an "order parts" wizard for PUI, reproducing (and improving upon) the existing CUI wizard.
References

Closes https://github.com/inventree/InvenTree/issues/6022

TODO

[ ] Provide initial "quantity" to order
[ ] Adjust quantity based on supplier-part pack size
[ ] Generate new purchase orders as required
[ ] Documentation
[ ] Playwright testing
[x] Implement from "parts" table
[ ] Implement from "supplier part" view
[x] Implement from "part detail" view
[x] Implement from "sales order" view
[x] Implement from "build order" view
[ ] Refactor "data import" wizard to use the new components and hooks

Screenshots

Thanks that you have implemented the order parts wizard. Just some things that I found while testing (I know that this is highly WIP):

when trying to load more SPs, the table column size jumps. Maybe this needs to be fixed:

The button to go to the next step is really hard to find/identify
When I try to go to the next step it shows me an error:

I actually only tried it out yet to see if the following will be available too, but because of the third error from above, I cannot test it really, so I'll just throw that in for consideration:
Will there be an option/step to specify if you want to merge a line item or create a new line item if it already exists in the PO? With PUI we can even only show that if there is really a line item already existing.


EmojisToShowFilter --- ERROR: TypeError: Function Expected

When using emojisToShowFilter property on the emoji-mart component, no emojis are showing up and I am receiving in my console the message: ERROR TypeError: Function Expected.
Some variations that I have tried are:
emojisToShowFilter="((emoji) => true)"
(emojisToShowFilter)="((emoji) => true)"
[emojisToShowFilter]="((emoji) => true)"
emojisToShowFilter="(emoji) => true"
emojisToShowFilter="customMethod(emoji)"
emojisToShowFilter="(emoji) => customMethod(emoji)"
emojisToShowFilter="function(emoji){ return true }"

None of these are working and I just get the same error every-time. Can someone tell me what I am doing wrong? I don't see that anyone else is having this issue...

probably related to #172

Hi @scttcper , Thanks so much for the quick response. Love the repo btw! Brilliant.
I did take a look at that issue before, albeit I am not articulating an issue with the search, although that is an issue.
Are you insinuating that the error I am receiving is actually from the search service and not so much having to do with me improperly calling emojisToShowFilter?
Thanks again,
Mitch

@mlembke1
I would recommend against passing an "inline" function, i.e., a function defined in your template. Just define your filter function in your component's ts file and then do something like:
[emojisToShowFilter]="myDefinedFn"
I provided an example of such a function in #275.

@s-moran Thanks for the response. The issue I find with your example - having an inline function that is defined in the .ts file - is that in your example, nothing is being passed to the function. The documentation says ((emoji) => true). Meaning of course that myDefinedFn would have to be myDefinedFn(emoji). The problem with that is emoji is undefined in the template unless I do something like this;
[emojisToShowFilter]="(emoji) => emojisToShowFilter2(emoji)"
Unfortunately, the result I get when trying to build is:
: Parser Error: Unexpected token '=' at column 9 in [(emoji) => emojisToShowFilter2(emoji)] in C:/Users/mitch/socsocial/SocSocial/app/src/app/components/emoji-dialog/emoji-dialog.component.html@8:2 ("
  exclude="[flags]"
  showSingleCategory="true"
  [ERROR ->][emojisToShowFilter]="(emoji) => emojisToShowFilter2(emoji)"
  >
</emoji-mart>
")

Any suggestions ? Thanks so much for your activity on this.

The documentation is just giving you the signature of the function that is expected. In other words, you have to define a function in the .ts file that takes a string as input and returns a boolean.
In the template, all you have to do is pass in the name of the function you created. When the search actually runs, your function will be called in the background many times with different string inputs. Think of your function in the same way as any other variable (boolean, string, number) that you would normally pass in a template.

@s-moran Okay, I think I understand. Thanks for the response.
I saw that you made a PR and a change recently. Will that change effect those of us who aren't using Angular 8?

I am going to close this issue. @s-moran, your advice helped, thanks.
However, I would like to make an appeal that the documentation be updated as it is severely misleading concerning the [emojisToShowFilter] property. Thanks for your support.


Import in Open Sustainable Technology projects

To see the specific tasks where the Asana app for GitHub is being used, see below:

https://app.asana.com/0/0/1203844311454500

We have a working build!
https://deploy-preview-757--lfenergy.netlify.app/pages/opensustaintech
@Ly0n @joshhopkins we still need to do the nicer visual layout and clean up the data ( unless we like all the alligator images ;-) ), but at least we have the data over. Let me know your thoughts.

Great to see that this is already up and running!
I have been thinking for the last few days about how we can solve the problem with the logos. Maybe we can automate capturing the logo url via the current scripts AwesomeCure. Here's what I'd like to try this weekend:

get all the URLs/paths from the README.
get all URLs/paths that end in .png.
create absolute paths from the URLs.
download all PNG.
the first URL with a larger PNG file is most likely the image logo.
if no larger PNG could be found, the image of the organization's namespace/username will be used.
store the logo URL

This way we should be able to create a dataset that can be cleaned up with little effort.
The method could also be interesting for @andrew and his work on https://ecosyste.ms/.

Hey @Ly0n - it's a good idea, but we need pure SVGs for logos. Generally, getting them all is a trudge; we can create ones based on the sponsoring organization if required.

@Ly0n @joshhopkins - we now have it laid out visually - check it out at https://deploy-preview-757--lfenergy.netlify.app/open-sustainable-energy

You really did it. Impressive!

Thanks! Still some work to do on fit and finish - but we are in a good place!


Request fonts in good faith

Hi,
The font of Captura logo in README.md(first picture) is so beautiful, I want it, could you please tell me what the font it is? Is that font free? Thank you for answering me. ^-^

https://market.pixlr.com/details/100400193-Atomosfer


Request for permission to change the license of @uitcis's Pull Requests

@uitcis Hello!
I request permission to change the OSS license for your Pull Request from "MIT" to "MIT or GPL-3.0-or-later multi-license" to meet The Blender Extensions platform's requirement.

https://github.com/saturday06/VRM-Addon-for-Blender/pull/90
https://github.com/saturday06/VRM-Addon-for-Blender/pull/528

Users can choose whether to use the MIT or GPL-3.0-or-later license. The copyright for the code in the Pull Request belongs to the author, @uitcis, so I need to ask for permission to change the license.
After considering it, if possible, I would like to receive a comment granting permission to change it.

Background
VRM-Addon-for-Blender is distributed on The Blender Extensions platform for Blender 4.2 and later. However, from August 22, 2024, the license for add-ons that can be distributed has been limited to GPL-3.0-or-later. The platform is very convenient, and I want to use it, so I wanted to change the license.
What kind of work is @saturday06 trying to do specifically?
In order to change the license of the source code, it is necessary to obtain consent from the person who wrote the source code (https://www.reddit.com/r/opensource/comments/aq63ow/comment/ege3pp5/). For this reason, I am working to get permission from each contributor. In addition, if consent cannot be obtained, the relevant part of the source code will be excluded or rewritten from scratch.
What is the impact of the license change on the code that @uitcis sent as a pull request?
At present, there will be no impact. In the future, when a new GPL license is issued, there is a minimal possibility of an effect, less than 0.001%. The GNU site currently says the MIT (X11) license is compatible with the GNU GPL license.
https://www.gnu.org/licenses/license-list.en.html#X11License
However, this will not be the case in the future. Because Blender requires a license of GPL-3.0-or-later, it is unclear what the licenses of GPL-4.0 and GPL-99.99, which have not yet been issued, will be. For example, if GPL-4.0 is published as public domain, there is a risk that the MIT license's restriction to "keep the original author's copyright notice" will become invalid.
But if that were to happen, the "compatible" statement on the GNU website would be retracted, and I think there would be a huge fuss involving Blender itself and OSS around the world, so I guess it's a risk that can be ignored.
Why not switch completely to the GPL but instead use "multi-license"?
The main reason is that the impact on users of the license change is less.
To be honest, I also wanted to try using a special license, and I also had an excuse to use it.
See also
The information is also summarized in the following issue:

https://github.com/saturday06/VRM-Addon-for-Blender/issues/548.

That's all. Thank you for reading this far and for your understanding. Please consider my request.

当然可以

抱歉才看到 我实在是很少看github的通知

No problem! Thanks!


XML Import Issue: Video and Audio Clips Not Linked in DaVinci Resolve

I've encountered an issue after importing an XML into DaVinci Resolve. The video and audio clips are not linked together. Can you guide me on how to set this up or if there's a workaround for this issue?
Thank you in advance!

https://github.com/WyattBlue/auto-editor/issues/368