Investigate GRPC-Web/JSON support in Ambassador

A number of users have asked for GRPC-Web/JSON transcoder support in Ambassador. We need to know how to integrate this into Ambassador before we proceed.
CoS

[ ] A design for how the mapping feature would work has been agreed upon by the team.
[ ] A prototype that supports the agreed design has been produced.
[ ] A plan for next steps / release has been created or decided.

See issue #411

Is this targeted for a particular release? Would be good to have this.

For what it's worth, I'm very interested to see Ambassador support this as well. I'm sure you're already aware of the support that's in envoy already. Not sure how hard it would be to have Ambassador support a configuration similar to this one. Is it just an issue of wrapping envoy configuration correctly or does it go deeper than that?

@nigeltiany you can build ambassador from sources and replace envoy.j2 with custom one, like here https://github.com/slamdev/catalog/tree/master/infra/ambassador/deploy
key parts are: to add grpc_web filter and grpc and cors mappings for the service

I have built ambassador from that envoy.j2 file and it works. I didn't even have to configure cors mappings. Thank you @slamdev 👈 True hero right here.
Now, submitting a PR is easy because it's just a single new object with one line of code but how to write the end-to-end test. Does any of the maintainers @ambassador want to look at this fix?

@nigeltiany Would love to, although be warned that we've changed things up quite a bit in the (imminent) 0.50 ... so it's possible that your change won't just work in the next release. The current code is on the release/0.50.0 branch, if you want to take a look.

See PR #1201, thank you to @rotemtam.

gRPC-Web is supported in 0.52.0.

I can see that support for grpc-web transcoder has been implemented but what about grpc-json transcoder ? I am unable to find ambassador documentation regarding this.
For more info, have a look at this : https://www.envoyproxy.io/docs/envoy/latest/configuration/http_filters/grpc_json_transcoder_filter

Not yet. There's an open issue for this I believe @shubhamranjan if you want to contribute a PR!

@richarddli I would love to contribute. Please lead me to the issue (issue link) for more insights and discussions. I was unable to find the issue.

Hello, I am looking for grpc-json transcoder support as well. Only found a closed issue #254 and this one. May I know the process of this feature?

Hi, is there any update on the grpc-json transcoder support?


Replace redfish discover method

redfish.discover_ssdp method is replaced with a simple login call to the redfish service. If the RetriesExhaustedError exception is raised, we can infer that the redfish service isn't present on the system.
This is done because the redfish.discover_ssdp method finds all the redfish services on the same network which is not what we want.
Fixes #61.

Unit tests failing on GH CI for test coverage reasons but doesn't fail on my local :confused:

Unit tests failing on GH CI for test coverage reasons but doesn't fail on my local 😕

The failing is because of the coverage missing.

Added unit tests for new function.


Remove unnecessary calls to Varnish

Given our current architecture, we can go by touching metadata instead of doing a full call to Varnish. This will work for any table-related invalidation.
cc/ @zenitraM @juanignaciosl

@gfiorav could you write down a summary with what are you going to do about this, please?

+1 to ^^^

Hey @juanignaciosl @xavijam sorry for the lazzy description. I'll do my best:
We're trying to implement Varnish invalidation with tags in the backend. To do so we need to change the invalidation sentences to use other than current regex. However, it has come to our attention that some of the invalidation calls currently present in the code are redundant.
More precisely, it's table-related cache invalidation that is redundant. We already have a demon called TIS that is fired by database triggers every time the metadata table is updated. So, instead of calling an invalidation, we can call to update cdb metadata and invalidation will happen by itself (we prefer RAILS-fired invalidation be kept at the minimum).
Hence, we split the Varnish tag-invalidation preparation process into two parts:

Remove unnecessary invalidations (this ticket)
Change necessary invalidation to use tags (future ticket)

Also ensure that everything that the Rails generates with an X-Cache-Channel also has proper tags (Surrogate-Key).


Pull request templates

What is the problem this feature would solve?
First time developers being unsure of guidelines
What is the feature you are proposing to solve the problem?
Adding templates would ensure they are more informed when making changes.
Should ensure that they:

Use a new branch for each PR.
Include an rfc if changes are opinionated.
Follow code style guidelines

What alternatives have you considered?
No response

https://github.com/neowiremod/neowire/commit/9955cd3da5c74e8089f65d72c86843f89dd4e0b9


Add attr to allow conf to restart immediate

Adds an attribute (conf_restart_immediate) to switch a config update from a delayed restart to an immediate restart.  This is useful when the cookbook is part of a long chef run and you want the NTP service to start working the way you want before the chef run is over.

Merged.


Unable to use Library with Latest Android Studio ( Android Studio Ladybug | 2024.2.1 ) #2

We are unable to use this library with latest Android Studio Library ( Android Studio Ladybug | 2024.2.1 )
Can someone look into this at the earliest ?.

Caused by: org.gradle.internal.resolve.ArtifactNotFoundException: Could not find com.amulyakhare.textdrawable-1.0.1.aar (com.amulyakhare:com.amulyakhare.textdrawable:1.0.1).

change 'com.amulyakhare:com.amulyakhare.textdrawable:1.0.1' to 'io.github.mores:textdrawable:1.0.1'

@mores  Thanks it works now.


test(openshift): add openshift 4.16 to the test matrix

Which problem does the PR fix?
This PR adds OpenShift 4.16 to the tests.
Onced it's merged, we should also add this new version to the doc as supported version.
What's in this PR?
OpenShift 4.16 added to the test matrix
Checklist
Please make sure to follow our Contributing Guide.

Before opening the PR:

[ ] In the repo's root dir, run make go.update-golden-only.
[ ] There is no other open pull request for the same update/change.
[ ] Tests for charts are added (if needed).
[ ] In-repo documentation are updated (if needed).

After opening the PR:

[ ] Did you sign our CLA (Contributor License Agreement)? It will show once you open the PR.
[ ] Did all checks/tests pass in the PR?

To-Do

[ ] Update the official doc to add this version to the supported versions (also double check with PMs)

Merging main into this and changing the secret name for the CI to work with the updates.  if this passes CI, then I think we can merge.


Handle all hydration mode in QueryResultDynamicReturnTypeExtension

Closes #403

Hi @arnaud-lb, I'm trying to improve https://github.com/phpstan/phpstan-doctrine/pull/232 to supports all hydration modes.
Do you mind taking a look ?
I dunno if we can support everything but maybe some of my ideas are going in the right direction :)

Hi @greg0ire, maybe you can help me on this.
I'm not familiar with all the hydratation mode.
Do you agree with the expected types I wrote in the tests ?

Not super familiar either, but nothing strikes me as incorrect in what you wrote.

Not super familiar either, but nothing strikes me as incorrect in what you wrote.

Thanks, if you have a suggestion about who I should/could ping ; I'm open to it.
@ondrejmirtes I would say, this is ready to be reviewed.

Yes, that's fine. I'm gonna merge this and test on real-world projects before releasing it. Thanks.

I think it's mostly fine, but it can lead to new errors. Previously where there was mixed now there's a more specific type. Which means that if you're on level 8, you can get a new error like:
should return array<array{x: string, y: string|null, z: string|null, aa: int|null}> but returns list<array>.

This is happening for HYDRATE_SCALAR when selecting a few specific columns in SELECT.

But on a different project it leads to 108 new errors.
So there are situations where it's wrong.
Some examples:
		$query = $this->entityManager->createQueryBuilder()
			->select('IDENTITY(n.related)')
			->from(DistrictNeighbour::class, 'n')
			->andWhere('n.center = ?', $districtId)
			->getQuery();

		return array_map(static fn (array $row): UuidInterface => $row['related'], $query->getArrayResult());

leading to: Offset 'related' does not exist on array{1: string}.
Or:
$result = $this->entityManager->createQueryBuilder()
			->select('d.name, d.id')
			->from(Destination::class, 'd')
			->addOrderBy('d.name')
			->getQuery()
			->getArrayResult();

		$destinations = [];
		foreach ($result as $item) {
			$destinations[(string) $item['id']->toString()] = (string) $item['name'];
		}

leading to: Cannot call method toString() on array.
Or:
$eventsCount = $this->entityManager->createQueryBuilder()
			->select('COUNT(cle.id)')
			->from(CountryLocalityEvent::class, 'cle')
			->andWhere('cle.user = ?', $user)
			->andWhere('cle.expirationTime > ?', DateTimeProvider::now())
			->getQuery()
			->getSingleScalarResult();

		return $eventsCount > 0;

leading to: Comparison operation ">" between list<array{1: int<0, max>|numeric-string}> and 0 results in an error.
Because of these problems, I'm gonna revert it now. Please send a new PR with improvements. Thank you.

But on a different project it leads to 108 new errors.
So there are situations where it's wrong.

Thanks for the report.

		$query = $this->entityManager->createQueryBuilder()
			->select('IDENTITY(n.related)')
			->from(DistrictNeighbour::class, 'n')
			->andWhere('n.center = ?', $districtId)
			->getQuery();

		return array_map(static fn (array $row): UuidInterface => $row['related'], $query->getArrayResult());

leading to: Offset 'related' does not exist on array{1: string}.

Works fine with IDENTITY(n.related) as related.
Can you confirm your code is used/works fine ?
If so, this is a bug with https://github.com/phpstan/phpstan-doctrine/blob/1.3.x/tests/Type/Doctrine/Query/QueryResultTypeWalkerTest.php#L1394-L1419

$result = $this->entityManager->createQueryBuilder()
			->select('d.name, d.id')
			->from(Destination::class, 'd')
			->addOrderBy('d.name')
			->getQuery()
			->getArrayResult();

		$destinations = [];
		foreach ($result as $item) {
			$destinations[(string) $item['id']->toString()] = (string) $item['name'];
		}

leading to: Cannot call method toString() on array.

What the value you have inside the array key id @ondrejmirtes ?
I thought all the object were changed to array with getArrayResult but maybe some object are not.

$eventsCount = $this->entityManager->createQueryBuilder()
			->select('COUNT(cle.id)')
			->from(CountryLocalityEvent::class, 'cle')
			->andWhere('cle.user = ?', $user)
			->andWhere('cle.expirationTime > ?', DateTimeProvider::now())
			->getQuery()
			->getSingleScalarResult();

		return $eventsCount > 0;

leading to: Comparison operation ">" between list<array{1: int<0, max>|numeric-string}> and 0 results in an error.

Indeed, I'll fix this.


How to use with import in react?

Hey @ccprog — I'm trying to use this in a react project/nextjs but when I import and use new Pathfit(... it tells me that Pathfit isn't a constructor, I'm importing as so:
import Pathfit from "pathfit";

after installing from npm, any ideas would be appreciated!

Ominously, If you search Stackoverflow for [nextjs] TypeError:  is not a constructor, you get a lot of unanswered questions...
I think the most probable reason is you are importing in ECMA script module syntax, but the module is written in CommonJS syntax. Node.js sometimes needs a bit of guidance to handle these mixed format situations. As a short term remedy, you could try to include https://www.npmjs.com/package/next-transpile-modules with your nextjs configuration. It transpiles all modules just the way the Babel configuration expects them.
I'll look further into whether I can help from my side.

https://github.com/ccprog/pathfit/commit/2a3f2517cd3b675a3d6ba9c2d24ab2dc64cd863a adds a hint to package.json about the module format. Not sure that will help, but you can try to update to the 1.0.4 version.

@ccprog thanks for your help, unfortunately it's still not working but I'm going to have a gander today and will update here when I've eventually figured it out :)

