sweethome3d

🚀 Feature

Sweet Home 3D is a free interior design application which helps you draw the plan of your house, arrange furniture on it and visit the results in 3D. https://www.sweethome3d.com/
LICENCE: License Sweet Home 3D, Copyright (c) 2024 Space Mushrooms<EMAIL_ADDRESS>The free version of Sweet Home 3D application, the Furniture Library Editor and Textures Library Editor applications, as well as Sweet Home 3D JS are distributed under the GNU General Public License; you can use them, copy them, redistribute them and/or modify them under the terms of that license as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

wget https://sourceforge.net/projects/sweethome3d/files/SweetHome3D/SweetHome3D-7.5/SweetHome3D-7.5-linux-x64.tgz
#├── [ 68M]  SweetHome3D-7.5-linux-x64.tgz
#└── [ 72M]  SweetHome3D-7.5-linux-x86.tgz
tar -xvzf SweetHome3D-7.5-linux-x64.tgz
 ./SweetHome3D

https://howto-ubuntunew.blogspot.com/2017/10/how-to-install-sweet-home-3d-552.html

./SweetHome3D
library initialization failed - unable to allocate file descriptor table - out of memoryAborted (core dumped)
https://www.sweethome3d.com/support/forum/viewthread_thread,13201_offset,0;jsessionid=FBC8B6B3ADFE58D9AF627A0EA339CAA3
sudo su
echo >/etc/security/limits.d/systemd.conf "* hard nofile 1048576"
sudo reboot


NoSuchMethodError: method not found: 'isEmpty'

This issue was originally filed by<EMAIL_ADDRESS>
What steps will reproduce the problem?

Create new polymer project in dart editor
Select pub get option from tools menu

What is the expected output? What do you see instead?
Project should be build
What version of the product are you using?
Dart SDK version 1.8.5
On what operating system?
Windows 7 64bit
What browser (if applicable)?
Please provide any additional information below.
C:\Users\Administrator\dart\webapp>pub --trace get
Resolving dependencies...
The null object does not have a getter 'isEmpty'.

IO  : Finished ver. Exit code 0.
    | stdout:
    | |
    | | Microsoft Windows [Version 6.1.7601]
    | Nothing output on stderr.
FINE: Clean up system cache temp directory C:\Users\Administrator\AppData\Roamin
g\Pub\Cache_temp.
MSG : Resolving dependencies...
SLVR: Solving dependencies:
    | - sass >=0.4.0 <0.5.0 from hosted (sass) (locked to 0.4.2)
    | - route_hierarchical >=0.5.0 <0.7.0 from hosted (route_hierarchical) (lock
ed to 0.6.1+1)
    | - polymer any from hosted (polymer)
    | - browser >=0.10.0 <0.11.0 from hosted (browser) (locked to 0.10.0+2)
    | - script_inliner >=1.0.0 <2.0.0 from hosted (script_inliner) (locked to 1.
0.0)
SLVR: | browser 0.10.0+2 from hosted is locked
SLVR: * select browser 0.10.0+2 from hosted
SLVR: | route_hierarchical 0.6.1+1 from hosted is locked
SLVR: | * select route_hierarchical 0.6.1+1 from hosted
SLVR: | | sass 0.4.2 from hosted is locked
SLVR: | | * select sass 0.4.2 from hosted
SLVR: | | | script_inliner 1.0.0 from hosted is locked
SLVR: | | | * select script_inliner 1.0.0 from hosted
IO  : Get versions from https://pub.dartlang.org/api/packages/polymer.

IO  : Get versions from https://pub.dartlang.org/api/packages/polymer_expression
s.
IO  : Get versions from https://pub.dartlang.org/api/packages/observe.
IO  : Get versions from https://pub.dartlang.org/api/packages/polymer_interop.
IO  : Get versions from https://pub.dartlang.org/api/packages/yaml.
IO  : Get versions from https://pub.dartlang.org/api/packages/smoke.
IO  : Get versions from https://pub.dartlang.org/api/packages/initialize.
IO  : Get versions from https://pub.dartlang.org/api/packages/web_components.
FINE: HTTP GET https://pub.dartlang.org/api/packages/template_binding
    | Accept: application/vnd.pub.v2+json
    | user-agent: Dart pub 1.8.5
FINE: HTTP GET https://pub.dartlang.org/api/packages/polymer_expressions
    | Accept: application/vnd.pub.v2+json
    | user-agent: Dart pub 1.8.5
FINE: HTTP GET https://pub.dartlang.org/api/packages/observe
    | Accept: application/vnd.pub.v2+json
    | user-agent: Dart pub 1.8.5
FINE: HTTP GET https://pub.dartlang.org/api/packages/polymer_interop
    | Accept: application/vnd.pub.v2+json
    | user-agent: Dart pub 1.8.5
FINE: HTTP GET https://pub.dartlang.org/api/packages/yaml
    | Accept: application/vnd.pub.v2+json
    | user-agent: Dart pub 1.8.5
FINE: HTTP GET https://pub.dartlang.org/api/packages/smoke
    | Accept: application/vnd.pub.v2+json
    | user-agent: Dart pub 1.8.5
FINE: HTTP GET https://pub.dartlang.org/api/packages/initialize
    | Accept: application/vnd.pub.v2+json
    | user-agent: Dart pub 1.8.5
FINE: HTTP GET https://pub.dartlang.org/api/packages/web_components
    | Accept: application/vnd.pub.v2+json
    | user-agent: Dart pub 1.8.5
FINE: HTTP response 200 OK for GET https://pub.dartlang.org/api/packages/templat
e_binding
    | took 0:00:00.451025
    | cache-control: private
    | date: Sun, 26 Apr 2015 08:33:52 GMT
    | accept-ranges: none
    | transfer-encoding: chunked
    | vary: Accept-Encoding
    | content-type: application/json
    | server: Google Frontend
FINE: HTTP response 200 OK for GET https://pub.dartlang.org/api/packages/polymer
_interop
    | took 0:00:01.487085
    | cache-control: private
    | date: Sun, 26 Apr 2015 08:33:53 GMT
    | accept-ranges: none
    | transfer-encoding: chunked
    | vary: Accept-Encoding
    | content-type: application/json
    | server: Google Frontend
FINE: HTTP response 200 OK for GET https://pub.dartlang.org/api/packages/web_com
ponents
    | took 0:00:01.532087
    | cache-control: private
    | date: Sun, 26 Apr 2015 08:33:53 GMT
    | accept-ranges: none
    | transfer-encoding: chunked
    | vary: Accept-Encoding
    | content-type: application/json
    | server: Google Frontend
FINE: HTTP response 200 OK for GET https://pub.dartlang.org/api/packages/yaml
    | took 0:00:01.558089
    | cache-control: private
    | date: Sun, 26 Apr 2015 08:33:53 GMT
    | accept-ranges: none
    | transfer-encoding: chunked
    | vary: Accept-Encoding
    | content-type: application/json
    | server: Google Frontend
FINE: HTTP response 200 OK for GET https://pub.dartlang.org/api/packages/initial
ize
    | took 0:00:01.573090
    | cache-control: private
    | date: Sun, 26 Apr 2015 08:33:53 GMT
    | accept-ranges: none
    | transfer-encoding: chunked
    | vary: Accept-Encoding
    | content-type: application/json
    | server: Google Frontend
---- End log transcript ----

This issue has been moved to dart-lang/polymer-dart#361.


AABB collision detection could be faster

For a 2D AABB, 4 checks are being performed to determine if a point is inside.
This can be cut down to 2 checks, at the cost of the internals getting a little bit switched around.
Instead of storing AABBs as 2 points, they can be stored as a centre and extent:
pub struct Aabb2<S> {
    centre: Point<S>,
    extent: Vector2<S>,
}

(I don't know what the functional difference is between Points and Vectors, but I think it doesn't matter too much)
With that, the collision checking becomes a bit more efficient, as you can take the difference of 2 centres, and compare it to the sum of the extents, effectively halving the checks required. (I wrote a quick and dirty example here). The same idea can be applied to aabb-point collision by giving assuming points have an extent of zero.
The reason I haven't put this straight into a pull request is that it fundamentally changes the internals of aabbs in a way that may confuse people who aren't aware of the change. Also, the lack of an abs() method for integer types may require some sort of workaround, which I am not sure of.
Most of the information is in the example. (http://is.gd/XNKOEn)

Collision detection was moved to collision-rs in #245. See #244 for more details. Closing as won't-fix.


Getting trouble when using Oobabooga's text-generation-webui API

Which API Provider are you using?
OpenAI Compatible
Which Model are you using?
qwen2.5-0.5B
What happened?
I run Oobabooga's text-generation-webui with docker on Ubuntu20.04, and choose Openai Compatible with base url http://<IP_ADDRESS>:5000/v1 in Cline of version v2.0.5. But whatever task I give to Cline, it constantly output:
Cline wants to execute this command:
echo 'Hello, World!'
Even reload the VSCode. Then I switch to another Computer with the same configuration, it happens again. But if I use gemini api, it just works fine.
Not sure if this is a feature request or bug, Oobabooga's text-generation-webui seems a popular Openai Compatible EndPoints. Thanks if you can enlighten me.
Steps to reproduce

Relevant API REQUEST output
No response
Additional context
No response

solved by using litellm to re-route the api or switch to vllm to deploy local model

I have same problem via openai extension bug in Oobabooga's text-generation-webui.
I fix it like this https://github.com/oobabooga/text-generation-webui/pull/6528


fixImprove analyze mv/mtmv wait row count report logic.

Proposed changes
Issue Number: close #xxx

Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

run buildall


Skip hashbang at beginning of source contents

Small modification for the lexer that enables skipping of the initial hashbang in the contents of a JavaScript script.
Tests with the hashbang feature in Test262 have therefore been enabled; except one (function-constructor.js) which makes use of async. To make up for this, I've added the TestHashbangInFunctionConstructor test written in Go.

Thanks!


Change multibit icon to blackcoin

Whew!  Wrong place!  Sorry about that.

No worries. Have you considered using MultiBit HD for blackcoin? It is likely that the MultiBit Classic codebase will be going into maintenance mode some time this year.

Nice!  I will keep that in mind.  Someone on the Blackcoin IRC channel had asked me to convert the icon since they didn't have a mac (and I just used the Linux conversion library for it).  I then promptly pushed it to the wrong place.  I think they are just poking around getting a feel for everything.
Thanks!


[WIP] Added deprecations check to CI

Hey, I just made a Pull Request!
Added deprecations check to CI but looks like it might have a big impact. 🤔
:heavy_check_mark: Checklist

[ ] A changeset describing the change and affected packages. (more info)
[ ] Tests for new functionality and regression tests for bug fixes
[ ] Screenshots attached (for UI changes)
[x] All your commits have a Signed-off-by line in the message. (more info)

Closing as it's not going to be something we can do in our current state.


State Not Updating..

Any ideas why the state variable counter is not updating..
import 'package:flutter/material.dart';

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

class IncrementCounterState extends State<IncrementCounter> {

  @override
  Widget build(BuildContext context) {

    int _counter = 0;

    void _incrementCounter() {
        setState(() {
          _counter++;
        });
    }

    return Scaffold(
      appBar: AppBar(
        title: Text('Welcome to Flutter')
      ),
      body: Center(
        child: Column(
          mainAxisAlignment: MainAxisAlignment.center,
          children: <Widget>[
            Text('$_counter'),
            FlatButton(
              onPressed: _incrementCounter,
              color: Colors.orange,
              padding: EdgeInsets.all(10.0),
              child: Text(
                'Press Me!',
                style: TextStyle(color: Colors.white)
              )
            )
          ],
        )
      )
    );
  }

}

class IncrementCounter extends StatefulWidget {

  @override
  IncrementCounterState createState() => IncrementCounterState();

}

class MyApp extends StatelessWidget {

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Welcome to Flutter',
      home: IncrementCounter()
    );
  }
}

