Train with one machine one gpu

Hi, I really love your repos, from Xmem to Cutie.
I have a question about train custom dataset.
Can you show the train command without distribution?  My custom data is really small, it consists of over 300 pictures, each with two types of objects.

Huge thanks for your reply~

You can use the same command with nproc_per_node set to 1.

You can use the same command with nproc_per_node set to 1.

########
thanks for you instruction , i set node=1, and no change in train_config.yaml.  Then go training ,but a bug show:
(bundlesdf) fusion@fusion-1013:~/PycharmProjects/Cutie$ OMP_NUM_THREADS=1 torchrun  --nproc_per_node=1 cutie/train.py
[2024-04-23 15:12:45][INFO][r0] - Added key: store_based_barrier_key:1 to store for rank: 0
[2024-04-23 15:12:45][INFO][r0] - Rank 0: Completed store-based barrier for key:store_based_barrier_key:1 with 1 nodes.
[2024-04-23 15:12:45][INFO][r0] - Initialized: local_rank=0, world_size=1
[2024-04-23 15:12:45][INFO][r0] - All configuration: {'exp_id': 'default', 'debug': False, 'cudnn_benchmark': True, 'weights': None, ...
[2024-04-23 15:12:47][INFO][r0] - object_transformer.summary_to_query_init.weight counted as an embedding parameter.
[2024-04-23 15:12:47][INFO][r0] - object_transformer.summary_to_query_emb.weight counted as an embedding parameter.
Error executing job with overrides: []
Traceback (most recent call last):
  File "cutie/train.py", line 117, in train
    dataset, sampler, loader = setup_pre_training_datasets(cfg)
  File "/home/fusion/PycharmProjects/Cutie/cutie/dataset/setup_training_data.py", line 32, in setup_pre_training_datasets
    dataset = SyntheticVideoDataset(dataset_tuples,
  File "/home/fusion/PycharmProjects/Cutie/cutie/dataset/static_dataset.py", line 41, in __init__
    classes = os.listdir(root)
FileNotFoundError: [Errno 2] No such file or directory: '../static/fss'

Set the environment variable HYDRA_FULL_ERROR=1 for a complete stack trace.

My dataset structure is consistent with the TRIANING.md, do i have to revise the train_config.yaml or move my dataset to a specific direction?

The error says that it is trying to find a file that is not there. You need to change the dataset configuration in cutie/config/data.

The error says that it is trying to find a file that is not there. You need to change the dataset configuration in cutie/config/data.

it works now~~  thanks

BTW, whats the meaning of "exp_id"?


Callback on LDtkField set?

I discovered today that LDtkField cannot be used on a property that executes custom logic.
I don't know how trivial that would be to change, so here is my request:
I would like to be able to run a method of my choice when the LDtkField bound property is set by reimport, much like I can with Exported properties in Tool scripts.

It is very easy to implement - I just need to remove the check for a non-auto property.
To be honest, I don’t remember why I added this restriction initially, so I want to run tests first

The property must have both a getter and a setter, because that's what Godot requires. Their logic only runs with the Tool attribute

To be clear: now non auto properties are not ignored by the plugin. I haven't added any callbacks

Thank you!


[Feature] add user cases module

add user cases module

@zhongjiajie Hi,PTAL thx:)

@CalvinKirs @zhongjiajie
I suggest using the second method. Next, I try to modify it, but I can't say that I can make this effect. If there are other small partners who are willing to realize it, you can reply to claim it.

@CalvinKirs @zhongjiajie I suggest using the second method. Next, I try to modify it, but I can't say that I can make this effect. If there are other small partners who are willing to realize it, you can reply to claim it.

Thanks kerwin!


Missing Handbook Content

Acknowledgement

[x] I acknowledge that issues using this template may be closed without further explanation at the maintainer's discretion.

Comment
Cleaned up from raw notes from @navya9singh:
Handbook

[ ] Isolated declarations
[ ] Decorators
[ ] JSDOc: add @overload and @import to https://www.typescriptlang.org/docs/handbook/jsdoc-supported-types.html
[ ] Add satisfies next to as
[ ] Add instantiation expressions to Generic Functions https://www.typescriptlang.org/docs/handbook/release-notes/typescript-4-7.html#instantiation-expressions
[ ] Add extends constraints on infer to conditional types
[ ] Variance annotations
[ ] Explain supported dependent parameters in CFA
[ ] Add ts-ignore and ts-expect-error to Basics
[ ] Add more on striter generators here
[ ] Assertion functions
[ ] Discuss reverse inference of mapped types

TSConfig

[ ] Make a TSConfig 101 page with a short list of options, put it in the Handbook main flow
[ ] $configDir link
[ ]  Multiple extends https://www.typescriptlang.org/docs/handbook/release-notes/typescript-5-0.html#supporting-multiple-configuration-files-in-extends

Modules Reference

[ ] Resolution Mode (4.7, 5.3) link

Are you taking more reports?
It’s fairly minor, but I’d comment that the docs for template literals don’t mention details from the original pull request, such as a placeholder immediately followed by another placeholder matching a single character. The lack of documentation for this feature has made me hesitant to rely on it; Anders mentioned it in the PR, but it’s not clear how “fixed” that is.

For brevity's sake, we try not to put question-answers in the Handbook that can be discovered by simple experiment, but the inference description there is already long enough that we should add the one-character rule

Corollary note: Some documentation is very difficult to find because of the generic nature of certain terms. I'm thinking of "infer" which is almost impossible to find with Google. It might be interesting to have a searchable glossary in the documentation site.

Maybe "const modifier on type parameters" https://github.com/microsoft/TypeScript/pull/51865


The Video in the “Watch Video” section can not be played in Apple mobile devices

Description:
The Video in the “Watch Video” section can not be played in Apple mobile devices
-Env:
Device: Iphone 7
Google Chrome Version 55.0.2883.79
Safari IOS 10.3
STEPS:
Steps

Open the Crafter studio with the Event site.
Go to the “Watch Video ” section.

CURRENT RESULT:
The Video in the “Watch Video” section can not be played in Apple mobile devices
https://www.screencast.com/t/50Hv1slvJ5f
EXPECTED RESULT:
The Video in the “Watch Video” section should be played properly in Apple mobile devices.

Please test again using the recent version of crafter.

Bug verified and closed as fixed in 3753745.


Update TROUBLESHOOTING.md

Add an easier way to install the Microsoft store.
Also, the instructions for installing it via the Xbox app were out of date.

Just curious, why closed without merging? Happy to fix.

Sorry about that, it was rude of me.
It was mainly because of the removal of the video, I still want the video as part of the instructions.
Also, because of the UWScript.ps1 file I have now, there is a new set of instructions that can be added so a user can reinstall the MS Store with that script.
I'm also thinking of transferring all of these troubleshooting guides to the bottom of the README page as it seems people have a hard time finding it.


fix: treat "#" as a concatenation instead of comment in some cases

Problem: a#command was previously treated as a command a and a
comment #command. Also, ~hashes~ octothorpes in argument positions were treated as a
comments when they should be treated as a concatenation.
Solution: update scanner to consume # when scanning for CONCATR
Related issue: https://github.com/ram02z/tree-sitter-fish/issues/8

@taekwombo Thanks!


Fix: e-commerce example: error during setup;

Improve: e-commerce example: Readme.
Notes: This pull request should resolve the setup problem discussed in issue #16. I took the liberty

You are welcome.


Remove unsafe flag usage in typst-timing

Title says it all.
According to https://marabos.nl/atomics/hardware.html#instructions-overview, on major platform like x86 or arm, relaxed atomic store/load is the same instruction as non-atomic ones. So we have no need to use unsafe here. It shouldn't give any performance gain.

It is the same instruction, but atomicness also has an effect on compiler optimizations. But it's probably still okay and the current implementation is technically undefined behaviour.

In some ad-hoc unscientific benchmarks, I wasn't able to observe a difference.


Support for WITH Statements in DataFusion (they are currently silently ignored)

Is your feature request related to a problem or challenge?
I was trying to write an adapter for dbt, but ran into a problem with it not supporting "with"statments.
Describe the solution you'd like
be able to do:
WITH preprocessed_data AS (
    SELECT id, name, SUM(sales) as total_sales
    FROM sales_data
    WHERE date > '2022-01-01'
    GROUP BY id, name
)
SELECT name, total_sales
FROM preprocessed_data
WHERE total_sales > 1000;

Describe alternatives you've considered
No response
Additional context
No response

Thanks @Yacobolo  -- I think this would be a relatively straightforward feature to add to the SQL planner
It actually looks like the sql parser already supports this and DataFusion is just ignoring it completely
❯ create table t(x int) as values (1), (2), (3), (2), (5), (1);
0 rows in set. Query took 0.004 seconds.

❯ with t2 as (select * from t where x > 2) select *;
Error during planning: SELECT * with no tables specified is not valid

I might be missing something, but I thought Datafusion did support with statements
I tested this query locally and it worked:
WITH table2 AS (
SELECT  a, count(1) as cnt
FROM table1
GROUP BY A
)
SELECT *
FROM table2
WHERE cnt>10
LIMIT 10

❯ create table table1 (a int) as values (1);
0 rows in set. Query took 0.002 seconds.

❯ WITH table2 AS (
SELECT  a, count(1) as cnt
FROM table1
GROUP BY A
)
SELECT *
FROM table2
WHERE cnt>0
LIMIT 10;
+---+-----+
| a | cnt |
+---+-----+
| 1 | 1   |
+---+-----+

🤔  you are right @devinjdangelo

❯ create table t(x int) as values (1), (2), (3), (2), (5), (1);
0 rows in set. Query took 0.004 seconds.

❯ with t2 as (select * from t where x > 2) select * **from t2**;
Error during planning: SELECT * with no tables specified is not valid

I think you were just missing from t2 in your original example @alamb

Sorry for the false claim. I couldn't find it in the docs and I had a syntax error on my end!

Sorry for the false claim. I couldn't find it in the docs and I had a syntax error on my end!

No worries -- any chance you can add it to the docs @Yacobolo 🙏
Thanks!


Implement cancel action

Ctrl+C is not working, we have to choose an item in all pickers.

Seems to be a false alarm.


Figma animations not implemented yet?

I was doing the prototype on figma and adding some animations fade in and fade out and I saw that on the android emulator those animations didn't work.
I read that this type of animations is still not supported, it is planned to add this feature in a short/long term?
Is any way to do that type of animations on source code with composables?

There's work being done on Animations but I can't say when it'll be ready, unfortunately. It's on our roadmap for sure.
Compose animations can be applied manually, to some extent, but I really can't help much more than that.

Okey! Thank you very much!

@MarcFerrerMargarit a very very limited initial implementation of animations if you enable the "squoosh" implementation
(this regresses other features like content replacement and lists & grids, which is why it's currently disabled). https://github.com/google/automotive-design-compose/blob/3d8f2e9f5e39ff32476e6d3ee3e576e9e612b339/designcompose/src/main/java/com/android/designcompose/DesignView.kt#L971

This is working when squoosh is turned on, which will be by default soon.


Curatory group types

There are first providers who are ingesting their titles itself. For data users, there should be an indication if a curatory group is of librarian or library provenience so that data users will know with whom they are communicating.
I suggest:

Adding an attribute to the Curatory group type with refadatas 'commercial', 'academic', 'other'. Field should be not nullable, default should be 'academic'
Exporting this attribute with the curatory group via the OAI API (where a curatory group is already given)
Same for ES Index

Because the OAI content would be an object and not a simple string, this would be a breaking change for all endpoints where only the string is given. Better would be to get this information only via the groups endpoint where this would be merely an additional field.
ES Index would be less problematic, but successively the ES Index would grow with every new data and we have to find a solution.

For ES Index
"curatoryGroups": [
    "LAS:eR"
],

would then be
"curatoryGroups": [
    {
         name: "LAS:eR",
         type: "academic"
    }
],

Curatory groups carry the additional function of giving information about the context in which a package is used. How can this be enforced or become clearer? An option would be a type "context".


feat: GroupTopN support output ranks

Currently, We have supported Top-N by groups. https://www.risingwave.dev/docs/current/sql-pattern-topn/ But we expose restrictions and do not allow users to get the rank or row_number in the column_list.

rank cannot be included in column_list.

And that is recommended optimization by FlinkSQL https://nightlies.apache.org/flink/flink-docs-master/docs/dev/table/sql/queries/topn/#no-ranking-output-optimization. But FlinkSQL also supports the general case.
To achieve that, we must let our GroupTopN executor support maintain the rank/row_number in the output.
It is a small feature but can bring big changes on streamGroupTopN and we need more discussion to determine if we need that.

I guess this can be hard to implement and large diffs might be yielded from small changes. 🥵

closed by https://github.com/risingwavelabs/risingwave/pull/10990


Cannot insert json array - 404

Hi,
I'm trying to insert several rows to table by passing a json array with some elements but I get a 404 error:
[{
    "id" : "1",
    "name" : "Internet"
},{
    "id" : "2",
    "name" : "Internet 2"
}]

When I put single item into json everything works fine. I know that's not a bug but this would be a nice feature to that api - do you have plans to add this? Some kind of bulk insert.
Best regards,
macaron

@ maacaron: Great idea. I don't know why I did not build this yet. Will add this ASAP.

@maacaron Added in 7db137f, hope you like it.

Reverted the change, due to added complexity and hardly any performance gain.

See also: 2cd2597

(Re)added due to popular demand.


Trailing commas in bundled Javascript snippets break JSON parsing

Issue Type: Bug
The bundled Javascript snippets e.g.
/Applications/Visual Studio Code.app/Contents/Resources/app/extensions/javascript/snippets/javascript.code-snippets
have a couple of trailing commas which breaks official JSON parsing. Seems to have been introduced recently.
	"Log warning to console": {
		"prefix": "warn",
		"body": [
			"console.warn($1);",        <--- note erroneous trailing comma
		],
		"description": "Log warning to the console"
	},
	"Log error to console": {
		"prefix": "error",
		"body": [
			"console.error($1);",        <--- note erroneous trailing comma
		],
		"description": "Log error to the console"
	}

late 2019 the same JSON was correct:
	"Log warning to console": {
		"prefix": "warn",
		"body": [
			"console.warn($1);",
			"$0"
		],
		"description": "Log warning to the console"
	},
	"Log error to console": {
		"prefix": "error",
		"body": [
			"console.error($1);",
			"$0"
		],
		"description": "Log error to the console"
	}

@MrNossiom your commit fc8b56a966b2df75676158ea4e6b9477d2d033a8 removed the "$0" from the snippet and left a couple of trailing commas, making the JSON not parse using libraries like jsonc.parse. Luckily this does not affect normal vscode snippet insertion operations - vscode must use a more resilient parser.
The fix is to remove the two trailing commas, which turns the file into standard JSON again.
 Thanks


add parser that converts grg-mpdata to pfnet networks and back

https://github.com/lanl-ansi/grg-mpdata

Done. Available using
parser = pfnet.PyParserMAT()
or
parser = pfnet.Parser('.m')
in "dev".
Can read and write.


PendingConvexCollision should apply to same Entity level

The current implementation of PendingConvexCollision applies the generated CollisionShape to the child containing the mesh. This is confusing and likely not what the user intended if the component was .insert()ed to some parent of the mesh. This is even more confusing when you attempt to use the collision data through Collisions or CollisionEvent, as the entity in question is not the one where the PendingConvexCollision component was added.

I'll add that I ran into a really obtuse issue when attempting to raycast into a PendingConvexCollision because my filter wasn't catching what I expected due to this. If it's intended, it certainly can be confusing, especially since importing meshes from glb, for example, creates some pretty steep hierarchies pretty quickly

Thanks for the feedback. What API and behavior would you prefer instead?

I experience the same confusion. I would expect that all collision-related components would replace PendingConvexCollision on the same Entity it was set on.
Use case:

I start prototyping with a simplified collision shape and set RigidBody::Dynamic, CollisionShape::Sphere { radius: 1.0 }, CollisionLayers::default(), Velocity::default() etc. on an entity A, and spawn a scene B as that entity's child.
Later I replace CollisionShape::Sphere { radius: 1.0 } with PendingConvexCollision::default() to make a more precise collision shape
I expect a new CollisionShape to be generated based on meshes from scene B, but added to the entity A, not B or any children of B. I expect components of A to stay exactly the same except for CollisionShape::Sphere { radius: 1.0 } replaced.

I hope this clarification helps!

bardt's use case is spot on, but I would like to add that the current method of adding indepentent colliders to every child mesh actually does have some useful cases, such as if you spawn a scene and just want all meshes to have independent colliders. I'd suggest keeping the current functionality as some kind of feature


Refactor: Convert dirorder flag to sort flag.

This refactor will make it easier to add multisorting eg. something like --sort=-directory,name,extension,-size.
This refactor removes special case dirorder flags and combines sort order and sort field into one property.

Woops didn't realise there has been a big refactor for on the sorting flags will have to rework this significantly.


The game just doesn’t start

System Information (please complete the following information):

macOS: [Version 14.1.1 Sonoma]
Device: [MacbookPro 13inch 2022 ]
CPU: [ Apple M2 ]
Dedicated GPU
RAM: [ 8G ]

The game just doesn’t start guys, may it be cause i downloaded it on an external drive?
https://github.com/3Shain/yet-another-anime-game-launcher/assets/124170570/47c7a489-b271-4905-8d28-196e6a236d2e

Only works with macos 14.4 and up.


Add troubleshooting tip for System.TypeLoadException

When running AspNet Core 1.1 on top of .NET 4.6.2 and trying to use the Azure Key Vault configuration extensions, I was encountering an exception that was being thrown for System.TypeLoadException. I discovered this originated from the use of the Azure Key Vault API and how it interacted with an older (built-in) version of System.Net.HTTP. I ended up installing the updated NuGet package for System.Net.Http and that fixed the issue. Hopefully this proposed tip will help someone in the future. Or at least until the packages get more aligned.
When creating a new PR, please do the following and delete this template text:
Addresses #2968

@Hallmanac,
Thanks for having already signed the Contribution License Agreement. Your agreement has not been validated yet. We will now review your pull request.
Thanks,
.NET Foundation Pull Request Bot

@Hallmanac  Thanks!

No problem! Thanks for making it so easy to contribute to the docs.


Create command to show available Schedulers

This PR builds upon the previous work done in PR #686, which introduced the command flexmeasures show reporters. Now, we extend this functionality to include the Scheduler class as well. The new command, flexmeasures show schedulers, allows users to view a comprehensive list of all available schedulers within flexmeasures.

I have created a generic function list_items which is called following commands.
Executing flexmeasures show schedulers would display the relevant information.
name                version  author    module
----------------  ---------  --------  -----------------------------------------
StorageScheduler          1  Seita     flexmeasures.data.models.planning.storage

and flexmeasures show reporters would show
name              version  author    module
--------------  ---------  --------  --------------------------------------------------
PandasReporter          1            flexmeasures.data.models.reporting.pandas_reporter


MINOR: the scheduler used to perform rebalance should have thread prefix

There is already a scheduler (see https://github.com/apache/kafka/blob/trunk/core/src/main/scala/kafka/server/KafkaServer.scala#L264) using default thread prefix so the others should define different thread name. Otherwise, it is hard to distinguish them by JVM profiler.
Committer Checklist (excluded from commit message)

[ ] Verify design and implementation
[ ] Verify test coverage and CI build status
[ ] Verify documentation (including upgrade notes)

@ijuma Does it need a KIP to resolve naming conflict in metrics? Although I'm wonder whether is there a use case using this conflicted name.


[draft] refactor: refactor react dependencies

Description
Currently, HiGlassComponent and its several child components use React. The use of React is to support several UI components in HiGlass when an editable option is set to true in a view config. Gosling does not use such UI components, so it is not ideal to have the React dependencies in Gosling by using HiGlass.
Toward this, this PR tries to enable using the HiGlass Component without including React components on it when demanded.

Thoughts

I think we can safely not use all children components of TrackRenderer.jsx, such as TrackControl.jsx and ListWrapper.jsx, which looks like control buttons overlaid on top of a track

<TrackRenderer ...>
-  {topTracks}
-  {leftTracks}
-  {rightTracks}
-  {bottomTracks}
-  {galleryTracks}
-  {centerTrack}
</TrackRenderer>

Implementing companion functions of TrackRenderer, TiledPlot, and HiGlassComponent that do not use React (and use pure javascript) might be the easiest way, e.g.,

higlass-embed/
   - index.js
   - TrackRendererPure.js
   - TiledPlotPure.js
   - HiGlassComponentPure.js

This article seems to be helpful

Checklist

[ ] Set proper GitHub labels (e.g. v1.6+, ignore if you don't know)
[ ] Unit tests added or updated
[ ] Documentation added or updated
[ ] Example(s) added or updated
[ ] Update schema.json if there are changes to the viewconf JSON structure format
[ ] Screenshot for visual changes (e.g. new tracks or UI changes)
[ ] Updated CHANGELOG.md

I'm having a look at this for myself, and am surprised to find that:
<TrackRenderer ...>
-  {topTracks}
-  {leftTracks}
-  {rightTracks}
-  {bottomTracks}
-  {galleryTracks}
-  {centerTrack}
</TrackRenderer>

doesn't seem to have any effect on the higlass Demo. What do the *Tracks components do exactly, and what is there relationship to TrackRenderer.


added support for custom http request headers

This resolves https://github.com/pinterest/PINRemoteImage/issues/43.
I think this approach made the most sense to me, which is allowing a single instance to have a custom configuration, but leaving the sharedImageManager unchanged. Let me know your thoughts.

@jparise Rebased, updated code based on feedback, and squashed!

This looks good to me. Any other comments, @garrettmoon?

Thanks, @Kurry!

@Kurry I dont think your change will work. Cause internally  PIN is calling [PINRemoteManager  sharedManager] function and  allowing a single instance to have a custom configuration, but leaving the sharedImageManager unchanged will not help us set any config params.

Related to #72


reuse: 1.1.0 -> 1.1.1

Automatic update generated by nixpkgs-update tools. This update was made based on information from passthru.updateScript.
meta.description for reuse is: A tool for compliance with the REUSE Initiative recommendations
meta.homepage for reuse is: https://github.com/fsfe/reuse-tool
Updates performed

Ran passthru.UpdateScript

To inspect upstream changes
Impact

Checks done (click to expand)

built on NixOS
The tests defined in passthru.tests, if any, passed
found 1.1.1 with grep in /nix/store/50w2s5yhczk0k6wmd9iym217rg85m18s-reuse-1.1.1
found 1.1.1 in filename of file in /nix/store/50w2s5yhczk0k6wmd9iym217rg85m18s-reuse-1.1.1

Rebuild report (if merged into master) (click to expand)

2 total rebuild path(s)

2 package rebuild(s)

First fifty rebuilds by attrpath
amberol
reuse

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/50w2s5yhczk0k6wmd9iym217rg85m18s-reuse-1.1.1 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A reuse https://github.com/r-ryantm/nixpkgs/archive/c9ae110cf49c960c013ac71f819fb2dd51c3511e.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/50w2s5yhczk0k6wmd9iym217rg85m18s-reuse-1.1.1
ls -la /nix/store/50w2s5yhczk0k6wmd9iym217rg85m18s-reuse-1.1.1/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

2 packages built:

amberol
reuse

Maintainer pings
cc @FlorianFranzen @Luflosi for testing.

Changes: https://github.com/fsfe/reuse-tool/compare/v1.1.0...v1.1.1
mostly only affects sdist.


Can't view stream over https and custom domain

I'm having a problem were when i try to view the stream using https and my custom domain XX, my custom domain using a reverse proxy an error occurs:
[1mgithub.com/AlexxIT/go2rtc/internal/api/ws.go:82 > host=XXXX.cgumeh.XX.XX origin=https://XXXX.cgumeh.XX.XX error="websocket: the client is not using the websocket protocol: 'upgrade' token not found in 'Connection' header"
I have set the go2rtc.yaml config file to webrtc: stun:8555 as well. Could you please advise

Maybe your reverse proxy setup doesn't support websocket

So i managed to fix this. I was using symbology reverse proxy, turns out you need to add customs headers: Name: “Upgrade”, Value: “$http_upgrade”, Name: “Connection”, Value: “$connection_upgrade”


Support for android projects?

any idea how to make it work on android or some alternative?

No idea. I don't know what RM's Android story on C interop is.


Can't load variables in .env

Steps to reproduce
$ rails console
$ ENV['AMZ_URL']

Paste your env using:
AMZ_URL="https://www.amazon.com/"

Expected behavior
=> "https://www.amazon.com/"
Actual behavior
nil
System configuration
dotenv version: dotenv-rails (2.7.5)
Rails version: Rails <IP_ADDRESS>
Ruby version: ruby 2.6.2p47 (2019-03-13 revision 67232) [x86_64-darwin18]
I downgraded to dotenv-rails (2.7.2) and it works

Can confirm above ^
dotenv-rails 2.7.5 isn't loading in Rails 6.0.3. dotenv-rails 2.7.3 does.

Up!


[Community] Add Hanselman's blog post.

Just thought I'd offer an addition of the blog post from Hanselman that got me to check out Wyam today. I was guessing things were reverse chronological and threw it on the top of the list, but I can adjust as needed.
I was using this edit as an excuse to get Wyam running. Unfortunately, I couldn't give it to work locally yet. (I'm still debugging the issue, but I ran into an problem running the build.cmd when it went looking for Wyam.sln in a sibling directory instead of hunting in the submodule path.)

Thanks! The site is currently undergoing a ton of changes in prep for a new release soon (you can see the in-progress work in the docs-recipe branch. The current build command is optimized for debugging the site on my machine :smile:. The new version has a more universal build command that actually downloads the source from GitHub on build since I know a lot of folks have been looking at it as an example.


Implement Airflow scheduler

The system periodically checks/ iterates over animals (airflow pipeline), finds that the animal has not fed for more than two days, sets the status to hungry, and adds a new event in the history with an auto check as an event type.


About the 5-shot results on miniimagenet

Hi, thanks for your nice work!
I use training scripts given in README.md with pretrained ResNet12 model:
python train_fsl.py  --max_epoch 200 --model_class FEAT  --backbone_class Res12 --dataset MiniImageNet --way 5 --eval_way 5 --shot 5 --eval_shot 5 --query 15 --eval_query 15 --balance 0.1 --temperature 64 --temperature2 32 --lr 0.0002 --lr_mul 10 --lr_scheduler step --step_size 40 --gamma 0.5 --gpu 1 --init_weights ./saves/initialization/miniimagenet/Res12-pre.pth --eval_interval 1 --use_euclidean
But I got "Test acc=0.7821 + 0.0015" which is far lower from the results "82.05%" reported on paper.

Did I miss something？

Thanks for the reply, I try the dataset downloaded from the above link, and I got:

Is there any difference between these two miniimagenet datasets? ( I used the same split method)

I use the dataset provided from the paper "optimization as a model for few-shot learning". There may exist some dataset variants with different pre-processing or sizes.
I think the main reason for the difference is the matching between the dataset and the pre-trained weights. You can try pre-training a model over your dataset and then fine-tune with the meta-learning methods. It may get better results.

I have understood and thank you very much for your reply.


GoogleSlides2md

I want to convert google slides to md files is there any package

As far as I know, there is no package for this (:
It would be nice to have, but I think impossible / hard to implement. at current moment.

Also this is duplicate of https://github.com/gsuitedevs/md2googleslides/issues/10


Enhancement：Add support for expanding existing device

When the existing device in the storage pool has been expanded, hwameistor can not recognize the new size.
Cloud Provider/Platform (AKS, GKE, Minikube etc.):
CCE

@tishaluo Thanks for your feedback.
We should indeed be able to correctly update the underlying storage capacity when modifying the disk capacity directly.
We will fix it in next version.

This problem will be fixed in https://github.com/hwameistor/hwameistor/pull/618


Add cut cheat code for to improve foundry-merge-node

Fixes https://github.com/runtimeverification/kontrol/issues/23
TODO

[ ] extract python changes to Kontrol
[ ] add test

Added a new cut cheat code that takes a program counter and will create a new KCFG node whenever that program counter is executed.

When the cut is executed in a proof/test, the program counter argument is added to a set in the <cutPC> cell.
The #pc [ OP ] rule is overwritten to identify when a program count in the <cutPC> cell is executed.
Added an empty foundry.cut rule and marked it as a cut-point rule to create the new node in the kcfg.

Moved this to https://github.com/runtimeverification/kontrol/pull/163.


Refactor FugueWorkflow to separate execution

Codecov Report
Base: 100.00% // Head: 100.00% // No change to project coverage :thumbsup:

Coverage data is based on head (ed5ac54) compared to base (82f6c1b).
Patch coverage: 100.00% of modified lines in pull request are covered.

Additional details and impacted files
@@            Coverage Diff            @@
##            master      #370   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files          110       110
  Lines        10299     10356   +57
=========================================
+ Hits         10299     10356   +57

Impacted Files
Coverage Δ

fugue/extensions/creator/convert.py
100.00% <ø> (ø)

fugue/extensions/outputter/convert.py
100.00% <ø> (ø)

fugue/extensions/processor/convert.py
100.00% <ø> (ø)

fugue/extensions/transformer/convert.py
100.00% <ø> (ø)

fugue/execution/execution_engine.py
100.00% <100.00%> (ø)

fugue/execution/factory.py
100.00% <100.00%> (ø)

fugue/execution/native_execution_engine.py
100.00% <100.00%> (ø)

fugue/extensions/_builtins/outputters.py
100.00% <100.00%> (ø)

fugue/extensions/_builtins/processors.py
100.00% <100.00%> (ø)

fugue/extensions/context.py
100.00% <100.00%> (ø)

... and 8 more

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


Update Collection's query method to set nil by default for where and where_documents

Chroma's API might have changed at somepoint that made this method to pass empty Hashes an invalid request.

This PR updates API call for this issue https://github.com/mariochavez/chroma/issues/29


Day324

Resolves #658.

Pull Request Test Coverage Report for Build 1238

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 100.0%

Totals

Change from base Build 1244:
0.0%

Covered Lines:
5

Relevant Lines:
5

💛  - Coveralls

Pull Request Test Coverage Report for Build 1246

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 100.0%

Totals

Change from base Build 1244:
0.0%

Covered Lines:
5

Relevant Lines:
5

💛  - Coveralls


How do you import these using webpack?

I can't figure out how to get assets working using webpack. I've tried
import {textures} from "@babylonjs/assets"
//...
groundMaterial.diffuseTexture = new Texture(
  textures.ground_jpg.path,
  scene
)

But I get the error Cannot read properties of undefined (reading 'ground_jpg')
if I console.log(textures) I also get undefined.
I also tried
import "@babylonjs/assets"
//...
groundMaterial.diffuseTexture = new Texture(
  Assets.textures.ground_jpg.path,
  scene
)

But that gives me the error Assets is not defined
Here's my webpack config.
const path = require("path")

module.exports = {
  entry: "./src/index.ts",
  devtool: "inline-source-map",
  output: {
    filename: "bundle.js",
    path: path.resolve(__dirname, "dist"),
  },
  resolve: {
    extensions: [".ts", ".tsx", ".js"],
  },
  module: {
    rules: [
      {
        test: /\.tsx?$/,
        use: "ts-loader",
        exclude: /node_modules/,
      },
    ],
  },
  devServer: {
    static: [
      {
        directory: path.join(__dirname, "public"),
      },
      {
        directory: path.join(__dirname, "dist"),
      },
      {
        directory: path.join(__dirname, "src/assets"),
        publicPath: "/assets",
      },
    ],
    compress: true,
    port: 9000,
  },
  mode: "development",
}

Also would it be possible to document how to use this with webpack in the readme?

Great question :-) We really never documented this.
import Assets from "@babylonjs/assets";

console.log(Assets.textures);

This will work (tested locally). The default import is defined, as we have released it as UMD. If you load it as a script tag in the browser window.Assets will be populated as well.


Powerrename is not responding to keyboard

Microsoft PowerToys version
0.51.1
Running as admin

[X] Yes

Area(s) with issue?
PowerRename
Steps to reproduce
Type anything in the "search for" area

a
✔ Expected Behavior
I was expecting that i could type in the "search for" area
❌ Actual Behavior
I wasn't able to type in the "search for" area
Other Software
No response

Duplicate of #14514

Thanks for reporting this. This issue is a duplicate.
I'm linking this issue to #14514 to centralize the discussion thread for tracking.
Thanks for your help to make PowerToys a better piece of software!

@@stefansjfw  another report


Will it support third-party login?

expressCart is a great node.js online store system, it would be better if it can support third-party login like facebook.

Not at this time.


Keyboard manager, new feature

Description of the new feature / enhancement
I am using the keyboard manager to map a key. I'd like some applications to be excluded from this mapping permanently or when they are in the foreground, whichever is easier or possible.
Scenario when this would be used?
This feature is already implemented in mouse utilities.
Supporting information
No response

/dup https://github.com/microsoft/PowerToys/issues/8809


[RIP-10]Add test cases for StartMonitoringSubCommand

[RIP-10]Add test cases for StartMonitoringSubCommand
What is the purpose of the change
XXXXX
Brief changelog
XX
Verifying this change
XXXX
Follow this checklist to help us incorporate your contribution quickly and easily. Notice, it would be helpful if you could finish the following 5 checklist(the last one is not necessary)before request the community to review your PR.

[x] Make sure there is a Github issue filed for the change (usually before you start working on it). Trivial changes like typos do not require a Github issue. Your pull request should address just this issue, without pulling in other changes - one PR resolves one issue.
[x] Format the pull request title like [ISSUE #123] Fix UnknownException when host config not exist. Each commit in the pull request should have a meaningful subject line and body.
[x] Write a pull request description that is detailed enough to understand what the pull request does, how, and why.
[x] Write necessary unit-test(over 80% coverage) to verify your logic correction, more mock a little better when cross module dependency exist. If the new feature or significant change is committed, please remember to add integration-test in test module.
[x] Run mvn -B clean apache-rat:check findbugs:findbugs checkstyle:checkstyle to make sure basic checks pass. Run mvn clean install -DskipITs to make sure unit-test pass. Run mvn clean test-compile failsafe:integration-test  to make sure integration-test pass.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

Coverage decreased (-0.02%) to 48.052% when pulling c829aea11f25f5f9ac291ab7257f15c896c8b7b7 on zhouwudong:develop into 42ddf3df06394064eabad376fa98e86b51e3bea6 on apache:develop.

Deal with CI exceptions or code coverage

As above said,please look at your ci exception and code coverage!


fix: resolve allday schedule (start and end same midnight) issue on monthly view(fix #657)

Please check if the PR fulfills these requirements

[x] It's submitted to right branch according to our branching model
[x] It's right issue type on title
[x] When resolving a specific issue, it's referenced in the PR's title (e.g. fix #xxx[,#xxx], where "xxx" is the issue number)
[x] The commit message follows our guidelines
[ ] Tests for the changes have been added (for bug fixes/features)
[ ] Docs have been added/updated (for bug fixes/features)
[ ] It does not introduce a breaking change or has description for the breaking change

Description
To reproduce

on monthly view,
When adding a new schedule with the default schedule creation popup
enter start time 2020-07-23 00:00, end time 2020-07-23 00:00 and 'All day' checked

AS-IS
TO-BE

Thank you for your contribution to TOAST UI product. 🎉 😘 ✨

duplicate #647


Queries taking longer when it hits the same node which is under load

sample query:
 select from Subject where ( _id='a@b,com'  tenantId='testTenant )
hits a coomposite index(UniqueIndex) on _id and tenantId
Same query when run on a less loaded instance takes the same time initially but subsequent requests are at acceptable  sub-second response.
Stressed node: 2.5sec to respond
Free node: 0.173sec to respond

Running 2.0.5 and 3 node cluster default configuration using hazelcast

is there a way to avoid this problem by getting a load balancing capabilities for the Orientdb java client? so that it does not hit the same node for all queries.

This is the issue to refer: https://github.com/orientechnologies/orientdb/issues/3165

Duplicated of #3165.


Fixed spelling of delineated in the template

As I was developing a new metric, Google docs spell checker pointed out that we were missing an 'e' in delineated, so here's a quick spelling fix.

Seems like a good fix!


[Bug] Duplicate settings in Trakt settings

There is duplicate in trakt settings:

Userlist for movies
Userlist for shows

Does it suppose to be like this?
Image:

Your Environment

Version used: 0.0.70
Environment name and version: Kodi 17.6
Operating System and version: Win 10

Selections for adding movies/shows, deleting movies/shows. There are no duplicates.


Option for generating linker script that forces matching object section addresses?

Is there any interest in a feature like this? I hacked together a change that does this unconditionally. Not sure what a good splat.yaml interface would be.
I wanted to be able to easily compare built roms and original roms without having everything shifted if one function was smaller than expected. I wanted to link in replacement functions, as long as they were equal to or smaller than the original in size. I wanted a warning if the replacement was larger.
LD's location counter "." is a relative offset in an output section. By manipulating it before each object file section is placed, we can guarantee the object section's position. Take the desired ROM position for an object file's section, and subtract from it the ROM start for the containing output section. Set the location counter to that. (I need to do more to make this work with NOLOAD sections, mainly for bss. Those sections do not have a ROM offset provided in splat.yaml, but instead a VRAM address, naturally).
An example of what my change generates:
Corresponding to:
  - name: main
    type: code
    start: 0x1000
    vram: 0x8003AD80
    subsegments:
      - [0x1000, asm]
      - [0x3E40, asm]
      - [0x4460, asm]
      - [0x6780, asm]

It produces:
   main_VRAM = ADDR(.main);
    .main 0x8003AD80 : AT(main_ROM_START) SUBALIGN(0)
    {
        FILL(0x00000000);
        main_TEXT_START = .;

        /*REMEMBER "." is an offset relative to start of output section (.main here).
        0x1000 - 0x1000 is 0, which is correct for the first entry. It should be right at the start of this containing output section*/
        . = 0x1000 - 0x1000;
        build/asm/1000.s.o(.text);

        /*NEXT ENTRY needs to be at 0x3e40 in final.
        The output section already starts us at 0x1000 in final, and "." is an offset relative to output section start, so subtract 0x1000.
        So we will be at .main LMA 0x1000 + 0x2e40 .main relative offset = 0x3e40 in the final ROM.*/
        . = 0x3e40 - 0x1000;
        build/asm/3E40.s.o(.text);

        . = 0x4460 - 0x1000;
        build/asm/4460.s.o(.text);
        . = 0x6780 - 0x1000;
        build/asm/6780.s.o(.text);

Makes it easy to compare roms in something like ImHex. You just see groups of differences instead of the entire file being off past one screw up.

If there is interest, I will try to clean this up somehow. Suggestions? Did I miss an existing option that can do this? Is this useful more widely? Seems useful for enabling modding earlier in a project, or for keeping best effort non-matching C re-implementations around so long as the code generated was smaller than the original. I might be crazy though.

I made the fork work with vram as well
  - name: bss
    type: code
    vram: 0x8012CF60
    subsegments:
      - {vram: 0x8012CF60, type: obj, name: src/ultralib/build/J/libultra_rom/src/io/pimgr, section: .bss}
      - {vram: 0x8012f5c0, type: obj, name: src/ultralib/build/I/libultra_rom/src/io/piacs, section: .bss}

Produces
    bss_ROM_START = __romPos;
    bss_bss_VRAM = ADDR(.bss_bss);
    .bss_bss 0x8012CF60 (NOLOAD) : SUBALIGN(0)
    {
        FILL(0x00000000);
        bss_BSS_START = .;
        . = 0x8012cf60 - 0x8012cf60;
        src/ultralib/build/J/libultra_rom/src/io/pimgr.o(.bss);
        . = 0x8012f5c0 - 0x8012cf60;
        src/ultralib/build/I/libultra_rom/src/io/piacs.o(.bss);
        . = ALIGN(., 16);
        bss_BSS_END = .;
        bss_BSS_SIZE = ABSOLUTE(bss_BSS_END - bss_BSS_START);
    }

Same principle as before, just done using VRAM addresses to create the offset, since these have no ROM location.

Hey, sorry for not replying to this sooner - it kinda fell off my radar. I see where you're coming from with this, but I am kind of unsure if I think it's a good idea in general.

if one function was smaller than expected

this actually will only work if the last function in a .o is smaller than expected, as far as I can tell. If the first function is smaller than expected, every following function will start sooner than it "should" and raw pointers to these functions won't properly resolve. I'm also not sure how common it is to have raw function pointers rather than symbols, especially with how good tooling has gotten over the past couple years
that being said, I see why you might want this, and I think I'm cool with it being an option that's off by default if no one objects. But I worry about the possibility for things to be truncated accidentally if a function ends up being larger than you intend it to, for example

the more I think about it, the more I'm convinced this isn't a great way of tackling this problem.

I wanted to be able to easily compare built roms and original roms without having everything shifted if one function was smaller than expected.

I'd suggest using first_diff (the standalone script or as a cli tool from mapfile_parser), objdiff, asm_differ for things like this, rather than trying to force things to align to eliminate shifts. For modding to be successful, you want these shifts to be happening

Regarding moving . backwards, we were able to do this in paper mario before. splat used to just hard-code everything in the linker, similar to what your code changes do. I'm not sure it is a good idea though, haha
And yeah I think you might be coming at this from a different approach than what splat was intended for. That's obviously totally fine, but I do think I'd prefer to not merge something like this in, given what we've talked about

Makes sense to me! Thanks!


Put side view into a drawer

Purpose of this PR is to put the side view components to a drawer, wich will add a better UI when elements is showed and fix the responsive for mobile users.
https://github.com/Chainlit/chainlit/assets/18298759/f8be3608-7858-4584-b26b-908b7c404c71

@alimtunc Wonderful work!
There is a little issue that send button will sometimes be blocked by the side view drawer:
https://github.com/Chainlit/chainlit/assets/10850975/8476979a-da23-4967-b3e3-ac1f3eebf4e7
By setting variant to always temporary fixed me locally: https://github.com/Chainlit/chainlit/blob/ba72a06ac733dda65de19a5212d262dfbbff4f30/src/chainlit/frontend/src/components/atoms/element/sideView.tsx#L130
But I agree with willy:

Ideally the side bar would only float on mobile devices

So maybe a few more tweaks are needed for components like Resizable and Drawer.


We should remove registration ids also when InvalidRegistration coming from GCM

InvalidRegistration error coming as a response from GCM should also be handled to delete the bad registration id.

Thanks @javaguirre


Try to use OIDC token from metadata server as first option

Taking a crack at switching the Tasks code to use ID tokens from the Metadata

Apologies for the build issues on this - wanted to get something in front of you before i spent time polishing this


Default import syntax not working with multiple keys

TypeScript Version:  2.7.2
Code
The default import syntax isn't working alongside another key of the module imported. This doesn't work:
import React, { Component } from 'react';

class App extends Component {}

export default App;

It throws:
Object prototype may only be an Object or null: undefined

He's complaining that the extends value passed to the operator is undefined (i.e Component), which can be confirmed adding a console.log:
import React, { Component } from 'react';

console.log(Component); // undefined

However, all those solutions below work, making Component to be defined:
import {
  default as React,
  Component
} from 'react';

console.log(Component); // defined

// or
import React from 'react';
import { Component } from 'react';

console.log(Component); // defined

// or
import React from 'react';

console.log(React.Component); // defined

Expected behavior: The default import syntax should work.
Actual behavior: Using the default import syntax makes the Component to be undefined, therefore throwing that error when I try to extends the App class.
Playground Link:
1- Clone this repository: https://github.com/rdsedmundo/react-boilerplate
2- Run yarn && yarn dev.
3- Access localhost:3000.
4- The error should appear in the console (the file with the error is at src/components/App/index.tsx).
I might be might be really missing something here, if yes, I apologize, but I couldn't understand why it isn't working, so I'm reporting this as a bug. There's a chance that this could be at the Webpack level, if yes, let me know so I could move this issue to there.

Duplicate of #21621. The TL;DR is that React should really set __esModule, or you need to disable esModuleInterop wherever in your buildchain that gets set.

Sorry for the duplicate, I really tried to search before but didn't encounter someone relating the same thing.
I'll close this one.
Thanks, Ryan.


Adding clustering to improve parallellization.

running siege -c100 -t1M http://localhost:8080/t_200/rose-alpha.webp on master returns:
Lifting the server siege...
Transactions:		         785 hits
Availability:		      100.00 %
Elapsed time:		       59.04 secs
Data transferred:	        1.90 MB
Response time:		        7.15 secs
Transaction rate:	       13.30 trans/sec
Throughput:		        0.03 MB/sec
Concurrency:		       95.01
Successful transactions:         785
Failed transactions:	           0
Longest transaction:	       11.94
Shortest transaction:	        1.38

and with cluster (this PR), a minor improvement in performance is visible.
Lifting the server siege...
Transactions:		         874 hits
Availability:		      100.00 %
Elapsed time:		       59.23 secs
Data transferred:	        2.12 MB
Response time:		        6.39 secs
Transaction rate:	       14.76 trans/sec
Throughput:		        0.04 MB/sec
Concurrency:		       94.26
Successful transactions:         874
Failed transactions:	           0
Longest transaction:	        9.14
Shortest transaction:	        1.44

Looks good. Is there any performance difference when running benchmarking script with this in compared to not?


Update functions-run-local.md

Move Version 1.x runtime install instructions below Version 2.x

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.:x: dwperrin sign nowYou have signed the CLA already but the status is still pending? Let us recheck it.

@dwperrin : Thanks for your contribution to the Azure documentation! The author, @ggailey777, has been notified to review your proposed change.

@dwperrin Could you explain your intent for moving the 1.x instructions below the 2.x instructions?

@SyntaxC4 So a couple of weeks ago took me a while to realise I needed the version 2 of the cli for a project and found it strange that the latest version was actually below the older version.  I thought may be was just me and so I did not think on it further.  However then last week I was watching a stream by @johnpapa with @clarkio and they experience the same process and thought should it should change as well so I put in a PR.
see https://www.twitch.tv/videos/231703407  around 40:50
I realise I should have put this explanation in when I submitted the PR.

@dwperrin That makes sense, I wonder if we should be clearer on the fact that it's preview then.

#sign-off /cc:@ggailey777

@SyntaxC4: I'm sorry - only the author of this article, @ggailey777, can sign off on your changes. But we do have an exception process - if you are on the Microsoft content or product team for this product area, you can ask the PR review team to review and merge it by sending mail to the techdocprs alias.


Crash when taking gradient

I am working on a simulator and I'd like to take the gradient through it as it's part of an optimization problem.  It is part of private work and I am unable to create a small MWE.  However, I did not see a similar error already reported here, so I just wanted to report it, though I understand it will be hard for your team to debug without an MWE.  Here it is:
julia> function f(x, params)
           -obj_solar(unflatten(collect(x)), params)
       end
f (generic function with 1 method)

julia> @time f(x0_vec, params)
  0.116539 seconds (415.21 k allocations: 18.287 MiB, 94.44% compilation time)
-2.4909139880854785e6

julia> df_dx = zeros(2)
2-element Vector{Float64}:
 0.0
 0.0

julia> autodiff(f, Active, Duplicated(x0_vec, df_dx), params)
warning: didn't implement memmove, using memcpy as fallback which can result in errors
{[0]:Float@double, [8]:Float@double, [16]:Float@double, [24]:Float@double, [32]:Float@double, [40]:Float@double, [48]:Float@double, [56]:Float@double, [64]:Float@double, [72]:Float@double, [80]:Float@double, [88]:Float@double, [96]:Integer, [97]:Integer, [98]:Integer, [99]:Integer, [100]:Integer, [101]:Integer, [102]:Integer, [103]:Integer, [104]:Integer, [105]:Integer, [106]:Integer, [107]:Integer, [108]:Integer, [109]:Integer, [110]:Integer, [111]:Integer, [112]:Integer, [113]:Integer, [114]:Integer, [115]:Integer, [116]:Integer, [117]:Integer, [118]:Integer, [119]:Integer, [120]:Integer, [121]:Integer, [122]:Integer, [123]:Integer, [124]:Integer, [125]:Integer, [126]:Integer, [127]:Integer, [128]:Float@double, [136]:Float@double, [144]:Float@double, [152]:Float@double, [160]:Float@double, [168]:Float@double, [176]:Float@double, [184]:Float@double, [192]:Float@double, [200]:Float@double, [208]:Float@double, [216]:Float@double}
 canonicalizing 16
Assertion failed: ((size_t)pair.first[0] < len), function CanonicalizeValue, file /workspace/srcdir/Enzyme/enzyme/Enzyme/TypeAnalysis/TypeTree.h, line 605.

signal (6): Abort trap: 6
in expression starting at REPL[33]:1
__pthread_kill at /usr/lib/system/libsystem_kernel.dylib (unknown line)
Allocations: 162259311 (Pool: 162204319; Big: 54992); GC: 85
[1]    18437 abort      /Applications/Julia-1.7.app/Contents/Resources/julia/bin/julia

I'm using Julia 1.7.1 and Enzyme 0.8.1.  I did see in the docs that f cannot allocate any memory.  I suspect this may be the root issue, though eliminating allocations may be a big task for my f.  So I wanted to check in here to see if this is likely to be the cause.

I'm using Julia 1.7.1 and Enzyme 0.8.1. I did see in the docs that f cannot allocate any memory. I suspect this may be the root issue, though eliminating allocations may be a big task for my f. So I wanted to check in here to see if this is likely to be the cause.

On Enzyme 0.8 you should be able to allocate memory, but avoiding allocations is still recommended.
Without a MWE it's going to be hard to figure out, but maybe @wsmoses has some ideas.

Yeah this is not related to any memory allocation, but an analysis pass that preprocesses the code found an inconsistent state. Unfortunately this will be difficult to analyze without the code. However, if you enable debug prints for that analysis Enzyme.API.printtype!(true), that may contain enough information to determine the cause.

I totally understand about difficulty debugging without an MWE.  Just in case you can figure something out just from the debug print, here it is:  https://gist.github.com/ianfiske/53161351f1d9fe24b843c22aab083951

Can you actually add both Enzyme.API.printtype!(true) and Enzyme.API.print!(true) ?

There doesn't appear to be an Enzyme.API.print! function in my version.  I did
Enzyme.API.printtype!(true)
Enzyme.API.printall!(true)

And updated the gist at https://gist.github.com/ianfiske/53161351f1d9fe24b843c22aab083951

after simplification :
define [2 x double] @preprocess_julia_ComposedFunction_8386([2 x double] %0, {} addrspace(10)* nonnull align 16 dereferenceable(40) %1) local_unnamed_addr #3 !dbg !411 {
entry:
  %malloccall = tail call noalias i8* @malloc(i64 16), !enzyme_fromstack !4
  %2 = bitcast i8* %malloccall to [2 x double]*
  %malloccall1 = tail call noalias i8* @malloc(i64 224), !enzyme_fromstack !4
  %3 = bitcast i8* %malloccall1 to { { [2 x { double, double, double, [2 x double], double }], { [2 x i64], [2 x i64], [2 x { { double, double, double, [2 x double], double } }] } } }*
  %4 = addrspacecast { { [2 x { double, double, double, [2 x double], double }], { [2 x i64], [2 x i64], [2 x { { double, double, double, [2 x double], double } }] } } }* %3 to { { [2 x { double, double, double, [2 x double], double }], { [2 x i64], [2 x i64], [2 x { { double, double, double, [2 x double], double } }] } } } addrspace(11)*
  %.fca.0.extract = extractvalue [2 x double] %0, 0
  %.fca.0.gep = getelementptr inbounds [2 x double], { { [2 x { double, double, double, [2 x double], double }], { [2 x i64], [2 x i64], [2 x { { double, double, double, [2 x double], double } }] } } }* %3, i64 0, i64 0
  store double %.fca.0.extract, double* %.fca.0.gep, align 8
  %.fca.1.extract = extractvalue [2 x double] %0, 1
  %.fca.1.gep = getelementptr inbounds [2 x double], { { [2 x { double, double, double, [2 x double], double }], { [2 x i64], [2 x i64], [2 x { { double, double, double, [2 x double], double } }] } } }* %3, i64 0, i64 1
  store double %.fca.1.extract, double* %.fca.1.gep, align 8
  %5 = bitcast [2 x double]* %2 to i8*
  call void @llvm.lifetime.start.p0i8(i64 noundef 16, i8* noundef nonnull align 8 dereferenceable(16) %5) #14
  %6 = call {}*** @julia.get_pgcstack(), !noalias !412
  call fastcc void @julia____83_8389([2 x double]* noalias nocapture noundef nonnull writeonly sret([2 x double]) align 8 dereferenceable(16) %2, { { [2 x { double, double, double, [2 x double], double }], { [2 x i64], [2 x i64], [2 x { { double, double, double, [2 x double], double } }] } } } addrspace(11)* nocapture noundef nonnull readonly align 8 dereferenceable(224) %4, {} addrspace(10)* nonnull align 16 dereferenceable(40) %1) #3, !dbg !415, !noalias !412
  %.sroa.0.0..sroa_idx = getelementptr inbounds [2 x double], [2 x double]* %2, i64 0, i64 0, !dbg !415
  %.sroa.0.0.copyload = load double, double* %.sroa.0.0..sroa_idx, align 8, !dbg !415
  %.sroa.2.0..sroa_idx3 = getelementptr inbounds [2 x double], [2 x double]* %2, i64 0, i64 1, !dbg !415
  %.sroa.2.0.copyload = load double, double* %.sroa.2.0..sroa_idx3, align 8, !dbg !415
  call void @llvm.lifetime.end.p0i8(i64 noundef 16, i8* noundef nonnull %5), !dbg !415
  %.fca.0.insert = insertvalue [2 x double] undef, double %.sroa.0.0.copyload, 0
  %.fca.1.insert = insertvalue [2 x double] %.fca.0.insert, double %.sroa.2.0.copyload, 1
  ret [2 x double] %.fca.1.insert
}

analyzing function preprocess_julia_ComposedFunction_8386
 + knowndata: [2 x double] %0 : {[0]:Float@double, [8]:Float@double, [16]:Float@double, [24]:Float@double, [32]:Float@double, [40]:Float@double, [48]:Float@double, [56]:Float@double, [64]:Float@double, [72]:Float@double, [80]:Float@double, [88]:Float@double, [96]:Integer, [97]:Integer, [98]:Integer, [99]:Integer, [100]:Integer, [101]:Integer, [102]:Integer, [103]:Integer, [104]:Integer, [105]:Integer, [106]:Integer, [107]:Integer, [108]:Integer, [109]:Integer, [110]:Integer, [111]:Integer, [112]:Integer, [113]:Integer, [114]:Integer, [115]:Integer, [116]:Integer, [117]:Integer, [118]:Integer, [119]:Integer, [120]:Integer, [121]:Integer, [122]:Integer, [123]:Integer, [124]:Integer, [125]:Integer, [126]:Integer, [127]:Integer, [128]:Float@double, [136]:Float@double, [144]:Float@double, [152]:Float@double, [160]:Float@double, [168]:Float@double, [176]:Float@double, [184]:Float@double, [192]:Float@double, [200]:Float@double, [208]:Float@double, [216]:Float@double} - {}

So it looks like we're setting the arguments typetree here to something invalid (e.g. greater width than the actual register).
Figuring out what triggers this will be the problem. My guess looking here is that the derivative of this is being requested from a jl_apply_generic, so I wonder what Julia types are being parsed into typetrees.

Is there a way for me to trace where in my Julia source this came from?  That might help me make a MWE.

Actually, I messed around with this a bit and got a pretty simple MWE:
using ParameterHandling
using Enzyme
Enzyme.API.printtype!(true)
Enzyme.API.printall!(true)

function objective(x)
    (; a, b) = x
    sum(a.^2 .+ b.^2)
end

x0 = (a=rand(10), b=rand(10))
x0_vec, unflatten = value_flatten(x0)

function f(x_vec)
    objective(unflatten(x_vec))
end

f(x0_vec)
df_dx = ones(length(x0_vec))

autodiff(f, Duplicated(x0_vec, df_dx))

Here's that log trace for the MWE: https://gist.github.com/ianfiske/a016e51054c3e08558a7393ebe6d5f98

Error is now coming from Julia's GC pass
julia: /buildworker/worker/package_linux64/build/src/llvm-late-gc-lowering.cpp:1463: State LateLowerGCFrame::LocalScan(llvm::Function&): Assertion `SRet' failed.

signal (6): Aborted
in expression starting at REPL[11]:1
gsignal at /lib/x86_64-linux-gnu/libc.so.6 (unknown line)
abort at /lib/x86_64-linux-gnu/libc.so.6 (unknown line)
unknown function (ip: 0x7f8d617863f9)
__assert_fail at /lib/x86_64-linux-gnu/libc.so.6 (unknown line)
LocalScan at /buildworker/worker/package_linux64/build/src/llvm-late-gc-lowering.cpp:1463
runOnFunction at /buildworker/worker/package_linux64/build/src/llvm-late-gc-lowering.cpp:2675
_ZN4llvm13FPPassManager13runOnFunctionERNS_8FunctionE at /mnt/Data/git/Enzyme.jl/julia-1.7.2/bin/../lib/julia/libLLVM-12jl.so (unknown line)
_ZN4llvm13FPPassManager11runOnModuleERNS_6ModuleE at /mnt/Data/git/Enzyme.jl/julia-1.7.2/bin/../lib/julia/libLLVM-12jl.so (unknown line)
_ZN4llvm6legacy15PassManagerImpl3runERNS_6ModuleE at /mnt/Data/git/Enzyme.jl/julia-1.7.2/bin/../lib/julia/libLLVM-12jl.so (unknown line)
LLVMRunPassManager at /mnt/Data/git/Enzyme.jl/julia-1.7.2/bin/../lib/julia/libLLVM-12jl.so (unknown line)
LLVMRunPassManager at /home/wmoses/.julia/packages/LLVM/WjSQG/lib/12/libLLVM_h.jl:4741 [inlined]
run! at /home/wmoses/.julia/packages/LLVM/WjSQG/src/passmanager.jl:39 [inlined]
#81 at /mnt/Data/git/Enzyme.jl/src/compiler/optimize.jl:230
#ModulePassManager#64 at /home/wmoses/.julia/packages/LLVM/WjSQG/src/passmanager.jl:33
unknown function (ip: 0x7f8ceb6ce3ee)
_jl_invoke at /buildworker/worker/package_linux64/build/src/gf.c:2247 [inlined]
jl_apply_generic at /buildworker/worker/package_linux64/build/src/gf.c:2429
ModulePassManager at /home/wmoses/.julia/packages/LLVM/WjSQG/src/passmanager.jl:31
post_optimze! at /mnt/Data/git/Enzyme.jl/src/compiler/optimize.jl:227 [inlined]
post_optimze! at /mnt/Data/git/Enzyme.jl/src/compiler/optimize.jl:221 [inlined]
_thunk at /mnt/Data/git/Enzyme.jl/src/compiler.jl:5292 [inlined]
_thunk at /mnt/Data/git/Enzyme.jl/src/compiler.jl:5268

This particular issue is now a case of: https://github.com/EnzymeAD/Enzyme.jl/issues/337

Now reduced to a generic GC runtime error (but compiles successfully):
GC error (probable corruption) :
Allocations: 69053306 (Pool: 69024596; Big: 28710); GC: 77
Array{Float64, (10,)}[0.0708804, 0.420144, 0.516531, 0.895988, 0.949172, 0.153385, 0.254524, 0.0538723, 0.536238, 0.190113]
0x7f03ea302010:  r-- Stack frame 0x7ffc85344e80 -- 0 of 8 (direct)
Unknown pc 0x7f045acde710 --- ABORTING !!!

signal (6): Aborted
in expression starting at none:0
gsignal at /lib/x86_64-linux-gnu/libc.so.6 (unknown line)
abort at /lib/x86_64-linux-gnu/libc.so.6 (unknown line)
gc_assert_datatype_fail at /buildworker/worker/package_linux64/build/src/gc.c:1657
gc_mark_loop at /buildworker/worker/package_linux64/build/src/gc.c:2711
_jl_gc_collect at /buildworker/worker/package_linux64/build/src/gc.c:3039
jl_gc_collect at /buildworker/worker/package_linux64/build/src/gc.c:3248
maybe_collect at /buildworker/worker/package_linux64/build/src/gc.c:882 [inlined]
jl_gc_pool_alloc at /buildworker/worker/package_linux64/build/src/gc.c:1209
jl_gc_alloc_ at /buildworker/worker/package_linux64/build/src/julia_internal.h:339 [inlined]
jl_gc_alloc at /buildworker/worker/package_linux64/build/src/gc.c:3290
_new_array_ at /buildworker/worker/package_linux64/build/src/array.c:127 [inlined]
_new_array at /buildworker/worker/package_linux64/build/src/array.c:193 [inlined]
jl_alloc_array_1d at /buildworker/worker/package_linux64/build/src/array.c:441
Array at ./boot.jl:457 [inlined]
Array at ./boot.jl:476 [inlined]
getindex at ./array.jl:411 [inlined]
BasicBlock at ./compiler/ssair/basicblock.jl:25 [inlined]
compute_basic_blocks at ./compiler/ssair/ir.jl:91
inflate_ir at ./compiler/ssair/legacy.jl:15
inflate_ir at ./compiler/ssair/legacy.jl:10
InliningTodo at ./compiler/ssair/inlining.jl:864
jfptr_InliningTodo_7482.clone_1 at /mnt/Data/git/Enzyme.jl/julia-1.7.2/lib/julia/sys.so (unknown line)
_jl_invoke at /buildworker/worker/package_linux64/build/src/gf.c:2247 [inlined]
jl_apply_generic at /buildworker/worker/package_linux64/build/src/gf.c:2429
resolve_todo at ./compiler/ssair/inlining.jl:795
analyze_method! at ./compiler/ssair/inlining.jl:851
analyze_single_call! at ./compiler/ssair/inlining.jl:1238
assemble_inline_todo! at ./compiler/ssair/inlining.jl:1419
ssa_inlining_pass! at ./compiler/ssair/inlining.jl:80
jfptr_ssa_inlining_passNOT._12916.clone_1 at /mnt/Data/git/Enzyme.jl/julia-1.7.2/lib/julia/sys.so (unknown line)
_jl_invoke at /buildworker/worker/package_linux64/build/src/gf.c:2247 [inlined]
jl_apply_generic at /buildworker/worker/package_linux64/build/src/gf.c:2429
run_passes at ./compiler/optimize.jl:307
optimize at ./compiler/optimize.jl:296 [inlined]
_typeinf at ./compiler/typeinfer.jl:255
typeinf at ./compiler/typeinfer.jl:209
abstract_call_method_with_const_args at ./compiler/abstractinterpretation.jl:557
abstract_call_gf_by_type at ./compiler/abstractinterpretation.jl:113
abstract_call_known at ./compiler/abstractinterpretation.jl:1342
abstract_call at ./compiler/abstractinterpretation.jl:1397
abstract_call at ./compiler/abstractinterpretation.jl:1382
abstract_eval_statement at ./compiler/abstractinterpretation.jl:1534
typeinf_local at ./compiler/abstractinterpretation.jl:1900
typeinf_nocycle at ./compiler/abstractinterpretation.jl:2014
_typeinf at ./compiler/typeinfer.jl:226
typeinf at ./compiler/typeinfer.jl:209
abstract_call_method_with_const_args at ./compiler/abstractinterpretation.jl:557
abstract_call_gf_by_type at ./compiler/abstractinterpretation.jl:113
abstract_call_known at ./compiler/abstractinterpretation.jl:1342
abstract_call at ./compiler/abstractinterpretation.jl:1397
abstract_call at ./compiler/abstractinterpretation.jl:1382
abstract_eval_statement at ./compiler/abstractinterpretation.jl:1534
typeinf_local at ./compiler/abstractinterpretation.jl:1900
typeinf_nocycle at ./compiler/abstractinterpretation.jl:2014
_typeinf at ./compiler/typeinfer.jl:226
typeinf at ./compiler/typeinfer.jl:209
typeinf_edge at ./compiler/typeinfer.jl:823 [inlined]
abstract_call_method at ./compiler/abstractinterpretation.jl:504
abstract_call_gf_by_type at ./compiler/abstractinterpretation.jl:105
abstract_call_known at ./compiler/abstractinterpretation.jl:1342
abstract_call at ./compiler/abstractinterpretation.jl:1397
abstract_apply at ./compiler/abstractinterpretation.jl:987
abstract_call_known at ./compiler/abstractinterpretation.jl:1249
abstract_call at ./compiler/abstractinterpretation.jl:1397
abstract_call at ./compiler/abstractinterpretation.jl:1382
abstract_eval_statement at ./compiler/abstractinterpretation.jl:1534
typeinf_local at ./compiler/abstractinterpretation.jl:1918
typeinf_nocycle at ./compiler/abstractinterpretation.jl:2014
_typeinf at ./compiler/typeinfer.jl:226
typeinf at ./compiler/typeinfer.jl:209
typeinf_edge at ./compiler/typeinfer.jl:823 [inlined]
abstract_call_method at ./compiler/abstractinterpretation.jl:504
abstract_call_gf_by_type at ./compiler/abstractinterpretation.jl:105
abstract_call_known at ./compiler/abstractinterpretation.jl:1342
abstract_call at ./compiler/abstractinterpretation.jl:1397
abstract_apply at ./compiler/abstractinterpretation.jl:987
abstract_call_known at ./compiler/abstractinterpretation.jl:1249
abstract_call at ./compiler/abstractinterpretation.jl:1397
abstract_call at ./compiler/abstractinterpretation.jl:1382
abstract_eval_statement at ./compiler/abstractinterpretation.jl:1534
typeinf_local at ./compiler/abstractinterpretation.jl:1918
typeinf_nocycle at ./compiler/abstractinterpretation.jl:2014
_typeinf at ./compiler/typeinfer.jl:226
typeinf at ./compiler/typeinfer.jl:209
typeinf_edge at ./compiler/typeinfer.jl:823 [inlined]
abstract_call_method at ./compiler/abstractinterpretation.jl:504
abstract_call_gf_by_type at ./compiler/abstractinterpretation.jl:105
abstract_call_known at ./compiler/abstractinterpretation.jl:1342
abstract_call at ./compiler/abstractinterpretation.jl:1397
abstract_apply at ./compiler/abstractinterpretation.jl:987
abstract_call_known at ./compiler/abstractinterpretation.jl:1249
abstract_call at ./compiler/abstractinterpretation.jl:1397
abstract_call at ./compiler/abstractinterpretation.jl:1382
abstract_eval_statement at ./compiler/abstractinterpretation.jl:1534
typeinf_local at ./compiler/abstractinterpretation.jl:1918
typeinf_nocycle at ./compiler/abstractinterpretation.jl:2014
_typeinf at ./compiler/typeinfer.jl:226
typeinf at ./compiler/typeinfer.jl:209
typeinf_edge at ./compiler/typeinfer.jl:823 [inlined]
abstract_call_method at ./compiler/abstractinterpretation.jl:504
abstract_call_gf_by_type at ./compiler/abstractinterpretation.jl:105
abstract_call_known at ./compiler/abstractinterpretation.jl:1342
abstract_call at ./compiler/abstractinterpretation.jl:1397
abstract_call at ./compiler/abstractinterpretation.jl:1382
abstract_eval_statement at ./compiler/abstractinterpretation.jl:1534
typeinf_local at ./compiler/abstractinterpretation.jl:1918
typeinf_nocycle at ./compiler/abstractinterpretation.jl:2014
_typeinf at ./compiler/typeinfer.jl:226
typeinf at ./compiler/typeinfer.jl:209
typeinf_edge at ./compiler/typeinfer.jl:823 [inlined]
abstract_call_method at ./compiler/abstractinterpretation.jl:504
abstract_call_gf_by_type at ./compiler/abstractinterpretation.jl:105
abstract_call_known at ./compiler/abstractinterpretation.jl:1342
abstract_call at ./compiler/abstractinterpretation.jl:1397
abstract_call at ./compiler/abstractinterpretation.jl:1382
abstract_eval_statement at ./compiler/abstractinterpretation.jl:1534
typeinf_local at ./compiler/abstractinterpretation.jl:1918
typeinf_nocycle at ./compiler/abstractinterpretation.jl:2014
_typeinf at ./compiler/typeinfer.jl:226
typeinf at ./compiler/typeinfer.jl:209
typeinf_ext at ./compiler/typeinfer.jl:909
typeinf_ext_toplevel at ./compiler/typeinfer.jl:942
typeinf_ext_toplevel at ./compiler/typeinfer.jl:938
jfptr_typeinf_ext_toplevel_10577.clone_1 at /mnt/Data/git/Enzyme.jl/julia-1.7.2/lib/julia/sys.so (unknown line)
_jl_invoke at /buildworker/worker/package_linux64/build/src/gf.c:2247 [inlined]
jl_apply_generic at /buildworker/worker/package_linux64/build/src/gf.c:2429
jl_apply at /buildworker/worker/package_linux64/build/src/julia.h:1788 [inlined]
jl_type_infer at /buildworker/worker/package_linux64/build/src/gf.c:295
jl_generate_fptr at /buildworker/worker/package_linux64/build/src/jitlayers.cpp:338
jl_compile_method_internal at /buildworker/worker/package_linux64/build/src/gf.c:1980
jl_compile_method_internal at /buildworker/worker/package_linux64/build/src/gf.c:2246 [inlined]
_jl_invoke at /buildworker/worker/package_linux64/build/src/gf.c:2239 [inlined]
jl_apply_generic at /buildworker/worker/package_linux64/build/src/gf.c:2429
display_error at ./client.jl:107
unknown function (ip: 0x7f03e5c0550d)
_jl_invoke at /buildworker/worker/package_linux64/build/src/gf.c:2247 [inlined]
jl_apply_generic at /buildworker/worker/package_linux64/build/src/gf.c:2429
jl_apply at /buildworker/worker/package_linux64/build/src/julia.h:1788 [inlined]
jl_f__call_latest at /buildworker/worker/package_linux64/build/src/builtins.c:757
#invokelatest#2 at ./essentials.jl:716 [inlined]
invokelatest at ./essentials.jl:714 [inlined]
exec_options at ./client.jl:294
_start at ./client.jl:495
jfptr__start_38732.clone_1 at /mnt/Data/git/Enzyme.jl/julia-1.7.2/lib/julia/sys.so (unknown line)
_jl_invoke at /buildworker/worker/package_linux64/build/src/gf.c:2247 [inlined]
jl_apply_generic at /buildworker/worker/package_linux64/build/src/gf.c:2429
jl_apply at /buildworker/worker/package_linux64/build/src/julia.h:1788 [inlined]
true_main at /buildworker/worker/package_linux64/build/src/jlapi.c:559
jl_repl_entrypoint at /buildworker/worker/package_linux64/build/src/jlapi.c:701
main at /buildworker/worker/package_linux64/build/cli/loader_exe.c:42
__libc_start_main at /lib/x86_64-linux-gnu/libc.so.6 (unknown line)
_start at ./julia-1.7.2/bin/julia (unknown line)
Allocations: 69053306 (Pool: 69024596; Big: 28710); GC: 77

I can't reproduce this locally on Enzyme 0.10.11. Please give it a go and see if the issue is solved for you now. If it isn't please reopen this issue.


No recent data dumps

I have a model idea that I'd like to run but it'd require more recent data than the currently available match dumps. I also haven't found a way to pull large batches of recent non-pro data from the API.
Are there any plans to release a more recent dump?
I know there's a set loaded into BigQuery already, and streaming the data into a table was discussed with @fhoffa. Was this idea dropped?

Yeah, unfortunately we don't have a newer dump than the 2016 one.
We generally advise users to just use the regular API to get the data they need, and offer discounts on a case-by-case basis for high-volume users.

So I guess the core of my problem is that there isn't a good way to pull large blocks of public match data from the API in a principled way.
/publicMatches says that it samples from public matches, and /explorer only runs queries on professional games.
Is there a recommended way to do this, or is this not something the system was meant to do?

You can use the Steam API's GetMatchHistoryBySequenceNum to get basic data for all matches, then use the OpenDota API to fetch additional parsed data for them.
Depending on what fields you need, the Steam API by itself might fit your needs.


Add "A Primer on Design Patterns"

What does this PR do?
Add "A Primer on Design Patterns" by Rahul Batra. Resolves #5515
For resources
Free programming books
Why is this valuable (or not)?
Requested by #5515
How do we know it's really free?
https://leanpub.com/aprimerondesignpatterns/ shows that it's a pay-what-you-want price with suggested price of $5 and a minimum of $0. Book is accessible directly at https://leanpub.com/aprimerondesignpatterns/read
For book lists, is it a book? For course lists, is it a course? etc.
Book
Checklist:

[x] Read our contributing guidelines
[x] Search for duplicates.
[x] Include author(s) and platform where appropriate.
[x] Put lists in alphabetical order, correct spacing.
[x] Add needed indications (PDF, access notes, under construction)

Follow-up

Check the status of GitHub Actions and resolve any reported warnings!

hi charlotte! welcome back

hello! thank you! 👋


Extend and IntoIterator implementation

I've implemented Extend and IntoIterator for the TypeMap
to allow one to extend the type map with another type map.
This will expose the inner values through the IntoIterator implementation
but at the same time would allow for extension by using external
types.

Thanks!


Multi chain docker

Hi,
adjusted the docs and the compose files so that one can simply switch between the two chains just by importing the correct environment.
The patch builds on the original idea from AndrewSamokhvalov.
Let me know if this makes sense or any adjustments maybe needed.
Kind regards,
Jan

A bit of controversial part is https://github.com/lightningnetwork/lnd/pull/220/commits/456e6d6cedd6d732699688a0bdbca0f0be8fa273 that uses the local sources. I find it important when playing with local branches or so. At the same time, since any plain user has to clone the whole repo anyway, it should hurt anything. Curious about anybody's thoughts on this.

Thanks for the PR @honzik666! You are using some tricks I had no idea about 👍  I will proceed to the reviewing it after my PR will be merge 🙂

once the lnd will have true multichain support, the Docker/compose
files will have to be adjusted accordingly, too. But for the time being
it saved me a lot of time being able to easily switch back and forthe
between the 2 blockchains
Dne Mon, 26 Jun 2017 06:21:25 -0700
"andrew.shvv"<EMAIL_ADDRESS>napsal(a):

Thanks for the PR @honzik666! You are using some tricks I had no idea
about 👍  I will proceed to the reviewing it after my PR will be
merge 🙂

--
CEO Braiins Systems | Slushpool.com
email<EMAIL_ADDRESS>http://braiins.cz
http://slushpool.com


Change Graphite's active file color

Graphite accent goes well with darker theme, but due to same color I'm unable to differentiate between active/opened file and other files in the Explorer

We can't fix this. Graphite accent was made for light theme and i suggest you to avoid using it with other theme variants because may be contrast issues you mentioned.


Tileserver: Possibility to merge multiple mbtiles layers

Usecase: You have a base layer, like mbtiles of swiss osm data. Now you want to put one or multiple other layers on top of this.

Tried some things with tilelive modules and python landez. There is no existing way of merging mbtiles with different layers together - we would have to write that ourselves.
I propose the following approach:
I someone wants to put a custom data overlay over a custom styled OSM base map he should do that on
the client side with e.g. LeafletJS.

Putting a "thematic" layer on top of a "base map" is best practice in cartography/GIS.
Since this project is about making map styling so easy (possibly worldwide), we probably have to decide about which users we want to address: Is it both, or the few but important base map stylers or is it the mass users doing thematic maps? If we have to choose, I would concentrate on "base map" stylers.

I propose the following approach:
I someone wants to put a custom data overlay over a custom styled OSM base map he should do that on
the client side with e.g. LeafletJS.

What I mean is that the user pulls in base map layers but he can still use his custom produced thematic vector layer as an overlay. But he has to specify that in e.g. LeafletJS and the base map and thematic layer are not merged automagically into the same vector tile source.
var grayscale = L.tileLayer(mapboxUrl, {id: 'MapID', attribution: mapboxAttribution}),
    streets   = L.tileLayer(mapboxUrl, {id: 'MapID', attribution: mapboxAttribution});

var map = L.map('map', {
    center: [39.73, -104.99],
    zoom: 10,
    layers: [grayscale, cities]
});

Putting a "thematic" layer on top of a "base map" is best practice in cartography/GIS.
Since this project is about making map styling so easy (possibly worldwide), we probably have to decide about which users we want to address: Is it both, or the few but important base map stylers or is it the mass users doing thematic maps? If we have to choose, I would concentrate on "base map" stylers.

One nice example where I think osm2vectortiles could have helped alot is this custom Nightlife map of Lisa Stolz (as a bachelor thesis).
http://blog.geofabrik.de/?p=332
Instead of using Geofabrik servers http://sanday.geofabrik.de/night.html?layers=0B
perhaps she could have used our vector tiles to do the same styling.

In the bachelor thesis I found this sentence:

Wie auch Kosmtik greift die Software auf PostGIS zu und ist mit der neuen Version
TileMill 2 noch immer ein gängiges Programm.  TileMill 2 ist im Vergleich zu
TileMill 1 stärker an den Hersteller gebunden. Da man bei der Erstellung des neuen
Kartenstils möglichst unabhängig bleiben möchte wird von der Nutzung von TileMill
abgesehen und stattdessen Kosmtik verwendet.

And this is really what we are trying to solve here, by providing our own vector tiles people can use Mapbox Studio Classic. Great to see that the problem really exist.

The MapBox Streets example shows that two layer names can be combined with comma:
https://b.tiles.mapbox.com/v4/mapbox.mapbox-terrain-v2,mapbox.mapbox-streets-v6/10/299/386.vector.pbf?access_token=pk.eyJ1IjoibWFwYm94IiwiYSI6IlhHVkZmaW8ifQ.hAMX5hSW-QnTeRCMAy9A8Q
TileJSON is concatenated as well:
https://b.tiles.mapbox.com/v4/mapbox.mapbox-terrain-v2,mapbox.mapbox-streets-v6.json?access_token=pk.eyJ1IjoibWFwYm94IiwiYSI6IlhHVkZmaW8ifQ.hAMX5hSW-QnTeRCMAy9A8Q
This can be trivially implemented in TileServer-PHP, because vector tiles are designed in a way which supports merging by direct binary concatenation...


L2a ACOLITE data read from generated NetCDF contains mostly zeros

Describe the bug
L2a ACOLITE data read from generated NetCDF contains mostly zeros
To Reproduce

Generate l2a cube with hypso-package
Save l2a cube to NetCDF
Load NetCDF

Expected behavior
Unsure
Screenshots
N/A
Desktop (please complete the following information):

OS: Ubuntu

Additional context
N/A

The package was running a modified version of ACOLITE and LUTs were failing to download or load. The version of ACOLITE distributed with the hypso-package has been replaced by an option that allows the user to point the hypso-package to their own installation of ACOLITE. This has solved the issue. Relevant commit: https://github.com/NTNU-SmallSat-Lab/hypso-package/commit/e4502dd50dff5f4ef3ae26cc038a97765af999b9


Very important note for the main example to work correctly

It should be added and highlighted that the FancyButton component has to be converted to class based implementation to be able to get the ref forwarding

This definitely isn't right, forwardRef is primarily for functions, and the example works. What do you mean?


AAS is a series - reflect in aas folder structure

Since Details of AAS is a series the folder aas and versions below are probably not sufficient.
Readme.md should give formal reference to document.

Hello Birgit,
I just made a proposal in a new branch. Can you have a look and give me feedback?

Small comment wrt Readme.md in this new branch.: Revision 2.0.1 from 2019 [3] should be Revision 2.0.1 from May 2020 [3]

When I am reflecting on this again it might be better to not have folder for the different parts: in the moment we merged part 2 and part 3 and it can be expected that part 1 might be splitted in the future. So perhaps instead we should make more generic folders like "informationModel" "Interfaces" etc. without version: the versions should only be contained in the ids themselves. What do you think?

Trying to catch up on this topic.

E.g. vdi/2770/1/0/Document means Element Document in VDI 2770 Version 1.0 whereas vdi/2770/Document/1/0 means Element Document V1.0 in VDI 2770

That's a very valid point, the first version/revision paths (should) link to the versioning of the source document. I am trying to sort my thoughts a bit:
Pattern 1: vdi/2770/1/0/Document

Versioning of the entities is bound to the versioning of the source standard.
No revisions possible if the source version has not been changed.
Bugfixes are independent, I would accept them at all times without having bugfix versions explicitly in the URIs

Pattern 2: vdi/2770/Document/1/0

Problem with different versions of the source: In case version 2.0 of VDI2770 drops the Document element, the path vdi/2770/Document still stays.
changes to the vdi/2770/Document element in this repo can be tracked (vdi/2770/Document/1/0, vdi/2770/Document/1/1 and so on)

Pattern 3: vdi/2770/1/0/Document/1/0

Contains both a versioning for the source standard as well as the entity in this repo
Bit of an overkill to me, creating certainly a lot of confusion and misunderstandings

--> For the existing aas, I'd prefer to leave the scheme as it is (Pattern 1). Just to prevent breaks as those URLs are also used in the RDF serialization. However, Part 2 already uses the scheme https://admin-shell.io/aas/API/<element-name>/1/0/RC02 (Pattern 2), which gives us only two options (or am I missing another one?):
Option 1: We introduce Pattern 2 for the Part 1 classes too, including changing the already existing versions.
Option 2: We change the identifiers in Part 2 for the final release 1.0.
What's your opinion?

Could there be more than one id for the same element?

I would say so, yes. But simply because we cannot enforce it globally. The convention should be to not create additional identifiers, and definitely not in this repository.

How do we document obsolete elements and thus obsolete ids?

Difficult question. I would say they should be marked with a deprecated tag in the latest version before the deletion, and then simply omitted...

Small comment wrt Readme.md in this new branch.: Revision 2.0.1 from 2019 [3] should be Revision 2.0.1 from May 2020 [3]

I have integrated your comment with #22 and merged already.


Incomplete ACL rule libsai implementation for bmv2 P4 pipeline

P4 code for dash pipeline on bmv2 has multiple instances of ACL tables (1 per stage per direction).
Whereas SAI has a single API for creating ACL rules that could belong to any stage.
Current auto-gen libsai code only populates one of these P4 ACL tables irrespective of where the ACL rule belongs.
This needs to be fixed.

Cover in bmv2 meeting

Engineer is working w/ @marian-pritsak to solve.

@mukeshmv Any big updates on this issue, wanted to add a tag to the progress session.

This PR https://github.com/Azure/DASH/pull/265 seems to be related.

As Chris said, the PR https://github.com/Azure/DASH/pull/265 is for fixing this issue.

Marking as closed


dose it work on sanctioned countrys

hi i want to know if it work in iran and other countrys that are in usa sanction ?

Some brief research on the topic seems to indicate that US sanctions on Iran don't affect Iranian citizens' access to the internet, at least not in a restrictive way. As far as I can tell, Iran's own government surveils and censors its citizens' telecommunications & internet access in an attempt to restrict access to certain information, while US internet-related sanctions aim to prevent the Iranian government from being able to do so.
As such, I think the actual question here is does Riptide work in countries whose governments restrict their citizens' access to the internet? The answer is that I don't know, as I'm not familiar with exactly what kind of internet restrictions governments like Iran and China have implemented.
The only way to know for sure is to try it, but if you end up using Riptide for something which the Iranian government doesn't like, you might find it no longer working at some point :P


podman port fix output

list a portion of the container id and the ports exposed on the same
line. when using all, if no ports are exposed, do not list the container
id.  Also, shorten the container id to a len of 12 like other container
commands.
Fixes bugzilla #1683734
Signed-off-by: baude<EMAIL_ADDRESS>

LGTM, but it looks like you have some test adjustments that need to be made.

One thought, but I'm not committed to seeing it fixed here.

I like @mheon's --no-trunc thought, but this LGTM as is.

The no-trunc suggestion should be a different PR,
/lgtm


DO NOT MERGE! Fast Forward stable to 205ad610fd9f63247aa6815862655c00c41b0a85.

This PR will be merged automatically once checks are successful.

Jenkins job manager/postsubmit passed


[docs] Improve coverage of TypeScript theme augmentation

The current theme customization documentation seems incomplete and does not give enough information to users on properly customizing the theme and other props within it. Especially the module augmentation piece doesn't specify specific module names and caused a lot of frustration for me personally (and there might be others who might be feeling the same pain). I have provided a more complete example, with specific extension points as sample for users to theme customization.

[ ] I have followed (at least) the PR section of the contributing guide.

I can provide a code sandbox url as well if needed. All code has been tested there already using one of the example material ui typescript(create react app) projects.

I think the most important take away and motivation for my PR is around module augmentation. The palette and theme related options are defined and exported from two different modules i.e. createPalette and createMuiTheme modules. In order for module augmentation to work correctly, we would need to provide the exact module name i.e.
declare module "@material-ui/core/styles/createPalette"
instead of :
declare module '@material-ui/core/styles'
for Palette and PaletteOptions. Similar is the story for theme and themeOptions.
Also, the example in the link you provided is restricted to deriving an existing type (from primary color). The one included in my PR is on implementing a custom type which happens to be the use case I'm dealing with currently.  Please let me know if I've interpreted anything incorrectly above or if my explanation above not accurate enough.

@ashishshuklabs @material-ui/core/styles/createPalette is a private path. It can break at anytime between two releases. It's also not needed to mention it, see https://codesandbox.io/s/gallant-leaf-q8ds0?file=/src/createMyTheme.ts that demonstrates how @material-ui/core/styles is enough.

@oliviertassinari , so I copied over the code you provided in to my sandbox, and interestingly it did not work. However, I noticed that the only difference there, was the package version for material ui core in package.json. I had that as "next" for some reason, and you had it as "5.0.0-alpha.28", I still had below error:

Now, when I changed the version to the one you specified above instead of "next", the above error is gone!! Any idea what might be going on here and what does "next" version refer to (shouldn't it be 5.0.0-alpha.28 as well)?

@ashishshuklabs I don't know what's going wrong with your env.


Getting ChatCompletion error via Azure OpenAI

openai has no ChatCompletion attribute, this is likely due to an old version of the openai package. Try upgrading it with pip install --upgrade openai. (type=value_error)
What is that what should i do ? (FYI upgrading openai doesn't work out)

I'm not sure what's showing you that error message because instead of updating the version, you should downgrade the version, you can do so with
pip install openai<1

Hey @samedovzaur , I just had the same issue, I think it's because they pushed an update to the package a couple hours ago. I installed the version 0.28.1 and it works. Thanks!

Thank You King👑!

I'm not sure what's showing you that error message because instead of updating the version, you should downgrade the version, you can do so with
pip install openai<1

Or ideally you can migrate to the v1 SDK, you can do so by running openai migrate.

I was downgrading it but man what time slayer thing it is to do :)

It happens again

0.28.1

man i do keep getting the same error again is this same for you as well?

You'll have accidentally installed the new version somehow.


Import asterisk phonebook and extensions

Hello,
i would like to import contacts from the asterisk phone book directly to jitsi.
How is that possible?
Thanks
i have to add here that i am using freepbx

I assume you're referring to the Asterisk Phonebook Module. This can't be connected to Jitsi. An implementation would require that:

FreePBX provides the list of those extensions via an API
Someone writes an address book plugin for Jitsi that queries this API


Add Simplified Chinese localization

谢谢你!
Looks like you’ve included some extra “,” at the end of some files. JSON doesn’t like this hence failing to compile. It will also be worth running “yarn extract-locales” locally as this will put the translations in the correct order in the files.

Oh！ Sorry for the extra “,” , I just realize that these are all JSON files, I will fix them right now

Codecov Report

Merging #23 (123bfc9) into main (1101635) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main      #23   +/-   ##
=======================================
  Coverage   49.28%   49.28%
=======================================
  Files          98       98
  Lines       10708    10708
  Branches      693      693
=======================================
  Hits         5277     5277
  Misses       5387     5387
  Partials       44       44

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 1101635...123bfc9. Read the comment docs.

Looks good apart from the Done translation. What is [.output/buddy.box](https://github.com/EdgeTX/buddy/pull/23/files#diff-94ae4b18fb5cc1aba4e47ff988b6051430f3bac6cb10d4d5747387f702935c37)?

@L1cardo I will merge once .output/buddy.box is removed

Removed! Sorry for my carelessness. 😅


teuthology/suite: add len() lupa function

Namespacing for this is weird which is why I missed it.

maybe add
Fixes: 96f38f2136dd2a4f64cc741919b85dc65a9df536

maybe add Fixes: 96f38f2

It's not really "fixing" that commit at all. It's just adding another function to the allowlist.

maybe add Fixes: 96f38f2

It's not really "fixing" that commit at all. It's just adding another function to the allowlist.

I thought it is follow up commit, because of the comment:

Namespacing for this is weird which is why I missed it.

I am sorry I was wrong.


Controller Mapping in Custom Mode

Hello! I’m just wondering if its possible to have controller mapping in custom mode? I use the program for streams and sometimes I use a controller for gaming and it would be really cool if it is possible!

Controller support is currently not implemented.

Hey, it is pretty hard so I will put it in back log for now. The reason is simply because I don't have a controller to test it out :(

oh ok! thanks for the updates! :D

@kuroni  I have a gamepad, I'll do this.
But XInput (gamepad) is an OS specific, I don't have Windows now.
So, I'm gonna implement this using SFML (joystick).
You can implement XInput support after this.

@kuroni It works~
You can take a look here #115


cmd/link: UPX doesn't run on 64bit elf binaries

As the title says, upx does't run on Go 64bit elf binaries and exits with:
upx: exe-name: EOFException: premature end of file

I submited a patch @ https://go-review.googlesource.com/18690 (first time using the new Gerrit).
The linker already handles ELF32 headers, so I extended it to ELF64.

For reference:
https://groups.google.com/forum/#!topic/golang-nuts/UtrMwo7zM7M
https://github.com/pwaller/goupx

:+1: Great


Add notice that the "records" are not records at runtime

That those "records" return null for Class#getRecordComponents and false for Class#isRecord() because of the attribute strips, which would be meaningful for modders who see these decompiled classes as valid records in source code.
On a side note, I need to check if proguard strips NestHost and NestMembers attributes. This might have contributed to proguard de-privating certain record components that were accessible as private fields before stripping. Might be worthy to document as well.

No longer needed by 1.18 pre 6.


VICC implementation examples

@ahwagner I'm sure you are aware, but just verifying whether you will be updating the VICC implementation examples to show the VSL prefix for SequenceLocation and the change to include _digest and _id as optional attributes instead of the former "id" attribute?

Yes. Good to have an issue to track progress on that front anyway. Will leave open for that purpose.

@ahwagner Do you intend to update the examples?


[Enhancement] add option to disable disk cache

What type of PR is this：

[ ] BugFix
[ ] Feature
[x] Enhancement
[ ] Refactor
[ ] UT
[ ] Doc
[ ] Tool

Which issues of this PR fixes ：

Fixes #
Problem Summary(Required) ：

Add option block_cache_disk_enable so user can disable disk block cache and only use memory block cache.
Checklist:

[ ] I have added test cases for my bug fix or my new feature
[ ] I have added user document for my new feature or new function

run starrocks_admit_test