hey @ccprog — I have found a very simple solution, I changed the rollup config to output 'umd' instead of 'cjs' or 'iife' and that output a file which I can import into react like how I wanted, I didn't want to fork just for this change but if you wanted to make that small update you know how :)


Spring Boot build is run on larger runners

Let's see what it does 🙂: https://github.com/gradle/gradle-enterprise-oss-projects/actions/runs/6102234752


Support Zstandard compressed files

Add support for Zstandard compressed files: https://facebook.github.io/zstd/

I am trying to load a dataset using Hugging Face Datasets load_dataset method. I am getting the value error as show below. Can someone help with this? I am using Windows laptop and Google Colab notebook.
!pip install zstandard
from datasets import load_dataset

lds = load_dataset(
    "json",
    data_files="https://the-eye.eu/public/AI/pile_preliminary_components/FreeLaw_Opinions.jsonl.zst",
    split="train",
    streaming=True,
)

WARNING:datasets.builder:Using custom data configuration default-a1d9e8eaedd958cd
---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
[<ipython-input-12-5b4fdcb8e6d5>](https://localhost:8080/#) in <module>
      6 )
      7
----> 8 next(iter(law_dataset_streamed))

17 frames
[/usr/local/lib/python3.8/dist-packages/fsspec/core.py](https://localhost:8080/#) in get_compression(urlpath, compression)
    485         compression = infer_compression(urlpath)
    486     if compression is not None and compression not in compr:
--> 487         raise ValueError("Compression type %s not supported" % compression)
    488     return compression
    489

ValueError: Compression type zstd not supported

I just tried on google colab and this works:
!pip install zstandard
!pip install datasets
from datasets import load_dataset

lds = load_dataset(
    "json",
    data_files="https://the-eye.eu/public/AI/pile_preliminary_components/FreeLaw_Opinions.jsonl.zst",
    split="train",
    streaming=True,
)
next(iter(lds))

Can you check that you have a correct installation of zstandard ?

@lhoestq please note this is a duplicate of:

#5388

Oh thanks I missed that one !

I just tried on google colab and this works:
!pip install zstandard
!pip install datasets
from datasets import load_dataset

lds = load_dataset(
    "json",
    data_files="https://the-eye.eu/public/AI/pile_preliminary_components/FreeLaw_Opinions.jsonl.zst",
    split="train",
    streaming=True,
)
next(iter(lds))

Can you check that you have a correct installation of zstandard ?

I was downloading datasets first then was doing zstandard installation and that was causing the issue. This was highlighted by the Hugging Face staff and that helped. Now the issue is resolved. Thank you.


Update home.html

Why it failed?

I don't think the partial is the right place for this documentation. This should probably be either in the web driver manager docs or in the faq


How do I delete a DEV drive?

Unable to delete a DEV drive, no instructions listed. Need to recover disk space.
⚠ Do not edit this section. It is required for learn.microsoft.com ➟ GitHub issue linking.

ID: bfda7965-bc34-ab88-fdc9-efef4a5d8a9e
Version Independent ID: bfda7965-bc34-ab88-fdc9-efef4a5d8a9e
Content: Set up a Dev Drive on Windows 11
Content Source: hub/dev-drive/index.md
Product: dev-environment
Technology: windows-devhome
GitHub Login: @mattwojo
Microsoft Alias: mattwoj

Thanks for contributing this issue @charliebear20182! Just added a section on how to delete a Dev Drive in https://github.com/MicrosoftDocs/windows-dev-docs-pr/pull/3725. Here's the link: https://learn.microsoft.com/en-us/windows/dev-drive/#how-to-delete-a-dev-drive

I followed official document https://learn.microsoft.com/en-us/windows/dev-drive/#how-to-delete-a-dev-drive
while it only detele partition table but the vhdx still exists and occupied by System.
You should start windows disk manager and senect deattach VHDX, thus you can delete that disk file

Disk Management -> Detach VHD
You should now be able to delete the file

The documentation is insufficient. By following the documentation the partition that is stored in the VHD file will be deleted, but the VHD file itself will still be attached.
In order to detach the VHD, open the Disk Management tool (diskmgmt.msc).
Search the disk in the list (tipp: VHDs are in cyan color), then right-click and select Detach VHD

After this you should be able to delete/backup/rename/move the *.vhd or *.vhdx file.


TextOverflow property throwing exception

Adding overflow: TextOverflow.ellipsis to Text() object throws this exception.
Here's the error from the runtime:
flutter: ══╡ EXCEPTION CAUGHT BY SCHEDULER LIBRARY ╞═════════════════════════════════════════════════════════
flutter: The following assertion was thrown during a scheduler callback:
flutter: Updated layout information required for RenderIndexedSemantics#a7892 NEEDS-LAYOUT to calculate
flutter: semantics.
flutter: 'package:flutter/src/rendering/object.dart':
flutter: Failed assertion: line 2647 pos 12: '!_needsLayout'
flutter:
flutter: Either the assertion indicates an error in the framework itself, or we should provide substantially
flutter: more information in this error message to help you determine and fix the underlying cause.
flutter: In either case, please report this assertion by filing a bug on GitHub:
flutter:   https://github.com/flutter/flutter/issues/new?template=BUG.md
flutter:
flutter: When the exception was thrown, this was the stack:
flutter: #2      RenderObject._getSemanticsForParent (package:flutter/src/rendering/object.dart:2647:12)
flutter: #3      RenderObject._getSemanticsForParent. (package:flutter/src/rendering/object.dart:2669:61)
flutter: #4      Iterable.forEach (dart:core/iterable.dart:283:30)
flutter: #5      RenderSliverVariableSizeBoxAdaptor.visitChildren (package:flutter_staggered_grid_view/src/rendering/sliver_variable_size_box_adaptor.dart:294:29)
flutter: #6      RenderObject.visitChildrenForSemantics (package:flutter/src/rendering/object.dart:2754:5)
flutter: #7      RenderObject._getSemanticsForParent (package:flutter/src/rendering/object.dart:2664:5)
flutter: #8      RenderObject._getSemanticsForParent. (package:flutter/src/rendering/object.dart:2669:61)
flutter: #9      RenderObjectWithChildMixin.visitChildren (package:flutter/src/rendering/object.dart:3042:14)
flutter: #10     RenderObject.visitChildrenForSemantics (package:flutter/src/rendering/object.dart:2754:5)
flutter: #11     RenderObject._getSemanticsForParent (package:flutter/src/rendering/object.dart:2664:5)
flutter: #12     RenderObject._getSemanticsForParent. (package:flutter/src/rendering/object.dart:2669:61)
flutter: #13     Iterable.forEach (dart:core/iterable.dart:283:30)
flutter: #14     RenderViewportBase.visitChildrenForSemantics (package:flutter/src/rendering/viewport.dart:219:10)
flutter: #15     RenderObject._getSemanticsForParent (package:flutter/src/rendering/object.dart:2664:5)
flutter: #16     RenderObject._getSemanticsForParent. (package:flutter/src/rendering/object.dart:2669:61)
flutter: #17     RenderIgnorePointer.visitChildrenForSemantics (package:flutter/src/rendering/proxy_box.dart:3127:14)
flutter: #18     RenderObject._getSemanticsForParent (package:flutter/src/rendering/object.dart:2664:5)
flutter: #19     RenderObject._getSemanticsForParent. (package:flutter/src/rendering/object.dart:2669:61)
flutter: #20     RenderObjectWithChildMixin.visitChildren (package:flutter/src/rendering/object.dart:3042:14)
flutter: #21     RenderObject.visitChildrenForSemantics (package:flutter/src/rendering/object.dart:2754:5)
flutter: #22     RenderSemanticsAnnotations.visitChildrenForSemantics (package:flutter/src/rendering/proxy_box.dart:4456:11)
flutter: #23     RenderObject._getSemanticsForParent (package:flutter/src/rendering/object.dart:2664:5)
flutter: #24     RenderObject._getSemanticsForParent. (package:flutter/src/rendering/object.dart:2669:61)
flutter: #25     RenderObjectWithChildMixin.visitChildren (package:flutter/src/rendering/object.dart:3042:14)
flutter: #26     RenderObject.visitChildrenForSemantics (package:flutter/src/rendering/object.dart:2754:5)
flutter: #27     RenderObject._getSemanticsForParent (package:flutter/src/rendering/object.dart:2664:5)
flutter: #28     RenderObject._getSemanticsForParent. (package:flutter/src/rendering/object.dart:2669:61)
flutter: #29     RenderObjectWithChildMixin.visitChildren (package:flutter/src/rendering/object.dart:3042:14)
flutter: #30     RenderObject.visitChildrenForSemantics (package:flutter/src/rendering/object.dart:2754:5)
flutter: #31     RenderObject._getSemanticsForParent (package:flutter/src/rendering/object.dart:2664:5)
flutter: #32     RenderObject._getSemanticsForParent. (package:flutter/src/rendering/object.dart:2669:61)
flutter: #33     RenderObjectWithChildMixin.visitChildren (package:flutter/src/rendering/object.dart:3042:14)
flutter: #34     RenderObject.visitChildrenForSemantics (package:flutter/src/rendering/object.dart:2754:5)
flutter: #35     RenderObject._getSemanticsForParent (package:flutter/src/rendering/object.dart:2664:5)
flutter: #36     RenderObject._getSemanticsForParent. (package:flutter/src/rendering/object.dart:2669:61)
flutter: #37     RenderObjectWithChildMixin.visitChildren (package:flutter/src/rendering/object.dart:3042:14)
flutter: #38     RenderObject.visitChildrenForSemantics (package:flutter/src/rendering/object.dart:2754:5)
flutter: #39     RenderObject._getSemanticsForParent (package:flutter/src/rendering/object.dart:2664:5)
flutter: #40     RenderObject._updateSemantics (package:flutter/src/rendering/object.dart:2625:41)
flutter: #41     PipelineOwner.flushSemantics (package:flutter/src/rendering/object.dart:1081:16)
flutter: #42     RendererBinding.drawFrame (package:flutter/src/rendering/binding.dart:441:21)
flutter: #43     WidgetsBinding.drawFrame (package:flutter/src/widgets/binding.dart:914:13)
flutter: #44     RendererBinding._handlePersistentFrameCallback (package:flutter/src/rendering/binding.dart:302:5)
flutter: #45     SchedulerBinding._invokeFrameCallback (package:flutter/src/scheduler/binding.dart:1117:15)
flutter: #46     SchedulerBinding.handleDrawFrame (package:flutter/src/scheduler/binding.dart:1055:9)
flutter: #47     SchedulerBinding._handleDrawFrame (package:flutter/src/scheduler/binding.dart:971:5)
flutter: #51     _invoke (dart:ui/hooks.dart:251:10)
flutter: #52     _drawFrame (dart:ui/hooks.dart:209:3)
flutter: (elided 5 frames from class _AssertionError and dart:async)
Here's a snippet of the code:
child: Text(
card.title,
overflow: TextOverflow.ellipsis,
textAlign: TextAlign.start,
style: TextStyle(
fontWeight: FontWeight.w600, fontSize: titleFontSize),
),

Could you please share the whole source file so that we can check the parent widgets

Sure, here you go:
import 'package:SesameStreetApp/constants.dart';
import 'package:SesameStreetApp/core/utils/AppUtils.dart';
import 'package:SesameStreetApp/di/Injection.dart';
import 'package:SesameStreetApp/feature/favorites/presentation/favorites_bloc.dart';
import 'package:SesameStreetApp/feature/favorites/presentation/widget/FavoriteIcon.dart';
import 'package:cached_network_image/cached_network_image.dart';
import 'package:domain/model.dart';
import 'package:flutter/material.dart';
import 'package:flutter_bloc/flutter_bloc.dart';
import 'LoggedInWidgetWrapper.dart';
class Card extends StatefulWidget {
final ScreenItem card;
final bool smallTile;
Card({@required this.card, @required this.smallTile});
@override
State createState() => CardState(card, smallTile);
}
class CardState extends State {
final double imageAspectRation = 1.33;
final double iconCategorySize = 70;
final double borderRadius = 8;
final double titleFontSize = 18;
final double primaryTitlePaddingRight = 70;
final double titlePaddingRight = 40;
final ScreenItem card;
final bool smallTile;
final favoritesBloc = getIt();
CardState(this.card, this.smallTile);
@override
void dispose() {
super.dispose();
favoritesBloc.close();
}
renderIcon() {
switch (card.type) {
case 'game':
return Image(
width: iconCategorySize, image: AssetImage(ImagePaths.gameTileImg));
break;
case 'video':
return Image(
width: iconCategorySize, image: AssetImage(ImagePaths.playTileImg));
break;
default:
return Container();
}
}
renderInfoButton(BuildContext context) {
return Offstage(
offstage: card.type == "screen",
child: InkWell(
onTap: () => Navigator.pushNamed(context, Routes.info,
arguments: {AppStrings.screenItem: card}),
child: Image(
width: smallTile ? card.primary ? 34 : 24 : 34,
image: AssetImage(ImagePaths.cardDetailsImg),
),
),
);
}
@override
Widget build(BuildContext context) {
return GestureDetector(
onTap: () => AppUtils.screenCardClicked(context, card),
child: Container(
padding: EdgeInsets.all(5),
decoration: BoxDecoration(
color: Colors.white,
borderRadius: BorderRadius.only(
bottomLeft: Radius.circular(8),
bottomRight: Radius.circular(8),
topLeft: Radius.circular(4),
topRight: Radius.circular(4),
),
boxShadow: [
BoxShadow(
color: Colors.black.withOpacity(0.1),
spreadRadius: 0.0,
blurRadius: 3.0,
offset: Offset(0, 3),
),
],
),
child: Column(
crossAxisAlignment: CrossAxisAlignment.stretch,
children: [
Stack(
overflow: Overflow.visible,
children: [
OrientationBuilder(
builder: (BuildContext context, Orientation orientation) {
return Center(
child: LayoutBuilder(
builder: (BuildContext context,
BoxConstraints constraints) =>
AspectRatio(
aspectRatio: imageAspectRation,
child: CachedNetworkImage(
fit: BoxFit.fitHeight,
width: constraints.maxWidth,
imageUrl: orientation == Orientation.portrait
? card.image.portrait
: card.image.landscape,
placeholder: (context, url) => Container(
height: 100,
color: AppColor.loadingCardBackground,
child: Center(
child: CircularProgressIndicator(
valueColor: AlwaysStoppedAnimation(
Colors.white),
),
),
),
errorWidget: (context, url, error) => Container(
child: Center(
child: Icon(Icons.error),
),
),
),
),
),
);
}),
(card.id != null)
? LoggedInWidgetWrapper(_renderFavoritesButton)
: SizedBox.shrink(),
Positioned(
bottom: -30,
right: -5,
child: renderIcon(),
),
Positioned(
top: 6,
right: 6,
child: renderInfoButton(context),
)
],
),
Padding(
padding: EdgeInsets.only(
left: 5,
right: card.primary
? primaryTitlePaddingRight
: titlePaddingRight,
top: card.primary ? 15 : 18,
bottom: 15,
),
child: Text(
card.title,
overflow: TextOverflow.ellipsis,
maxLines: 2,
textAlign: TextAlign.start,
style: TextStyle(
fontWeight: FontWeight.w600, fontSize: titleFontSize),
),
)
],
)),
);
}
Widget _renderFavoritesButton(BuildContext context) {
bool iconSmall = smallTile ? card.primary ? false : true : false;
return Positioned(
left: 2,
top: 2,
child: Container(
child: BlocProvider(
create: (BuildContext context) => favoritesBloc,
child: FavoriteIcon(card.id, iconSmall),
),
),
);
}
}

Is it showing an overflow in the screen or the widgets are not even rendered ?
if it's showing an overflow you should wrap the padding widget in an Expanded and that Expanded should be wrapped in a Row as follows :
Row(
children: [
Expanded(
child: Padding(
padding: EdgeInsets.only(
left: 5,
right: card.primary
? primaryTitlePaddingRight
: titlePaddingRight,
top: card.primary ? 15 : 18,
bottom: 15,),
child: Text(card.title,
overflow: TextOverflow.ellipsis,
maxLines: 2,
textAlign: TextAlign.start,
style: TextStyle(
fontWeight: FontWeight.w600, fontSize: titleFontSize),
),
),
),
],
),

There's actually no visible render error in the app, everything looks like it's working fine, so I'm really not sure why I'm getting the error. Removing that overflow property is enough to make the error go away again.

Tried adding Row and Expanded the way you demonstrated, and got the same error in the console, but again, no visible error.

In order to be able to reproduce the error I need the source file where you call the Card widgets, could you please share it

import 'dart:ui';
import 'package:SesameStreetApp/constants.dart';
import 'package:SesameStreetApp/feature/list_content/presentation/bloc/bloc.dart';
import 'package:SesameStreetApp/feature/list_content/presentation/widgets/Card.dart';
import 'package:SesameStreetApp/feature/list_content/presentation/widgets/LoadingEllipse.dart';
import 'package:SesameStreetApp/feature/list_content/presentation/widgets/NoNetworkWidget.dart';
import 'package:SesameStreetApp/feature/list_content/presentation/widgets/OfflineCard.dart';
import 'package:SesameStreetApp/feature/menu_navigation/presentation/bloc/MenuNavigationBloc.dart';
import 'package:SesameStreetApp/feature/menu_navigation/presentation/bloc/bloc.dart'
hide Loaded, Error, Loading;
import 'package:SesameStreetApp/feature/menu_navigation/presentation/widgets/Drawer.dart';
import 'package:domain/service.dart';
import 'package:flutter/material.dart' hide Card;
import 'package:flutter_bloc/flutter_bloc.dart';
import 'package:flutter_staggered_grid_view/flutter_staggered_grid_view.dart';
class ListContentPage extends StatefulWidget {
ListContentBloc contentBloc;
MenuNavigationBloc menuBloc;
LocalStorageService localStorageService;
ValueNotifier offline = ValueNotifier(false);
ListContentPage(
{@required this.contentBloc, @required this.menuBloc, @required this.localStorageService});
@override
_ListContentPageState createState() => _ListContentPageState();
}
class _ListContentPageState extends State {
ValueNotifier isDrawerOpened = ValueNotifier(false);
final GlobalKey _drawerKey = GlobalKey();
ScrollController controller = ScrollController();
void toggleDrawer() async {
if (_drawerKey.currentState.isDrawerOpen) {
_drawerKey.currentState.openEndDrawer();
} else {
_drawerKey.currentState.openDrawer();
}
}
@override
Widget build(BuildContext context) {
widget.contentBloc.add(GetListContent(depth: 1, offset: 0));
widget.menuBloc.add(GetMainMenuEvent());
Widget showNoNetwork() {
  return NoNetworkWidget(() {
    widget.contentBloc.add(GetListContent(depth: 1, offset: 0));
    widget.menuBloc.add(GetMainMenuEvent());
  });
}

return MultiBlocProvider(
  providers: [
    BlocProvider<ListContentBloc>(
      create: (BuildContext context) => widget.contentBloc,
    ),
    BlocProvider<MenuNavigationBloc>(
      create: (BuildContext context) => widget.menuBloc,
    ),
  ],
  child: BlocBuilder<ListContentBloc, ListContentState>(
    builder: (context, state) {
      if (state is Loaded) widget.offline.value = (state.state == NetworkContentState.OFFLINE);
      return Scaffold(
        appBar: AppBar(
          automaticallyImplyLeading: false,
          leading: ValueListenableBuilder(
            valueListenable: widget.offline,
            builder: (BuildContext context, bool value, Widget child) {
              return Visibility(
                visible: !value,
                child: InkWell(
                  onTap: toggleDrawer,
                  child: Semantics(
                    enabled: true,
                    label: SemanticsStrings.menu,
                    onTapHint: SemanticsStrings.menu_tap_hint,
                    child: Image(
                      image: AssetImage(ImagePaths.hamburgerIcon),
                      height: 22,
                      width: 26,
                    ),
                  ),
                ),
              );
            }
          ),
          backgroundColor: Colors.white,
          centerTitle: true,
          title: ExcludeSemantics(
            child: ValueListenableBuilder(
              valueListenable: widget.offline,
              builder: (BuildContext context, bool value, Widget child) {
                return value
                  ? Text(AppStrings.offlineGames,
                    style: TextStyle(
                      color: AppColor.darkerTextColor,
                      fontFamily: FontFamilies.vagRoundedStd,
                      fontSize: Fonts.title,
                      fontWeight: FontWeight.bold,
                  ))
                  : Image(
                    image: AssetImage(ImagePaths.appLogoImg),
                    height: 36,
                    width: 95,
                  );
              }
            ),
          ),
        ),
        body: Scaffold(
          backgroundColor: AppColor.yellowTheme,
          key: _drawerKey,
          drawer: Drawer(
            child: BlocBuilder<MenuNavigationBloc, MenuNavigationState>(
              builder: (BuildContext context, state) =>
                SideDrawer(state: state, drawerKey: _drawerKey, menuBloc: widget.menuBloc),
            ),
          ),
          body: state is Loading
          ? LoadingEllipse()
          : state is Error
          ? Center(child: Text(state.message))
          : state is Loaded
          ? OrientationBuilder(
              builder: (BuildContext context, Orientation orientation) =>
              SingleChildScrollView(
                child: Column(
                  children: [
                    state.state == NetworkContentState.OFFLINE
                      ? showNoNetwork()
                      : SizedBox.shrink(),
                    Container(
                      width: MediaQuery.of(context).size.width,
                      height: MediaQuery.of(context).size.height,
                      color: AppColor.defaultBackgroundColor,
                      child: StaggeredGridView.countBuilder(
                        padding: EdgeInsets.all(11),
                        controller: controller,
                        crossAxisCount: 4,
                        itemCount: state.screen.itemsTotal,
                        itemBuilder: (BuildContext context, int index) {
                          return state.screen.title == "offline"
                          ? OfflineCard(card: state.screen.items[index])
                          : Card(card: state.screen.items[index], smallTile: !state.screen.items[index].primary);
                        },
                        staggeredTileBuilder: (index) =>
                          StaggeredTile.fit(state.screen.items[index].primary ? 4 : 2),
                        mainAxisSpacing: 11.0,
                        crossAxisSpacing: 11.0,
                      ),
                    ),
                  ],
                ),
              )
            )
          : Container()
        ),
      );
    }
  ),
);

}
}

@hannahgrinton
Your question is better suited for StackOverflow. Please see https://flutter.dev/community for resources and if you need help with your code, please see https://www.reddit.com/r/flutterhelp/
Closing from here, as this seems to be an issue with code implementation rather than bug in framework. If you disagree or think otherwise, write in comments and I'll reopen it.

@darshankawar I tried to reproduce the error with stable v 1.22.5 and the issue did not appear so I believe it might be related to a bug in another version of the framework and thus this has to be reopened.

@hannahgrinton @aminedakhlii
Can you provide a complete minimal reproducible code sample, preferably in single file (main.dart) that we can directly copy paste and run to see the issue ? Please don't use any 3rd party plugins in the code sample.

@darshankawar @aminedakhlii
I created a code sample, but was unable to reproduce the issue (using no 3rd party plugins - my project where the error occurs uses Staggered Grid View plugin). So, I decided to add this plugin into my code sample as well, and sure enough, the error occurred. If there aren't enough grid items to need to scroll, the issue doesn't present itself, but if there are enough children (grid items), and you scroll down the page, the error appears in the terminal. Removing the overflow property to the text widget, however, and hot reloading the app, removes the error, same as in my original project. I'll attach the main.dart and pubspec.yaml files in a zipped folder so you can try it yourself, but I'm not sure there's really anything that can be done, looks like it's an issue for the Staggered Grid View plugin team to look at. Thanks for your time and effort!
flutter.zip


file-entry-cache - fix recreating cache from a file

Fixes #886

@lkinasiewicz - this should be released in the next 2-3 weeks. Will that work?

Thanks for quick response! No hurry, I will keep using version 9.1.0 for a while. 🙂


Add resources - meet59patel

Added CS-Arnab Ray-2018 resources

Don't add the stuff that the course instructor already uploads. If you have some other stuff, like the lab codes or the lab assignments PDF or handwritten notes that are different than those of the prof, add those.

@smit2k14  Got it.
I've uploaded content referring to and equivalent to CS/201_introductory_computational_physics/bhaskary_chaudhary/2017
Shall I close the PR if none of these files are required?

Eyo... on second thoughts, keep the lecture slides as they were. We talked over it, and it might turn out helpful. Sorry for the confusion.


Allow only alphanumeric characters to be used when forming url from name

Solves issue #3115

/azp run


feature.setStyle is not a function

The feature object retrieved by the map.forEachFeatureAtPixel seems not having the setStyle and get method
map.forEachFeatureAtPixel(e.pixel, function (feature) {
    boundarySelected = feature;
    feature.setStyle(highlightStyle);
    return true;
});
if (boundarySelected) {
    status.innerHTML = boundarySelected.get('name');
} else {
    status.innerHTML = ' ';
}

The setStyle method and get('name') method should exist like shown in the Hover Example and in the Feature documentation

Could it be a ol/render/Feature. This wil be use by e. g. ol/format/MVT And there is configuration option featureClass to use a nomral ol/Feature.
Though if you simply want to use a different style you may be better off with setting a style function on the layer instead of setting styles on features.
If it is not that, please provide an working example or a screenshot of the available properties of the feature object in question to help us better understand the problem.

I don't know how much else to include... I'm trying to replicate the Hover example, and everything is in...
  var serviceUrl = 'https://api.os.uk/maps/raster/v1/zxy';
  var vectorTileServiceUrl = 'https://api.os.uk/maps/vector/v1/vts';

  // Setup the EPSG:27700 (British National Grid) projection.
  proj4.defs("EPSG:27700", "+proj=tmerc +lat_0=49 +lon_0=-2 +k=0.9996012717 +x_0=400000 +y_0=-100000 +ellps=airy +towgs84=446.448,-125.157,542.06,0.15,0.247,0.842,-20.489 +units=m +no_defs");
  ol.proj.proj4.register(proj4);

  var tilegrid = new ol.tilegrid.TileGrid({
      resolutions: [ 896.0, 448.0, 224.0, 112.0, 56.0, 28.0, 14.0, 7.0, 3.5, 1.75 ],
      origin: [ -238375.0, 1376256.0 ]
  });

  // Initialize the map object.
  map = new ol.Map({
      layers: [
          new ol.layer.Tile({
              source: new ol.source.XYZ({
                  url: serviceUrl + '/Leisure_27700/{z}/{x}/{y}.png?key=' + osMapApiKey,
                  projection: 'EPSG:27700',
                  tileGrid: tilegrid
              })
          })
      ],
      target: 'OS-Wards',
      view: new ol.View({
          projection: 'EPSG:27700',
          extent: [ -238375.0, 0.0, 900000.0, 1376256.0 ],
          resolutions: tilegrid.getResolutions(),
          minZoom: 0,
          maxZoom: 9,
          center: [ easting, northing ],
          zoom: 7
      })
  });

  let marker = new ol.layer.Vector({
    source: new ol.source.Vector({
        features: [
            new ol.Feature({
                geometry: new ol.geom.Point([ easting, northing ])
            })
        ]
    }),
    style: new ol.style.Style({
        image: new ol.style.Icon({
            src: 'img/markers/marker-blue.svg',
            scale: 0.75
        })
    })
  });

  var boundarySelected = null;
  let status = document.getElementById('boundaryname');
  map.on('pointermove', function (e) {
    if (boundarySelected !== null) {
      boundarySelected.setStyle(standardStyle);
      boundarySelected = null;
    }

    map.forEachFeatureAtPixel(e.pixel, function (feature) {
      boundarySelected = feature;
      feature.setStyle(highlightStyle);
      return true;
    });

    if (boundarySelected) {
      status.innerHTML = boundarySelected.get('name');
    } else {
      status.innerHTML = ' ';
    }
  });

  map.addLayer(
    new ol.layer.VectorTile({
        source: new ol.source.VectorTile({
            format: new ol.format.MVT(),
            url: vectorTileServiceUrl + '/boundaries/tile/{z}/{y}/{x}.pbf?key=' + osMapApiKey,
            projection: 'EPSG:27700',
            tileGrid: new ol.tilegrid.TileGrid({
                resolutions: [ 3584.0, 1792.0, 896.0, 448.0, 224.0, 112.0, 56.0, 28.0, 14.0, 7.0, 3.5, 1.75 ],
                origin: [ -238375.0, 1376256.0 ],
                tileSize: [ 512, 512 ]
            })
        }),
        style: styleFunction
    })
  )

  map.addLayer(marker);

The 2 methods I reported are not working.

Have a look at this example which is using a MVT source: https://openlayers.org/en/latest/examples/vector-tile-selection.html
As  written above the features of your tile source are not ol/Feature but ol/render/Feature which is a different class optimized for just rendering. They are not meant to be changed and there are a lot of functions not available compared to the normal ol/Feature objects.

@MoonE the get('NAME') method works; but the setStyle even if it does not retrieve the error anymore, does not change the style of the hovered boundary.
Any help?

@MoonE another detail: it seems to change the style only if I zoom the map while I hover a certain boundary

The vector tiles are only rendered once and then cached, so changing the style of the feature afterwards will not work, plus you have the problem that the geometry may be split between multiple tiles and setting the style on just one of those features will give unexpected results.
When you look in the example in my previous comment you will find there is a separate layer created for highlighting the active geometry that uses the same source but renders with renderMode: 'vector', so no tile caching takes place.
Using a style function and identifying the features by an id value will allow you to consistently style the entire geometry.


Cannot fling list views on fuchsia

Example code:
import 'dart:async';
import 'dart:math' as math;

import 'package:flutter/material.dart';

const double _kGoldenRatio = 1.61803398875;
const double _kMaxWidth = 400.0;

Future<Null> main() async {
  runApp(
    new LayoutBuilder(
      builder: (BuildContext context, BoxConstraints constraints) {
        double cardHeight =
            16.0 + math.min(_kMaxWidth, constraints.maxWidth) / _kGoldenRatio;
        return new Material(
          color: Colors.grey[200],
          child: new Center(
            child: new ConstrainedBox(
              constraints: new BoxConstraints(
                maxWidth: _kMaxWidth,
                maxHeight: constraints.maxHeight,
              ),
              child: new ListView.builder(
                itemExtent: cardHeight,
                itemBuilder: (BuildContext context, int index) => new Container(
                      padding: const EdgeInsets.symmetric(vertical: 8.0),
                      child: new Material(
                        color: index % 2 == 0 ? Colors.blue : Colors.green,
                        elevation: 3.0,
                        borderRadius: new BorderRadius.circular(4.0),
                      ),
                    ),
              ),
            ),
          ),
        );
      },
    ),
  );
}

cc @chinmaygarde Let me know if you don't have the bandwidth to look at this, and I can take a look once I'm doing with my other bugs.

Won't be able to investigate this in the near future.

Ok. I'm putting it on my plate but I will probably not be able to get to it this month.

https://fuchsia.atlassian.net/browse/SY-195


Add "calor" as synonym for temperature in Spanish

Please keep contributions to a single domain per PR. So only light, homeassistant or cover
Instead of copy/pasting the same word combinations to each file, you can add an expansion rule to _common.yaml


Dev in master

Thank you, @Jas53 for your contributions.
These are major enhancements to RasQberry and are highly appreciated!
It is especially great to have an additional quantum game (the coin game) available native for the touch screen version.


AISPv3.1.6 | No Transactions are returned when /transactions endpoint is called

Description

No Transactions are returned when /transactions endpoint is called

Request:

/transactions

Response:

{"Transaction":[]}

Zendesk Issue: 59254
Date Raised: 2021-03-23
Environment: New cluster uplifted to TREX release

The transactions are empty because the dates used to filter the transactions doesn't return any transaction.
Dates used to filter the transactions

fromBookingDateTime 2017-12-31T23:00:00.000Z
toBookingDateTime 2019-12-31T22:59:59.000Z

From the documentation:

Filtering
Limited support for filtering is provided on the transactions resource.
Transactions may be filtered based on their BookingDateTime using the fromBookingDateTime and toBookingDateTime parameters

// EXAMPLES
// All transactions from 1st Jan, 2015
GET /transactions?fromBookingDateTime=2015-01-01T00:00:00
// All transactions in 2016
GET /transactions?fromBookingDateTime=2016-01-01T00:00:00&toBookingDateTime=2016-12-31T23:59:59
// All transactions in a specific account up to 31-Mar-2017
GET /accounts/1/transactions?toBookingDateTime=2017-03-31T23:59:59

The correct dates are fromBookingDateTime 2017-12-31T23:00:00.000Z toBookingDateTime 2020-12-31T22:59:59.000Z or toBookingDateTime later.
Let me know if this suggestion fix your issue.


[BUG] Dynamic Skip Layers get wrong output

Describe the bug
When I use GPTQModel to quantize Tiny-llama-1.1b with following quantize_config.json, the generated text is

dynamic = {
  r"-:.*\.(?:[1-9]|1[0-9]|2[0-1])\..*": {},
}

And I print the keys and param values from the quantized ckpt, the value and groupsize is error.
Parameter: model.model.layers.21.self_attn.o_proj.qweight
param: Parameter containing:
tensor([[0, 0, 0,  ..., 0, 0, 0],
        [0, 0, 0,  ..., 0, 0, 0],
        [0, 0, 0,  ..., 0, 0, 0],
        ...,
        [0, 0, 0,  ..., 0, 0, 0],
        [0, 0, 0,  ..., 0, 0, 0],
        [0, 0, 0,  ..., 0, 0, 0]], device='cuda:0', dtype=torch.int32)
Shape: torch.Size([128, 4096])
Data type: torch.int32

Parameter: model.model.layers.21.self_attn.o_proj.g_idx
param: Parameter containing:
tensor([0, 0, 0,  ..., 0, 0, 0], device='cuda:0', dtype=torch.int32)
Shape: torch.Size([2048])
Data type: torch.int32

Do you have a ckpt quantized by skipping some layers?
GPU Info
A10
Software Info
Operation System/Version + Python Version
Show output of:
pip show gptqmodel torch transformers accelerate triton

If you are reporting an inference bug of a post-quantized model, please post the content of config.json and quantize_config.json.
To Reproduce
How to reproduce this bug if possible.
Expected behavior
Inference successfully
Model/Datasets
Make sure your model/dataset is downloadable (on HF for example) so we can reproduce your issue.
Screenshots
If applicable, add screenshots to help explain your problem.
Additional context
Add any other context about the problem here.

@HaoWuSR Confirmed. Fix coming asap.

This issue resolved. see PR#907

Thanks for your help!
I've noticed an interesting phenomenon: After quantizing the Tiny-1.1B model and skipping all layers, the saved checkpoint is only 2GB, which is half the size of the 4GB FP16 weights. Upon comparison, I found that the weight values are identical in both versions (BF16 and FP16). This doesn't seem to be related to packing. I'm curious about what could be causing this size difference?
dynamic = {
  r"-:.*\.(?:[0-9]|1[0-9]|2[0-1])\..*": {},
}

Thanks for your help! I've noticed an interesting phenomenon: After quantizing the Tiny-1.1B model and skipping all layers, the saved checkpoint is only 2GB, which is half the size of the 4GB FP16 weights. Upon comparison, I found that the weight values are identical in both versions (BF16 and FP16). This doesn't seem to be related to packing. I'm curious about what could be causing this size difference?

Are you sure the original model is not saved as FP32? This would explain 2x size reduction when you call save.
We don't have a magic compression code for FP16/BF16. =P I wish we did.

Thank you for your reply!
I've double-checked and confirmed that the original checkpoint was indeed saved in fp32 format. I sincerely apologize for the confusion 🤣


InputEventMouseMotion not working with  ==

Godot version
4.2 beta 3
System information
windows 10 vulkan
Issue description
InputEventMouseMotion only works with 'is'
In previous version godot 4.1 you could type '==' now it only works with 'is'
Steps to reproduce
func _input(event):

	if event is InputEventMouseMotion:
		print("its working")

	if event == InputEventMouseMotion:
		print("not working")

Minimal reproduction project
na

You seem to be misremembering, event == InputEventMouseMotion is invalid code also in 4.1.
event is an object of type InputEventMouseMotion. It's not the type itself. The == operator can't be used for type checking. For example 4.0 == float doesn't make much sense.
Tested with this code in 4.1-stable:
func _input(event):
	if event is InputEventMouseMotion:
		print("'is' check is working")

	if event == InputEventMouseMotion:
		print("'==' check is working")

'==' check is working is never printed, as expected.


UI Improvements 1-7

[x] Add Layer Button: Move add layer button out of the sidebar to another location (pending designs)
[ ] Sidebar on Wakeup: Do not show the sidebar on wakeup - only after a layer has been added
[ ] Remove All Layers: Button to remove all layers (designs pending)
[x] Labels: Add labels for the icons in the sidebar
[ ] Tabs: Change to order of the tabs in the sidebar
[x] Top Bar: Reorder and relabel Map and Data View
[x] Change Add Filter: To and icon and a label

@mbforr can you clarify the remaining items here:

Where should the add layer button be moved to? Are we still waiting on a design for that?
We're not sure what you mean by 'on wakeup'. The current behavior is that the sidebar defaults to closed whenever you navigate to the editor view. Is there some specific case where it does not, or should something else happen?
Are we still doing this? Where should it go?
What is the desired order of the tabs? The tabs in the 'RemoveToolbar_v3' wireframes PDF are entirely different. Should the tabs in that doc take precedence over this item? Or should they be rearranged some other way?

It is not in the mock ups but I can get that for you. I am guessing it
will go next to the 'Actions' and 'Export' buttons you see in the mock ups
now.
Maybe that is something in their version. Let me check but let's put a
hold on that for now
Checking, but assuming in the 'Actions' dropdown
Use the most recent mock up (v4) attached here

On Thu, Jun 16, 2016 at 9:27 AM, Andrew Fink<EMAIL_ADDRESS>wrote:

@mbforr https://github.com/mbforr can you clarify the remaining items
here:

Where should the add layer button be moved to? Are we still waiting on
a design for that?
We're not sure what you mean by 'on wakeup'. The current behavior is
that the sidebar defaults to closed whenever you navigate to the editor
view. Is there some specific case where it does not, or should something
else happen?
Are we still doing this? Where should it go?
What is the desired order of the tabs? The tabs in the
'RemoveToolbar_v3' wireframes PDF are entirely different. Should the tabs
in that doc take precedence over this item? Or should they be rearranged
some other way?

—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/cartodb-org/cartodb/issues/30#issuecomment-226484313,
or mute the thread
https://github.com/notifications/unsubscribe/AEmtLHS66IkDbY6XDpB6v07vOWNpWwZtks5qMU82gaJpZM4IcK66
.

--
Matt Forrest
Client Success Manager
CartoDB
201 Moore St, Brooklyn, NY, 11206, USA
T:<PHONE_NUMBER> Skype: mbforr
W: www.cartodb.com
Live sessions to learn CartoDB http://cartodb.com/webinars/

@CloudNiner 'Add Layer' is going to go into that 'Browse' button next to the search field in the most recent mock ups

@mbforr It seems like the tasks we can complete on this are complete. Can we close out the issue and invoice?


Config: refactor based on development guidelines

Refactor the config module to follow the development guidelines in PR #135.
The following tasks are part of this issue ("Validate" means check and if not compliant, fix):

[x] Change builders that accept other builders to accept a supplier instead
[x] Change scope to "provided" where reasonable to have a cleaner dependency graph
[x] Validate bundle dependencies to not bring in too many third party libraries
[x] Move SE bundles to a /bundles root module and change group ids accordingly??
[x] Validate module names and package names to ensure they adhere to dev guidelines)
[x] Validate naming convention of configuration keys used by components
[ ] Fix inconsistencies in getter and setter names
[x] Validate we do not create instances using "new" and use factory methods
[x] Refactor factory method names (use create)
[ ] Refactor config methods in builders (use config)
[x] Validate java module files are in each module