because int _counter = 0; is inside he build function so it gets reset to 0 with every build (setstate)
btw this question should be asked on stackoverflow not here on github

@KirolousNashaat is correct, see flutter.dev/community for other support channels in addition to stack overflow.


Update ExpoVersionInfo.js

Updated to the Expo new EAS update system as Manifest returns null.

Hi,
Looks good. Can you update the code to handle null cases:
const manifest = Constants.manifest || Constants.manifest2?.extra.expoClient || {};

Any news ?

Any news ?

It has been updated to handle the new manifest.


Creating a new app in the current directory

$ mkdir app
$ cd app
$ git init .
$ create-react-app .
> The directory `.` already exists. Aborting.

It would be nice if this worked

@gaearon I can take this one.

@torifat 👍

@gaearon @thejameskyle in my opinion, allowing it in empty directory is a better choice. But, in case you guys prefer it in a non-empty directory. What would be the strategy for conflict?

Currently the behavior is that you can only run create-react-app in a nonexistent directory. It doesn't let you run in an already-existing directory because you don't want to accidentally splat these files into somewhere like ~.
But, if we let you run create-react-app in an empty directory, I think that would be ok. I think it would also be OK if there was a readme / readme.md and dotfiles like .gitignore in the directory.  It's hard for me to imagine a case where that causes you much pain.

@lacker yeah, I thought about ignoring hidden files/directories. But, since we have a .gitignore and it might conflict with an existing .gitignore file.

If it's an empty directory except for a .gitignore file and a README, then how useful can that old .gitignore file be? I bet in that case it is basically always the github autogenerated one for new projects & it is fine to just replace it.

Checking for .gitignore, README, README.md, LICENSE, LICENSE.md, CONTRIBUTING.md, etc didn't seemed like a good idea to me. That's why I was asking for opinion.

If we're in the game of guessing things that would not conflict, I would only check if there's a package.json file. If that's the case, then it's probably unsafe, otherwise should be good to go.

@torifat you do this? if not, I am willing to do it~

@stephenkingsley yes, I'm working on it. I will knock you if I couldn't manage any extra time in next 2 days.

@torifat 💪   👍

@gaearon we are using deprecated NodeJS APIs. Should I update them too?

Ideally yes. It doesn't make sense to rewrite this as callback-heavy code though (this is a console utility after all). So maybe worth looking if fs-extra already has a helper for this.

Sindre is here to help
npm install path-exists

@thejameskyle we already have fs-extra. So, going with it for now.

@gaearon BTW, is there any way to do it without modifying the globel-cli index file?
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//   /!\ DO NOT MODIFY THIS FILE /!\
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Replacing fs.existsSync() with pathExists.sync() isn't really a breaking change. I don't know if you need to make any other changes than that

@thejameskyle I have already done that.

status on this @torifat? did it ever get merged?


Provide tags that point to latest version of base image

Customer request from internal ticketing system, ticket 51638:

Regarding tags - one of tags we had in conf file was removed (rstudio/r-session-complete:centos7-1.3.842-1) and made confusion among our users.
Therefor I would suggest to use some tags like centos7-latest or similar that would always point to latest version for specific base image.

This belongs in https://github.com/rstudio/docker-r-session-complete . In particular, we have been reluctant in the past to add a latest image for the "preview" images since it is "bad practice" and leads to not-reproducible behavior in many cases.
As a concession here, we added a "preview" suffix for image tags that will potentially get removed as a visual indicator of what image versions are reliably usable, etc.

This is addressed now in that we only share public / released builds in our main repos


Hostkey

Organization name
HOSTKEY B.V.
Brief description of your business and what it does (50 words or less)
We offer a wide range of dedicated servers from entry-level up to high-performance GPU servers and private cloud solutions. Our servers are hosted in TIER III data centers in the Netherlands, Germany, Finland, Iceland, Turkey and the USA.
Name of your relevant product(s) or service for the OpenSearch audience
Bare metal dedicated servers, GPU dedicated and VPS servers with pre-installed OpenSearch.
What OpenSearch technologies do you specialize in
We provide pre-installed and ready-to-use OpenSearch for our clients in our App Marketplace.
Type of business
Server infrastructure provider
Home/main office location or address
Willem Frederik Hermansstraat 91, 1011DG Amsterdam, Netherlands
How can people contact you (email and phone)
<EMAIL_ADDRESS>Regions you serve
North America, Europe, Middle East, Africa, Asia Pacific, Australia
Industry specialization
business services, consumer services
Logo

Links
https://hostkey.com/vps/
https://hostkey.com/dedicated-servers/
https://hostkey.com/apps/databases/opensearch/

#2665 merged. Thanks for joining us Hostkey!


Remove the run_loop.h and run_loop.cpp files from template_manifest.json

As known from https://github.com/flutter/flutter/pull/79969, the run_loop.h and run_loop.cpp files have been removed.
So we need to remove the run_loop.h and run_loop.cpp files from template_manifest.json.
Pre-launch Checklist

[x] I read the Contributor Guide and followed the process outlined there for submitting PRs.
[x] I read the Tree Hygiene wiki page, which explains my responsibilities.
[x] I read and followed the Flutter Style Guide, including Features we expect every widget to implement.
[x] I signed the CLA.
[x] I listed at least one issue that this PR fixes in the description above.
[x] I updated/added relevant documentation (doc comments with ///).
[x] I added new tests to check the change I am making, or this PR is test-exempt.
[x] All existing and new tests are passing.

If you need help, consider asking for advice on the #hackers-new channel on Discord.

cc @knopp @filiph


$event.target is unavailable from the (ionBlur) event

Ionic version:  (check one with "x")
[ ] 1.x (For Ionic 1.x issues, please use https://github.com/ionic-team/ionic-v1)
[ ] 2.x
[X] 3.x
I'm submitting a ...  (check one with "x")
[x] bug report
[ ] feature request
[ ] support request => Please do not submit support requests here, use one of these channels: https://forum.ionicframework.com/ or http://ionicworldwide.herokuapp.com/
Current behavior:
$event.target is undefined since i have changed the (blur) deprecated event by (ionBlur) event in my template
Expected behavior:
$event.target property should be available
Steps to reproduce:

Related code:
<ion-input (blur)="onBlur($event)"></ion-input>

Thanks for using Ionic, we will look into this.

Same issue with 3.6.0. Please fix!

Same issue with ionFocus and ionic-angular version 3.6.1

Still an issue with 3.19.0

The event type change from blur to ionBlur for ion-input seems to have resulted in the $event value passed from the template changing from the native event object to an Ionic TextInput.
I still found a way to access the blur event target but it's probably not the wisest approach.
Old way with blur:
<ion-input (blur)="onChange($event)">

onChange(event: FocusEvent) {
  const eventTarget = event.target;
}

New way with ionBlur:
<ion-input (ionBlur)="onChange($event)">

onChange(textInput: TextInput) {
  const eventTarget = textInput._native.nativeElement;
}

In the ionBlur scenario, the _native property is labeled with a @hidden comment and it's excluded from the docs, so it's probably not considered part of the public API contract.
Would appreciate guidance on a recommended way to access the blur event target! 😃
Thank you!

If you want to use $event.target.select() to select all input text, this way will not work in device.
Instead of it, try something like this:
https://gist.github.com/tperrelli/fd17c2fe95c8b17b460b15e80687f9f6

Hi,
Just use the event on scope inside the callback
<ion-input (ionBlur)="onChange(some.data)">
onChange(data) {        const eventTarget = event.target; }


LargeBlobTest.uploadlargeblobinsingleuploadasync Causing OOM

Beginning on 2020-07-01 LargeBlobTest upload large blob in single upload async leads to an OutOfMemoryError to be thrown.
I'm not certain if this is just a test failure or an actually issue in the underlying code.
Jul 01, 2020 1:31:40 PM io.netty.channel.AbstractChannelHandlerContext invokeExceptionCaught
WARNING: An exception 'java.lang.OutOfMemoryError: Java heap space' [enable DEBUG level for full stacktrace] was thrown by a user handler's exceptionCaught() method while handling the following exception:
java.lang.OutOfMemoryError: Java heap space
	at java.nio.HeapByteBuffer.<init>(HeapByteBuffer.java:57)
	at java.nio.ByteBuffer.allocate(ByteBuffer.java:335)
	at com.azure.storage.common.implementation.PayloadSizeGate.write(PayloadSizeGate.java:44)
	at com.azure.storage.common.implementation.UploadUtils$$Lambda$289/1562764987.apply(Unknown Source)
	at reactor.core.publisher.FluxConcatMap$ConcatMapImmediate.drain(FluxConcatMap.java:367)
	at reactor.core.publisher.FluxConcatMap$ConcatMapImmediate.onNext(FluxConcatMap.java:243)
	at reactor.core.publisher.FluxFilter$FilterSubscriber.onNext(FluxFilter.java:107)
	at reactor.core.publisher.FluxRepeat$RepeatSubscriber.onNext(FluxRepeat.java:83)
	at reactor.core.publisher.FluxMapFuseable$MapFuseableSubscriber.onNext(FluxMapFuseable.java:121)
	at reactor.core.publisher.FluxJust$WeakScalarSubscription.request(FluxJust.java:99)
	at reactor.core.publisher.FluxMapFuseable$MapFuseableSubscriber.request(FluxMapFuseable.java:162)
	at reactor.core.publisher.Operators$MultiSubscriptionSubscriber.set(Operators.java:2125)
	at reactor.core.publisher.Operators$MultiSubscriptionSubscriber.onSubscribe(Operators.java:1999)
	at reactor.core.publisher.FluxMapFuseable$MapFuseableSubscriber.onSubscribe(FluxMapFuseable.java:90)
	at reactor.core.publisher.FluxJust.subscribe(FluxJust.java:70)
	at reactor.core.publisher.InternalFluxOperator.subscribe(InternalFluxOperator.java:62)
	at reactor.core.publisher.FluxRepeat$RepeatSubscriber.resubscribe(FluxRepeat.java:113)
	at reactor.core.publisher.FluxRepeat$RepeatSubscriber.onComplete(FluxRepeat.java:97)
	at reactor.core.publisher.FluxRepeat.subscribeOrReturn(FluxRepeat.java:54)
	at reactor.core.publisher.Flux.subscribe(Flux.java:8311)
	at reactor.core.publisher.FluxConcatArray$ConcatArraySubscriber.onComplete(FluxConcatArray.java:207)
	at reactor.core.publisher.FluxConcatArray.subscribe(FluxConcatArray.java:80)
	at reactor.core.publisher.InternalMonoOperator.subscribe(InternalMonoOperator.java:64)
	at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.drain(MonoIgnoreThen.java:153)
	at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.ignoreDone(MonoIgnoreThen.java:190)
	at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreInner.onComplete(MonoIgnoreThen.java:240)
	at reactor.core.publisher.MonoFlatMap$FlatMapMain.onNext(MonoFlatMap.java:141)
	at reactor.core.publisher.Operators$MonoSubscriber.complete(Operators.java:1755)
	at reactor.core.publisher.MonoFlatMap$FlatMapMain.onNext(MonoFlatMap.java:144)
	at reactor.core.publisher.Operators$MonoSubscriber.complete(Operators.java:1755)
	at reactor.core.publisher.MonoFlatMap$FlatMapInner.onNext(MonoFlatMap.java:241)
	at reactor.core.publisher.FluxOnErrorResume$ResumeSubscriber.onNext(FluxOnErrorResume.java:73)

Unsure of why these errors are occurring. I have a feeling it is due to the VM not being configured to have enough heap space since this feature was added. I've disabled them for now https://github.com/Azure/azure-sdk-for-java/pull/12728.
@kasobol-msft would you mind taking a look at these to see if there is some specific heap space setting we need to enable on the CI VMs?

We should set MemoryOptions to something bigger than 5GB here https://github.com/Azure/azure-sdk-for-java/blob/master/sdk/storage/tests.yml .
The default seems to be 3GB https://github.com/Azure/azure-sdk-for-java/blob/02155b437fbcc501f3a5cee92e44dbb8ee3df887/eng/pipelines/templates/variables/globals.yml#L5

Attempting to run these in https://github.com/Azure/azure-sdk-for-java/pull/23119

Consider using https://github.com/Azure/azure-sdk-for-java/issues/19601 for some of disabled tests.

Todo: datalake.


[BUG] The width and height of image captured from camera in Android is not correct

Describe the bug

When i take a picture in Android simulator, and use the image returned from library, the width and height of image is not correct.
How to reproduce

import 'package:flutter/material.dart';
import 'package:wechat_camera_picker/wechat_camera_picker.dart';

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

class HomePage extends StatefulWidget {
  const HomePage({super.key});

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

class _MyHomePageState extends State<HomePage> {
  AssetEntity? selectedAsset = null;

  Future<void> selectAssets() async {
    final AssetEntity? result = await CameraPicker.pickFromCamera(
      context,
    );
    print("taking photos result: ${result}, ${result?.size}");
    if (result != null) {
      selectedAsset = result;
      if (mounted) {
        setState(() {});
      }
    }
  }

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        body: Center(
          child: Column(
            mainAxisAlignment: MainAxisAlignment.center,
            children: [
              InkWell(
                  onTap: () {
                    selectAssets();
                  },
                  child: Text('capture photo')),
              Text(
                  'width, height: ${selectedAsset?.width}, ${selectedAsset?.height}, ${selectedAsset?.orientatedWidth}, ${selectedAsset?.orientatedHeight}')
            ],
          ),
        ),
      ),
    );
  }
}

