Use on custom ESP-IDF project

I would like to integrate TFLite micro into my ESP-IDF project. I managed to get the examples to work.
I started to clone this directory and include it in my own project by adding it on my idf_component.yml.
But I have some problems of versionning when I build :
Executing "ninja all"...
[0/1] Re-running CMake...-- ccache will be used for faster recompilation
-- Building ESP-IDF components for target esp32s3
CMake Error at D:/Espressif_5_1/frameworks/esp-idf-v5.1/tools/cmake/build.cmake:540 (message):
  Traceback (most recent call last):

    File "<frozen runpy>", line 198, in _run_module_as_main
    File "<frozen runpy>", line 88, in _run_code
    File "D:\Espressif_5_1\python_env\idf5.1_py3.11_env\Lib\site-packages\idf_component_manager\prepare_components\__main__.py", line 6, in <module>
      main()
    File "D:\Espressif_5_1\python_env\idf5.1_py3.11_env\Lib\site-packages\idf_component_manager\prepare_components\prepare.py", line 124, in main
      args.func(args)
    File "D:\Espressif_5_1\python_env\idf5.1_py3.11_env\Lib\site-packages\idf_component_manager\prepare_components\prepare.py", line 31, in prepare_dep_dirs
      ).prepare_dep_dirs(
        ^^^^^^^^^^^^^^^^^
    File "D:\Espressif_5_1\python_env\idf5.1_py3.11_env\Lib\site-packages\idf_component_manager\core.py", line 67, in wrapper
      return func(self, *args, **kwargs)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "D:\Espressif_5_1\python_env\idf5.1_py3.11_env\Lib\site-packages\idf_component_manager\core.py", line 529, in prepare_dep_dirs
      downloaded_component_paths, downloaded_component_version_dict = download_project_dependencies(
                                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "D:\Espressif_5_1\python_env\idf5.1_py3.11_env\Lib\site-packages\idf_component_manager\dependencies.py", line 146, in download_project_dependencies
      if is_solve_required(project_requirements, solution):
         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "D:\Espressif_5_1\python_env\idf5.1_py3.11_env\Lib\site-packages\idf_component_manager\dependencies.py", line 99, in is_solve_required
      component.name, spec='=={}'.format(component.version.semver))
                                         ^^^^^^^^^^^^^^^^^^^^^^^^
    File "D:\Espressif_5_1\python_env\idf5.1_py3.11_env\Lib\site-packages\idf_component_tools\manifest\manifest.py", line 275, in semver
      raise TypeError('Version is not semantic')

  TypeError: Version is not semantic

Call Stack (most recent call first):
  D:/Espressif_5_1/frameworks/esp-idf-v5.1/tools/cmake/project.cmake:464 (idf_build_process)
  CMakeLists.txt:22 (project)

I would like to know if this bug is known and if I can easily solve it.
Also, I was wondering if it was possible to directly use the tensorflow lite for microcontroller github directory and integrate it into my project ? And would the esp-NN functions will be used anyway ?

@Steven35700 I have not seen this error. The error is from IDF component manager and it is failing to resolve dependencies. I would suggest you to update component manager, remove dependencies.lock file which got generated in the example directory and see if the error goes away.
rm -rf dependencies.lock build/
python -m pip --upgrade idf-component-manager
idf.py build

Also, I was wondering if it was possible to directly use the tensorflow lite for microcontroller github directory and integrate it into my project ? And would the esp-NN functions will be used anyway ?
Yes, it is possible and esp-nn will be pulled transparently via component manager as this is specified in dependencies. (https://github.com/espressif/tflite-micro-esp-examples/blob/2c89a70157c974491d33f19ed94254ecc5e58df8/components/esp-tflite-micro/idf_component.yml#L8-L10)

Hi @Steven35700
I had the same issue after I do a full clean and try to build.
Here is how I solved it (this is inspired by @vikramdattu 's answer):
$ pip freeze | grep idf-component-manager
idf-component-manager==1.3.2
$ pip install --upgrade pip
$ pip install --upgrade idf-component-manager
$ pip freeze | grep idf-component-manager
idf-component-manager==1.4.1

So I had the issue when I had idf-component-manager version 1.3.2 but now that I have version 1.4.1 the issue is solved.


Added TFRecordData module, test file and TFRecord data decoder

New pull request regarding separated function: TFRecordData

Rewriting it


Add transaction retry info to production checklist

Fixes #3266.

This change is

Online preview: http://cockroach-docs-review.s3-website-us-east-1.amazonaws.com/25598b11734714e29a6178de6be46d611f2b7351/
Edited pages:

v19.1/recommended-production-settings.md
v19.2/recommended-production-settings.md

Online preview: http://cockroach-docs-review.s3-website-us-east-1.amazonaws.com/2e72b079a54068c2332f3def6af45fa39db4d601/
Edited pages:

v19.1/recommended-production-settings.md
v19.2/recommended-production-settings.md

@jseldess are you OK with these edits?

Yes, LGTM now, Rich. Thank you!

Thanks Jesse!


BUG: social icons link is not working of team page

Is there an existing issue for this?

[X] I have searched the existing issues

What went down?
when clicking on social icons on team page it is not working .
https://github.com/mdazfar2/HelpOps-Hub/assets/159682348/d60cf1b3-3afb-4da4-ae15-b16bbbe99ac5
Record

[X] I agree to follow this project's Code of Conduct
[X] I'm a GSSOC'24 contributor
[ ] I'm a VSoC'24 contributor
[X] I want to work on this issue

@mdazfar2 sir please assign me this issue under gssoc label I want to work upon it .

@ANKeshri Ooh shit! we are not looking at this.

you are assigned ✅

@mdazfar2  I have created the pull request for this issue please review it once and merge my pull request .


Cross cluster search integration tests

Description
[Describe what this change achieves]

Category (Integration tests)
Why these changes are required?
What is the old behaviour before changes and new behaviour after changes?

Integration tests related to the cross-cluster search feature created
Issues Resolved
[List any issues this PR will resolve]
Is this a backport? If so, please add backport PR # and/or commits #
Testing
[Please provide details of testing done: unit testing, integration testing and manual testing]
Check List

[ ] New functionality includes testing
[ ] New functionality has been documented
[ ] Commits are signed per the DCO using --signoff

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

Bwc tests are broken on main. Tracking issue here: https://github.com/opensearch-project/security/issues/2221


Sprint3 Flocker Proposal (Maryam, Nora, Kushi, Joanna)

Topic
Calico Critters Club on DNHS Campus (club that appreciates Calico Critters figurines and posts about them)
Visual Design

Written Plan
Theme: Calico critter's house

Banner of the page is the roof / top floor of the calico critter house

There will be 4 critters scattered about the roof, each representing one of the members in our group (Maryam, Kushi, Nora, Joanna)
Will include basic info: brief description/ welcome of site, names, how it works

Floor under the banner/ roof will be the input system where users can input their own text and caption it, then post it for public viewing
Every floor after the first two will be posts. The layout of the post will be randomly generated from 4 different layouts (1 created by each person). For example: bedroom, kitchen, living room, playroom. Each layout will also have some scene including at least one calico critter

These layouts will also include some sort of connection to the floor below and above it (ladder or stairs).

the stairs/ ladder can have different user inputs about the layout, like the collection the critter is from, their names, breed/ species,

Outside the post box on the top left will be an upvote/ downvote system where other public users can view the post and agree/ disagree with the post. The Image for the up/down vote will be happy and sad critters.

Other things to consider:

adding other post formats like images, videos, gifs, links
adding user customization where they can choose the layout they want and customize the critter on their floor
Making sure all the floors are connected visually and no gaps, make sure scrolling is smooth and everything it formatted nicely

Data to be captured
Critter name, critter species, critter collection, critter age, critter owner name, critter owner grade

Altered Proposal (after deciding class theme)
Calico Critters voting game
Vote on your favorite critter based on information like name, description, collection, and age. Your chosen critter will assign you to a group with others who chose the same critter, where you can talk to others, social media-style.
Mockup
TBA
Data to be captured
Critter name, critter description, critter species, critter collection, critter owner name, critter owner grade

Added moderator rules in drop down format and added style elements (glow effect when hover only drop downs)

https://www.canva.com/design/DAGVRAW7T9Q/1_dht5LI3IpbvAshHDNp_w/edit

User Workflow Flowchart
https://www.canva.com/design/DAGVRNqfruw/TyNJ-7wN1Nzfze6hRyO9tA/edit


Ability to find a tag by name.

All,
While using rust git2 version 0.8.13, I was trying to find a way to get a tag by name, or even being able to iterate over git show-ref --tags to find the tag in question.

Mike D.

Thanks for the report! If this is something that upstream libgit2 doesn't implement, you'll want to file an issue there. Otherwise a PR is all that's needed to bind an existing API!

you can lookup references by name: https://docs.rs/git2/0.13.8/git2/struct.Repository.html#method.reference with that you can find a tag as refs/tags/<tag>

@extrawurst , not sure I follow. When I look at the docs for reference, it says:

Create a new direct reference.
This function will return an error if a reference already exists with the given name unless force is true, in which case it will be > overwritten.

I'm not looking to create a new reference but look up an existing how so I'm a bit confused as to how this helps?

Sorry wrong link: https://docs.rs/git2/0.13.8/git2/struct.Repository.html#method.find_reference

@extrawurst , ah okay, using find_reference, I was able to get what I was looking for.

@madelaney you are welcome 😊


ESlint throwing lint errors originating in node_modules

I've opened Visual Studio Code to my working directory with .estlintrc.js and .eslintignore files.
VS code is showing hundreds of error all originating from the flow-typed and node_modules directories. This issue persists whether or not flow-typed and node_modules are present in the .eslintignore file.
This issue arouse suddenly a few weeks ago. Before that everything worked as expected.
VSCode v1.33.1
ESlint extension v1.8.2
Flow Language Support Extension v1.1.1
eslint ^4.5.0
eslint-plugin-flowtype ^2.35.0

@caseysiebel can you provide me with a GitHub repository I can clone that demos this. I can not reproduce this.

Are you opening these files in the editor (e.g. the once from the node_modules folder?)


PHP 7.2 throws ErrorException (E_DEPRECATED): __autoload() is deprecated, use spl_autoload_register() instead on line 99 of Autoload.php

It looks like the backwards comparability fix is broken in the new version of PHP

I noticed the master branch has a fix for this; is there a good way to get that into a release?

You can simply use the green download or clone button on GitHub. It's more or less a new package from master.

Ideally I'd like to use packagist and composer to get a PHP 7.2 compatible version of phpCAS. I'm not comfortable following master while there is major development work on v2 of phpCAS

Reading into your composer.json file it looks like I can target 1.3.x-dev and get the master branch.
Its a little better peace of mind than just targeting dev-master so I don't randomly get 2.0 when its released.  Thanks a bunch.

Yes, that is probably the best way.

Hello, which require I have to use for my composer ?
actualité I use this "jasig/phpcas": "1.3.*"
I have to change to "jasig/phpcas": "dev-master"  ? to get this fix ?
Thanks

I just updated my composer.json to use "1.3.x-dev", but it still appears to pull "dev-master"... are we sure we won't get 2.0 when it's eventually pushed?

Bonjour,
I had the same problem and solve it directly by modifying the CAS-1.3.5/CAS/Autoload.php file. The problem was that php7.2 cry because it think that __autoload() is defined although it is never defined (because of the never executed else branch of the if then else statement.
This if then else statement is only usefull if phpCAS-1.3.5 is supposed to be working under php5.0.x!
Is it really true?
My solution consisted simply in commenting (of suppressing) the elseif branch..  Then I renamed the CAS-1.3.5/ directory with a personal suffix.
It works on php5.3.29, php7.2.0 and php7.2.2.
Regard,
-- Maurice

@adampk90 I suppose we can just leave this issue open until there is a tagged version of 1.3 with this fix. I would assume the maintainers wouldn't burn us on this intentionally though. Use at your own discretion.

Has been release in new version. Closing issue


Add Comprehensive Documentation

Documentation Update via DocSmith
This PR adds comprehensive documentation based on actual codebase analysis.
Each documented feature has been verified against the implementation.

Built an AI agency that takes a repo URL as an input and attempts to make "Comprehensive Documentation" for it. Its so bad lol


feat(performance): webpack performance budgets

What kind of change does this PR introduce?
A feature
Did you add tests for your changes?
Yes
If relevant, did you update the documentation?
Not yet
Summary

Does this PR introduce a breaking change?

It doesn't introduce a breaking change.
Other information
Performance budgets PR here is implementation of @addyosmani's RFC #3216
Here are the schema properties with descriptors:
    "performance": {
      "description": "Configuration for web performance recommendations.",
      "additionalProperties": false,
      "properties": {
        "hints": {
          "description": "Turn hints on or off",
          "type": "boolean"
        },
        "maxInitialChunkSize": {
          "description": "Total size of all initial chunks (in bytes)",
          "type": "number"
        },
        "maxAssetSize": {
          "description": "Filesize limit (in bytes) when exceeded, that webpack will provide performance hints",
          "type": "number"
        },
        "errorOnHint": {
          "description": "Throw errors instead of warnings when performance hints are found",
          "type": "boolean"
        }
      },
      "type": "object"
    }

@sokra changes made, checks passed. Looking good to go now pending any second review items.

https://github.com/webpack/webpack.js.org/issues/435 Documentation issue has been created so we can fulfill.

Could you rebase and squash?

Yup will do so once I fix those two related things.

Okay I'm not sure I did the squash correct, however we can squash on merge commit. (Unless you want it for review).


fix: include capacity type and resource.Quantity in launch template cache key

Fixes #N/A
Description
Cherry pick of https://github.com/aws/karpenter-provider-aws/pull/5882
How was this change tested?
Does this change impact docs?

[ ] Yes, PR includes docs updates
[ ] Yes, issue opened: #
[x] No

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

30 of 30 (100.0%)  changed or added relevant lines in 3 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.06%) to 82.603%

Totals

Change from base Build<PHONE_NUMBER>:
0.06%

Covered Lines:
5052

Relevant Lines:
6116

💛  - Coveralls


Stacked pipes are now just unanchored on maps

Description

After #28308 was merged, there are now pipes and vents on some maps just laying down there unanchored.
Reproduction

Start a round

Screenshots

Additional context
These screenshots are just from Train and Oasis. There is a lot of unanchored pipes on other maps also.

yes just delete all the unanchored pipes

you need to report all the maps and places and it will be fixed

lzk228

I mentioned this in #cartography already but if you resave all the maps and search the files for anchored: false you can find all the duplicates and erase them easily.
I recommend doing it this way as some of the loose pipes might be under windows/walls or other hard to see places.

I mentioned this in #cartography already but if you resave all the maps and search the files for anchored: false you can find all the duplicates and erase them easily.

The funny thing is that some of the pipes and vents are unanchored due to map's distro or waste beng built with intentional stackings. This can especially be seen on Train station, which requires practically redoing loops completely.

The funny thing is that some of the pipes and vents are unanchored due to map's distro or waste beng built with intentional stackings. This can especially be seen on Train station, which requires practically redoing loops completely.

Well, that's just silly

this is why train was derotated

for most maps just delete duplicate pipes for train itll need redoing because funny


Improve behavior of BIO_s_mem when NOCLOSE is set

BIO_s_mem instances have a propensity to leak. This was returned from a recent valgrind run in an application I was working on:
==1007580== at 0x483C815: malloc (vg_replace_malloc.c:431)
==1007580== by 0x2C2689: CRYPTO_zalloc (in /home/vien/microedge-c/test)
==1007580== by 0x295A17: BUF_MEM_new (in /home/vien/microedge-c/test)
==1007580== by 0x295A78: BUF_MEM_new_ex (in /home/vien/microedge-c/test)
==1007580== by 0x28CACE: mem_new (in /home/vien/microedge-c/test)
==1007580== by 0x285EA8: BIO_new_ex (in /home/vien/microedge-c/test)
==1007580== by 0x231894: convert_pubkey_ECC (tpm2_driver.c:221)
==1007580== by 0x232B73: create_ephemeral_key (tpm2_driver.c:641)
==1007580== by 0x232E1F: tpm_gen_keypair (tpm2_driver.c:695)
==1007580== by 0x22D60A: gen_keypair (se_driver_api.c:275)
==1007580== by 0x21FF35: generate_keypair (dhkey.c:142)
==1007580== by 0x24D4C8: __test_dhkey (dhkey_test.c:55)
The problem is described in detail in the changelogs, but the executive summary is that:
a) When BIO_NOCLOSE is set on the BIO, if the user hasn't retrieved the BUF_MEM structure via BIO_get_mem_ptr or BIO_set_mem_ptr, it will leak
b) It is counter-intuitive that a call to BIO_get_mem_data doesn't assign ownership of the data pointer to the caller, leading, as when BIO_NOCLOSE is set, the application also must call BIO_[get|set]_mem_ptr to prevent a BUF_MEM leak, or worse, encounter a double free in the event that the pointer returned from BIO_get_mem_data is considered by the application to be orphaned when BIO_CLOSE is set.
This patch series is an attempt to reconcile those problem and create a more intuitive user experience
Checklist

[x] documentation is added or updated
[x] tests are added or updated

@t8m yeah, understood.  I'll just do a documentation change here, and fix this more properly in master

pushed an update making this a documentation only fix, I'll improve the API in the master branch, where we can be a bit more flexible with the API

This pull request is ready to merge

Merged to master, 3.1, and 3.0 branches. Thank you for your contribution.


Add thread names to long wait task threads

This will be critical when analyzing thread dumps.

Reducing the severity as this is a request for improvement.

@ashensw Not sure why this is High complexity issue. My feeling is that this will be a very small fix. Can you check with @madurangasiriwardena on this ?

Thank you for your contribution!
We are closing this issue since it has not been prioritized for a long time. Chances are that it has already been solved in more recent versions. If not, we will be re-evaluating this when it becomes a priority.


Haskell (Documentation)

How does it come, that this works without Haskell?
I think it is required in order to provide type inference and compilation?
Thanks a lot

Currently the Elm is compiled on the server using the compiler bin. Haskell isn't required for this, only the standard Elm dep.


Dynamic Import not working

Hey guys, I'm trying to use the dynamic import system, but it doesn't seem to be working.
I'm trying to import components only on the client side and not server side render them.
const ButtonGroup = dynamic(import('../components/base').then(m => {
  const { ButtonGroup } = m;
  ButtonGroup.__webpackChunkName = m.__webpackChunkName;
  return ButtonGroup;
}), {ssr: false});
const RoundedButton = dynamic(import('../components/base').then(m => {
  const { RoundedButton } = m;
  RoundedButton.__webpackChunkName = m.__webpackChunkName;
  return RoundedButton;
}), {ssr: false});

I console logged what RoundedButton should be and I got this giant function:

In my render function I have this:
<RoundedButton
    disabled={!auth.isLoggedIn || draft}
    flat={true}
    onClick={() => (
        this.handleBookmark(draft, match.params.id.replace(new RegExp('_', 'g'), ' '))
    )}
    styles={{
        button: [styles.bookmark__button, isBookmarked && styles.bookmarked]
    }}
    type="button"
    value={isBookmarked ? 'Bookmarked' : 'Bookmark'}
/>

But I'm getting an error:
TypeError: Cannot read property 'click' of undefined

which I'm suspecting it doesn't like the onClick I'm passing through there. Anyone know what's up?

[x ] I have searched the issues of this repository and believe that this is not a duplicate.

Tech
Version

next
v5.0.0

node
v8.1.2

OS
mac osx

browser
chrome

This wasn't actually the issue. I've changed my import scheme to the one below but the issue is fixed:
let MegaDraftWrapper = null;
let AppNotifications = null;
let lunyrDecorator = null;

if (process.browser) {
  // Components
  SideContent = require('./sideContent/SideContent').default;
  MegaDraftWrapper = require('./MegaDraftWrapper').default;
  ...
}


Adds new blog post about kubernetes and the edge

Overall, this example is clearly aimed at more experienced users- I don't think I'd recommend this to someone who doesn't know what Kubernetes is.
Well written though! I couldn't spot any obvious errors

Oh yeah. There are a billion Kuberenetes blog posts out there, so i didn't want to gown the path of Kubernetes 101.


[New game]: Mole Game

🎮 Game Request
Overview
The Mole Game is a simple, interactive whack-a-mole type game built using JavaScript, HTML, and CSS. The objective of the game is to click on the moles that appear randomly on a 3x3 grid to score points, while avoiding clicking on the plants, which will end the game.
Point down the features
Features

Interactive Gameplay: Click on moles to gain points.
Random Tile Generation: Moles and plants appear in random tiles at set intervals.
Score Tracking: Your score is updated in real-time as you click on moles.
Game Over: Clicking on a plant ends the game and displays your final score.

Select program in which you are contributing
GSSoC24
Code of Conduct

[X] I follow CONTRIBUTING GUIDELINE of this project.

Hey @bhaveshnegi !
Thank you for raising an issue 💗
You can self assign the issue by commenting /assign in comment 😀
Make sure you follow CODE OF CONDUCT and CONTRIBUTING GUIDELINES 🚀
Don’t Forget to ⭐ our GameZone🎮
Make sure you join our Discord🕹

Hey @bhaveshnegi!
We are already having a similar game request in #3338 👀
Make sure you come up with a cool unique idea 😀
Waiting for your new game idea 💗.

Hey @bhaveshnegi ! Thank you so much for your raising the issue💗
It’s all yours, you can come anytime again and make some contributions! 🚀
Alone, we can do little, but together we can do so much! 😇


Cannot merge OneToOne where the PrimaryKey is the ForeignKey

Describe the bug
Creating a OneToOne relationship where the PrimaryKey is also the ForeignKey MikroORM fails to fetch data from the database; though it was able to insert it.
Stack trace
UnhandledPromiseRejectionWarning: ValidationError: You cannot merge entity 'User' without identifier!
    at Function.fromMergeWithoutPK (C:\repro\node_modules\mikro-orm\dist\utils\ValidationError.js:50:15)
    at EntityValidator.validatePrimaryKey (C:\repro\node_modules\mikro-orm\dist\entity\EntityValidator.js:62:43)
    at EntityManager.merge (C:\repro\node_modules\mikro-orm\dist\EntityManager.js:214:24)
    at EntityManager.findOne (C:\repro\node_modules\mikro-orm\dist\EntityManager.js:120:23)
    at EntityManager.findOneOrFail (C:\repro\node_modules\mikro-orm\dist\EntityManager.js:130:24)
    at C:\repro\src\index.ts:27:2

To Reproduce

Source code
// entities/User.ts
import { Entity, PrimaryKey, OneToOne } from 'mikro-orm';
import { Profile } from './Profile';

@Entity()
export class User {
	@PrimaryKey()
	user_id!: number;

	// Setting joinColumn: 'user_id' results in:
	// Error: alter table `user` add column `user_id` integer null; - SQLITE_ERROR: duplicate column name: user_id
	// Without joinColumn, MikroORM creates the column `profile_user_id` which it shouldn't in this case
	// However it doesn't actually use the column when inserting data
	@OneToOne({ fieldName: 'user_id' })
	profile!: Profile;
}

// entities/Profile.ts
import { Entity, PrimaryKey, OneToOne } from 'mikro-orm';
import { User } from './User';

@Entity()
export class Profile {
	@PrimaryKey()
	user_id!: number;

	@OneToOne(() => User, (user) => user.profile, { fieldName: 'user_id' })
	user!: User;
}

// index.ts
import { MikroORM } from 'mikro-orm';
import { User } from './entities/User';
import { Profile } from './entities/Profile';

(async () => {
	const db = await MikroORM.init({
		type: 'sqlite',
		entitiesDirs: ['./entities'],
		entitiesDirsTs: ['./entities'],
		dbName: 'test.sqlite',
		baseDir: __dirname,
		cache: { enabled: false },
	});

	await db.getSchemaGenerator().ensureDatabase();
	await db.getSchemaGenerator().createSchema();

	const user = new User();
	user.profile = new Profile();

	await db.em.persistAndFlush(user);

	db.em.clear();

	// ValidationError: You cannot merge entity 'User' without identifier!
	await db.em.findOneOrFail(User, user);
})();

Expected behavior
I expect MikroORM to be able to fetch the data it just inserted into the database.
Additional context
I inherited a mysql database where the User table is linked to the Profile table using the PrimaryKey, meaning User.PrimaryKey = Profile.PrimaryKey
Versions

Dependency
Version

node
v12.16.1

typescript
3.8.3

mikro-orm
3.6.8

sqlite3
4.1.1

mysql2
2.1.0

It could be that you are trying to use Composite and Foreign Keys as Primary Key, or more specifically the Use-Case 2: Simple Derived Identity.

You should have only one property on the Profile entity (the 1:1, but add primary: true to the options). Mapping single column to multiple properties is not supported (but you can have virtual properties).

It could be that you are trying to use Composite and Foreign Keys as Primary Key, or more specifically the Use-Case 2: Simple Derived Identity.

@opotonil Ah, yes it is. Thank you, I didn't quite know what to search for. Although quick note: Use-Case 2: Simple Derived Identity fails in sqlite with SQLite3 Foreign & Primary keys may only be added on create

Look at the docs that are linked here, there is pretty much the same use case covered.

@B4nan Indeed it is, sorry about that. I'll close this issue then.

I see that em.populate(user, 'address') performs a where-in query, would it not be better to do a simple select?
select `e0`.* from `address` as `e0` where `e0`.`user_id` in (123) order by `e0`.`userid` asc
vs
select `e0`.* from `address` as `e0` where `e0`.`user_id` = 123


Support both ema and non-ema models

Hi, could ema and non-ema models be supported at the same time?
The produced images may be quite different:
EMA:

Non-EMA:

Both with exact the same params


bug:

Is there an existing issue for this?

[X] I have searched the existing issues

Package Version
1.1.0
Current Behavior
note supporting node version above 14 to get install using npm
Expected Behavior
should install the node version above 14
Steps To Reproduce
should provide proper guide to do this
Link to Minimal Reproducible Example (StackBlitz, CodeSandbox, GitHub repo etc.)
No response
Anything else?
provide any support or reference to solve this

Thanks for reporting. This issue is temporarily closed due to lack of information. Please provide a minimal reproducible example and reopen this issue.

information is that when I use to install this package with npm version above 6 or node version above 15
it gives conflicts
and If I do the same with lower versions it works properly?


Loosen pyarrow pin

Background:

Currently getting aws-sdk-solver errors in https://github.com/TileDB-Inc/tiledb-vcf-feedstock/pull/111, likely due to pyarrow 11 no longer being built against the latest conda-forge pins
TileDB-VCF was migrated to use the arrow C data interface in https://github.com/TileDB-Inc/TileDB-VCF/pull/653
tiledb-feedstock now installs aws-sdk-cpp from conda-forge (https://github.com/conda-forge/tiledb-feedstock/pull/241)
We recently dropped the py37 builds in https://github.com/TileDB-Inc/tiledb-vcf-feedstock/pull/112

At least we're making progress. No more aws-sdk-cpp solver errors, Now they're all failing with the libgoogle-cloud solver errors!

I'm working on fixing the solver errors upstream in tiledb-feedstock, eg https://github.com/conda-forge/tiledb-feedstock/pull/246

I just merged https://github.com/conda-forge/tiledb-feedstock/pull/246. It builds tiledb 2.19 against google-cloud-cpp 2.21. Once the binaries are uploaded, I'll restart the CI here to see if that helps the solver

So I built libtiledb 2.19 against libgoogle-cloud 2.21, but the conda solver is still failing because it still hasn't been built against the latest abseil:
    Could not solve for environment specs
    The following packages are incompatible
    ├─ libabseil ==20240116.1 cxx17_h59595ed_2 is requested and can be installed;
    ├─ libcurl ==8.5.0 hca28451_0 is requested and can be installed;
    ├─ libgoogle-cloud ==2.21.0 h72bcb37_2 is requested and can be installed;
    ├─ libtiledbvcf 0.28.1**  is installable with the potential options
    │  ├─ libtiledbvcf 0.28.1 would require
    │  │  └─ tiledb 2.19.*  with the potential options
    │  │     ├─ tiledb [2.19.0|2.19.1] would require
    │  │     │  └─ libcurl >=7.88.1,<8.0a0 , which conflicts with any installable versions previously reported;
    │  │     ├─ tiledb [2.19.0|2.19.1] would require
    │  │     │  └─ openssl >=1.1.1w,<1.1.2a , which can be installed;
    │  │     ├─ tiledb [2.19.0|2.19.1] would require
    │  │     │  └─ libgoogle-cloud >=2.12.0,<2.13.0a0 , which conflicts with any installable versions previously reported;
    │  │     └─ tiledb 2.19.1 would require
    │  │        └─ libabseil >=20230802.1,<20230803.0a0 , which conflicts with any installable versions previously reported;
    │  └─ libtiledbvcf 0.28.1 conflicts with any installable versions previously reported;
    └─ openssl ==3.2.1 hd590300_0 is not installable because it conflicts with any installable versions previously reported.

I'm hoping a bot will auto-open the libabseil migration PR (just like the one it sent to update 2.20 in main, https://github.com/conda-forge/tiledb-feedstock/pull/245). But if that doesn't happen soon, I'll try to manually perform the migration.

Migration here: https://github.com/conda-forge/tiledb-feedstock/pull/250

Superseded by https://github.com/TileDB-Inc/tiledb-vcf-feedstock/pull/111/commits/7aede11743f5a57f9dbbfa05aea806a1af9808b8 in #111, merged as https://github.com/TileDB-Inc/tiledb-vcf-feedstock/commit/5f11910511df9268ff0a37eaa7fa8630603fff29


404 documentation link

The link to paper sizes in the documentation is not found...
http://pdfkit.org/docs/paper_sizes.html
from
http://pdfkit.org/docs/getting_started.html

Here they are for reference from the source code:
  SIZES = {
    '4A0': [4767.87, 6740.79],
    '2A0': [3370.39, 4767.87],
    A0: [2383.94, 3370.39],
    A1: [1683.78, 2383.94],
    A2: [1190.55, 1683.78],
    A3: [841.89, 1190.55],
    A4: [595.28, 841.89],
    A5: [419.53, 595.28],
    A6: [297.64, 419.53],
    A7: [209.76, 297.64],
    A8: [147.40, 209.76],
    A9: [104.88, 147.40],
    A10: [73.70, 104.88],
    B0: [2834.65, 4008.19],
    B1: [2004.09, 2834.65],
    B2: [1417.32, 2004.09],
    B3: [1000.63, 1417.32],
    B4: [708.66, 1000.63],
    B5: [498.90, 708.66],
    B6: [354.33, 498.90],
    B7: [249.45, 354.33],
    B8: [175.75, 249.45],
    B9: [124.72, 175.75],
    B10: [87.87, 124.72],
    C0: [2599.37, 3676.54],
    C1: [1836.85, 2599.37],
    C2: [1298.27, 1836.85],
    C3: [918.43, 1298.27],
    C4: [649.13, 918.43],
    C5: [459.21, 649.13],
    C6: [323.15, 459.21],
    C7: [229.61, 323.15],
    C8: [161.57, 229.61],
    C9: [113.39, 161.57],
    C10: [79.37, 113.39],
    RA0: [2437.80, 3458.27],
    RA1: [1729.13, 2437.80],
    RA2: [1218.90, 1729.13],
    RA3: [864.57, 1218.90],
    RA4: [609.45, 864.57],
    SRA0: [2551.18, 3628.35],
    SRA1: [1814.17, 2551.18],
    SRA2: [1275.59, 1814.17],
    SRA3: [907.09, 1275.59],
    SRA4: [637.80, 907.09],
    EXECUTIVE: [521.86, 756.00],
    FOLIO: [612.00, 936.00],
    LEGAL: [612.00, 1008.00],
    LETTER: [612.00, 792.00],
    TABLOID: [792.00, 1224.00]
  };

I've submitted two pull requests for this issue #703 and #704.


improve error checking in write_ts

data has two columns
first column as "UTC" units
second column has same name as variable (or ts_name, whichever it is)

probably should do the same test on the output of read_ts? @aappling-usgs ?

yeah, sounds good.

@aappling-usgs can we close this one?

absolutely!


HELP!

<EMAIL_ADDRESS>start /home/rick/Discord-SelfBot
node self.js

sh: 1: node: not found
npm ERR<EMAIL_ADDRESS>start: node self.js
npm ERR! Exit status 127
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>start script.
npm ERR! This is most likely a problem with the Discord_Selfbot package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     node self.js
npm ERR! You can get their info via:
npm ERR!     npm owner ls Discord_Selfbot
npm ERR! There is likely additional logging output above.
npm ERR! System Linux 3.16.0-4-amd64
npm ERR! command "/usr/bin/nodejs" "/usr/bin/npm" "start"
npm ERR! cwd /home/rick/Discord-SelfBot
npm ERR! node -v v0.10.29
npm ERR! npm -v 1.4.21
npm ERR! code ELIFECYCLE
npm WARN This failure might be due to the use of legacy binary "node"
npm WARN For further explanations, please read
/usr/share/doc/nodejs/README.Debian
npm ERR!
npm ERR! Additional logging details can be found in:
npm ERR!     /home/rick/Discord-SelfBot/npm-debug.log
npm ERR! not ok code 0

I am on a linux

i think you need at least node v 4.0.0 that was the problem at least for me but dont ask me i am a silly guy ^^

I can't get node to work on my vps. I have been trying but idk

Do you have discord? so I can talk to someone about it

if so add RickRolled7889#1159

Alright I got it fixed Thanks for helping?


Propagate GraphQL errors to caller instead of throwing network exception

Fixes / Enhancements
Currently, GraphQL errors are not propagated back to the caller as part of the QueryResult.
Instead, a network exception is thrown beforehand since there is no valid data in the FetchResult. I would assume expected behavior is to not throw a network exception but instead let the user handle the domain-specific GraphQL errors by returning a QueryResult where data == null but errors are populated.

:tada: This PR is included in version 1.0.0-beta.1 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:

:tada: This PR is included in version 1.0.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Tag Choose Window Gets Lost At Bottom Of Screen

Describe the bug
When trying to choose tags near the bottom of a page, the scroll window for the tags gets lost (see video). It gets difficult to choose a tag (when scrolling) when it is on the very bottom of a page.
Would be great if the tags column when selecting would choose going up like the "select" columns when close to the bottom of the Obsidian window.
Screenshots
See attached screen capture video.
Desktop (please complete the following information):

OS: macOS Monterey Version 12.5.1
Version: Current version of Obsidian & DB Folder

https://user-images.githubusercontent.com/106125987/188758275-e93d18ad-e12d-4edd-aef6-6caa51e9096c.mov

Already on process with https://github.com/RafaelGB/obsidian-db-folder/issues/139


[Leaderboard] Added Show ID/Room Name toggle

Also has some style change to prevent bottom bar from blocking toggle buttons (might block ability icons, but we don't have that many abilities yet unless it is running with/without scripts and cause abilities to remain in center! Workaround needed!)

:clap:

squashed 2 commits


Can't find my node.js install

Currently getting  LanguageServer Failed. Node.js is not installed on your $PATH
But, it is. I'm using NVM to manage my node versions. I echoed my $PATH at the command prompt, and it points to where my node binary is located.
/Users/myname/.local/share/nvm/v16.13.0/bin
Am I missing a setup step or config setting in Nova?  Thanks.

Hey, sorry to hear you’re having an issue. Do other aspects of Nova work with you’re node.js installation, e.g. the built in terminal or other extensions that use node.js (like the JSON or TypeScript extensions)? I personally use fnm and I had to specify a special shell argument so that It worked with Nova. I’m not sure if there is something similar with nvm?
If this is a common issue, I’ll update the readme with extra steps for node version managers.

I will check and report back. I'll try installing a JSON extension and see what happens.

JSON extension fails to activate, too, claming it can't find npm or node is not on my $PATH but it clearly is. Nova is the only app that can't find it.

Hey, I stumbled on this link: https://library.panic.com/nova/environment-variables I think you need to make sure you configure nvm in the right file for Nova to see it. I just found out my own install wasn't actually setup correctly and it was using an old version of node, oop!
if setting it up that way works, I'll update the docs and improve the error message the extension shows you too.


fix: TRANSACTION IS IN PENDING

Describe the bug
I had tried to transfer my ETH from Ethereum A1 to Taiko A1 but the money is stuck.
Steps to reproduce

Do bridge $ETH from Ethereum A1 to Taiko A1
Click on the "claim" button

Additional context

@qwardit Taiko network was slow this day as we had a very large transaction count. Should be claimable, sorry for the issue.


CI/CD setup

Description
This is PR is not be ready for merge yet. There are some points we need to improve together with NV.
This PR is for setting up the CI/CD. Pytorch collaborates with circle CI to provide CI/CD. I am new to circle CI so I spent some efforts to read their doc and come up with our 1st version. Since we need to use GPU machine, we actually can only choose their machine executor with choice of 3 types of card P4,T4,V100
Their available GPU images come with cuda driver and their supporting libs installed. We can not use our own docker image as it is not supported (error msg below).
Build-agent version 1.0.129077-32fb56c8 (2022-06-17T08:48:08+0000)
Creating a dedicated VM with nvcr.io/nvidia/tensorrt:22.01-py3 image
failed to create host: Image nvcr.io/nvidia/tensorrt:22.01-py3 is not supported

So based on the vanilla cuda environment, here are the steps that I set up in config.yaml (recipe to set up the CI/CD)

install cudnn, tensorRT lib
install python required libs and tensorRT python lib
python setup.py install
run the fx2trt tests ( passed )
tried to run torch_tensorrt tests (failed and need help from @narendasan. Below is the command I used in ssh mode. The circle CI supports ssh model to debug on their machine)

# modules
circleci@default---us-central1-a---005145ed-e543-4a5c-bb30-119e0ba80409:~/project$ bazel test //tests/modules:test_modules --compilation_mode=dbg --test_output=errors
ERROR: Skipping '//tests/modules:test_modules': no such target '//tests/modules:test_modules': target 'test_modules' not declared in package 'tests/modules' defined by /home/circleci/project/tests/modules/BUILD
ERROR: no such target '//tests/modules:test_modules': target 'test_modules' not declared in package 'tests/modules' defined by /home/circleci/project/tests/modules/BUILD

# core
circleci@default---us-central1-a---005145ed-e543-4a5c-bb30-119e0ba80409:~/project$ bazel test //tests/core:core_tests  --compilation_mode=dbg --test_output=errors --jobs=1
ERROR: /home/circleci/project/tests/core/BUILD:8:10: no such target '//tests/modules:mobilenet_v2_scripted.jit.pt': target 'mobilenet_v2_scripted.jit.pt' not declared in package 'tests/modules' defined by /home/circleci/project/tests/modules/BUILD and referenced by '//tests/core:jit_models'
ERROR: Analysis of target '//tests/core:test_detecting_input_type' failed; build aborted:

# py
circleci@default---us-central1-a---005145ed-e543-4a5c-bb30-119e0ba80409:~/project$ bazel test //tests/py:test_api  --compilation_mode=dbg --test_output=errors --jobs=1
ERROR: error loading package 'tests/py': Unable to find package for @py_test_deps//:requirements.bzl: The repository '@py_test_deps' could not be resolved: Repository '@py_test_deps' is not defined.

Overall, circle CI is good to use and can satisfy our needs for general CI/CD.
Pros:

meets general needs
speed is ok

Cons:

3 types of machines P4,T4,V100
GPU images are limited
trigger mode supports new PR trigger and fixed time trigger only. Not flexible for certain folder.

I want to discuss with NV folks in general, if we could deploy circle CI for our CI/CD. What else you think we can possibly improve?

Seems good to me. It's better than no CI. :)

Also is there a way to have Circle CI skip certain commits. For example we auto generate the documentation and check it into the repo. It would be good to skip those commits.

@narendasan For documentation changes may add [skip ci] in PR title and it should just work?
https://github.blog/changelog/2021-02-08-github-actions-skip-pull-request-and-push-workflows-with-skip-ci/

@narendasan  I addressed the comments before. If you are Ok with it, could we land it first and could you help to add the torchscript tests later? We can iterate based on this version as a beginning for our future test needs.


Error 401 even though working fine

Everything working as expected, although im getting this through my logs:
Request-Error proxy/network/api/s/default/stat/device Error: Request failed with status code 401
Any thoughts?

now im getting this error:
[9/27/2022, 10:00:43 PM] [UniFiPoeControl] Login error Error: Request failed with status code 400 api/login
[9/27/2022, 10:00:43 PM] [UniFiPoeControl] Request-Error api/self/sites Error: Request failed with status code 400
could it be anything todo with Pi-Hole? (which im running as a docker container)

Can you give me more infos?
Logs
UniFiOS Version
UniFiOS Console (UDMSE, UDMPRO etc.)
What do you want to control? Which switch?

Sorry I didn’t get an alert saying you’d replied, I still have this error but it works?
Dream Machine Pro
UniFi OS 4.0.6
Toggling a unifi poe switch
What logs would you like?

[9/14/2024, 5:24:30 AM] [UniFiPoeControl] Request-Error proxy/network/api/se
1f/sites Error: Request failed with status code 401
[9/14/2024, 5:24:30 AM] [UniFiPoeControl]  Successfully logged in to Unifi controller


Missing cluster error in simulated test

Reproduction steps / Feature
Seeing cluster missing error when tried to run simulated tests.
1 . Add FLABEL-3.1 simulated test
2 . Run regen command ( ./scripts/tools/zap_regen_all.py )
3 . Shows cluster missing error

Missing cluster:
Account Login
Application Launcher
Fixed Label
Audio Output
Channel
Thread Network Diagnostics
Diagnostic Logs
Door Lock
Low Power
Unit Localization
Time Format Localization
Media Input
Media Playback
Occupancy
Pressure Measurement
User Label
Wake on LAN
Bridged Device Basic Information
Localization Configuration

Platform
other
Platform Version(s)
N/A
Type
YAML tested
(Optional) If manually tested please explain why this is only manually tested
No response
Anything else?
diff link:
https://github.com/project-chip/connectedhomeip/compare/master...manjunath-grl:connectedhomeip:Simulated_Cluster_MissingError
Execution logs:

exe_log.txt

@raju-apple @manjunath-grl Does it help if you enable the relevant cluster(s) in the placeholder app .zap files?

@bzbarsky-apple sure i will try it.


cargo build --release

/crossbeam-0.1.6/src/sync/seg_queue.rs:34:29
|
34 |             ready: unsafe { mem::transmute([0usize; SEG_SIZE]) },
|                             ^^^^^^^^^^^^^^
error: aborting due to previous error
Build failed, waiting for other jobs to finish...
error: Could not compile crossbeam.
To learn more, run the command again with --verbose.

Thanks for the report! This issue is... a bit cryptic though? Do you have more information about what's going on here?

@bsed looks like your are using a very outdated version of the crossbeam crate, which sadly does not work with current Rust any more :(
It could have been pulled by one of your dependencies, and you might need to update those. One notable crate which depends on old crossbeam and does not work any more is simple_parallel. If your project depends on simple_parallel, consider switching to the rayon crate! :)

I have user rustup update nighty  updated to the new version  ,and set rustup update defauly in  ubuntu17.10 . thank you.


Profiles don't show up in dropdown until I do something

Such as add a terminal

Duplicate of #121818


Add feature to get event details and compose email drafts

I added two new features that serve as a work around while we wait for our application to get whitelisted for CORS from the Khoros side:

The first button opens a new tab calling the event details API from Khoros. This is for convenience only and is basically the same as entering the URL in the browser manually. Obviously the user needs to have moderator access in Khoros and has to be logged in at the time.
The second button reveals a text area that the user can paste the API response (see point 1) into. When clicking "Open email draft", the user's local email application opens with an email draft. The email draft has the event's title as the subject and all attendees in BCC.

Looks nice. I'll package it up this afternoon and deploy it to our BTP production account.


gh#100: dsVideoPort: Add L1 and L2 Test cases for ALLM APIs

Add L1 and L2 test cases for dsSetAllmEnabled and dsGetAllmEnabled

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


Will other simulator benchmark evaluation code be released?

Thanks for your amazing work for providing invaluable insights on cross-embodiment pretraining for robot manipulation. I noticed the paper says HPT is evaluated on several simulation benchmarks, including MetaWorld, RoboMimic, Fleet-Tools and Simpler. And MetaWorld is included in this repo. Could you open-source the other benchmarks' evaluation code? Especially, I'm very interested in Simpler, because its real2sim feature.

You can find some of the Simpler Env Code with proprioception inputs in this PR https://github.com/simpler-env/SimplerEnv/pull/3. I might need more time to look into releasing the evaluation code from other benchmarks. Thanks for understanding.


Expand OBJ utility

Describe the problem
OBJ Utility in #6361 has two current issues:

Only saves OBJs at runtime, does not load
Only targets Unity GameObjects/meshes. Does not offer ability to directly provide array of vectors3 which can be totally async and not a coroutine

Loading should also offer both loading and creating a GameObject as well as loading data into a struct...so again things can be totally async background thread
Describe the solution you'd like
A clear and concise description of what you want to happen.
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Additional context
Add any other context or screenshots about the feature request here.

List item 1 should be solvable using https://docs.microsoft.com/en-us/windows/mixed-reality/mrtk-unity/features/spatial-awareness/spatial-object-mesh-observer?view=mrtkunity-2021-05
List item 2 does sound interesting to move away from referencing scene objects and thus the main thread requirement. We've added this to the backlog as a potential 3.x timeframe improvement.

We appreciate your feedback and thank you for reporting this issue.
Microsoft Mixed Reality Toolkit version 2 (MRTK2) is currently in limited support. This means that Microsoft is only fixing high priority security issues. Unfortunately, this issue does not meet the necessary priority and will be closed. If you strongly feel that this issue deserves more attention, please open a new issue and explain why it is important.
Microsoft recommends that all new HoloLens 2 Unity applications use MRTK3 instead of MRTK2.
Please note that MRTK3 was released in August 2023. It features an all new architecture for developing rich mixed reality experiences and has a minimum requirement of Unity 2021.3 LTS. For more information about MRTK3, please visithttps://www.mixedrealitytoolkit.org.
Thank you for your continued support of the Mixed Reality Toolkit!


updated readme with correct grammer and some typo

🤔 This is a

[] Documentation Update

✍ Description

updated readme with correct grammer and some typo

Added to documentation

[ ] readme file

🐱💻 Use a meme/gif to describe how you feel for contributing (optional)

Hey, read the contribution guideline (contribution.md file) on how to make a successful PR.


Use CLI args for 'nda-transform/count_assoc_files.py'

Infers nda_submissions_path, source_path from the passed in -id and -collection CLI arguments

Hi Tashrif, I have resolved all outstanding suggestion.

Thank you Dheshan for this work.


Respect user time settings

If the user prefers 12h time, display times in that format.

:+1:

:-1:


Why is a global Prisma client exposed in development?

Referring to this snippet over here:
https://github.com/t3-oss/create-t3-app/blob/59f8ad4f2104aa1f11508b55da75c333dce03625/template/addons/prisma/client.ts#L15-L17
Saw this without any specific explanation and out of curiosity wanted to know what the reason is for exposing Prisma like this. Just to have easy access in the browser console during development?

https://www.prisma.io/docs/guides/database/troubleshooting-orm/help-articles/nextjs-prisma-client-dev-practices

Thanks for the clarification. Didn't expect it to be that important until I read the respective documentation you just linked.


Enable genesymbols plotting

IMPORTANT: Please search among the Pull requests before creating one.
Title

Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[x] New feature (non-breaking change which adds functionality)

Description

Allow using a column from :attr:anndata.AnnData.var as gene symbols for some plotting functions.
How has this been tested?

TODO
Have release notes been modified?

N/A
Closes

closes #581

Amazing, really glad we're finally closing this old issue!


The end-goal should be to make framework compilers unnessecary

why compilers exists
The goal of every framework is to support reactivity while feeling as close to native js as possible.
It's really obvious to anyone who's used svelte that the closer reactive code perceptibly feels to native js, the better the developer experience is.
signals without a compiler
Let's design an api for a non-compiler web framework, the goal is to make users feel like they are writing native js without using a compiler.
For setting signals, the closest we can get to this syntax is a proxy with a value accessor. I'll be using .$ as the accessor.
// ideal (native)
let state = 1
state += 2
ext.onChange(newVal => { state = newVal })

// reactive (v1)
let state = State(1)
state.$ += 1
ext.onChange(newVal => { state.$ = newVal })

But what about reading signals?
// ideal (v1)
const derived = state.$ + 1
elem.innerText = derived.$

Without a compiler, it's impossible to make getting the state reactive in a way that feels native. Since it gets recomputed all the time, we also have to wrap that in a function.
So let's invent Computed, it's basically a variable with a value that's declaratively based on another variable, rather than being imperatively set to whatever the variable is at the time.
// ideal (v1)
const derived = state.$ + 1

// reactive (v2)
const derived = Computed(() => state.$ + 1)

But a computed function can only work for variables we have the luxury of creating ourselves, what happens when we need to set some value that we didn't create? Like the dom?
Without inventing a new function, we could technically make all derived states eagerly compute, and shove a side effect into the computed function.
// ideal (v2)
elem.innerText = Computed(() => state.$ + 1).$

// reactive (v2.eager)
Computed(() => {
  elem.innerText = state.$ + 1
})

And anything that cannot be garbage collected would have some extra boilerplate.
// ideal (v2)
Signal.Computed(() => state.$.event && ext.on(state.$.event, value => console.log(value)))

// reactive (v2.eager)
let listener
Signal.Computed(() => {
  if (state.$.event !== listener?.event) {
    if (unsub) {
      listener.unsub()
      listener = undefined
    }
    if (state.$.event) {
      listener = ext.on(state.$.event, value => console.log(value))
    }
  }
})

But we can't really detect whether a Computed includes side effects or not, which means that every derived has to be eagerly pulled, and we don't want that.
We want to only recompute when the values are actually needed by something outside. Looks like it's time for a new primitive!
So we'll invent Effect, It's literally just a computed signal that's eager.
And instead of returning value, it's used to imperatively set some values inside the function. We use this when we can't declaratively define them with Computed alone.
Since we don't return anything, we can just use the return value for cleanup functions
// reactive (v3)
Effect(() => {
  const listener = ext.on(state.$.event, value => console.log(value))
  return listener.unsub
})

Ok, we basically invented solid signals wrapped with a proxy.
It doesn't seem too bad to write, what's the problem?
the problem
If you're trying to pass a simple variable around, you have to be extra careful to always pass state and not state(), otherwise you'll unwrap the proxy and lose the reactivity. You can't just pass the value around freely.
With solid, I find it quite the chore to ensure i'm not accidentally calling my getter one step too early, and I personally find it really frustrating to debug when I do.
The existence of mergeProps and splitProps make this problem even more self-evident. You also get horrendous stuff like const children = children(() => props.children)
This is a core limitation of Javascript itself that make it hard to design reactive frameworks that feel native without rewriting the syntax of js itself.
At it's core, compilers are trying to solve this limitation, letting users write native-looking js that's can do non-native things.
inventing a compiler
So let's write a compiler to handle this stuff for us!
Combine the value and reference into one, and unwrap the value automatically whenever necessary. That way we don't need to worry about this anymore.
let $state = 0
const $derived = $state + 1

$effect(() => console.log($derived))

// compiles to

var $state = State(0)
var $derived = Computed(() => $state.$ + 1)

Effect(() => console.log($derived.$))

Oops, we basically just invented svelte runes.
why we should tackle compilers
I think it's clear to me that all modern frameworks are dancing around this same core idea.
We want to express our ui in a declarative & reactive way that feels as native as possible, preferrably as close to the dom as possible.
The problem is javascript isn't declarative or reactive, and there are immovable walls to the developer experience because of that.
With solid that looks like everything being wrapped in functions.
With react that looks like blunt-force rerunning and component rules.
With svelte that looks like a building a compiler so reactivity finally feels native.
But what if instead of needing to build a compiler to let you write native-looking code, we just... made it native?
I think it would be a huge waste of the best opportunity we have not to tackle this, it would solve the core issues plaguing every web framework at it's root.
an example proposal
What if javascript had a top level proxy? That's it. That's the entire proposal.
const MyProxy = Proxy.CreateTopLevelProxy({
  set(value, newValue) {
    console.log("set", value, newValue)
    return newValue
  }
  get(value) {
    console.log("get", value)
    return value
  }
})

state = MyProxy(2)  // "set undefined 2"
state               // "get 2"
value += 1          // "set 2 3"
value               // "get 3"

Then framework authors can implement signals to look as follows.
let state = Signal.State(0)
const derived = Signal.Computed(state + 1) // probably still impossible... for now!

Keep in mind, this is a terribly shallow example of a proposal. I'm not trying to push that this is the practical solution to this problem. This would get rid of the need for compilers and mergeProps, but it would also probably be impossible to optimize.
It's intentionally extreme because the point is really the problem that this is trying to solve, my goal is just to hopefully convince you that this problem is worth solving at all.
At the very very least, I would like to steer the focus of this proposal to be on how it can be extended in the future to solve the need for compilers.
Some extra reading

https://github.com/tc39/proposal-signals/issues/114
https://dev.to/this-is-learning/the-quest-for-reactivescript-3ka3

One idea that was left open as part of the decorator proposal was to allow for a future addition of variable decorators. Using such a general-purpose feature, one could then choose to employ it specifically for signals if desired.
const @signal counter = 0;
effect(() => console.log(counter)); // Prints 0
counter++; // Prints 1

I favor an approach like this because we would get a general purpose language capability through decorators that could be used for all sorts of things, including signals.

aaaaand! If folks are open to classes (which, they're really good as long as folks don't abuse inheritance!)
you can have this today:
class GameBoard {
  @signal turns = 0;

  @signal
  get nextTurn() {
    return this.turns + 1;
  }

  nextTurn = () => this.turns++;
}

let board = new GameBoard();

board.turns // 0
board.nextTurn();
board.turns // 1
board.nextTurn // 2

using decorators, we don't need special property access, $, or functions (State / Computed), -- with getters, we don't need to do anything special to know that we have reactive values -- it's business as usual, and any effect implementation is going to automatically do the right thing.
With decorators and classes, we achieve the goal of not using compilers while still having native JS "just properties" ergonomics .

aaaaand! If folks are open to classes (which, they're really good as long as folks don't abuse inheritance!)
you can have this today:
class GameBoard {
  @signal turns = 0;

  @signal
  get next() {
    return this.turns + 1;
  }

  nextTurn = () => this.turns++;
}

let board = new GameBoard();

board.turns // 0
board.nextTurn();
board.turns // 1
board.next // 2

using decorators, we don't need special property access, $, or functions (State / Computed), -- with getters, we don't need to do anything special to know that we have reactive values -- it's business as usual, and any effect implementation is going to automatically do the right thing.
With decorators and classes, we achieve the goal of not using compilers while still having native JS "just properties" ergonomics .

I'm curious about this!! if wha you're saying is true, I would push for this 100%
could you share a slightly more complex example? how would this work with computeds?

I'm curious about this!! if what you're saying is true, I would push for this 100%

:tada:

could you share a slightly more complex example? how would this work with computeds?

I can adapt existing code that doesn't yet use signals, but you can play with this @signal decorator here in signal-utils: https://github.com/proposal-signals/signal-utils
Here are the tests for the decorator: https://github.com/proposal-signals/signal-utils/blob/main/tests/%40signal.test.ts
Here is an example adapted from a "Toggle Group" component, where a reactive .value will re-set the set of values that make up the active state for the toggle group (toggles where multiple can be active at once):
class MultiToggleGroup extends Component {
  /**
   * Normalizes @value to a Set
   * and makes sure that even if the input Set is reactive,
   * we don't mistakenly dirty it.
   */
  @signal
  get activePressed() {
    let value = this.args.value;

    if (!value) {
      return new SignalSet();
    }

    if (Array.isArray(value)) {
      return new SignalSet(value);
    }

    if (value instanceof Set) {
      return new SignalSet(value);
    }

    return new SignalSet([value]);
  }
)

here, @signal wraps the getter in a Signal.Computed, and then is mostly for referential integrity of the returned SignalSet.
I hope this helps! and if there are any questions specific to utils that can be made with the proposal, there is a #signal-utils channel in the signals discord https://discord.gg/vCPCVnfMHN, or you could open an issue for discussion on the signal utils repo!


Fix reset_based scoring usage in brax env default definition function

This PR aims to fix the way the reset_based scoring function is used in the create_default_brax_task_components function, which allows the creation of a default Brax environment.
The reset_based scoring function takes as input a reset function play_reset_fnand thus allows to define either deterministic or stochastic tasks. However, it has a second advantage compared to the usual scoring function: as it vmap the play_reset_fn, it works with any dimension of genotype to evaluate. Unlike the default scoring function that can only evaluate a fixed number of genotypes (of the same size as the init_states given as input).
The current create_default_brax_task_components takes as input a boolean is_reset_based and depending on it returns either the default scoring function or the reset_based scoring function. This commit uniformises this with the following changes:

instead of an is_reset_based boolean, use a deterministic boolean (True by default) to set up either a deterministic or stochastic environment.
use the reset_based scoring function in both cases, so the scoring is scalable to any batch-size.
remove the batch-size from the inputs as this is not used anymore, making this function more general.

Codecov Report

Merging #109 (f9f4d3e) into develop (46e82b6) will increase coverage by 0.10%.
The diff coverage is 75.00%.

@@             Coverage Diff             @@
##           develop     #109      +/-   ##
===========================================
+ Coverage    90.69%   90.80%   +0.10%
===========================================
  Files           84       84
  Lines         4677     4677
===========================================
+ Hits          4242     4247       +5
+ Misses         435      430       -5

Impacted Files
Coverage Δ

tests/default_tasks_test/brax_task_test.py
97.14% <ø> (ø)

qdax/tasks/brax_envs.py
96.66% <75.00%> (+8.33%)
:arrow_up:

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


Cannot use uts.Release[:] (type []uint8) as type []int8

I'm trying to build weave 1.6.1 for armhf and get this compile error:

make: Entering directory '/go/src/github.com/weaveworks/weave'
go build -i -ldflags "-extldflags \"-static\" -X main.version=git-11f56031f150" -tags netgo -o prog/weaver/weaver ./prog/weaver
# github.com/weaveworks/weave/prog/weaver
prog/weaver/checkpoint.go:37: cannot use uts.Release[:] (type []uint8) as type []int8 in argument to charsToString

See the attached build script how to reproduce.
build.sh

I don't have an arm machine around to reproduce with your script but it happens because Utsname is architecture dependent.
The following quick patch should get you going for now (note that this will break x86 and we would need a more robust way if/when upstreaming it).
diff --git a/prog/weaver/checkpoint.go b/prog/weaver/checkpoint.go
index fac1b08..840af8d 100644
--- a/prog/weaver/checkpoint.go
+++ b/prog/weaver/checkpoint.go
@@ -50,7 +50,7 @@ func checkForUpdates(dockerVersion string, network string) {
 	checker = checkpoint.CheckInterval(&params, updateCheckPeriod, handleResponse)
 }

-func charsToString(ca []int8) string {
+func charsToString(ca []uint8) string {
 	s := make([]byte, len(ca))
 	i := 0
 	for ; i < len(ca); i++ {

As you have probably figured out by now, we don't officially support ARM but we thank you for looking into it and might consider upstreaming your changes once you get it to a working state.

...we would need a more robust way if/when upstreaming it

I think you'd simply need to use build tags and have separate definitions of the func.

why not simply inline the function? then no type signature is needed.


Inconsistency in Pricing Details in Documentation Pages

Describe the Issue
There was a discussion in slack about a inconsistency in pricing in two of our doc pages.

On the New Pricing page, it says that Platform form fees (on incoming contributions) and Payout fees (on outgoing payments) are free, except for credit card payments.BUT, on the more detailed Pricing pages, it says that after $1K in funds received thru other channels or bank transfer payments, then there will be an ongoing $10 monthly charge.We are small organization, but sometimes get one-time donations over $1K.   Our average monthly income is under $1K/month.  What would our pricing be?

The pages in question are,
https://docs.opencollective.com/help/about/pricing
and,
https://opencollective.com/pricing?tab=organization
The original discussion can be found at,
https://opencollective.slack.com/archives/C0HSLRNVC/p1614554323031400
cc: @piamancini @alanna : Including you both as I see you've altered these page info.

@alanna : Isn't it that we keep all the issues in the https://github.com/opencollective/opencollective repo? Just wondering if this was transferred here by mistake.

You are correct that we generally keep all issues in the main repo. Documentation is a bit of an exception, because it's the one kind of issue handled by a different team than all other issues. Our new docs person @shannondwray is still getting her feet under her, but once she's ready she can decide whether to keep docs issue separate. For now it's fine either way.
@SudharakaP this has been fixed with a temporary patch, i.e. just linking to the pricing page, and outdated pricing info has been removed.
When me and Shannon looked at the situation we felt we needed to think more about what pricing info belongs in the docs. We don't want to have multiple sources of truth, and the pricing page on the website is the canonical source. So if you have any thoughts about what content to put in the docs about pricing, let us know! We're thinking a super brief description with a link to the pricing page, then some more detailed FAQ content.

You are correct that we generally keep all issues in the main repo. Documentation is a bit of an exception, because it's the one kind of issue handled by a different team than all other issues. Our new docs person @shannondwray is still getting her feet under her, but once she's ready she can decide whether to keep docs issue separate. For now it's fine either way.
@SudharakaP this has been fixed with a temporary patch, i.e. just linking to the pricing page, and outdated pricing info has been removed.

Thanks for the explanation. 😄

When me and Shannon looked at the situation we felt we needed to think more about what pricing info belongs in the docs. We don't want to have multiple sources of truth, and the pricing page on the website is the canonical source. So if you have any thoughts about what content to put in the docs about pricing, let us know! We're thinking a super brief description with a link to the pricing page, then some more detailed FAQ content.

My thoughts is that the way it is now is the best. Because pricing is something that I feel many people will look at the very beginning of deciding if they wanna join open collective and I feel it's good to keep it up-to date and at one location so there's no discrepancy (and easy to maintain as we just have to update one place).
I feel having the pricing (as well as the FAQ) on the website and just simply linking it from the docs as it's done now is the best way. Just my two cents; maybe it's best to tag others as well to weight on this (cc: @opencollective/core). 😄

You are correct that we generally keep all issues in the main repo. Documentation is a bit of an exception, because it's the one kind of issue handled by a different team than all other issues. Our new docs person @shannondwray is still getting her feet under her, but once she's ready she can decide whether to keep docs issue separate. For now it's fine either way.

According to this issue which is pinned in the documentation repository for 2 years,  we make it very clear that documentation issues should be in the main repository and tagged "documentation".
Moving it back.


Flutter build apk --release issue

When I try to build release so i found this error
* What went wrong:
Execution failed for task ':sstp_flutter:verifyReleaseResources'.
> A failure occurred while executing com.android.build.gradle.tasks.VerifyLibraryResourcesTask$Action
   > Android resource linking failed
     ERROR:C:\Users\cheta\AppData\Local\Pub\Cache\hosted\pub.dev\sstp_flutter-1.0.9\android\src\main\AndroidManifest.xml:21:6-32:19: AAPT: error: 'specialUse' is incompatible with attribute foregroundServiceType (attr) flags [camera=64, connectedDevice=16, dataSync=1, location=8, mediaPlayback=2, mediaProjection=32, microphone=128, phoneCall=4].

     ERROR:C:\Users\cheta\AppData\Local\Pub\Cache\hosted\pub.dev\sstp_flutter-1.0.9\android\src\main\AndroidManifest.xml:34:10-45:19: AAPT: error: 'specialUse' is incompatible with attribute foregroundServiceType (attr) flags [camera=64, connectedDevice=16, dataSync=1, location=8, mediaPlayback=2, mediaProjection=32, microphone=128, phoneCall=4].

any update??

To resolve this you need to fix the lines that occurred, notice that in the exception that appears to you it says exactly like this: ERROR:C:\Users\cheta\AppData\Local\Pub\Cache\hosted\pub.dev\sstp_flutter-1.0. 9\android\src\main\AndroidManifest.xml:21:6-32:19: AAPT: error: 'specialUse' is incompatible with attribute foregroundServiceType (attr) flags [camera=64, connectedDevice=16, dataSync=1, location =8, mediaPlayback=2, mediaProjection=32, microphone=128, phoneCall=4]., therefore the problem is in your AndroidManifest.xml, the foregroundServiceType attribute is using the 'specialUse' value which is incompatible and only accepts the flags mentioned above, therefore change the foregroundServiceType flag to connectedDevice in your AndroidManifest.xml and the problem will no longer occur

We need to update this plugin's Android SDK to 34 because, according to this Android Developers page: https://developer.android.com/develop/background-work/services/fg-service-types?hl=pt-br, " In Android 14 (API level 34) and higher, you must declare a suitable service type for each foreground service." That's why when we run flutter build apk --release, it doesn't recognize the "specialUse" attribute and we get the same error as aakashch0179

Do you resolve this issue??

Hello everyone , problem has solved on version 1.1.0 . See https://pub.dev/packages/sstp_flutter/changelog#110
Thanks to dear Arshia Eihami .

I close this issue since it fixed.


Each of these should be resolved in one of two ways:

Determine that they are obsolete and delete/close
Determine that they are live and make sure they are associated with an open issue

#76 is live and should be picking up activity again: we were talking about it yesterday.
#74 isn't ready for review unless its tests pass; @danbryce is this obsolete or live?

#76 badly needs a rebase on main.  I didn't want to take that upon myself, since it can be difficult because of the history rewriting, but RN it's not installable, because it's missing installation and dependency patches on main.


Custom shorcut doesn't work on Text Extractor.

Microsoft PowerToys version
0.63.1
Installation method
Microsoft Store
Running as admin
Yes
Area(s) with issue?
TextExtractor
Steps to reproduce
I've changed the default shortcut combination of TextExtractor and It just didn't show up.
✔ Expected Behavior
to tool showed up
❌ Actual Behavior
Nothing happened.
Other Software
No response

can you verify this issue is still active with version 0.72 of PowerToys?
/needinfo


Improve readability of job controller unit tests

What type of PR is this?
/kind cleanup

What this PR does / why we need it:
Which issue(s) this PR fixes:

Special notes for your reviewer:
Does this PR introduce a user-facing change?

NONE

/assign @alculquicondor
/assign @mimowo
/assign @tenzen-y

/assign @yaroslava-serdiuk
/unassign @alculquicondor
/unassign @mimowo

/lgtm

/lgtm
/approve


IsExternalInit to use package

Fix #369

Codecov Report

Merging #433 (7bc2fb3) into master (aea9a88) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #433   +/-   ##
=======================================
  Coverage   80.68%   80.68%
=======================================
  Files         145      145
  Lines       12450    12450
  Branches     1681     1681
=======================================
  Hits        10045    10045
  Misses       1893     1893
  Partials      512      512

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 aea9a88...7bc2fb3. Read the comment docs.


Reprocess is breaking on checkSuperseded

I've reprocessed a bunch of FATAL Error'd streams
In the logs are ERRORs related to checkSuperseded.
Superseded.txt
In the Stream browser, the output Streams are showing as deleted with missing attributes

Currently unable to reproduce missing file data

Retest after next release


issue #82 - bitwise operators

I've re-applied the original commit for this.

I've been through the updates for bitwise operators for the current master - and it doesn't work. Something has changed since introducing these changes, haven't figured it out yet so closing this request for now.

Weird. What was the problem exactly?

One thing I recently changed was to make it so that compiler hook functions are implicitly defined in the __operators__ module now. The problem may be that you need to add lines to loader.cpp to create operator symbols for bitand, bitor, etc., and on the lib-clay side public import those into operators instead of defining them there.


update select from mssql to mysql need help

Greetings,
need help migrating my query to mysql.
before mssql, I have a query like this
        UPDATE TOP (1) user_sessions
            SET last_access = ?
            OUTPUT a.user_id
        FROM (SELECT TOP 1 * FROM user_sessions
            WHERE user_id = ?
            ORDER BY created_at DESC) AS a
        WHERE user_sessions.user_id = a.user_id
            AND user_sessions.session_keys = a.keys

i tried to transform it mysql, and it worked with this query
start transaction
select * from sessions where user_id = 'id' limit 1 for update;
update sessions set last_access = '2016-10-03 20:15:39' where user_id = 'id';
commit

but it's not working
Error 1064: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'select * from sessions where user_id = ? limit 1' at line 3

any suggestions? I am using raw sql builder..

We should fixed all issues for mssql, if you still have any problem, please create a new issue.
Thank you.


auto detect Docker credentials missing before pushing to Code Pipeline

we can detect if the pipeline is missing registry credentials before pushing, do that so deploy fails faster.

implemented in ab70ed312a5e0847bfd679b41b62744153bb4bec


No Response Roborock S5 Max

Hi, maybe can anyone help me to add Roborock S5 Max to Home Kit? Installed Homebridge Xiaomi Roborock Vacuum, added the same name and IP address and still no response. What and where i have to add to make it available? :)

Did you get the token as explained in the README?

yes, token is abcdef1234567890abcdef1234567890

That looks like a made-up token to me. You need to extract the token that is generated by your vacuum when registering in the Xiaomi Home app.

well.. installed xiaomi home app, but can't find anything about "token". Could you please tell me, where is it? Have scrolled all app menu twice.. nothing..

There are a few methods about extracting the token in the README: https://github.com/homebridge-xiaomi-roborock-vacuum/homebridge-xiaomi-roborock-vacuum#xiaomi-token

im runing Mac Os, so this is the end for me. Thanks anyway

So do I, and I extracted mine long ago using this method: https://python-miio.readthedocs.io/en/latest/discovery.html#tokens-from-backups

So i extracted sqlite file from my iphone backup. Please, can you help me - how to extract token from it? "the miio-extract-tokens can be used to extract the tokens from it."  <- do i have to write this command to terminal?

made it, thanks!!!

@EdvardasKey it looks like you made it work. I'll go ahead and close this issue. Feel free to reopen it if you need any follow-up.


feat: Repeating operations for util::async

Async framework needed a way to do repeating operations (think simplest cases like AmendmentBlockHandler).
This PR implements the absolute minimum, barebones repeating operations that

Can't return any values (void)
Do not take any arguments in the user-provided function
Can't be scheduled (i.e. a delay before starting repeating)
Can't be stopped from inside the user block of code (i.e. does not have stop token or anything like that)
Can be stopped through the RepeatedOperation's abort() function (but not from the user-provided repeating function)

@kuznetsss @cindyyan317 I think the code is ok and ready to go but on CI/mac it did fail before with much higher than the amount of calls we expect. I am not sure how this could happen but perhaps that's some jitter on the runner. I guess we need to see if it fails again or the destructor i added fixes it somehow (on my mac i never have issues even without the destructor).


7: Add ignoring private methods

Close #7.

Codecov Report

Merging #10 (b3d56ab) into master (517eb08) will decrease coverage by 2.41%.
The diff coverage is 91.26%.

@@             Coverage Diff              @@
##             master      #10      +/-   ##
============================================
- Coverage     98.38%   95.97%   -2.42%
- Complexity      136      146      +10
============================================
  Files            17       19       +2
  Lines           310      348      +38
  Branches         14       29      +15
============================================
+ Hits            305      334      +29
- Partials          5       14       +9

Impacted Files
Coverage Δ
Complexity Δ

...etter/generator/GetterSupplierSourceGenerator.java
100.00% <ø> (ø)
3.00 <0.00> (ø)

...etter/generator/SetterSupplierSourceGenerator.java
100.00% <ø> (ø)
3.00 <0.00> (ø)

...ig/metter/element/descriptor/MethodDescriptor.java
83.33% <72.72%> (-16.67%)
8.00 <6.00> (+4.00)
:arrow_down:

...dev/alexengrig/metter/processor/BaseProcessor.java
95.23% <75.00%> (ø)
10.00 <1.00> (ø)

...rig/metter/element/descriptor/FieldDescriptor.java
93.33% <90.90%> (-6.67%)
7.00 <6.00> (-4.00)

...grig/metter/processor/SetterSupplierProcessor.java
92.10% <91.42%> (-7.90%)
16.00 <14.00> (+5.00)
:arrow_down:

...grig/metter/processor/GetterSupplierProcessor.java
92.30% <91.66%> (-7.70%)
17.00 <15.00> (+5.00)
:arrow_down:

...g/metter/element/descriptor/ElementDescriptor.java
100.00% <100.00%> (ø)
3.00 <3.00> (?)

...grig/metter/element/descriptor/TypeDescriptor.java
100.00% <100.00%> (ø)
11.00 <4.00> (-7.00)

...v/alexengrig/metter/exception/MetterException.java
100.00% <100.00%> (ø)
2.00 <2.00> (?)

... and 7 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 cb70204...b3d56ab. Read the comment docs.


Input expected to have 1 channel but got 6 channels instead

While trying to run evaluation with:
torchpack dist-run -np 1 -v python tools/test.py configs/nuscenes/det/transfusion/secfpn/camera+lidar/swint_v0p075/convfuser.yaml pretrained/bevfusion-det.pth --out ./BEVFusion_results.pkl --eval mAP
I run into the error seen bellow, does anyone have a similiar problem?
I suspect it has something to do with the Radar changes, increasing the conv layer input size by 5, but not sure, yet.

i have the exact prerequesites
did create_data.py (which created "nuscenes_infos_val_radar.pkl - which I renamed and deleted the radar out)
got newest bevfusion-det.pth file

Output:
return _VF.meshgrid(tensors, **kwargs)  # type: ignore[attr-defined]
2023-12-06 22:39:32,609 - mmdet - INFO - load checkpoint from http path: https://github.com/SwinTransformer/storage/releases/download/v1.0.0/swin_tiny_patch4_window7_224.pth
load checkpoint from local path: pretrained/bevfusion-det.pth
[                                                  ] 0/6019, elapsed: 0s, ETA:Traceback (most recent call last):

File "tools/test.py", line 232, in
main()

File "tools/test.py", line 205, in main
outputs = multi_gpu_test(model, data_loader, args.tmpdir, args.gpu_collect)

File "/home/berk/.conda/envs/BEVFusion/lib/python3.8/site-packages/mmdet/apis/test.py", line 98, in multi_gpu_test
result = model(return_loss=False, rescale=True, **data)

File "/home/berk/.conda/envs/BEVFusion/lib/python3.8/site-packages/torch/nn/modules/module.py", line 1102, in _call_impl
return forward_call(*input, **kwargs)

File "/home/berk/.conda/envs/BEVFusion/lib/python3.8/site-packages/torch/nn/parallel/distributed.py", line 886, in forward
output = self.module(*inputs[0], **kwargs[0])

File "/home/berk/.conda/envs/BEVFusion/lib/python3.8/site-packages/torch/nn/modules/module.py", line 1102, in _call_impl
return forward_call(*input, **kwargs)

File "/home/berk/.conda/envs/BEVFusion/lib/python3.8/site-packages/mmcv/runner/fp16_utils.py", line 128, in new_func
output = old_func(*new_args, **new_kwargs)

File "/home/berk/PycharmProjects/math-879-23-berk-hybrid-fusion/DeepFusion/BEVFusion_MIT_version/mmdet3d/models/fusion_models/bevfusion.py", line 253, in forward
outputs = self.forward_single(

File "/home/berk/.conda/envs/BEVFusion/lib/python3.8/site-packages/mmcv/runner/fp16_utils.py", line 128, in new_func
output = old_func(*new_args, **new_kwargs)

File "/home/berk/PycharmProjects/math-879-23-berk-hybrid-fusion/DeepFusion/BEVFusion_MIT_version/mmdet3d/models/fusion_models/bevfusion.py", line 301, in forward_single
feature = self.extract_camera_features(

File "/home/berk/PycharmProjects/math-879-23-berk-hybrid-fusion/DeepFusion/BEVFusion_MIT_version/mmdet3d/models/fusion_models/bevfusion.py", line 133, in extract_camera_features
x = self.encoders["camera"]["vtransform"](

File "/home/berk/.conda/envs/BEVFusion/lib/python3.8/site-packages/torch/nn/modules/module.py", line 1102, in _call_impl
return forward_call(*input, **kwargs)

File "/home/berk/PycharmProjects/math-879-23-berk-hybrid-fusion/DeepFusion/BEVFusion_MIT_version/mmdet3d/models/vtransforms/depth_lss.py", line 100, in forward
x = super().forward(*args, **kwargs)

File "/home/berk/.conda/envs/BEVFusion/lib/python3.8/site-packages/mmcv/runner/fp16_utils.py", line 214, in new_func
output = old_func(*new_args, **new_kwargs)

File "/home/berk/PycharmProjects/math-879-23-berk-hybrid-fusion/DeepFusion/BEVFusion_MIT_version/mmdet3d/models/vtransforms/base.py", line 349, in forward
x = self.get_cam_feats(img, depth, mats_dict)

File "/home/berk/.conda/envs/BEVFusion/lib/python3.8/site-packages/mmcv/runner/fp16_utils.py", line 214, in new_func
output = old_func(*new_args, **new_kwargs)

File "/home/berk/PycharmProjects/math-879-23-berk-hybrid-fusion/DeepFusion/BEVFusion_MIT_version/mmdet3d/models/vtransforms/depth_lss.py", line 88, in get_cam_feats
d = self.dtransform(d)

File "/home/berk/.conda/envs/BEVFusion/lib/python3.8/site-packages/torch/nn/modules/module.py", line 1102, in _call_impl
return forward_call(*input, **kwargs)

File "/home/berk/.conda/envs/BEVFusion/lib/python3.8/site-packages/torch/nn/modules/container.py", line 141, in forward
input = module(input)

File "/home/berk/.conda/envs/BEVFusion/lib/python3.8/site-packages/torch/nn/modules/module.py", line 1102, in _call_impl
return forward_call(*input, **kwargs)

File "/home/berk/.conda/envs/BEVFusion/lib/python3.8/site-packages/torch/nn/modules/conv.py", line 446, in forward
return self._conv_forward(input, self.weight, self.bias)

File "/home/berk/.conda/envs/BEVFusion/lib/python3.8/site-packages/torch/nn/modules/conv.py", line 442, in _conv_forward
return F.conv2d(input, weight, bias, self.stride,

RuntimeError: Given groups=1, weight of size [8, 1, 1, 1], expected input[6, 6, 256, 704] to have 1 channels, but got 6 channels instead

Primary job  terminated normally, but 1 process returned
a non-zero exit code. Per user-direction, the job has been aborted.

mpirun detected that one or more processes exited with non-zero status, thus causing
the job to be terminated. The first process to do so was:
Process name: [[47040,1],0]
Exit code:    1

https://github.com/mit-han-lab/bevfusion/issues/478
Solved the problem for me!


Validation/binding review

As part of KodKod work and #6790, I'm refreshing my memory of MVC's binding/validation system. Since it's been months/years since I interacted with this in detail, I'm essentially coming to this as an outsider without any particular sympathy for why things are like they are. I might well be missing important justifications, so please interpret these thoughts as being about usability not MVC's internal logic.
While MVC's binding and validation system is powerful and flexible, I'm finding it difficult to reason about which parts of it take effect in which cases, and the defaults frequently seem unsafe (in the sense that absent/invalid inputs can pass through as "valid" even when the developer thinks they have enforced presence/validity):

Difference between top-level params and model properties

Validation rules such as [Required], [StringLength], etc. only get enforced for model properties

They have no effect on top-level params, even though it looks like they would
RISK A: Developer relies on top-level validation attributes, but they silently fail to protect

For complex types, top-level params get instantiated automatically whereas complex-typed model properties do not get instantiated unless at least one sub-subproperty was supplied

While confusing, I don't think this leads to any serious risk

Difference between [Required] and [BindRequired]

[BindRequired] is not allowed by the compiler on top-level params, even though it seems like it should be and would be useful
[Required] is allowed everywhere, but has no effect on value types or any top-level params
RISK B: Developer relies on [Required] on an int/DateTime/etc property, but it silently fails to do anything

Difference between [FromBody] and non-[FromBody]

[BindRequired] and other [Bind]-family attributes have no effect if you're using [FromBody], but do for traditional forms binding
RISK C: Developer relies on [BindRequired] or [BindNever] to prevent over-posting, but it silently fails to protect

Difference between [ModelBinder]-enabled controller properties and model properties

Neither [Bind]-family attribs nor DataAnnotations ones ([Required], [StringLength], etc.) are enforced on [ModelBinder]-enabled controller properties, but they are on model properties
RISK D: Developer relies on validation attribute on a controller property (since this does work on a model property), but it silently fails to do anything

Possible mitigations

Implement support for validation attributes on top-level params. Mitigates risk A. Covered by #6790
Add strict binding mode where all value types are implicitly [BindRequired], and make this the default for ApiController. Mitigates risk B. Also discussed here.
Look into the possibility of interacting with Json.NET during object construction to enforce [Bind]-family attributes (including the above 'strict mode' where all value type props are implicitly [BindRequired]). Would mitigate risk C if possible.
Implement proper enforcement of [Bind]-family and DataAnnotations attribs on [ModelBinder]-enabled controller properties. Mitigates risk D.

ApiController is an opportunity to ship with much safer and easier-to-reason-about defaults than we have today. Maybe some of the existing planned work also covers some of this (maybe #6653 helps with item 4 - not sure).
@rynowak @pranavkm @Eilon

Validation rules such as [Required], [StringLength], etc. only get enforced for model properties

Addressing this is planned for 2.1 and already assigned to you https://github.com/aspnet/Mvc/issues/6790

Please see https://github.com/aspnet/Mvc/issues/6790#issuecomment-371987725


Update dependencies to current symfony packages

Related to issue #336
Add compliance with current symfony4 dependencies.

Composer install was based on php 7.2 environment installation on first push. Fixed by prefer lowest option without modification.

See #352 (I tried to avoid too many unrelated changes)


fix: prevent cog throwing an error which causes script termination

:tada: This PR is included in version 1.1.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Release 1.2.0.pre2

e2e tests have some failures:
./spec/features/stack/install_spec.rb
Spec needs updating for #1976
stack install
  For a stack with a broken link
 [fail] Creating stack links
 [error] Kontena::Errors::StandardErrorHash : Unprocessable Entity:
	services:
	  a:
	    links: Linked service 'nope' does not exist
    Returns an error (FAILED - 1)

Failures:

  1) stack install For a stack with a broken link Returns an error
     Failure/Error: expect(k.out).to match /Service validate failed for service 'a': Linked service 'nope' does not exist/

       expected "    *   Creating stack \e[36mlinks\e[0m  .. \\\r                                  \r\r    *   Creati...ocessable Entity:\r\n\tservices:\r\n\t  a:\r\n\t    links: Linked service 'nope' does not exist\r\n" to match /Service validate failed for service 'a': Linked service 'nope' does not exist/
       Diff:
       @@ -1,2 +1,6 @@
       -/Service validate failed for service 'a': Linked service 'nope' does not exist/
 [fail] Creating stack links      ks  .. \
       + [error] Kontena::Errors::StandardErrorHash : Unprocessable Entity:
       +	services:
       +	  a:
       +	    links: Linked service 'nope' does not exist

     # ./spec/features/stack/install_spec.rb:51:in `block (4 levels) in <top (required)>'
     # ./spec/support/shell.rb:29:in `block in with_fixture_dir'
     # ./spec/support/shell.rb:28:in `chdir'
     # ./spec/support/shell.rb:28:in `with_fixture_dir'
     # ./spec/features/stack/install_spec.rb:48:in `block (3 levels) in <top (required)>'

./spec/features/stack/validate_spec.rb
Not sure what's happening here.
stack validate
  service_link
 [done] Creating stack simple
 [error] RuntimeError : Variable validation failed: {"lb"=>{:presence=>"Required value missing"}}
         Rerun the command with environment DEBUG=true set to get the full exception
 [done] Removing stack simple
    allows to select matching service (FAILED - 1)
 [error] RuntimeError : Variable validation failed: {"lb"=>{:presence=>"Required value missing"}}
         Rerun the command with environment DEBUG=true set to get the full exception
 [fail] Removing stack simple
 [error] Kontena::Errors::StandardError : Not Found
    returns an error if link does not exist

  2) stack validate service_link allows to select matching service
     Failure/Error: expect(k.code).to eq(0)

       expected: 0
            got: 1

       (compared using ==)
     # ./spec/features/stack/validate_spec.rb:17:in `block (4 levels) in <top (required)>'
     # ./spec/support/shell.rb:29:in `block in with_fixture_dir'
     # ./spec/support/shell.rb:28:in `chdir'
     # ./spec/support/shell.rb:28:in `with_fixture_dir'
     # ./spec/features/stack/validate_spec.rb:11:in `block (3 levels) in <top (required)>'

./spec/features/vpn/create_spec.rb
Seems to be a flaky spec? Works when re-run...
vpn create
 [....] Deploying vpn service  .. \
 [done] Deploying service server
 [done] Deploying vpn service
 [done] Generating vpn keys (this will take a while)
vpn service is now started (udp://<IP_ADDRESS>:1194).
use 'kontena vpn config' to fetch OpenVPN client config to your machine.
vpn:
  created: 2017-04-05T14:33:53.894Z
  updated: 2017-04-05T14:33:53.896Z
  state: running
  stack: kontena/vpn
  version: 1.2.0.pre2
  revision: 1
  expose: server
  services:
    server:
      created: 2017-04-05T14:33:53.906Z
      updated: 2017-04-05T14:33:53.906Z
      image: kontena/openvpn:ethwe
      revision: 1
      state: running
      stateful: yes
      scaling: 1
      strategy: ha
      deploy_opts:
        min_health: 0.8
      dns: server.vpn.e2e.kontena.local
      affinity:
        - node==localhost
      ports:
        - 1194:1194/udp
 [done] Removing stack vpn
  creates a vpn stack

Finished in 54.99 seconds (files took 0.25863 seconds to load)
1 example, 0 failures

  3) vpn create creates a vpn stack
     Failure/Error: expect(k.code).to eq(0)

       expected: 0
            got: 1

       (compared using ==)
     # ./spec/features/vpn/create_spec.rb:6:in `block (2 levels) in <top (required)>'

https://travis-ci.org/kontena/kontena/builds/218904855