And for tests:

[ ] Refactor unit tests to use Hamcrest assertions

Needed follow up tasks:

[ ] fix UML diagrams in config/config/src/docs
[ ] drop usage of old security configuration (search for BMCS or com.oracle.prime) - used in a lot of places, not valid anymore
[ ] meta configuration should be probably refactored - the factory methods for config and config builder do not sound right (the naming) - loadSourceFrom and builderLoadSourcesFrom


Allow manual mimetype for ?url explicit URL imports

Description
Just ran into https://github.com/vitejs/vite/issues/4167, where importing a TypeScript file with ?url works fine in development, but after the build the file (since it is small) is inlined as a base64 string like data:video/mp2t;base64,blahblahblah.... Problem is, I'm not seeing any way to tell Vite to use text/javascript instead.
Suggested solution
Let me do something like import url from "/some/file.ts?url&mimetype=js". Since I can't have a / in my query param without encoding it (so no text/javascript), let me just specify a file extension and Vite will use whatever mimetype it would normally use for files of that extension.
Then, the inline assets feature needs to respect this manual mimetype. Perhaps it should already be respecting the mimetype due to https://github.com/vitejs/vite/commit/b08e973da0477481970cdf6d49532bb6129aaa24, so maybe this is a bug?
Alternative
Set build.assetsInlineLimit: 0.
Additional context
No response
Validations