Steps to reproduce the behavior:

capture image
confirm the image
the width and height of image is wrong

Expected behavior

The width of the image should be set to the height of the image, and the height should be set to the width.
Screenshots (If contains)

https://github.com/user-attachments/assets/703ce7aa-ed2c-4f0e-b3ff-7dc1c3dc7c4e
Version information

Device: Google pixel emulator
OS: Android 11
Package Version: 4.3.1
Flutter Version: 3.22.1

Additional context

We don't guarantee any usage with emulators.

We don't guarantee any usage with emulators.

it happens on the real android device also, but i have one right now.

Hello @AlexV525,
I'm following up on our previous conversation. I've recorded a video demonstrating the issue with the camera image dimensions. The video shows that the width and height of the image from the camera are incorrect - specifically, their values appear to be swapped.
Could you please take a look at this and advise on how to resolve the problem? Let me know if you need any additional information or if you'd like me to provide specific code snippets or error logs related to this issue.
Thank you for your assistance.
The device information is:

Redmi Note 12 Pro; Xiaomi HyperOS <IP_ADDRESS>.THGRUXM

https://github.com/user-attachments/assets/dbc53f87-314d-408d-ae88-835fd489bbc5

Please use the latest version of both the picker, photo_manager, and camera to reproduce this so we can narrow where the root cause came from.

AFAICT, this is fixed by https://github.com/fluttercandies/flutter_photo_manager/pull/1178 and will be available with photo_manager: 3.3.0. Run pub upgrade to get that version and verify if the issue persists.

Thank you very much. I will check it tomorrow.


Fix KillObject message flood preventing some logins (regression in #309)

This commit is dependent on commit that is reverted by the release-0.9.31 branch due to the regression it introduces. But we now have a fix for that regression and don't want to revert it in master.
So the special release-0.9.31-for-merge branch has everything from release-0.9.31, but also with merge conflicts with master resolved, plus it restores this culling change, but now also adds the follow-up fix for that regression. (Phwew.)
This is confusing, but the executive summary is that this PR can now be ignored and closed because this fix is cherry-picked into the release-0.9.31-for-merge branch.  By reverting the revert, we can merge the fix in there, and get it (in chronological order) into master.


Merge Queue break glass behavior

Requirements;

The 'merge when ready' button is not clickable until all presubmit checks pass.
Team members can land a change to fix the tree when the tree is red without admin privileges.
Reverts created with the 'revert' label continue to behave as they do today.

One way to accomplish (1) is by adding a 'merge queue guard' check that is blocking the same way that the ci.yaml check is blocking.
The 'merge queue guard' check remains in a pending state until all other presubmit checks finish, including the 'tree-status' presubmit check. If a presubmit check fails, the 'merge queue guard' turns red, and the 'merge when ready' button remains unclickable. If all presubmit checks pass, the 'merge queue guard' turns green and the 'merge when ready' button becomes clickable.
Then (2) can be accomplished as follows. The presence of the 'break glass' label tells the 'merge queue guard' check to ignore the 'tree-status' check. That is, all other presubmits have to be green, but the intention is to land the PR on a red tree.
For (3), the revert bot behaves such that the 'merge queue guard' check allows valid reverts created by adding the 'revert' label to a PR to land more-or-less immediately, as they do today.

cc @jtmcdole @christopherfujino

We have a 'merge queue guard' (MQG) check today; it is used in two locations:
Pre Submit
Currently: The MQG check is largely ceremonial. The CiStaging in cocoon will complete the MQG and schedule more presubmits after the engine build occurs.
Proposed:

The MQG blocks for all presubmits to complete.
We continue building the engine in the first stage; but we do not complete the MQG when done.
Create a new stage (to run after the engine build stage) which records all remaining tests.
If any tests fails, MQG fails.  If all tests for all stages pass; MQG passes.

Merge Queue
Currently: Blocks the Merge Queue from landing.

In non-fusion repositories, its a 1 minute simulated check and completes successfully
In fusion repositories (WIP): builds the engine artifacts for prod. If artifacts are all built; completes successfully.

Proposed: No change

@yjbanov as FYI


[BUG] non-keyable values in collect_dictionary snippet

collect_dictionary snippet it works fine for given example with a key value pair in which a value can be converted into a key. What if the values are of types which cannot be converted to key like a list or obj? The current snippet throws an error for this:
ages = {
    "a": 1,
    "b": [1, 2, 4],
}

It is because a list cannot be converted into a key. I have two solutions:

Edit the same snippet and cater for values of type list and make each list entry a unique key and it's original key as value.
Make a new snippet collect_list_dictionary and cater for values with type list

The snippet clearly states that it only works for hashable values. Therefore this behavior is by design. Closing as wontfix.

Thank you for looking at it. Can I submit a new snippet for non-hashable value?


STG83 services features

Description
Merging all new service features for STG83.
All SDK Contribution checklist:

[ ] The pull request does not introduce [breaking changes]
[ ] CHANGELOG is updated for new features, bug fixes or other significant changes.
[ ] I have read the contribution guidelines.

General Guidelines and Best Practices

[ ] Title of the pull request is clear and informative.
[ ] There are a small number of commits, each of which have an informative message. This means that previously merged commits do not appear in the history of the PR. For more information on cleaning up the commits in your PR, see this page.

Testing Guidelines

[ ] Pull request includes test coverage for the included changes.

/azp run java - storage - tests

API change check
API changes are not detected in this pull request.

LGTM, @kasobol-msft could you approve?


Fix link to zip file

Hardcoded for now, in 2 places. Open to better ideas!

I'd undo these changes and add a prototypeKitVersion in package.json - I think we should avoid hardcoded links in two places.


ExtractMatcher (Second-order matcher)

More information: http://jmelo.lyncode.com/hamcrest-second-order-matcher-a-missing-matcher/

I've released Hamcrest Compose which provides a hasFeature matcher along these lines.


Fix/689 added urls to test

Fixes:#689

changed .txt-data to file
added urls to ide-projects/build
removed try-catch-block from ToolRepositoryMock.java

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.1 out of 2 committers have signed the CLA.:white_check_mark: leonrohne27:x: Leon RohneLeon Rohne seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.


[RFC] Introduce enumerable_size_hint

Related to #10074 and #7658
Context
Enumerable defines a to_a method which turns an enumerable into an array. It starts with an empty array and puts all the values into it. Since Enumerable can't know the underlying size of the collection without iterating it, it starts with an empty array with the default capacity. However, in some cases the initial capacity could be know.
For example, if we call to_a on a Hash, well, we know the Hash's size. Same goes for Slice, StaticArray, Tuple and many others.
The same is true for to_h: it starts with an empty Hash where the initial capacity can't be known, but it could be known.
There are more examples:
3.times.to_a # Here we know for sure the Array will have 3 elements
3.times.map { |x| x + 1 }.to_a # Here too! map keeps the same number of elements
1.upto(3).to_a # Similar to the above...

Proposal
I propose that types that include Enumerable (so this naturally includes Iterator) can optionally define an enumerable_size_hint method. This method returns an int with the suggested size to use when calling to_a or to_h (and maybe other methods?), or it can return nil if there's no suggested size.
We can make Array and Hash implement this method by returning size. For 3.times we can make the iterator return the original int it was called on. For the map iterator it's just forwarding enumerable_size_hint to the wrapped iterator. And so on for many other cases.
This is a small performance improvement, but I feel it's really to do, and it's unobtrusive: the name enumerable_size_hint is long and weird so it won't collide with other methods; it's self-explanatory; and it's usually very easy to implement.
As an example, I implemented this for TimesIterator and benchmarked 100.times.to_a:
before   1.87M (535.66ns) (± 1.27%)  1.69kB/op  fastest
after    2.77M (360.50ns) (± 5.31%)  496B/op  fastest

Note how a lot less memory was allocated because no reallocations were needed.

The way I see this, this is just the #length from https://github.com/crystal-lang/crystal/issues/10014#issuecomment-737666157 except that #size is not required to be backed by this size hint.

I'd like to avoid having size and length, they will be confusing. Specially since length in Ruby has a different meaning.

IMO #size should not count the elements by iteration and instead only return a value if the size is known as discussed in #10014.
Then it could potentially serve the same purpose as the suggested #enumerable_size_hint.
That might still be a useful addition though, because it could allow collections that don't know their actual size to at least provide an approximation. Not sure if there's a huge use case for that, though.

But doesn't have to stay that way.

Tell me more :-)

I would not be opposed to dropping Enumerable#size in favor of Enumerable#count, or making it nilable like in Ruby. The methods in Enumerable or Indexable can then try to use size when available and fallback to a slower implementation if not.

Are there any disadvantages of defining #size exactly as the following? (i.e. my comment in the other issue)
module Enumerable(T)
  def size
    size_hint || count { true }
  end
end

Making it nilable seems like a breaking change too drastic for me.
There is also the question of whether #size_hint could return a larger hint than the actual size. If I have for example an Iterator from .select, can it simply reuse the size hint of the wrapped instance? (My guess is no because over-allocation is just as bad as repeated reallocations.)