[X] Follow our Code of Conduct
[X] Read the Contributing Guidelines.
[X] Read the docs.
[X] Check that there isn't already an issue that request the same feature to avoid creating a duplicate.

Duplicate of #6979


can't seem to get gcs delievery working

I get the following error with porder: "Unable to accept order: Your organisation is not permitted to deliver to Google Cloud Storage"
Is this an issue with the cert file I provide porder or an issue with my account with planet?

fixed!


Changes in the language for better understanding

[x] I have read freeCodeCamp's contribution guidelines.
[x] My pull request has a descriptive title (not a vague title like Update index.md)
[x] My pull request targets the master branch of freeCodeCamp.
[x] None of my changes are plagiarized from another source without proper attribution.
[x] My article does not contain shortened URLs or affiliate links.

If your pull request closes a GitHub issue, replace the XXXXX below with the issue number.
Closes #XXXXX

@Manasmko Thank you for your contribution!


[Feature] Get the content in deleted file

Is this feature missing in the latest version?

[X] I'm using the latest release

Is your feature request related to a problem? Please describe.
I have the following code
      - name: Use template for a deleted file
        if: steps.changed-files-dir-names.outputs.any_deleted == 'true'
        run: |
          for folder in ${{ steps.changed-files-dir-names.outputs.deleted_files }}; do
            mkdir -p $folder
            if [[ $folder =~ "app" ]]; then
              cp .github/templates/user/app/terragrunt.hcl $folder/terragrunt.hcl
            elif [[ $folder =~ "iam" ]]; then
              cp .github/templates/user/iam/terragrunt.hcl $folder/terragrunt.hcl
            elif [[ $folder =~ "postgres" ]]; then
              cp .github/templates/cluster/terragrunt.hcl $folder/terragrunt.hcl
              cp .github/templates/cluster/cluster.hcl $folder/../cluster.hcl
            fi
          done

I create templates for the files I'm deleting, with random values, but with the same structure. But I came across the situation that I need a value from the file that was deleted, to put in the template file.
Describe the solution you'd like?
I wanted to create the file temporarily in a random directory, then I would cat that file to the other.
Describe alternatives you've considered?
I haven't considered anything yet, I'm studying and seeing if there are other possibilities.
Anything else?
No response
Code of Conduct

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

@SamuelMolling can you provide more details on the feature request?

No response on a path forward or how this feature should be implemented and requires more information on the intended use.


Fix: Sort in browse & remote views

[!WARNING]
This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
Learn more

#5
#4
#3  👈
#2
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @MikeRatcliffe and the rest of your teammates on  Graphite


make eval_type_backport an optional dependency

Resolve issue #10 by making "eval_type_backport" a conditionally installed dependency in the pyproject.toml

Thanks @jrmcgaha-dev ! This fix looks good, just had to update the PDM version and run pdm lock -G:all on the command line.


Commands not working (both built-in and custom)

The service itself seems to work, with all sensors etc updating just fine. However, I can't use any of the commands. I've configured a few built-in, and a custom one (to lock the workstation, following your example).
I don't see any error logs, how would I go about debugging this?
HASS status:

The tool itself shows no faults either:

And the cmd mqtt messages seem to work fine as well:

Thanks for creating an issue! I'll have a look this weekend. I'm not sure what's going wrong here.

I confirm this issue many commands (random), are not working.

I resolved this problem when I updated Home Assistant Core and all my server packages to the newest (version 08).

I think I found out what is happening: MQTT discovery finds the same entity twice; renames it to entityname2 and makes the other  one a ghost.


Exclude sparcv9 solaris jdk8 problem tests

The following tests fail on the current (jdk8u352-b08) and last (8u345b01) release of jdk 8 on sparcv9 solaris and should be excluded
jdk_jfr
jdk/jfr/javaagent/TestLoadedAgent.java
jdk/jfr/jcmd/TestJcmdSaveToFile.java
jdk/jfr/jcmd/TestJcmdStartWithSettings.java
jdk/jfr/jcmd/TestJcmdStopInvalidFile.java
jdk/jfr/jcmd/TestJcmdStopReadOnlyFile.java
jdk_security3
javax/net/ssl/Stapling/HttpsUrlConnClient.java.HttpsUrlConnClient
javax/net/ssl/Stapling/SSLSocketWithStapling.java.SSLSocketWithStapling
javax/net/ssl/TLSCommon/ConcurrentClientAccessTest.java.ConcurrentClientAccessTest
javax/net/ssl/TLSCommon/TestSessionLocalPrincipal.java.TestSessionLocalPrincipal
sun/security/pkcs11/KeyStore/ClientAuth.sh.ClientAuth
sun/security/pkcs11/fips/ClientJSSEServerJSSE.java.ClientJSSEServerJSSE
System
OAuthTest_0
jdk_math
java/math/BigInteger/LargeValueExceptions.java
hotspot_jre
compiler/8209951/TestCipherBlockChainingEncrypt.java