My idea with size hint is that it returns an approximate size. That said, removing size from Enumerable and using that when available sounds good: no new method needed, and most types already have a size method.
Now that I think about it... a map Iterator would forward the size to the underlying Iterator. However, if you call next on it a couple of times the size must change, so then we'd need to track how many elements we already saw, and subtract that from size. With size hint there's no problem because it's just a hint and it could return a bigger value than the actual number of elements.

Actually, size_hint could return one of three values: nil if the size hint can't be determined, an ExactSize record with the exact size, or ApproximateSize with an approximate size. That way if the size is exact we can actually make it even a bit more efficient.

Maybe returning Int32? is actually fine. We can drop size from Enumerable and then if the iterator responds to size we can do that optimization.

Which operations would produce only an approximate but not exact hint, and which methods would benefit from an approximate hint? Let's say we have
(1..1_000_000).each.select do |x|
  # x is a mersenne prime?
end.to_a # => [3, 7, 31, 127, 8191, 131071, 524287]

It makes no sense to allocate a 1,000,000-element Array here, so the iterator returned by Iterator#select cannot use 1,000,000 as a size hint, and consequently Enumerable#select cannot use self's size hint either.
IMO the size hint should be smaller than the actual number of elements, not bigger; in the above code the size hint would have been 0 instead (then the actual infinite streams, or hints too large to fit into an Int32, could use nil). Even without size hints the number of over-allocated elements is O(size) due to the geometric progressions in containers like Array and Hash, but that won't hold true anymore if the hint is bigger than the real size.
Luckily many methods on Enumerable and Iterator are Θ(size), in which case the hint would be bounded above and below by some linear functions of self.size. Below are the ones I could identify:

Iterator.chain, #chain
Iterator#cons, #cons_pair
Iterator#cycle(Int)
Iterator#each_slice, #slice
{Enumerable,Iterator}#first(Int), #skip
{Enumerable,Iterator}#in_groups_of
{Enumerable,Iterator}#map, Enumerable#map_with_index
Enumerable#partition
Enumerable#sample
Iterator#step
Iterator#tap, #with_index, #with_object
Enumerable#to_a, #to_h, #to_set
{Enumerable,Iterator}#zip, Enumerable#zip?

(Methods on Indexable don't matter because we assume Indexable#size is always finite and never consumes any elements, although this is not explicitly stated.)

A taste of what's to come:
require "benchmark"

module Enumerable(T)
  def enumerable_size_hint
  end

  def to_a
#-  ary = Array(T).new
    ary = Array(T).new(enumerable_size_hint || 0)
    each { |e| ary << e }
    ary
  end
end

module Indexable(T)
  def enumerable_size_hint
    size
  end

  private class ItemIterator(A, T)
    def enumerable_size_hint
      @array.enumerable_size_hint
    end
  end
end

module Iterator(T)
  private struct ConsTuple(I, T)
    def enumerable_size_hint
      @iterator.enumerable_size_hint.try { |hint| {hint - 1, 0}.max }
    end
  end
end

N = ENV["N"].to_i

class A; end

Benchmark.ips do |b|
  b.report("iter") do
    result = nil
    x = Array.new(N) { A.new }
    5000.times { result = x.each.cons_pair.to_a }
    raise "" unless result.not_nil!.size == N - 1
  end
end

$ N=1500 crystal run --release test.cr
iter  11.50  ( 86.92ms) (± 3.88%)  237MB/op  fastest
$ N=1500 bin/crystal run --release test.cr
iter  14.02  ( 71.34ms) (± 4.24%)  114MB/op  fastest

$ N=1538 crystal run --release test.cr
iter   7.77  (128.77ms) (± 3.94%)  472MB/op  fastest
$ N=1538 bin/crystal run --release test.cr
iter  12.89  ( 77.58ms) (± 7.76%)  117MB/op  fastest

But also:
Benchmark.ips do |b|
  b.report("iter") do
    result = nil
    x = Array.new(N) { A.new }
    5000.times { result = x.each.cons_pair.to_a; result << result.first } # notice the last push
    raise "" unless result.not_nil!.size == N
  end
end

$ N=1500 crystal run --release ../bug.cr
iter   9.74  (102.66ms) (± 5.24%)  237MB/op  fastest
$ N=1500 bin/crystal run --release ../bug.cr
iter   7.80  (128.20ms) (± 3.27%)  343MB/op  fastest

$ N=1538 crystal run --release ../bug.cr
iter   6.94  (144.03ms) (± 3.05%)  472MB/op  fastest
$ N=1538 bin/crystal run --release ../bug.cr
iter   7.56  (132.30ms) (± 2.56%)  352MB/op  fastest

The extra push forces a reallocation of the result array, so the memory usage triples and for N close below the natural reallocation limits (3 * 2 ** k for integer k) we are observing slower speeds than not using the size hint.
This is less pronounced for Hash return values because they always use capacities that are powers of 2 even if the user specifies a non-power. (Of course, this only moves the reallocation limits around; it does not solve the underlying issue.) Perhaps we should always overallocate a little?

Probably yes.

On further thought, since the extra push always occurs outside the Enumerable methods, it should also be the user's responsibility to pre-allocate a container with the optimal capacity themselves, in which case we only need a way to override the default-constructed array inside the method. If that is not possible, they have to use #each instead of these methods that depend on size hints.
One way is through an extra into parameter, inspired by Elixir's for special form:
module Enumerable(T)
  def map(&block : T -> U) forall U
    map(into: Array(U).new(enumerable_size_hint || 0)) { |e| yield e }
  end

  def map(*, into col, &block : T -> _)
    each { |e| col << yield e }
    col
  end
end

# x : Enumerable
capacity = x.enumerable_size_hint.try { |hint| hint + 1 }
col = Array(typeof(x.first)).new(capacity || 0) # or Enumerable.element_type for truly generic code
result = x.map(into: col, &.foo)
result << result.first # okay, no reallocations

module Iterator(T)
  def into(col)
    each { |e| col << e }
    col
  end
end

# x : Iterator
iter = x.map(&.foo)
capacity = iter.enumerable_size_hint.try { |hint| hint + 1 }
col = Array(typeof(iter.next)).new(capacity || 0)
result = iter.into(col)
result << 0 # okay, no reallocations

I'm not fully convinced by this approach yet.


AKSampler strange behaviour

Got 3 issues while using AKSampler:
1)After loading new audio files to sampler, it starts to play them much louder and sometimes with clipping. Attaching mp4 screen recording inside zip. Loading piano samples, playing one note, then loading other samples, then back to piano and playing the same note.
ScreenRecording_10-25-2017 14:27.MP4.zip
2)After inserting or removing headphones after playing some samples some strange endless noise appears. Attaching mp4 screen recording inside zip, warning loud noise!
ScreenRecording_10-25-2017 14:25.MP4.zip
3)AKSampler doesn't release its audio files (and/or other resources). Screenshot is the result of creating (one after another) 5 samplers, loading audio files (~10MB) and setting them to one pointer (so that the previous one was released).

Hi Alex, sorry my notifications about new issues was broken so I didn't see this until now.

Can you upload a test file that wasn't working? From watching the video, could you actually be creating a new sampler and then they are both playing...something like that?

That's pretty crazy! There's a lot of stuff you got to get right when you change the audio route like that, how are you handling that?

Also strange and not something I've experienced. In our tests, AKSampler doesn't even load the entire sample into memory. I'd also have to see some code here to see if something stands out.

Thanks for using it - hope it starts working better for you.

Alex, I'd really like to break this issue up.  It seems like there are some things that might be due to your implementation, and some things that might be bugs but are a bit nebulous.  Can you submit questions individually on Stack Overflow and submit an issue once we've nailed down the problem being within AudioKit vs. in one implementation.  Thanks!


v1.0.0 does not work with Atom 1.10

Hi,
First, I would like to thank you for this package, it's awesome.
However the version 1.0.0 does not work with Atom 1.10: there's no syntax highlighting. I had to manually install the version 0.5.0 to get the colors back.
$ atom -v
Atom    : 1.10.2
Electron: 0.37.8
Chrome  : 49.0.2623.75
Node    : 5.10.0

Thank you for kind words!  Yes @nouney, in Atom 1.13 there were breaking changes to DOM selectors.  I reflected this in my package.json as a requirement.  If you are running on an older version of Atom, you'll need to run an older version of the theme as well.


Popping layer problem when merging it

from keras.layers import Merge
from keras.layers import Dense
from keras.models import Sequential

def pop_layer(model):
    if not model.outputs:
        raise Exception('Sequential model cannot be popped: model is empty.')

    model.layers.pop()
    if not model.layers:
        model.outputs = []
        model.inbound_nodes = []
        model.outbound_nodes = []
    else:
        model.layers[-1].outbound_nodes = []
        model.outputs = [model.layers[-1].output]
    model.built = False

if __name__ == "__main__":
    model = Sequential()
    model.add(Dense(32,input_dim=100))
    model.add(Dense(100))
    pop_layer(model)
    print model.layers[-1].output_shape

    model2 = Sequential()
    model2.add(Dense(32,input_dim=100))
    print model2.layers[-1].output_shape

    merged = Merge([model, model2], mode='concat')
    modelp = Sequential()
    modelp.add(merged)
    print modelp.layers[-1].output_shape

    from keras.utils.visualize_util import plot
    plot(modelp, show_shapes=True, to_file='modelp.png')

So basically model and model2 should be the same because I popped from model.
However, if you see the output plot (modelp.png), model and model2 has different output and the former seems not has been popped.
And if you check out the printed text to standard output, you'll see model and model2 has 32D output and modelp has 132D output, which doesn't make sense.
I only see this problem when I POP and MERGE the layer.
Thank you.

Why are you using a custom pop_layer() function? If I use model.pop() it works as expected.

Thanks! That was because I first used model.layers.pop() and it didn't worked, so I found the custom function at #2371. Now I got to know that model.pop() works. I'll close the issue.

I'm having the same problem with popping layers. They just magically reappear.
model.pop is not working. It gives AttributeError: 'Model' object has no attribute 'pop'
eg.
model = ResNet50(weights='imagenet',include_top=False,input_shape=(3,360,640))
model.summary()

Last lines of the model summary are:
____________________________________________________________________________________________________
activation_253 (Activation)      (None, 2048, 12, 20)  0           merge_80[0][0]
____________________________________________________________________________________________________
avg_pool (AveragePooling2D)      (None, 2048, 1, 2)    0           activation_253[0][0]
============================================================
Total params: 23,587,712
Trainable params: 23,534,592
Non-trainable params: 53,120

I want to remove AveragePooling2D layer.
model.layers.pop()
model.summary()

The layer is gone from the summary!
____________________________________________________________________________________________________
activation_203 (Activation)      (None, 2048, 12, 20)  0           merge_64[0][0]
====================================================================
Total params: 23,587,712
Trainable params: 23,534,592
Non-trainable params: 53,120

Now I add a bunch of new layers with
x = model.output
x=BatchNormalization(axis=1)(x)
x=Convolution2D(nf,3,3, border_mode='same')(x)
x=ELU()(x)
...
full_model = Model(input=model.input, output=predictions)
full_model.summary()