As noted in Slack, jdk_math appears to be a regression (having passed in the July release seen in TRSS deep history, seen passing as recently as Sept 13 in https://ci.adoptopenjdk.net/job/Test_openjdk8_hs_sanity.openjdk_sparcv9_solaris/180/, but failing in October release).
We can rerun the test target using the SHA from Sept 13th (see contents of testenv.properties from that run below), to rule out that its related to test changes such as 8282252: Improve BigInteger/Decimal validation.  (see Grinder/6285)
Sept 13 testenv.properties (from a passing run)
ADOPTOPENJDK_REPO=https://github.com/adoptium/aqa-tests.git
ADOPTOPENJDK_BRANCH=232c608b4a340bc512c69012ffbc7edb888832aa
TKG_REPO=https://github.com/adoptium/TKG.git
TKG_BRANCH=f3d79fd4e8a9b3eda5e4f1fdcce0439001b3c99e
OPENJ9_REPO=https://github.com/eclipse-openj9/openj9.git
OPENJ9_SHA=df2f3a3524957ff9e59c6861992f8195beb24aa6
JDK8_REPO=https://github.com/adoptium/jdk8u
JDK8_BRANCH=bb4f7da37aeb60ba494e4fc9e7d81d7df74bd52e

Running from present day test material (jdk8u-dev) against a Sept 5th EA build in Grinder 6286


update the README.md

Big update of the README

Replaced Telegram with Discord (are we sure about the replacement of Telegram entirely?)
Simplified the build/run instructions, tested on a fresh version of Linux

When I click on the Discord link I get "Invite Invalid This invite may be expired, or you might not have permission to join."


"adding mine block to test server"

Just picked this up and implemented extending the test RPC server blockchain.
I made a Blocks struct so that we avoid having two mutexes, which is a little bit awkward.
The server is polling for updates, so it won't reflect blocks which were just added to the test RPC server. I added thread::sleep(Duration::from_secs(1)), but that slows down tests, so we should come up with a better solution.
One option would be to add a function like this:
impl TestServer {
  fn get(&self, url: &str) -> Response {
    self.sync();
    reqwest::blocking::get(self.join_url(url)).unwrap()
  }

  fn sync(&self) {
    // This is not actually right, I copied this code from existing code in tests/state.rs, but you get the idea
    for attempt in 0.. {
      let best_hash = self.client.get_best_block_hash().unwrap();
      let bitcoind_height = self
        .client
        .get_block_header_info(&best_hash)
        .unwrap()
        .height as u64;

      let ord_height = reqwest::blocking::get(&format!(
        "http://<IP_ADDRESS>:{}/height",
        self.ord_http_port.unwrap()
      ))
      .unwrap()
      .text()
      .unwrap()
      .parse::<u64>()
      .unwrap();

      if ord_height == bitcoind_height {
        break;
      } else {
        if attempt == 300 {
          panic!("Ord height {ord_height} did not catch up to bitcoind height {bitcoind_height}");
        }

        sleep(Duration::from_millis(100));
      }
    }
  }
}

I converted some tests but am blocked on fixing the error below. I tried to debug for over an hour but didn't make any progress. I think it has something to do with how in get() we access the Arc<Index>.
---- subcommand::server::tests::height_updates stdout ----
thread 'subcommand::server::tests::height_updates' panicked at 'assertion failed: self.live_write_transaction.lock().unwrap().is_none()', /Users/raphael/.cargo/registry/src/github.com-1ecc6299db9ec823/redb-0.6.1/src/db.rs:387:9
stack backtrace:
   0: rust_begin_unwind
             at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library/std/src/panicking.rs:584:5
   1: core::panicking::panic_fmt
             at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library/core/src/panicking.rs:142:14
   2: core::panicking::panic
             at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library/core/src/panicking.rs:48:5
   3: redb::db::Database::begin_write
             at /Users/raphael/.cargo/registry/src/github.com-1ecc6299db9ec823/redb-0.6.1/src/db.rs:387:9
   4: ord::index::Index::index_ranges
             at ./src/index.rs:152:19
   5: ord::subcommand::server::tests::TestServer::get
             at ./src/subcommand/server.rs:573:21
   6: ord::subcommand::server::tests::height_updates
             at ./src/subcommand/server.rs:853:20
   7: ord::subcommand::server::tests::height_updates::{{closure}}
             at ./src/subcommand/server.rs:850:3
   8: core::ops::function::FnOnce::call_once
             at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library/core/src/ops/function.rs:248:5
   9: core::ops::function::FnOnce::call_once
             at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library/core/src/ops/function.rs:248:5
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.

failures:
    subcommand::server::tests::height_updates

Would it be smart to implement the Drop trait on TestServer so that it deletes the index.redb as part of the cleanup procedure?

Are tests executed in parallel?


Moved ManageVersionsTabs to regular exports so it could be used when setting currentTab.

We need your approval for this one @veekeys

Wow, I even forgot about this PR 😂


🐛 [Bug] SegFormer TensorRT exported model size is higher than expected

Bug Description
Exporting SegFormer models to TensorRT result in a file size higher than expected. For instance, the SegFormerB0 model has 3.7M parameters so the weights should account for approximately 14.8MB on disk when stored in FP32. However, the resulting Torchscript file is 51.5MB. The same applies for other SegFormer variants such as B1.
To Reproduce
Export a SegFormer model from HuggingFace using the nvidia/mit-b0 pretrained model:
import torch
import torch_tensorrt as trt
from transformers import SegformerForSemanticSegmentation

C, H, W = 3, 512, 512

class SegFormer(torch.nn.Module):
    def __init__(self):
        super().__init__()
        self.model = SegformerForSemanticSegmentation.from_pretrained("nvidia/mit-b0")

    def forward(self, input: torch.Tensor) -> torch.Tensor:
        return self.model(input)["logits"]

def main():
    model = SegFormer().eval().cuda()
    example_input = torch.randn(1, C, H, W, device="cuda")

    traced_model = torch.jit.trace(model, example_input)

    torch.jit.save(traced_model, "model.ts")

    with trt.logging.debug():
        trt_model = trt.ts.compile(
            module=traced_model,
            inputs=[example_input],
            enabled_precisions={torch.float, torch.half},
            truncate_long_and_double=True,
        )

    torch.jit.save(trt_model, "trt_model.ts")

if __name__ == "__main__":
    main()

The Pytorch TorchScript file (model.ts) is 16.2MB while the TensorRT optimized Torchscript file (trt_model.ts) is 51.5MB which is more than 3 times the expected size on disk.
This causes lots of trouble for embedded applications where the size on disk should be the lowest possible. Currently I'm using a quantized SegFormerB1 and the INT8 quantized TensorRT model weights more than 300MB on disk while the same model optimized for another target (CoreML INT8 quantized for Apple platforms) only weights 14.1MB, which is the expected quantized size of this model.
Expected behavior
The TensorRT optimized model size should not be that high and should match the number of parameters of the model.
Environment

Torch-TensorRT Version (e.g. 1.0.0): 1.4.0
PyTorch Version (e.g. 1.0): 2.0.1
CPU Architecture: x86_64
OS (e.g., Linux): Ubuntu 20.04
How you installed PyTorch (conda, pip, libtorch, source): pip
Python version: 3.10
CUDA version: 11.8
GPU models and configuration: 3070

Any update on this issue?


Fix bugs from previous patch

Fix issues related to: https://github.com/willmcpo/body-scroll-lock/pull/207
Related to https://github.com/willmcpo/body-scroll-lock/issues/206

@willmcpo can we merge this?

@willmcpo any updates on this?

Based on the comments above should we conclude that this library is no longer maintained?

Bump @willmcpo this library works pretty great besides this ios bug 😢

any update on this ?

They stopped the repairs. I had to do it myself, in the same way, with a new version of typeScript. And fix these problems for everyone to use. add react hooks、vue3 example
npm i body-scroll-lock-upgrade

repair log，Refer to the releases page.


can you release a version?

Hello~ community maintainer:
the community has not released a version for a long time, can you release a version?

+1


setup omgd infra project-init, should make project and VPC network, profile instances downstream should namespce to it

[x] choose path for new terraform file for initial setup
[x] adjust profiles/ - omgd.yml will now contain gcp-project id
[x] new terraform file must have VPC network (GCS bucket setup in next step) namespaced to project name in profiles/omgd.yml file -- CLI should warn if file missing or the field blank
[x] choose path for new terraform file's local backend location - top level ~/.omgd seems ideal
[x] run new terraform plan for top level network, ensure VPC network is made and properly named
[x] adjust instance terraform files to use new VPC network, namespace to both project && profile name per instance, ensure an apply + deploy runs smoothly w/ the example project
[ ] make sure everything works with a multi profile deployment under one project

note: omgd.name needs to be lowercased for it to work w/ terraform stuff, force casing at some point

note: local.yml is considered a backend by deploy commands; either delete the profile altogether or prevent deploy and infra commands from running against that profile

note: ip address of box needs to be setup in profile correctly; templates aren't building otherwise


Broken Links

Links to Substrate documentation not working in:

https://github.com/LibertyDSNP/frequency/blob/main/designdocs/MESSAGE_STORAGE.md
https://github.com/LibertyDSNP/frequency/blob/main/designdocs/SCHEMA.md (also internal link to Message Store)

validate this has been resolved

Did a quick check and still found at least one 404


initial Microsoft.AVS .NET SDK

The is the beginning of a .NET SDK for the Microsoft.AVS service. I used a local swagger file that is in this pull request https://github.com/Azure/azure-rest-api-specs/pull/9773 . It currently just contains the generated code. I haven't made any tests using the test framework.

Hi @ctaggart according to our guideline if you want to check in your code to master branch, the SDK must be generated from the master branch of Azure/azure-rest-api-spc , and it must be covered by tests.

Should I change the namespace from Microsoft.Azure.Management.AVS to Microsoft.Azure.Management.Avs? Looking around the projects, it looks like I should.
Visual Studio freezes every time I try to open up either project I created and I'm not sure why. Can someone else try?
Is there something in the test base that can create and teardown a test resource group? I ask, because that is what the azdev python test API does. It is really convenient.

Should I change the namespace from Microsoft.Azure.Management.AVS to Microsoft.Azure.Management.Avs? Looking around the projects, it looks like I should.

Yes

Visual Studio freezes every time I try to open up either project I created and I'm not sure why. Can someone else try?

Happens to me too. Not sure why. VSCode works.

Is there something in the test base that can create and teardown a test resource group? I ask, because that is what the azdev python test API does. It is really convenient.

Common practice is to have your test project reference resource manager SDK Microsoft.Azure.Management.ResourceManager and use its client to create resource groups. E.g. https://github.com/Azure/azure-sdk-for-net/blob/master/sdk/appplatform/Microsoft.Azure.Management.AppPlatform/tests/Tests/SpringCloudTests.cs#L34

I just added a commit to enable CI for this new module

Thanks @isra-fel. The initial test now passes. My goal is to add test coverage that matches the az vmware tests.

Hi @isra-fel, please review and merge if approved. Basic tests have been added for major functionality. I'll add more with the next API version coming up soon.

Thanks for merging! How do I get this built and in the dev feed? I don't see Microsoft.Azure.Management.Avs in:
https://dev.azure.com/azure-sdk/public/_packaging?feed=azure-sdk-for-net

We have a guide here to build and publish your module to nuget.org, which is basically every dotnet SDK is doing.
I'm not familiar with dev feed, but if you are sure that's where you want your module to go, I think you can follow the same process but choose not to publish, and upload the bit to dev feed manually.


Allow channels marked nsfw to be searched

Avoids 403 error when getting message list.

This change is

Thank you for your contribution!
I think I'll add the argument conditionally, so for that I can include a NSFW checkbox in the UI.


Spelling

This is a

[ ] Breaking change
[ ] New feature
[x] Bugfix

I have

[ ] Merged in the latest upstream changes
[ ] Updated CHANGELOG.md
[ ] Updated README.md
[ ] Run the tests

Misspellings identified by the check-spelling action.
It reported: https://github.com/jsoref/easyloggingpp/commit/ad2e53148cf2bf4550a8749b292432c3871e02bb#commitcomment-40976205
And it validated that the changes in this PR made it happy: https://github.com/jsoref/easyloggingpp/commit/3040534c43c9c71a6bdadc8ecaaf838d82e7efd4
Note: this PR does not include the action, if you're interested, that can be offered separately.

@jsoref Good efforts. Thanks for this PR


Elton v1.4 fix

I tidied some of the parts and also added some logging and assertions.

[ ] https://github.com/AY2122S1-CS2103T-W08-1/tp/issues/214
[ ] https://github.com/AY2122S1-CS2103T-W08-1/tp/issues/216 (no longer boots you back to unfiltered person list upon adding tags)

Codecov Report

Merging #231 (cc72dd8) into master (3beca5e) will decrease coverage by 0.11%.
The diff coverage is 3.12%.

@@             Coverage Diff              @@
##             master     #231      +/-   ##
============================================
- Coverage     36.27%   36.15%   -0.12%
  Complexity      497      497
============================================
  Files           182      182
  Lines          3176     3189      +13
  Branches        362      367       +5
============================================
+ Hits           1152     1153       +1
- Misses         1925     1934       +9
- Partials         99      102       +3

Impacted Files
Coverage Δ

src/main/java/seedu/notor/logic/LogicManager.java
23.52% <0.00%> (-5.74%)
:arrow_down:

.../logic/executors/group/GroupClearNoteExecutor.java
0.00% <0.00%> (ø)

...tor/logic/executors/group/GroupDeleteExecutor.java
0.00% <0.00%> (ø)

...notor/logic/executors/group/GroupNoteExecutor.java
0.00% <0.00%> (ø)

...logic/executors/group/PersonGroupListExecutor.java
0.00% <ø> (ø)

.../logic/executors/group/SubGroupCreateExecutor.java
0.00% <0.00%> (ø)

...or/logic/executors/group/SubGroupListExecutor.java
0.00% <ø> (ø)

.../logic/executors/group/SuperGroupListExecutor.java
0.00% <ø> (ø)

...otor/logic/executors/person/PersonTagExecutor.java
0.00% <ø> (ø)

...or/logic/executors/person/PersonUntagExecutor.java
0.00% <ø> (ø)

... and 4 more

Continue to review full report at Codecov.

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


feat: send cache request to peers after PUT request

Each node is responsible for replicating its cached content onto its connected peers. After receiving a PUT request, a node will send a caching request to its connected peers.

Closed because of #193


Game crashes after repacking to DPC

Greetings,
First of all, I would like to tell that you've made a nice and user friendly unpacking tool for the Plague Tale games. I've succeeded in converting some of the tex files into dds files with a hex editor, so I can edit the game's textures.
Unfortunately, unrelated to the latter, the game doesn't seem to respond very well to the repacked dpc containers. For this I can only speak for the dpc files of "A Plague Tale Requiem" for now. After unpacking "common.dpc" and some of the "amicia" dpc's, I've immediately repacked the vanilla files into a dpc container, for testing purposes. The game crashes to desktop the moment when try to I load a savegame.
I've also noticed that most of the times the repacked dpc container's filesize has shrunk compaired to its vanilla version. This varies from only a few Mb's to roughly 200 Mb (200 Mb occuring with the large "common.dpc").
Sometimes the filesize has been increased instead, but I assume that this is caused by repacking a dpc container that extracts some of its files that originates from "common.dpc" during the unpacking process. During repack it stores those files directly into said dpc container rather than importing them back into "common.dpc".
Kind regards,
Superdemus

@superdemus
merge this files with English.Dpc
Don't forget to edit Filemap.xml

Ok, I will see what I can do

I hope you'll find something. Thanks in advance.


useSortable draggable items moving twice

🐛 Need Help With Draggble Item Moving Twice Issue
📝 Description Of The Issue
I'm using DnDContext, SortableContext and useSortable hook and a DragOverlay. Whenever I start dragging an item and move it over to another draggbale item within the context, the active item moves to that place and the over item moves left or right while i'm still holding the overlay. So far so good, but when I let go of the dragging item as in dragEnd event, the over item that was moved, does the moving animation/logic again. I highly doubt it might be related to the implementation, but I have no clue where. Used it previously too, but never faced this issue. Any help will be really appreciated.
👀 Visual Preview Of The Issue

🔗Link to repositories
GitHub: Link
GitHub Pages: Link
StackBlitz: Link
⚙ My Environment

Package
Version

node
v21.7.1

react
v18.2.0

@dnd-kit/core
v6.1.0

@dnd-kit/modifiers
v7.0.0

@dnd-kit/sortable
v8.0.0

@dnd-kit/utilities
v3.2.2

Put the category id in place of the index

Put the category id in place of the index

Thanks man! Completely forgot about this.


Add total supply updater

the updater for updating the total supply when the token is burned or minted;

finished


[feature request]Make raycaster return more information such as entity ID.

The information returned by the raycaster is too limited; I can't even distinguish between villager A and villager B. I can only know that I've scanned a villager.

I'll add this in the next update

entity id is added


Prevent focus on tag removed

When I click on a tag to remove it, the click event will propagate to host div which results in focusing the input box.
Is there a way or any attribute that will prevent the input box from getting focused on removing a tag ?

duplicate #749


SARS2 Ampliseq 20200408

Tested working against synthetic reads with 0.3.4 – perfect assembly of all 235 amplicons with no Ns.

Renamed tsv to include version
Added new name to schemes.json


2022.10.3: Data Precision setting not working

Describe the bug
The setting introduced in #347 doesn't seem to be applied.
Regarding this, I remember reading in the past that HA has introduced a default precision based on device_class of the sensor, shouldn't that prevent these kind of issues?
To Reproduce
ECOWITT2MQTT_PORT: 8080
ECOWITT2MQTT_INPUT_UNIT_SYSTEM: imperial
ECOWITT2MQTT_OUTPUT_UNIT_SYSTEM: metric
ECOWITT2MQTT_DISABLE_CALCULATED_DATA: true
ECOWITT2MQTT_VERBOSE: false
ECOWITT2MQTT_MQTT_BROKER: mqtt.axel.dom
ECOWITT2MQTT_MQTT_PORT: 1883
ECOWITT2MQTT_MQTT_RETAIN: false
ECOWITT2MQTT_MQTT_TLS: false
ECOWITT2MQTT_MQTT_TOPIC: ecowitt2mqtt/GW2000A
ECOWITT2MQTT_ENDPOINT: /data/report
ECOWITT2MQTT_HASS_DISCOVERY: true
ECOWITT2MQTT_HASS_DISCOVERY_PREFIX: homeassistant
ECOWITT2MQTT_HASS_ENTITY_ID_PREFIX: ecowitt
ECOWITT2MQTT_PRECISION: 2

Expected behavior
Respect of the ECOWITT2MQTT_PRECISION value.
Screenshots

interesting, is working on my platform RPi 2022.10.3. Maybe a addon issue only.

Yes I am.
@bachya isn't ENV_PRECISION missing here? (main.py):
def get_env_vars() -> dict[str, str]:
    """Get environment variables.
    Returns:
        A dictionary of environment variables to config options.
    """
    env_vars = {}

    for env_var in (
        ENV_BATTERY_OVERRIDES,
        ENV_CONFIG,
        ENV_DEFAULT_BATTERY_STRATEGY,
        ENV_DIAGNOSTICS,
        ENV_DISABLE_CALCULATED_DATA,
        ENV_ENDPOINT,
        ENV_HASS_DISCOVERY,
        ENV_HASS_DISCOVERY_PREFIX,
        ENV_HASS_ENTITY_ID_PREFIX,
        ENV_INPUT_UNIT_SYSTEM,
        ENV_MQTT_BROKER,
        ENV_MQTT_PASSWORD,
        ENV_MQTT_PORT,
        ENV_MQTT_RETAIN,
        ENV_MQTT_TLS,
        ENV_MQTT_TOPIC,
        ENV_MQTT_USERNAME,
        ENV_OUTPUT_UNIT_SYSTEM,
        ENV_OUTPUT_UNIT_TEMPERATURE,
        ENV_PORT,
        ENV_RAW_DATA,
        ENV_VERBOSE,
        LEGACY_ENV_ENDPOINT,
        LEGACY_ENV_HASS_DISCOVERY,
        LEGACY_ENV_HASS_DISCOVERY_PREFIX,
        LEGACY_ENV_HASS_ENTITY_ID_PREFIX,
        LEGACY_ENV_INPUT_UNIT_SYSTEM,
        LEGACY_ENV_LOG_LEVEL,
        LEGACY_ENV_MQTT_BROKER,
        LEGACY_ENV_MQTT_PASSWORD,
        LEGACY_ENV_MQTT_PORT,
        LEGACY_ENV_MQTT_TOPIC,
        LEGACY_ENV_MQTT_USERNAME,
        LEGACY_ENV_OUTPUT_UNIT_SYSTEM,
        LEGACY_ENV_PORT,
        LEGACY_ENV_RAW_DATA,
    ):

interesting, is working on my platform RPi 2022.10.3. Maybe a addon issue only.

you're using cli option, I'm using env variable. that's where I suspect the problem is...mapping variables to config options.

a, mannaggia env :)

ehhhhh...il diavolo è nei piccoli dettagli...;)

Yes I am.
@bachya isn't ENV_PRECISION missing here? (main.py):

def get_env_vars() -> dict[str, str]:

    """Get environment variables.

    Returns:

        A dictionary of environment variables to config options.

    """

    env_vars = {}

    for env_var in (

        ENV_BATTERY_OVERRIDES,

        ENV_CONFIG,

        ENV_DEFAULT_BATTERY_STRATEGY,

        ENV_DIAGNOSTICS,

        ENV_DISABLE_CALCULATED_DATA,

        ENV_ENDPOINT,

        ENV_HASS_DISCOVERY,

        ENV_HASS_DISCOVERY_PREFIX,

        ENV_HASS_ENTITY_ID_PREFIX,

        ENV_INPUT_UNIT_SYSTEM,

        ENV_MQTT_BROKER,

        ENV_MQTT_PASSWORD,

        ENV_MQTT_PORT,

        ENV_MQTT_RETAIN,

        ENV_MQTT_TLS,

        ENV_MQTT_TOPIC,

        ENV_MQTT_USERNAME,

        ENV_OUTPUT_UNIT_SYSTEM,

        ENV_OUTPUT_UNIT_TEMPERATURE,

        ENV_PORT,

        ENV_RAW_DATA,

        ENV_VERBOSE,

        LEGACY_ENV_ENDPOINT,

        LEGACY_ENV_HASS_DISCOVERY,

        LEGACY_ENV_HASS_DISCOVERY_PREFIX,

        LEGACY_ENV_HASS_ENTITY_ID_PREFIX,

        LEGACY_ENV_INPUT_UNIT_SYSTEM,

        LEGACY_ENV_LOG_LEVEL,

        LEGACY_ENV_MQTT_BROKER,

        LEGACY_ENV_MQTT_PASSWORD,

        LEGACY_ENV_MQTT_PORT,

        LEGACY_ENV_MQTT_TOPIC,

        LEGACY_ENV_MQTT_USERNAME,

        LEGACY_ENV_OUTPUT_UNIT_SYSTEM,

        LEGACY_ENV_PORT,

        LEGACY_ENV_RAW_DATA,

    ):