And the AveragePooling2D is back!
activation_203 (Activation)      (None, 2048, 12, 20)  0           merge_64[0][0]
____________________________________________________________________________________________________
**avg_pool (AveragePooling2D)      (None, 2048, 1, 2)    0           activation_203[0][0]**
____________________________________________________________________________________________________
batchnormalization_10 (BatchNorm (None, 2048, 1, 2)    8192        avg_pool[0][0]

I'm having the same problem with popping layers. They just magically reappear.
model.pop is not working. It gives AttributeError: 'Model' object has no attribute 'pop'

A Model object can have layers connected in arbitrary ways, not only sequentially.  It doesn't make sense conceptually to pop a layer from something that doesn't behave like a list.

Thanks,  that makes sense. So how do i remove the last (average polling) layer from resnet50?
It works fine BTW if i duse pop and don't add layers and use the model to precompute up to the last layer before the average pooling.

@kiyoon i use the keras function api and  wanna pop the last layer,adding new layer.
like this ,

x = Dense(4096, activation='relu', name='fc2')(x)
x = Dense(1000, activation='softmax', name='predictions')(x)
model = Model(img_input, x)
pop_layer(model)
x = Dense(8, activation='softmax', name='predictions')(x)
return model

Is this right ? thanks

@kiyoon i use the keras function api and wanna pop the last layer,adding new layer.
like this ,
x = Dense(4096, activation='relu', name='fc2')(x)
x = Dense(1000, activation='softmax', name='predictions')(x)
model = Model(img_input, x)
pop_layer(model)
x = Dense(8, activation='softmax', name='predictions')(x)
return model
Is this right ? thanks

No, I recommend you to use Sequential() model rather than normal Model(), assuming that the model is actually sequential.
It would be something like:
model = Sequential()
model.add(Dense(4096, activation='relu', name='fc2'))
model.add(Dense(1000, activation='softmax', name='predictions'))
model.pop()

@kiyoon  That's mean that  there  haven't been  the model.popfunction in the keras function api. And if  i want to  pop the last layer, i have to use the Sequential()  model

@alyato Yes there's no pop function for Model, because Model is not necessarily sequential. Popping from non-sequential model doesn't make sense at all. So if you want to pop, use sequential model.


Updated README to add a table of content

...near the beginning of page.
It provides an easier navigation, otherwise it's tiresome to scroll back and forth.

Coverage remained the same at 76.44% when pulling 36d0b83c33c0f62eb6ef6231fcbb104b118530f7 on francoisprunier:feature/add-toc-readme into 4f836096a56be93ee1322f3c98cbaca485f0b064 on gregnb:master.

Ooh I like this idea 👍
Just to be picky, can you add an "s" to the end of # Table of content?

@Beamanator I've added the 's'


add render_priority and no_depth_test as option to viewport2d_in_3d

Added options to set no_depth_test and render priority to the mesh material inside viewport2d_in_3d
As the material is created in runtime, we need to expose this values in the script, otherwise changes in the material will not affect the created viewport.
I keep default values as in previous versions.

It's a good idea, i added this as a new enhacement idea in the issues:   #488

I agree with Malcolm here, we should redo the implementation and expose the material itself, because we're just going to grow settings more and more.
The challenge will be to let users know we will override some parts of the material (like setting the albedo texture to the actual viewport).

@surreal6 Could you check out pull request #493 and confirm it meets your needs.

Closing this on request from @surreal6 now that #493 has been merged.


Braces are not auto indented properly

I think braces became optional in scala3 but the auto indent seems to not be working properly.

Auto format fixes this when saving the file but I find this problem a little bit annoying.

For Metals in VS Code we actually have to specify the logic for indentation, maybe it's fairly similiar in Zed? Someone could take a look at other extensions and see how they handle it (I would assume some tree sitter magic would help :thinking: )

I've found this PR that seems to be related


script crash on start

Traceback (most recent call last):
File "autopilot.py", line 1, in
from dev_tray import tray
File "C:\Users\User\Music\EDAutopilot-master\dev_tray.py", line 3, in
from dev_autopilot import autopilot, resource_path, get_bindings, clear_input, set_scanner, RELEASE
File "C:\Users\User\Music\EDAutopilot-master\dev_autopilot.py", line 372, in
keys = get_bindings()
File "C:\Users\User\Music\EDAutopilot-master\dev_autopilot.py", line 322, in get_bindings
bindings_tree = parse(latest_bindings)
File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.8_3.8.1520.0_x64__qbz5n2kfra8p0\lib\xml\etree\ElementTree.py", line 1202, in parse
tree.parse(source, parser)
File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.8_3.8.1520.0_x64__qbz5n2kfra8p0\lib\xml\etree\ElementTree.py", line 584, in parse
source = open(source, "rb")
TypeError: expected str, bytes or os.PathLike object, not NoneType

Same error

I believe Python 3.8 is the cause. Change your environment to Python 3.7 and provide feedback.

I believe Python 3.8 is the cause. Change your environment to Python 3.7 and provide feedback.

I believe Python 3.8 is the cause. Change your environment to Python 3.7 and provide feedback.

Hello and thank you! I downgraded my Python installation to 3.7 and it worked!

I believe Python 3.8 is the cause. Change your environment to Python 3.7 and provide feedback.

Hello and thank you! I downgraded my Python installation to 3.7 and it worked!

I believe Python 3.8 is the cause. Change your environment to Python 3.7 and provide feedback.

@kbmorris I downgraded my Python to 3.7, but this problem is still here


Search is inconsistent

Is it an actual bug?
I believe so.
Did you check if the bug has already been reported?
Yes
Describe the bug
Searching is inconsistent, often not finding search text though it's confirmed the text exists in the file.
To Reproduce
See linked video
Do you see any error entries in sleeks developer tools?
While invoking the bug, I see no NEW errors. There was an existing error in the log when I opened it:

Expected behavior
Search terms filtered/found.
Screenshots
https://odysee.com/Kazam_screencast_00000:d
Desktop (please complete the following information):

OS: Pop!_OS 22.04 LTS
Version of sleek:  1.2.6
Source: Pop! Shop

I'm attaching a console log file for your review:
console.txt

@TriggerDingus I think this has been fixed in 1.2.7, could you please give it a quick try?

Just downloaded and did a bunch of searches in 1.2.7 and it appears to be resolved. That makes life much easier. Much appreciated!


Retain all states?

I've noticed that after restarting Home Assistant, many values are unknown until the next update for those values, sometime I've notice that might be a while. For instance:

Is it possible to retain these messages so that Home Assistant shows some data in this case? Or am I doing something wrong here?

It should populate everything within a few minuets.
Load up MQTT Explorer and see how long it takes to get your messages.
Stop the weatherflow container, load up MQTT Explorer, start weatherflow container and see how long it takes.

What is the voltage of your station?
If the battery is low it will change the times between reports.
https://community.weatherflow.com/t/tempest-battery-voltage-range/6120/2

Thanks for the reply!
I had MQTT Explorer up for about 5 minutes. Most topics started with 2 messages. Only a couple of them got messages as I waited (the topics with more than 2 messages). The rest didn't get updated in the length of time I waited.

According to hass, voltage is 2.57 (range is 2.56-2.58)

The link you gave me (copied and paste) is 404 so I don't know what the voltage value should be.
Let me know if I missed anything!

I didn't put the link in twice, but if you select, copy and paste it will take you to the WeatherFlow Forums; or click below it should work now.
https://community.weatherflow.com/t/tempest-battery-voltage-range/6120/2

Do you have to be logged in:

FYI I tried logging in and still got the above page.

Hum, link worked for me.
Here is the info:
Power Modes
Mode 0
Voltage >= 2.455
Full power all sensors enabled
Mode 1
Voltage <= 2.415 or >= 2.41 from Mode 2
Rapid sample interval set to six seconds
Mode 2
Voltage <= 2.39 or >= 2.375 from Mode 3
Rapid sample interval set to one minute
Mode 3
Voltage <= 2.355
Rapid sample interval set to five minutes
Sensor sample interval set to five minutes
Lightning sensor disabled
Haptic sensor disabled

Cool, so according to the above, my Tempest should be at full power/mode 1.
So I guess back to the original question, I feel like the updates from the tempest don't happen as quick as expected, and home assistant then shows unknown during that period. For instance, the last time I restarted home assistant, it was about 1 hour before all the sensors were populated with data. Only the mqtt topics with messages  > 2 ended up having values come in quick.

just toss my 2 cents in are you getting a strong signal form the base unit to the receiver ? tempest app update in real time?

Next time your restart HA, restart this container also so it can repopulate the sensor template data via MQTT to HA.

@robertw Connection seems fine, according to the app (reading RSSI).
@GlennGoddard I'll have to keep an eye on it further but I allowed the weatherstation to connect to the internet and restarted hass a bit after, and the values populated quickly. I don't know if it's by chance or what but I'm going to keep an eye on it.
Looking back at my hass history, the entities that don't populate right away all have periods where no data shows up (even with hass running), so now I'm wondering if a firmware update (now that I am allowing it on the internet) fixed the reporting issue.
Regardless I don't think this issue is relevant anymore so I am going to close it. Thanks for the help! If i notice anything else I can open another issue.

To quickly follow up, after allowing my Tempest to connect to the internet, the data stream seems a lot better. I am getting constant updates now vs before where some values like Dew Point wouldn't update for a couple hours before picking back up.
I don't know if there's some weirdness with keeping it disconnected on the internet or if a firmware update fixed something, but the issue seemed to be the device itself.

Have you tried blocking it from the internet and seeing what happens not to see if it was just firmware?

Not yet, I was planning on it (and I'll get back to you with the results) but I wanted to let it play out for a few days to see if the issue comes back. I'll let you know when I've tested it again.

So I left the Tempest connected to the internet since that comment and never had an issue of Tempest not reporting values. This afternoon I disconnected it from the internet and basically instantly stopped reporting some values (not the flat line):

The second I allowed it on the internet, it started reporting values. Interestingly, the value of Dew Point started to jump around wildly

I wonder if Tempest tries to keep values if it isn't connected to the internet? The behavior I was seeing once it connected showed erratic values.

I'm going to have to test this myself when the kids are not devouring the internet.  Everything is UDP except the forecast, there might be an error handler that went wrong.

Well I got the opportunity to test this since my internet went down last night.  With no internet connection I get all the values from the tempest (except current conditions which is cloud based).
How where you isolating it from internet?

I have a rule on my firewall that drops any packet out of the iot network (which the tempest is connected to).
Just to be clear, while not connected to the internet, I did get all non-cloud based messages for a while. It was very much hit or miss - there would be multiple hours where I would get data then about one-two hours of not getting data (based on what I was seeing in the hass history)
Suddenly not getting tempest updates when I removed it from the internet might be happenstance. I think to get a better test would be (and I am not suggesting you do this because it's probably annoying) would be to keep it disconnected from the internet for a few days and see if your hass history ever goes flat for certain sensors.

My internet was down for about 8 hours and I have changing data from my Tempest.  I wonder if your switch is not passing the UDP traffic because of the firewall rules.  UDP does originate from an IP so it could technically happen.
Do you have a few routers and then then your internet access point?  Is there a way you could run something like wireshark sniffing UDP on the same router as the WeatherFlow hub and also on the network effected by firewall rules?

Just my few cents on this: The only thing that the Internet is used for is the Current Conditions and Forecast Data. If you have not enabled that feature, then all runs locally. All the calculated sensors are build with data coming from the UDP Broadcast - so if UDP works, and you are not using the the Forecast piece, then the only point of failure, could be the MQTT Server.

Sorry for the delay in this. I have been afk.
My switch isn't doing the filtering, the firewall is. Packets destined for the same network never leave the switch. If it was a firewall (or something) rule dropping the packets then I don't think I'd get any data.


Uncaught Error: Cannot read property 'object' of undefinedTypeError: Cannot read property 'objec...

[Enter steps to reproduce:]

Pressed save

Other details:

Have a folder opened as project folder
Have 4 files opened, each file is approx 4k-5k loc.
Have settings tab opened.

Atom: 1.17.0 x64
Electron: 1.3.15
OS: Mac OS X 10.11.6
Thrown From: Atom Core
Stack Trace
Uncaught Error: Cannot read property 'object' of undefined
TypeError: Cannot read property 'object' of undefined
at ObjectsRegistry.get (/Applications/Atom.app/Contents/Resources/electron.asar/browser/objects-registry.js:41:28)
at EventEmitter. (/Applications/Atom.app/Contents/Resources/electron.asar/browser/rpc-server.js:306:31)
at emitMany (events.js:127:13)
at EventEmitter.emit (events.js:201:7)
at WebContents. (/Applications/Atom.app/Contents/Resources/electron.asar/browser/api/web-contents.js:222:13)
at emitTwo (events.js:106:13)
at WebContents.emit (events.js:191:7)
At /Applications/Atom.app/Contents/Resources/electron.asar/renderer/api/remote.js:217

Error: Cannot read property 'object' of undefined
TypeError: Cannot read property 'object' of undefined
    at ObjectsRegistry.get (/Applications/Atom.app/Contents/Resources/electron.asar/browser/objects-registry.js:41:28)
    at EventEmitter.<anonymous> (/Applications/Atom.app/Contents/Resources/electron.asar/browser/rpc-server.js:306:31)
    at emitMany (events.js:127:13)
    at EventEmitter.emit (events.js:201:7)
    at WebContents.<anonymous> (/Applications/Atom.app/Contents/Resources/electron.asar/browser/api/web-contents.js:222:13)
    at emitTwo (events.js:106:13)
    at WebContents.emit (events.js:191:7)
    at metaToValue (/Applications/Atom.app/Contents/Resources/electron.asar/renderer/api/remote.js:217:13)
    at undefined.remoteMemberFunction (/Applications/Atom.app/Contents/Resources/electron.asar/renderer/api/remote.js:113:18)
    at AtomEnvironment.module.exports.AtomEnvironment.getWindowDimensions (/Applications/Atom.app/Contents/Resources/app/src/atom-environment.js:663:1)
    at AtomEnvironment.module.exports.AtomEnvironment.storeWindowDimensions (/Applications/Atom.app/Contents/Resources/app/src/atom-environment.js:697:1)
    at WindowEventHandler.module.exports.WindowEventHandler.handleWindowBlur (/Applications/Atom.app/Contents/Resources/app/src/window-event-handler.js:184:1)
    at /Applications/Atom.app/Contents/Resources/app/src/window-event-handler.js:3:1

Commands
  2x -0:47.1.0 core:move-up (input.hidden-input)
     -0:46.6.0 editor:select-to-end-of-line (input.hidden-input)
     -0:46.3.0 core:copy (input.hidden-input)
  2x -0:46.1.0 core:move-down (input.hidden-input)
     -0:45.6.0 core:paste (input.hidden-input)
     -0:45.2.0 core:move-up (input.hidden-input)
     -0:45 editor:newline (input.hidden-input)
     -0:44.7.0 core:paste (input.hidden-input)
     -0:42.6.0 editor:select-to-end-of-line (input.hidden-input)
     -0:41.7.0 editor:consolidate-selections (input.hidden-input)
     -0:41.7.0 core:cancel (input.hidden-input)
     -0:41.4.0 core:move-down (input.hidden-input)
     -0:39.3.0 core:move-up (input.hidden-input)
     -0:39 core:move-left (input.hidden-input)
     -0:38.2.0 core:move-down (input.hidden-input)
     -0:20.3.0 core:save (input.hidden-input)

Non-Core Packages
atom-clock 0.1.7
atom-jest-snippets-standard 1.1.0
busy-signal 1.4.1
intentions 1.1.2
javascript-snippets 1.2.1
kite 0.23.0
language-restructuredtext 1.0.1
language-restructuredtext 1.0.1
linter 2.1.4
linter-flow 5.6.0
linter-ui-default 1.2.4
react 0.16.2

Thanks for taking the time to contribute!
We noticed that this is a duplicate of #11692. You may want to subscribe there for updates.
Because we treat our issues list as the Atom team's backlog, we close duplicates to focus our work and not have to touch the same chunk of code for the same reason multiple times. This is also why we may mark something as duplicate that isn't an exact duplicate but is closely related.
For information on how to use GitHub's search feature to find out if something is a duplicate before filing, see the How Can I Contribute? section of the Atom CONTRIBUTING guide.


Support for Okta + Duo Universal Prompt

I've integrated Duo Universal Prompt with our Okta tenant. As a user who has enrolled in the universal prompt MFA, using gimme-aws-creds fails because it appears that Universal Prompt requires different interactions than the traditional prompt.
I am interested in contributing support for Duo Universal Prompt. I'm posting this issue, before jumping in fully, to check that this isn't already being worked on, and would be a welcome contribution. I haven't found any references to Universal Prompt in existing issues; hopefully I didn't miss one.
Expected Behavior
gimme-aws-creds against an Okta classic (and OIE?) tenant with Duo Universal Prompt MFA completes the authentication flow and obtains functional AWS credentials. In particular, I'm interested in use cases where:

gimme-aws-creds triggers an automatic Duo Mobile push when the user has that selected as their default
gimme-aws-creds accepts a passcode as input and submits it to Duo to complete MFA

Current Behavior
The current implementation results in the following exception when the user's only MFA type is a Duo Universal Prompt integration:
 $ gimme-aws-creds
Username: xxxx
Using password from keyring for xxxx
Okta Password for xxxx:
Do you want to save this password in the keyring? (y/N)
Multi-factor Authentication required.
Preferred factor type of push not available.
Using the only authentication factor configured: Unknown MFA type: claims_provider.
Traceback (most recent call last):
  File "/usr/local/bin/gimme-aws-creds", line 17, in <module>
    GimmeAWSCreds().run()
  File "/usr/local/Cellar/gimme-aws-creds/2.7.2/libexec/lib/python3.11/site-packages/gimme_aws_creds/main.py", line 451, in run
    self._run()
  File "/usr/local/Cellar/gimme-aws-creds/2.7.2/libexec/lib/python3.11/site-packages/gimme_aws_creds/main.py", line 859, in _run
    for data in self.iter_selected_aws_credentials():
  File "/usr/local/Cellar/gimme-aws-creds/2.7.2/libexec/lib/python3.11/site-packages/gimme_aws_creds/main.py", line 828, in iter_selected_aws_credentials
    aws_results = executor.map(generate_credentials_prepare_data, self.aws_selected_roles)
                                                                  ^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/Cellar/gimme-aws-creds/2.7.2/libexec/lib/python3.11/site-packages/gimme_aws_creds/main.py", line 714, in aws_selected_roles
    selected_roles = self._get_selected_roles(self.requested_roles, self.aws_roles)
                                                                    ^^^^^^^^^^^^^^
  File "/usr/local/Cellar/gimme-aws-creds/2.7.2/libexec/lib/python3.11/site-packages/gimme_aws_creds/main.py", line 705, in aws_roles
    self.saml_data['SAMLResponse'],
    ^^^^^^^^^^^^^^
  File "/usr/local/Cellar/gimme-aws-creds/2.7.2/libexec/lib/python3.11/site-packages/gimme_aws_creds/main.py", line 696, in saml_data
    self._cache['saml_data'] = saml_data = self.okta.get_saml_response(self.aws_app['links']['appLink'], self.auth_session)
                                                                       ^^^^^^^^^^^^
  File "/usr/local/Cellar/gimme-aws-creds/2.7.2/libexec/lib/python3.11/site-packages/gimme_aws_creds/main.py", line 689, in aws_app
    self._cache['aws_app'] = aws_app = self._get_selected_app(self.conf_dict.get('aws_appname'), self.aws_results)
                                                                                ^^^^^^^^^^^^^^^^
  File "/usr/local/Cellar/gimme-aws-creds/2.7.2/libexec/lib/python3.11/site-packages/gimme_aws_creds/main.py", line 635, in aws_results
    self.auth_session
  File "/usr/local/Cellar/gimme-aws-creds/2.7.2/libexec/lib/python3.11/site-packages/gimme_aws_creds/main.py", line 616, in auth_session
    auth_result = self.okta.auth_session(redirect_uri=self.conf_dict.get('app_url'), open_browser=open_browser)
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/Cellar/gimme-aws-creds/2.7.2/libexec/lib/python3.11/site-packages/gimme_aws_creds/okta_classic.py", line 160, in auth_session
    login_response = self.auth()
                     ^^^^^^^^^^^
  File "/usr/local/Cellar/gimme-aws-creds/2.7.2/libexec/lib/python3.11/site-packages/gimme_aws_creds/okta_classic.py", line 151, in auth
    while flow_state.get('apiResponse', {}).get('status') != 'SUCCESS':
          ^^^^^^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'get'

Possible Solution
I haven't gotten far enough into my investigation to have a clear implementation path, yet.
Steps to Reproduce (for bugs)

Start with an Okta Classic tenant integrated with AWS account federation
Set up Duo Universal Prompt with Okta per https://duo.com/docs/okta#duo-custom-idp-factor-in-okta-classic
Enroll user account with the Duo Universal Prompt factor in Okta
Configure gimme-aws-creds for the target Okta
Attempt to use gimme-aws-creds to gain AWS access

Context
Duo is sunsetting their Traditional prompt in March 2024, so we need to migrate completely to Universal Prompt by then. Many of our people utilize gimme-aws-creds in their daily workflows, so I'm interested in contributing support for it.
Your Environment

App Version used: gimme-aws-creds 2.7.2

Fix was merged today and will be included in next release

Thanks @epierce! Do you know when you plan to make the next release? I'm planning communications with my team about the traditional prompt being disabled soon and may or may not need to include "run gimme-aws-creds from the master branch until the next release" ;)

Probably late next week - I want to go through the recent issues and see if there's anything that can be cleared up quickly and then it needs to go through our change management procedures here.


Notifier shows planned tasks for past days

It happens because by some weird reason last_planned_date is not filled properly sometimes.
For instance, I'm planning tasks for 2023-07-13 and then seeing 2023-07-12 in my .dat file. Need to find out why.

Looks like it can happen because of parallel run of tasks planning & tasks notifying. Notifier reads todozer.dat (on its start or every iteration) and writes when a notification is being sent. So it can rewrite todozer.dat with old value of last_planned_date in case if planning happened at the same time.

Looks like we need to lock todozer.dat in such case.


LXC Feature: Add Support for Managing Firewall Policies for Proxmox

Description:
I propose the addition of a new resource, resource_firewall, to the Terraform provider for Proxmox Telmate/proxmox. This new resource will enable users to manage firewall policies for specific container (LXC) IDs within Proxmox. The implementation should allow the creation, reading, updating, and deletion of firewall rules directly from Terraform configurations.
PVE API
https://<domain_name>:8006/api2/json/nodes/pve/lxc/<ct_id>/firewall/rules
Actual output
{"data":[{"enable":1,"action":"auth-ips","pos":0,"digest":"9582a21d6e019c3c64018fc3b257325c80ea2f76","type":"group"}]}\n

Reformatted output
{
  "data": [
    {
      "enable": 1,
      "action": "auth-ips",
      "pos": 0,
      "digest": "9582a21d6e019c3c64018fc3b257325c80ea2f76",
      "type": "group"
    }
  ]
}

Example Resource
This resource add_lxc_firewall_group would add the firewall Security Group auth-ips to the LXC with ID 100
resource "proxmox_firewall" "add_lxc_firewall_group" {
  vmid = "100" # New LXC ID

  rule {
    action  = "auth-ips"
    enable  = true
    type    = "group"
    pos     = 1
    comment = ""
    digest  = null
  }

resource_firewall.go

There has been a running discussion about Container/VM's firewall for a while. Please see https://github.com/Telmate/terraform-provider-proxmox/issues/340


Use krel push instead of the legacy push-build.sh

What type of PR is this?
/kind cleanup
What this PR does / why we need it:
The script has been deprecated for a while and we should stick to use krel only.
cc @kubernetes/release-managers
Which issue(s) this PR fixes:
None
Special notes for your reviewer:
Requires https://github.com/kubernetes/release/pull/3768
/hold

/unhold
https://github.com/kubernetes/release/pull/3768 will merge

/approve

PTAL @mm4tt @tosi3k


Data-class should reflect changes in single frames in all_data attribute

Right now changing a single frame in the data class does not update the whole all_data array, they are two seperate entities. Implementation should be changed such that individual changes are reflected in all arrays.

I had written the code to reflect changes in the all_data array. How are you changing a single frame?

Turns out this is a problem only for the prescan bias subtraction since we are cropping the images, which doesn't work as a view into the data. So for this step only we need to overwrite all the arrays in the object. The current implementation should work for everything else so we will address it for this step.


Ruleset property descriptions are messed up

What happened?
A few descriptions of Ruleset's properties look to be applied out of place.
For. example name should be Name of the ruleset. (TF schema, TF docs) but it's Name of the compression algorithm to use. Available values: gzip, brotli, auto, default, none (Pulumi schema, Pulumi docs):

rules is wrong too:

Example
See above
Output of pulumi about
n/a
Additional context
No response
Contributing
Vote on this issue by adding a 👍 reaction.
To contribute a fix for this issue, leave a comment (and link to your pull request, if you've opened one already).

I digged into this a little bit. The name description seems to be defined perfectly well in the docs: https://github.com/cloudflare/terraform-provider-cloudflare/blob/bf146186813ead27c49e61df587d32a383d72360/docs/resources/ruleset.md?plain=1#L442
When we parse these docs in TF bridge, we parse name and its siblings as Attributes in our nomenclature, not Arguments.
Then, we make a wrong choise in this block: https://github.com/pulumi/pulumi-terraform-bridge/blob/master/pkg/tfgen/generate.go#L1855-L1884
A name argument exists somewhere down in the hierarchy of arguments (in rules/actionParameters/algorithms/name) and we take that name and return it as the top-level name's doc (wrong). We never get to iterating attributes, so the proper description is lost.
Now, the comment strongly suggests that the priority of arguments vs. attributes is by design. Does it mean that our parsing of arguments goes wrong?
cc @iwahbe Who touched it all in #1398

Related to https://github.com/pulumi/pulumi-terraform-bridge/issues/1789, CC @guineveresaenger

Fixed via https://github.com/pulumi/pulumi-terraform-bridge/pull/1882.


Fixed mask_rcnn_pennfudan.ipynb

Fixes #486
These changes were made:

[x] Colab Links
[x] Cells containing the same typo

@lgvaz I'm fixing the same on icedata. I'll make a PR soon for icedata.

Looks good!
Thanks for the PR once more ❤


Python client

First pass at Python 2.7 implementation of TreodeDB Client Library

There should be no need for multiple .gitignore files.  .gitignore inside sub folders are to add types that you don't want to ignore in the global .gitignore. The global .gitignore seems to already have .pyc .
Python2.7 should come with functools, although in the README it is suggested to install it.
On the other hand, I received an ImportError: No module named transaction. It is not clear what to install to get 'transaction' module. I tried pip install transaction and got me a zope.transaction module that does not work as expected.

BrainFlame, I removed the extra .gitignore files.  Thanks.
I removed functools from the README.  Thanks again.
The transaction module is part of the client library.  I think the issue is that you cannot run the tests directly from the tests directory because they cannot find the modules in the parent folder.  That's a Python issue I don't know how to get around other than just run
python -m unittest discover
instead.  Any better ideas?

Found the issue. Please rename the file Transaction.py to transaction.py (all lowercase).

Done.  I had just renamed it locally before.

Please rebase and squash your changes from the latest master branch.
Add a copyright header to all the .py files. You can find the text in the .scala files; just convert it to Python's comment format.


merging in changes for support to change labels at runtime for heat in financial models

We have decided to go with cmod_singleonwer_heat and cmod_cashloan_heat for the release. Please disregard this pull request.


Third person smoothing

how do i disable the aim smoothing when in third person?

nvm found it for anyone wondering it was :
static auto smooth = interfaces->cvar->findVar("cam_ideallag");
smooth->setValue(0);


Sanity-check tombstone eviction

These asserts fail if I revert https://github.com/tigerbeetledb/tigerbeetle/pull/373, so they should catch future regressions.

The tricky part of this is that when usage==.general it's possible (albeit very unlikely) for a tombstone to reach level_max-1 and then a compaction removes all entries on level_max, leaving the tombstone present on the new level_max.
Approaches that didn't work:

Counting the max level ever occupied - can regress when loading a manifest after a crash.
Only asserting in secondary indexes  - this is correct, but not capable of catching #373


how to get the chapter's page when is horizontal

@risechen Do you mean to say Chapter's Page or Page Number?

No reply.. Closing issue


Update README.md #6584

Summary
Describe your changes here.
Fixes #Issue_Number, dotnet/docs#Issue_Number or dotnet/dotnet-api-docs#Issue_Number (if available)
#6584
#190

@GerardoRamosCol What is the purpose of this PR?

@gewarren
So sorry, I fork this repo and create the PR here by mistake.


Fixed several clippy warnings

This PR fixes some clippy warnings, in order to reduce the clippy output noise, so only relevant lints would be visible.

Thanks a lot @ZapAnton :+1:


ROX-25249: Create feature flag client for go components

Description

Create a re-useable component across RHACS go components to synchronize feature flags from a gRPC provider.
User-facing documentation

[ ] CHANGELOG is updated OR update is not needed
[ ] documentation PR is created and is linked above OR is not needed

Testing

[ ] inspected CI results

Automated testing

[ ] added unit tests
[ ] added e2e tests
[ ] added regression tests
[ ] added compatibility tests
[ ] modified existing tests

How I validated my change

Integrated in other components and

Work deprioritized.


Cross-Platform?

There's a number of unix-only functions called in this repo.  Is this intended to be just for linux, or for all platforms?

Are there any outside of backingstore.{cpp,hpp}?
I would like everything else to be relatively portable, but I don't care if
backingstore is non-portable.
Best,
Rob
On Sun, Dec 13, 2015 at 12:12 AM, Austin Borger<EMAIL_ADDRESS>wrote:

There's a number of unix-only functions called in this repo. Is this
intended to be just for linux, or for all platforms?
—
Reply to this email directly or view it on GitHub
https://github.com/oscarlab/Be-Tree/issues/1.

--
Calendar info:
https://www.google.com/calendar/embed?src=rob%40cs.stonybrook.edu

test.cpp requires unistd, but that's the unit test.

If you need to make test.cpp portable for you to work, go ahead.
And if you need to write a Windows or MacOS or FreeBSD version of
backingstore, go ahead.  (Or if you can make it portable via some simple
tweaks that don't make the code ugly).
But I consider those relatively low priority tasks unless those issues are
preventing you from getting work done.
Best,
Rob
On Sun, Dec 13, 2015 at 12:19 AM, Austin Borger<EMAIL_ADDRESS>wrote:

test.cpp requires unistd, but that's the unit test.
—
Reply to this email directly or view it on GitHub
https://github.com/oscarlab/Be-Tree/issues/1#issuecomment-164228062.

--
Calendar info:
https://www.google.com/calendar/embed?src=rob%40cs.stonybrook.edu


pyelectroluxconnect.Session.LoginError: Unauthorized (401) when using "frigidaire" region

I use another repository that has this as a dependency and started getting errors logging in a few hours ago. I noticed the recent commit 5605321 for APAC region, but I have a frigidaire product (so region="frigidaire"). I suspect the "frigidaire" endpoint may also need to be updated upstream (here) - I tried looking for info on this but wasn't able to get anywhere.
Steps to recreate: I updated my local pyelectroluxconnect to 0.3.17 and did the following:
Python 3.11.3 (tags/v3.11.3:f3909b8, Apr  4 2023, 23:49:59) [MSC v.1934 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> username =<EMAIL_ADDRESS>>>> password = "hopeitsagoodone"
>>> import pyelectroluxconnect
>>> ses = pyelectroluxconnect.Session(username, password, region="frigidaire")
>>> ses.login()
Getting new auth token
Unauthorized (401)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:\Python311\Lib\site-packages\pyelectroluxconnect\Session.py", line 1061, in login
    self._createToken()
  File "C:\Python311\Lib\site-packages\pyelectroluxconnect\Session.py", line 176, in _createToken
    raise LoginError(f'{err.message} ({err.status_code})') from None
pyelectroluxconnect.Session.LoginError: Unauthorized (401)

Related issue in other repo is https://github.com/mauro-midolo/homeassistant_electrolux_status/issues/115

endpoints updated in 0.3.18

Thank you so much. Result has changed but not resolved: I now receive a "403" / Forbidden error. I wonder if they are shuffling something else around on their end. Please advise if I can help with any further/different testing or research; perhaps it's just the frigidaire region. I would consider resetting my password etc. if you request.
I would also be happy to open a separate issue if you prefer, considering that the outcome is now "403" and not "401". Thank you again.
>>> ses.login()
Getting new auth token
Invalid API response: Forbidden (403)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:\Python311\Lib\site-packages\pyelectroluxconnect\Session.py", line 1061, in login
    self._createToken()
  File "C:\Python311\Lib\site-packages\pyelectroluxconnect\Session.py", line 178, in _createToken
    raise ResponseError(err.status_code, err.message) from None
pyelectroluxconnect.Session.ResponseError: Invalid API response: Forbidden (403)

What mobile app are You use to control this appliance?

Apart from pyelectroluxconnect (as part of "homeassistant_electrolux_status" linked earlier), I use the Frigidaire android app (v<IP_ADDRESS>) where I can currently see the device.
I imagine it will not interest you, but in case it helps reveal anything of interest, the only device I use with it is a Frigidaire dehumidifier FGAC5044W1, PNC<PHONE_NUMBER> on FW v3.0.0_argo

Please try to login with custom customApiBrand attribute:
ses = pyelectroluxconnect.Session(username, password, region="frigidaire", customApiBrand="Electrolux")

or
ses = pyelectroluxconnect.Session(username, password, region="frigidaire", customApiBrand="Electrolux-NA")

Thank you. I still got 403 error using each of these (I tried both within the same session); here is an excerpt:
>>> ses = pyelectroluxconnect.Session(username, password, region="frigidaire", customApiBrand="Electrolux")
>>> ses.login()
Getting new auth token
Invalid API response: Forbidden (403)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:\Python311\Lib\site-packages\pyelectroluxconnect\Session.py", line 1061, in login
    self._createToken()
  File "C:\Python311\Lib\site-packages\pyelectroluxconnect\Session.py", line 178, in _createToken
    raise ResponseError(err.status_code, err.message) from None
pyelectroluxconnect.Session.ResponseError: Invalid API response: Forbidden (403)
>>> ses = pyelectroluxconnect.Session(username, password, region="frigidaire", customApiBrand="Electrolux-NA")
>>> ses.login()
Getting new auth token
Invalid API response: Forbidden (403)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:\Python311\Lib\site-packages\pyelectroluxconnect\Session.py", line 1061, in login
    self._createToken()
  File "C:\Python311\Lib\site-packages\pyelectroluxconnect\Session.py", line 178, in _createToken
    raise ResponseError(err.status_code, err.message) from None
pyelectroluxconnect.Session.ResponseError: Invalid API response: Forbidden (403)

Fixed in 0.3.19


Cant change color by class with CSS / Sass

Hi, I can't change color by class, but i can change size. I'm use sass and follow the rule. icon loaded but can't change the color (I use icon as html data-icon).
I hope i can change the color again
Thank you,

I'm sorry i have a bad styling, * selector have a color dark, and .iconify cant change it. Problem fixed now, just delete color dark on * selector.


Update typo "From setup" to "Form setup"

:white_check_mark: Organization membership check passed
Requester is not a member of the MicrosoftDocs organization.


Bitcoin / Sats representation

if we are using sats we need a symbol for sats
Using Bitcoin’s B for both sats and bitcoin representation is confusing
Right now looking at the current UI this is 1000 Bitcoin
@pratyakxx

should be B1,000 sats

https://xd.adobe.com/view/489bcd8a-f669-4ecb-9d11-bd705d75a996-1dc8/screen/77249b56-18c0-454f-a50e-a4636969cbb3/

Showing the same as before.

Verified this issue on keeper app v 1.1.8(274)


Upgrade to bevy 0.15

This is blocked by bevy_ggrs, but I thought I might get the ball rolling somewhat to speed up the overall process. I put temporary deps to my fork of bevy_ggrs, which I used for the upgrade PR.
Like I said in my bevy_ggrs PR, I'm not a 100% certain I got it right. Everything compiles, tests pass, clippy is happy and I got the hello example to work just fine, which gives me a lot of hope, but I'm still not confident. Please review carefully.
Hope this helps with the upgrade.

I cherry-picked the web-sys commit to #473 and updated all other dependencies except bevy and bevy_ggrs. Feel free to either rebase or merge main into this one.

bevy_ggrs 0.17 is out now, so this is unblocked :)

Did some rebasing and got it to build, will rely on the pipe to catch problems.


We should only parse duration if it has been provided

Fixes https://github.com/remind101/empire/issues/864

These tests are passing locally, seems to be an unstable test?

Yeah, I've seen that test fail occasionally. Just restarted it.
Otherwise, looks good :+1:


Initializing Libre 2

Is there a way to initialize a new Libre 2 EU sensor with this app? Or does it always have to be initialized with the official libre app?

The A1 “subcommand” to activate a Libre 2 sensor is 1B.
While the A0 NFC custom command to activate a Libre 1 requires to append an UInt32 password valid for all the sensors, the 4-bytes to append to the Libre 2 activation command are encoded taking into account the sensor NFC unique identifier according the algorithm I am outlining in https://github.com/gui-dos/DiaBLE/blob/62c78f6c110eb4ec19db1ca8b4075428b273daa3/DiaBLE Playground.swiftpm/NFC.swift#L111-L122

I myself have always started the sensor with the LibreLink app and then connected it to GD.
After I had in DiaBox already funny results when starting (sensor 1970 started or so), I have not implemented the process itself and also never tried again to start the sensor with another app than LibreLink.
I thought, then at least the sensor is also recorded there as started (last serial numbers are displayed there). If in case of complaint is ever asked about it.
Many greetings
Reimar


MacOS Run “brew install scrcpy” error

Mac OS version ：10.15 beta
run brew install scrcpy
Output：
Updating Homebrew...
==> Auto-updated Homebrew!
Updated 1 tap (homebrew/core).
==> Updated Formulae
janet
Warning: You are using macOS 10.15.
We do not provide support for this pre-release version.
You will encounter build failures with some formulae.
Please create pull requests instead of asking for help on Homebrew's GitHub,
Discourse, Twitter or IRC. You are responsible for resolving any issues you
experience while you are running this pre-release version.
Error: The following formula
[#<Dependency: "python" []>, #<Options: []>]
cannot be installed as binary package and must be built from source.
Install the Command Line Tools:
xcode-select --install
and if run “xcode-select --install”
Output：
xcode-select: error: command line tools are already installed, use "Software Update" to install updates

Warning: You are using macOS 10.15.
We do not provide support for this pre-release version.

This is a homebrew issue (and the problem is explained).

scrcpy for macOS


untyped-type-import doesn't seem to work

Flow version: 0.97.0
Expected behavior
The untyped-type-import lint should not warn.
Actual behavior
Importing a type from an untyped module makes it any and is not safe!
Did you mean to add // @flow to the top of my-internal-module?
(untyped-type-import)

How to reproduce
.flowconfig
[lints]
untyped-type-import=error

[options]
module.system.node.resolve_dirname=node_modules

Code
test.js
import type { MyType } from 'my-internal-module';

node_modules/my-internal-module
my-internal-module
└── dist
    ├── index.js.flow
    └── modules
        └── test.js

index.js.flow
export { MyType } from './modules/test';

test.js
export type MyType = {
  // ...
};

Am I doing something wrong? Flow is able to pick up the types with flow type-at-pos.
Would be happy to assist further with debugging and/or submit a PR with some guidance :smile:

+1
I have the same problem.
After I upgrade to the last version of Flow (0.141.0) all my third-party library throw an error
Flow: Importing a type from an untyped module makes it anyand is not safe! Did you mean to add// @flowto the top ofredux-observable?
There is a way to fix it?
my flowconfig:
[ignore]
./test/nightwatch/reports/**
./scripts/**
.*/node_modules/redux-form/lib/index.js.flow

[include]
./packages/common/components/src
./packages/common/function/src
./packages/common/storeComponents/src
./packages/common/types/src
./packages/gipsyApp/src
./packages/initialization/src
./packages/media/src
./packages/setting/src

[libs]
./flow-typed

[lints]

[options]
module.name_mapper='^@domain' ->'<PROJECT_ROOT>/packages/gipsyApp/src/domain/'
esproposal.optional_chaining=enable
esproposal.export_star_as=enable
types_first=false
[strict]

[untyped]
<PROJECT_ROOT>/node_modules/react-select/*

+1
I have the same problem.
After I upgrade to the last version of Flow (0.141.0) all my third-party library throw an error
Flow: Importing a type from an untyped module makes it anyand is not safe! Did you mean to add// @flowto the top ofredux-observable?
There is a way to fix it?
my flowconfig:
[ignore]
./test/nightwatch/reports/**
./scripts/**
.*/node_modules/redux-form/lib/index.js.flow

[include]
./packages/common/components/src
./packages/common/function/src
./packages/common/storeComponents/src
./packages/common/types/src
./packages/gipsyApp/src
./packages/initialization/src
./packages/media/src
./packages/setting/src

[libs]
./flow-typed

[lints]

[options]
module.name_mapper='^@domain' ->'<PROJECT_ROOT>/packages/gipsyApp/src/domain/'
esproposal.optional_chaining=enable
esproposal.export_star_as=enable
types_first=false
[strict]

[untyped]
<PROJECT_ROOT>/node_modules/react-select/*

Anyone found a fix for this?

Can you use flow find-module MyModuleName path/to/file/that/imports/it.js to find out if the modules are being resolved correctly?
Also, if you are actually trying to import a type from an untyped module, it's going to error as that is nonsensical.


Don't create redirection topic for merged threads

If you merge a thread, the forum creates a redirection thread. Is this necessary? Previously it did not. Example:

Before I did the merge we had two threads, about the same issue. Now we still have two threads: one the redirection notice, and one the actual thread, under it. So the topic listing is just as cluttered as before.

Is this still applicable after the forum revamp in 2021?

It is. A topic merge still results in a leftover redirection topic (referred to as a "merged stub topic" in the Discourse settings).
I don't see any setting to disable this behavior. However, the forum does automatically delete the redirection topic some time after the merge. That duration is configurable via the delete merged stub topics after days forum setting. I have reduced the setting to the minimum of 1 day. It is an integer value so setting it to a fraction of a day is not possible (it truncates to 0), and setting it to 0 disables deletion.


fix(pencil): update evm listeners for hardhat 2.11.0

Description
Fixed vm.on errors when running smock in a hardhat 2.11.0 environment
Metadata

Fixes #153

I believe the ethereumjs dependencies have to be upgraded to be on sync with these https://github.com/NomicFoundation/hardhat/blob/master/packages/hardhat-core/package.json#L102-L111

Any update on this?

It would be really nice if you could merge this pull request

@derekbar90 Latest commit (https://github.com/defi-wonderland/smock/commit/b71cfd118a2a9579517769c0c31abede7d83ca71) should fix the issues with hardhat 2.11.0!

This is fixed in version 2.3.0 of smock! Thanks @derekbar90 for being the first to point it out.


Modify: TTKN.CNKIExpress version 0.1.15

[x] Have you signed the Contributor License Agreement?
[x] Have you checked that there aren't other open pull requests for the same manifest update/change?

[ ] Have you tested your manifest locally with winget install --manifest <path>?
[ ] Does your manifest conform to the 1.0 schema?

Note: <path> is the name of the directory containing the manifest you're submitting.

❯ winget validate .\t\TTKN\CNKIExpress\0.1.15\
清单验证成功，但出现警告。
Manifest Warning: Field usage requires verified publishers. Field: Agreements

What does this mean?
Microsoft Reviewers: Open in CodeFlow

/azp run


LIBRARY_SEARCH_PATHS[sdk=iphonesimulator*][arch=x86_64] doesn't work

When I supply [arch=x86_64] or [arch=arm64] to my LIBRARY_SEARCH_PATHS envvar, it doesn't work and the envvar is not populated correctly. When I change it to [arch=*] or remove that condition, it works. [sdk=...] doesn't have this problem.
This seems to be a trend:

https://developer.apple.com/forums/thread/699984
https://stackoverflow.com/questions/70999932/architecture-specific-build-settings-in-xcode-13

FWIW, I printed out my build settings using xcodebuild ... -showBuildSettings and confirmed that the envvar doesn't work with [arch=x86_64] or [arch=arm64].
Has anyone seen this before? Thanks!

Yes, same problem, had to fall back to good ol' trusty cargo-lipo


Compatibility with python 3.11x

Hello,
According to the PyPi document the latest python version supported by xhtml2pdf 0.2.9 is python 3.10.
Does it also supports Python 3.11x?
If no, is there any plan of supporting it?

Thank you @timoludwig  for the confirmation


New example scene: Score

Simple example that uses Variables, Events and Event Listeners. Audio files are available here  and are CC0 licensed.
This PR is related to #79

Thanks for submitting this PR!
Tried to open this locally, but the scene seems to be broken. Not sure if I'm doing something wrong here, but could you take a look at it again and see if you don't have any local changes not pushed?
I'm also getting errors for not having platform BJM (probably due to that you have a platform installed that I don't). We should not exclude platforms explicitly. Check out other .asmdef files in the project.
Would also like to know more about the Conditions that you have committed. What is the purpose of these and how do you use them and work with them? Is it something you would like to be added to the library or just to the example?

Closing PR due to inactivity.


Implement TextInput widget with at least the same options as available in the schema

[ ] Implement Form
[ ] Implement TextInput
[ ] Pass child values to onSubmit action payload
[ ] Support action chaining