Yep, that's it. 🤦 I'll get a fix (and write a test to prevent that from hindering us in the future).

Yep, that's it. 🤦 I'll get a fix (and write a test to prevent that from hindering us in the future).

No worries: sorry for not letting you know before, can you believe it's the first time all those decimals appeared in the UI? I saw at mose 3-4 digits in the past. When I upgraded to 10.3 I immediately noticed.

Aaron: doesn't HA have a default precision based on device_class of the sensor? I remember reading something like that in one of the blog posts of new HA versions, but can't find it...

@alexdelprete I think this is where it's done: https://github.com/home-assistant/core/blob/94e2646c875a539f2c48d40eacf24f93f2e69026/homeassistant/components/sensor/init.py#L717-L741

I think this is where it's done:

that adapts the precision when scaling to larger units, makes sense. but I remember something about "default precision" for each device_class. Maybe I'm confusing with a FR I'd like for HA. :)
Thanks for the quick fix.

Going to keep this open until I create and verify the PR.


No such file or directory

I have a project with SPM and Cocoapods dependencies and I have the action running in order to check for outdated SPM:
name: Xcode Dependencies

on:
  schedule:
    - cron: '0 6 * * 1' # Monday at 06:00 UTC

permissions:
  contents: write
  pull-requests: write

jobs:
  dependencies:
    runs-on: macos-latest

    steps:
      - uses: actions/checkout@v3

      - name: Disable cleaning old versions @ brew
        run: export HOMEBREW_NO_INSTALL_CLEANUP=true

      - name: Resolve Dependencies
        id: resolution
        uses: GetSidetrack/action-xcodeproj-spm-update@main
        with:
          forceResolution: true
          failWhenOutdated: false

      - name: Create Pull Request
        if: steps.resolution.outputs.dependenciesChanged == 'true'
        uses: peter-evans/create-pull-request@v4
        with:
          branch: 'dependencies/ios'
          delete-branch: true
          commit-message: 'Bump SPM dependencies versions'
          title: 'Bump SPM dependencies versions'

And I get the following error:
Run GetSidetrack/action-xcodeproj-spm-update@main
[6](https://github.com/bluegroundltd/guest-app-ios/runs/6346686732?check_suite_focus=true#step:4:6)
Run brew install md5sha1sum
[9](https://github.com/bluegroundltd/guest-app-ios/runs/6346686732?check_suite_focus=true#step:4:9)
==> Downloading https://ghcr.io/v2/homebrew/core/md5sha1sum/manifests/0.9.5_1
[10](https://github.com/bluegroundltd/guest-app-ios/runs/6346686732?check_suite_focus=true#step:4:10)
==> Downloading https://ghcr.io/v2/homebrew/core/md5sha1sum/blobs/sha256:c3ce2a7048d5e035493c2f637249da99f726109a9a643498576441c4c9ec7d58
[11](https://github.com/bluegroundltd/guest-app-ios/runs/6346686732?check_suite_focus=true#step:4:11)
==> Downloading from https://pkg-containers.githubusercontent.com/ghcr1/blobs/sha256:c3ce2a7048d5e035493c2f637249da99f726109a9a643498576441c4c9ec7d58?se=2022-05-09T06%3A15%3A00Z&sig=SGX47H8hyDKyGVXVatxJckMzuvU8e2DeqiUGCZpWo0U%3D&sp=r&spr=https&sr=b&sv=2019-12-12
[12](https://github.com/bluegroundltd/guest-app-ios/runs/6346686732?check_suite_focus=true#step:4:12)
==> Pouring md5sha1sum--0.9.5_1.big_sur.bottle.tar.gz
[13](https://github.com/bluegroundltd/guest-app-ios/runs/6346686732?check_suite_focus=true#step:4:13)
🍺  /usr/local/Cellar/md5sha1sum/0.9.5_1: 8 files, 74.6KB
[14](https://github.com/bluegroundltd/guest-app-ios/runs/6346686732?check_suite_focus=true#step:4:14)
==> Running `brew cleanup md5sha1sum`...
[15](https://github.com/bluegroundltd/guest-app-ios/runs/6346686732?check_suite_focus=true#step:4:15)
Disable this behaviour by setting HOMEBREW_NO_INSTALL_CLEANUP.
[16](https://github.com/bluegroundltd/guest-app-ios/runs/6346686732?check_suite_focus=true#step:4:16)
Hide these hints with HOMEBREW_NO_ENV_HINTS (see `man brew`).
[17](https://github.com/bluegroundltd/guest-app-ios/runs/6346686732?check_suite_focus=true#step:4:17)
Run echo "/Users/runner/work/_actions/GetSidetrack/action-xcodeproj-spm-update/main" >> $GITHUB_PATH
[20](https://github.com/bluegroundltd/guest-app-ios/runs/6346686732?check_suite_focus=true#step:4:20)
Run entrypoint.sh -a "." -b "true" -c "false"
[23](https://github.com/bluegroundltd/guest-app-ios/runs/6346686732?check_suite_focus=true#step:4:23)
shasum: ./SwiftPackages/Sourcery/Package.resolved
[24](https://github.com/bluegroundltd/guest-app-ios/runs/6346686732?check_suite_focus=true#step:4:24)
./Blueground.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved
[25](https://github.com/bluegroundltd/guest-app-ios/runs/6346686732?check_suite_focus=true#step:4:25)
./Blueground.xcworkspace/xcshareddata/swiftpm/Package.resolved
[26](https://github.com/bluegroundltd/guest-app-ios/runs/6346686732?check_suite_focus=true#step:4:26)
./Danger-Swift/Package.resolved: No such file or directory
[27](https://github.com/bluegroundltd/guest-app-ios/runs/6346686732?check_suite_focus=true#step:4:27)
Error: Process completed with exit code 1.

But the file ./Danger-Swift/Package.resolved exists.

@sschizas Did you manage to fix this? We're having the same problem.

@Sherlouk : Can we please resolve this issue?

Thank you @thapli9A for tagging me, I can only apologise but it looks like I forgot to watch this repository so I haven't been receiving notifications for bugs like this one here. I haven't intentionally been ignoring it.
I believe what's happening here is that the project is expecting just one Package.resolved file to exist in the directory specified (or root, by default). In your case it looks to be picking up on three different files.
I believe it's then trying to generate a checksum based on a string of all paths combined. So it's not looking for ./Danger-Swift/Package.resolved but instead essentially doing this:
shasum "./Blueground.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved ./Blueground.xcworkspace/xcshareddata/swiftpm/Package.resolved ./Danger-Swift/Package.resolved"

Which in turn is then failing. What I think we need to do to resolve this is handle the situation where multiple are found and hash them all individually and combine the hash so that if any change then the script works as expected.
I've added this to my TODO and can only apologise once again for the delay in getting back to you.

@Sherlouk : No worries. But it's a matter of urgency that we needed this package. The dependent bot doesn't support SPM as of now. And this very interesting alternative we have. Thanks for replying :)

This should now be fixed with version 0.2.0.
It appears this was more of an issue of not supporting workspaces (which I can see from your debug code you're using!). This is now supported and documented in the README.
There is definitely an issue around multiple files being returned by the find command, this may still happen if you have multiple Xcode projects in a single directory and aren't using a workspace. I believe this use-case is rather limited and so haven't addressed it with 0.2.0 - if folks do run into this though please do raise a new issue and we can look into it.
Apologies for the delay once again!

@Sherlouk Thanks for fixing this!

There is definitely an issue around multiple files being returned by the find command, this may still happen if you have multiple Xcode projects in a single directory and aren't using a workspace. I believe this use-case is rather limited and so haven't addressed it with 0.2.0 - if folks do run into this though please do raise a new issue and we can look into it.

We have broken up parts of our project into smaller local SPM packages (e.g. Core, Business, Component) that live in the root folder.

The action works if we provide a workspace argument, as it finds a Package.resolved file:
Identified Package.resolved at '{Project}.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved'.

However, it ignores the other packages. I'm guessing this case is not supported yet? Are there any workarounds?

Hey @alexandersandberg, feel free to raise a new issue to explore this further but I'd love to better understand your architecture here.
One thing to note is that this action is specifically for Xcode projects (and now I suppose workspaces) as opposed to dependencies in Swift Packages themselves. For updating the dependencies listed in a Swift Package itself, you should likely explore this action which is also linked in the README and was the inspiration for this project 😄
So from the screenshot, it may make sense to have both of these actions in a single pipeline. One would update the dependencies listed in your Xcode project (or workspace), and the other would update the dependencies in each of your local packages (CoreKit, BusinessKit, ComponentKit, etc). Does this make sense? - and for the record, this pattern is something I'm doing in my own project 👍
Again, feel free to raise another issue (I'm following the repo now so I'll see it 😂) and especially if you can generate a quick example project just showing where you define your dependencies that would be awesome.

So from the screenshot, it may make sense to have both of these actions in a single pipeline. One would update the dependencies listed in your Xcode project (or workspace), and the other would update the dependencies in each of your local packages (CoreKit, BusinessKit, ComponentKit, etc). Does this make sense? - and for the record, this pattern is something I'm doing in my own project 👍

This sounds like the way to go—I will give it a try. Thanks! 🙂


Configure GitHub Action to publish from GitHub to Terra.

This GitHub action will publish workspace dashboard markdown and notebooks to the target Terra workspace when either (1) a release is created or (2) the workflow is invoked manually using the GitHub Actions user interface.
For test purposes, it currently deploys to here: https://app.terra.bio/#workspaces/fc-product-demo/github-action-deploy-to-terra
To instead have it deploy to featured workspace https://app.terra.bio/#workspaces/help-gatk/Terra Notebooks Playground , follow the instructions within the workflow file to set up the credential in GitHub and update the environment variables to point to that workspace and its bucket.

This is really neat, other then changing the workspace namespace, name, and bucket name this looks good to me.

Thanks Beri! I updated those values. If you can "approve" this, I'll merge it.
After that, if you setup the TERRA_SECRET, you will be able to run with workflow from https://github.com/DataBiosphere/notebooks/actions and see the changes I made to the workspace dashboard markdown reflected in the featured workspace.


SFFCorrector.trend does not provide the full trend when windows > 1

See title.

@AndyTza, try this one on for size.
First you can watch this youtube video on how to use the SFF corrector in lightkurve
https://www.youtube.com/watch?v=gmVg7MIehd4
The written copy of the tutorial is here
http://lightkurve.keplerscience.org/tutorials/2.01-how-to-detrend.html
Follow these steps

Reproduce the issue
Screenshot it breaking and add it here
Find where in the code it is breaking, attempt a fix
Push it to your fork (AndyTza/lightkurve)
Open a Pull Request. We'll then go over your fix and work on it together to check it won't break lightkurve.

_I believe this tutorial from @gully explains how the SFF method works (?) but it isn't necessary for you to know that for this issue.
https://www.youtube.com/watch?v=3Vs9uWW-E84_

Couldn't reproduce the same error.

@barentsen I'm closing this since Andy can't reproduce it. If it's still a problem for you let's look at it together?