Visualize the Predictions

Please provide a visualization script to visualize the predicted 3D bounding box on the image. I have attached a sample image and its corresponding bounding box. Thanks

frame_0007242.json

Hi @PaulSudarshan,
You can visualize your predictions using the aiMotive Dataset Loader repository.
When you obtain the predicted bounding boxes after inference, you can visualize them using the example renderer:
PYTHONPATH=$PYTHONPATH: python examples/example_render.py --root-dir PATH_TO_AIMOTIVE_DATA --split val
You need to update the getitem() method of /src/data_loader.py:
def __getitem__(self, path: str) -> DataItem:
        """
        Returns sensor data for a given keyframe.

        Args:
            path: path of the keyframe's annotation file

        Returns:
            a DataItem with annotations and sensor data
        """
        data_folder = self.get_directory(path)
        frame_id = self.get_frame_id(path)

        ### THIS LINE IS ADDED TO THE ORIGINAL CODE FOR VISUALIZING PREDICTIONS.
        path = "YOUR_BASE_PATH/EXPERIMENT_NAME/outputs/val" + path.split('val')[1]
        ####

        annotations = Annotation(path)
        lidar_data = load_lidar_data(data_folder, frame_id)
        radar_data = load_radar_data(data_folder, frame_id)
        camera_data = load_camera_data(data_folder, frame_id)

        return DataItem(annotations, lidar_data, radar_data, camera_data)

If you want to filter predictions by confidence, add these lines to the beginning of is_in_fov(...) method of /src/renderer.py:
if obj['Score'] < 0.2:
        return False

Hi @TamasMatuszka ,
I want to know, how to visualize the 3D bounding boxes from the inference json files. Specifically I want a snippet that would parse the inference json and overlay the 3D bounding boxes on the image.

Hi @PaulSudarshan,
aiMotive Dataset Loader repository can be used with the above-mentioned modification for visualizing the 3D bounding boxes from the inference .json files. The .json files are saved using the same directory structure as the GT is stored. Therefore, only the json path shall be updated, as I showed in my previous comment.

@TamasMatuszka The 3D annotations present inside the directory /aimotive_dataset/val/highway/20210401-074452-00.01.00-00.01.15@Jarvis/dynamic/box/3d_body belong to which of the following cameras :
B_MIDRANGECAM_C
F_MIDLONGRANGECAM_CL
F_MIDLONGRANGECAM_CR
M_FISHEYE_L
M_FISHEYE_R

@PaulSudarshan the annotations are defined in the body coordinate system. For more details, please refer to Section 3.2 of the paper.
For checking whether a certain annotation is visible on a certain camera, please refer to renderer.py of the aiMotive Dataset Loader repository.

@PaulSudarshan the annotations are defined in the body coordinate system. For more details, please refer to Section 3.2 of the paper.
For checking whether a certain annotation is visible on a certain camera, please refer to renderer.py of the aiMotive Dataset Loader repository.

@TamasMatuszka it is not clear to me how the annotations of a single frame (.json) maps to multiple cameras. As I can see a single frame has a single annotated json file, how is that single annotated json file mapped to 4 different cameras.

@PaulSudarshan  The annotations are in BEV space meaning all objects around the car corresponding to a given frame are contained by a JSON file. The neural network operates and detects in BEV space, therefore, this is a natural design choice. The visibility of a given object on a camera can be calculated with the code I sent previously.

@PaulSudarshan The annotations are in BEV space meaning all objects around the car corresponding to a given frame are contained by a JSON file. The neural network operates and detects in BEV space, therefore, this is a natural design choice. The visibility of a given object on a camera can be calculated with the code I sent previously.

Thanks for your explanation. I have another query with regards to visualizing the predictions in BEV space, does the aiMotive Dataset Loader repository provide support for visualization in BEV ?

@PaulSudarshan Sure, renderer.py  has a render_lidar() method which is used for generating plots similar to Figure 14 in the paper.

@PaulSudarshan Sure, renderer.py  has a render_lidar() method which is used for generating plots similar to Figure 14 in the paper.

Thanks @TamasMatuszka . If I want to visualize on top of an top-down camera image instead of lidar/radar, how am I supposed to get the top-down camera image that needs to be passed to the following function?

@PaulSudarshan If you want to visualize the images in BEV you can use IPM. Since you have 4 cameras, the projections need to be stitched which might not be trivial. Some references regarding IPM:

https://thomasfermi.github.io/Algorithms-for-Automated-Driving/LaneDetection/InversePerspectiveMapping.html
https://developer.ridgerun.com/wiki/index.php/Birds_Eye_View/Introduction/Research
https://stackoverflow.com/questions/57439977/transforming-perspective-view-to-a-top-view


Better dtype handling

At the moment, we have that all the readers have a dtype argument with the torch.float64 default. However, with our current global dtype model, this does not make much sense and it makes maintaining the tests quite difficult at times (see #146). I would propose to remove the dtype argument and always use the global dtype, so as to make the logic consistent with our current dtype handling. I do not see it breaking our code in any way, because we always use the global dtype.
This could be changed in the future.
@PicoCentauri

Personally, I don't like the global dtype option. I know that you will argue that this standard and everybody is doing it, but I think this is an antipattern. Using a global variables makes code very implicit and very hard to debug if something goes wrong. I don't know what you saw in #146 but this seemed unrelated to the dtype.

I would propose to remove the dtype argument and always use the global dtype, so as to make the logic consistent with our current dtype handling.

I would rather say we remove the set global dtype otions and models should use the dtype they get from the dataset. The current implementation in mixed and was a compromise we did.

I agree with @PicoCentauri: if we allow setting global dtype, this mean that importing architecture_1 changes the behavior of architecture_2, which I would rather not have.
We can add a lint rule to forbid the use of torch.set_default_dtype() and torch.get_default_dtype() in metatensor-models, but we should have a review point that these are not used in external dependencies either.

I will do this asap. @Luthaf do you know how to do such a lint rule?

Writing a flake8 plugin (https://flake8.pycqa.org/en/latest/plugin-development/index.html) would be one solution, or we could use a grep-based linting script.


Allow hooking text rendering

It would be great to let users replace yakui's text rendering. I think a clever way that we could do this is by moving yakui's text code into a new crate, like yakui-text, and then let people use Cargo to patch-replace it.

As per #179, we've figured that textboxes and text widgets are extremely dependent on the text backend!
We sure should move it to a separate crate, though, that should be the way to go in the future

Perhaps not to patch it but just have a separate crate that has text widgets?


Fix deprecated CHARSET utf8 in install and upgrade

Questions
Answers

Description?
install script prior 5.0.1 6.0.0 version CREATE TABLE with deprecated CHARSET=utf8. It need to be updated to utf8mb4 in install and upgrade process of the next version.

Type?
improvement

BC breaks?
no

Deprecations?
yes

Fixed ticket?
Fixes PrestaShop/Prestashop#28857

How to test?
Check the above ticket.

Hey @leemyongpakvn 👋
PHP-CS-Fixer is probably not happy with an indentation you have in your upgrade file

@kpodemski PHP-CS-Fixer v2 complains about 1 redundant space. I have no problem with PHP-CS-Fixer v3 on my localhost :yum:

@florine2623 I think it's because you need to bump the version of the module in productcomments.php 🤔

@florine2623
You must create version 5.0.3. Say me if you need help

Ha ! @kpodemski again too fast

@kpodemski @okom3pom I though it would be automatic !
Can one of you guy show me how to do it ?
I changed it in productcomments.php line 48 $this->version = '5.0.3';. Not sure if that's the right way to do it 😅

Here you have two things to test:
The update and the installation.
You have to check that the tables will be in utf8mb4
Yes, you have to change the version at this line

Here's what I did:

git clone git@github.com:PrestaShop/productcomments.git
click Install on BO
git checkout tags/v5.0.0
Install PR: git prc origin 144 dev
Modified productcomments.php line 48 $this->version = '5.0.3';
Checked BO, upgrade available only to 5.0.2. Not 5.0.3.

Am I missing something ?

@kpodemski  & @okom3pom According to modules/creation/enabling-auto-update, the upgrade filename must be upgrade-5.0.3.php. Upgraded successfully on PS <IP_ADDRESS> but failed on PS 8.0.0 with filename upgrade-5.0.3.php.
Amazingly other previous upgrade files of this modules are install-version.php :thinking:

@florine2623 Please change filename from install-5.0.3.php to upgrade-5.0.3.php in module's upgrade folder also, then try to upgrade again.

I have other more strange problem on PS 8.0.0. After clone module with git clone https://github.com/PrestaShop/productcomments.git, then install from BO, I still see 5.0.1 in BO although in productcomments.php line 48 $this->version = '5.0.2'
Change productcomments.php line 48 to $this->version = '5.0.3'; will lead to this strange screen

It looks like the old version string 5.0.1 (in my case) is kept somewhere out of productcomments.php

I'll ping @atomiix as it seems that it might be related to the Distribution API Client

QA, the workaround is to disable ps_distributionapi before upgrading the module.
Ensure that module tables are all with a new encoding after upgrading to 5.0.3. Remember about changing 5.0.2 to 5.0.3 in productcomments.php

@florine2623 Which MySQL version do you use ? On my side, MySQL 8.0.31 identified old utf8_general_ci as utf8mb3_general_ci

Hello @leemyongpakvn
I tried to check the pr , But I don't have the upgrade to v5.0.3 available, only v5.0.2 !
I use the MySQL version  5.7.37
phpMyAdmin Version : 5.1.3
and I always have this result

ping @PrestaShop/qa-team  Could someone try to reproduce this PR please ?

@sallemiines You and florine2623 have the same problem with the Distribution API Client. You can see discussion about how to reproduce in Fixed PR 28857. Maybe we need a few months more to see the issue easier and continue working on this PR :laughing:

@PrestaShop/qa-team
can a dev test it? I'm positive that this change is legitimate, problems are because updates are not coming from the git version of the module, but from the addons marketplace and distribution API client

@kpodemski Yes, you can test it, it will be easier indeed. Thanks ! :)

@kpodemski Although product_comment_usefulness and product_comment_report tables don't have char/text fields, I think they still need CONVERT TO like others.
Another issue is COLLATION keywords at the end of every CREATE TABLE commands in install-dev. I don't know why they are there but I guess we need do the same for this module install.php.
Be free to add suggestions if you think they are needed :)

I think there is a corner case:
User have old version installed and then uninstalls it keeping the tables.
User install new version.
I think that migration scrip is not executed so, that user will still having utf8 instead of utf8mb4
I thin that on install we should check if tables exists.
Wow, this is a bigger problem, if the user decides to keep the old version tables, the columns might be different in a new version.

@davidglezz I see parameter $keep = true in productcomments.php's function uninstall,
but in Back-Office it looks like keep the module's files

Optional: delete module folder after uninstall.

not keep the module's tables.
If a user knows how to delete the module's files manually while keep its tables, then reinstall module, he/she must be a dev or a QA :fearful:

Fortunately, this install-6.0.1.php still runs when testing in a dev style (remove module folder, git clone, apple this PR changes, change module version to 6.0.1  in productcomments.php and config.xml, then upgrade via BO). A bit funny when I checked Module Upgrade in BO

but Upgrade button did its task correctly: module tables COLATTION changed to utf8mb4, and module version become 6.0.1.

Thanks @kpodemski and @nicosomb

It is a bit surprised that install-6.0.3.php still works with function upgrade_module_6_0_1 inside ;)


[incubator-kie-issues#814] Fix NPE on BaseKnowledgeBuilderResultImpl.hashCode()

Fixes https://github.com/apache/incubator-kie-issues/issues/814
Requires https://github.com/apache/incubator-kie-kogito-runtimes/pull/3346
This PR

refactor AccumulateVisitor to avoid instantiation of InvalidExpressionErrorResult with null message
refacotr BaseKnowledgeBuilderResultImpl (and children classes) to enforce population of message

Ports If a forward-port or a backport is needed, paste the forward port PR here
link
JIRA: (please edit the JIRA link if it exists)
link
referenced Pull Requests: (please edit the URLs of referenced pullrequests if they exist)

paste the link(s) from GitHub here
link 2
link 3 etc.

How to replicate CI configuration locally?

Build Chain tool does "simple" maven build(s), the builds are just Maven commands, but because the repositories relates and depends on each other and any change in API or class method could affect several of those repositories there is a need to use build-chain tool to handle cross repository builds and be sure that we always use latest version of the code for each repository.
build-chain tool is a build tool which can be used on command line locally or in Github Actions workflow(s), in case you need to change multiple repositories and send multiple dependent pull requests related with a change you can easily reproduce the same build by executing it on Github hosted environment or locally in your development environment. See local execution details to get more information about it.

How to retest this PR or trigger a specific build:

for pull request checks
Please add comment: Jenkins retest this

for a specific pull request check
Please add comment: Jenkins (re)run [drools|kogito-runtimes|kogito-apps|kogito-examples] tests

for a full downstream build

for jenkins job: please add comment: Jenkins run fdb
for github actions job: add the label run_fdb

a compile downstream build please  add comment: Jenkins run cdb

an upstream build please add comment: Jenkins run upstream

for quarkus branch checks
Run checks against Quarkus current used branch
Please add comment: Jenkins run quarkus-branch

for a quarkus branch specific check
Run checks against Quarkus current used branch
Please add comment: Jenkins (re)run [drools|kogito-runtimes|kogito-apps|kogito-examples] quarkus-branch

for quarkus main checks
Run checks against Quarkus main branch
Please add comment: Jenkins run quarkus-main

for a specific quarkus main check
Run checks against Quarkus main branch
Please add comment: Jenkins (re)run [drools|kogito-runtimes|kogito-apps|kogito-examples] quarkus-main

for quarkus lts checks
Run checks against Quarkus lts branch
Please add comment: Jenkins run quarkus-lts

for a specific quarkus lts check
Run checks against Quarkus lts branch
Please add comment: Jenkins (re)run [drools|kogito-runtimes|kogito-apps|kogito-examples] quarkus-lts

for native checks
Run native checks
Please add comment: Jenkins run native

for a specific native check
Run native checks
Please add comment: Jenkins (re)run [drools|kogito-runtimes|kogito-apps|kogito-examples] native

for native lts checks
Run native checks against quarkus lts branch
Please add comment: Jenkins run native-lts

for a specific native lts check
Run native checks against quarkus lts branch
Please add comment: Jenkins (re)run [drools|kogito-runtimes|kogito-apps|kogito-examples] native-lts

How to backport a pull request to a different branch?

In order to automatically create a backporting pull request please add one or more labels having the following format backport-<branch-name>, where <branch-name> is the name of the branch where the pull request must be backported to (e.g., backport-7.67.x to backport the original PR to the 7.67.x branch).

NOTE: backporting is an action aiming to move a change (usually a commit) from a branch (usually the main one) to another one, which is generally referring to a still maintained release branch. Keeping it simple: it is about to move a specific change or a set of them from one branch to another.

Once the original pull request is successfully merged, the automated action will create one backporting pull request per each label (with the previous format) that has been added.
If something goes wrong, the author will be notified and at this point a manual backporting is needed.

NOTE: this automated backporting is triggered whenever a pull request on main branch is labeled or closed, but both conditions must be satisfied to get the new PR created.

@gitgabrio as I feared this is also causing a couple of compilation failues in Kogito. From the log:
2024-01-11T14:26:21.4348889Z [ERROR] /home/runner/work/incubator-kie-drools/incubator-kie-drools/apache_incubator-kie-kogito-runtimes/jbpm/jbpm-flow-builder/src/main/java/org/jbpm/assembler/DuplicateProcess.java:[34,9] constructor ConfigurableSeverityResult in class org.drools.compiler.compiler.ConfigurableSeverityResult cannot be applied to given types;
2024-01-11T14:26:21.4353362Z [ERROR]   required: org.kie.api.io.Resource,org.kie.internal.builder.KnowledgeBuilderConfiguration,java.lang.String
2024-01-11T14:26:21.4355274Z [ERROR]   found:    org.kie.api.io.Resource,org.kie.internal.builder.KnowledgeBuilderConfiguration
2024-01-11T14:26:21.4356507Z [ERROR]   reason: actual and formal argument lists differ in length
2024-01-11T14:26:21.4360369Z [ERROR] /home/runner/work/incubator-kie-drools/incubator-kie-drools/apache_incubator-kie-kogito-runtimes/jbpm/jbpm-flow-builder/src/main/java/org/jbpm/assembler/DuplicateProcess.java:[39,19] getMessage() in org.jbpm.assembler.DuplicateProcess cannot override getMessage() in org.drools.drl.parser.BaseKnowledgeBuilderResultImpl
2024-01-11T14:26:21.4363298Z [ERROR]   overridden method is final
2024-01-11T14:26:21.4366121Z [ERROR] /home/runner/work/incubator-kie-drools/incubator-kie-drools/apache_incubator-kie-kogito-runtimes/jbpm/jbpm-flow-builder/src/main/java/org/jbpm/compiler/ProcessLoadError.java:[34,15] incompatible types: org.kie.api.io.Resource cannot be converted to java.lang.String
2024-01-11T14:26:21.4371716Z [ERROR] /home/runner/work/incubator-kie-drools/incubator-kie-drools/apache_incubator-kie-kogito-runtimes/jbpm/jbpm-flow-builder/src/main/java/org/jbpm/compiler/ProcessLoadError.java:[43,19] getMessage() in org.jbpm.compiler.ProcessLoadError cannot override getMessage() in org.drools.drl.parser.BaseKnowledgeBuilderResultImpl
2024-01-11T14:26:21.4374485Z [ERROR]   overridden method is final

2024-01-11T14:26:21.4458198Z [ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile (default-compile) on project kogito-codegen-rules: Compilation failure: Compilation failure:
2024-01-11T14:26:21.4462236Z [ERROR] /home/runner/work/incubator-kie-drools/incubator-kie-drools/apache_incubator-kie-kogito-runtimes/kogito-codegen-modules/kogito-codegen-rules/src/main/java/org/kie/kogito/codegen/rules/QueryGenerator.java:[214,49] no suitable constructor found for DroolsError(no arguments)
2024-01-11T14:26:21.4465415Z [ERROR]     constructor org.drools.drl.parser.DroolsError.DroolsError(java.lang.String) is not applicable
2024-01-11T14:26:21.4466650Z [ERROR]       (actual and formal argument lists differ in length)
2024-01-11T14:26:21.4468071Z [ERROR]     constructor org.drools.drl.parser.DroolsError.DroolsError(org.kie.api.io.Resource,java.lang.String) is not applicable
2024-01-11T14:26:21.4469605Z [ERROR]       (actual and formal argument lists differ in length)
2024-01-11T14:26:21.4473934Z [ERROR] /home/runner/work/incubator-kie-drools/incubator-kie-drools/apache_incubator-kie-kogito-runtimes/kogito-codegen-modules/kogito-codegen-rules/src/main/java/org/kie/kogito/codegen/rules/QueryGenerator.java:[219,23] getMessage() in org.kie.kogito.codegen.rules.QueryGenerator.NoBindingQuery cannot override getMessage() in org.drools.drl.parser.BaseKnowledgeBuilderResultImpl
2024-01-11T14:26:21.4477364Z [ERROR]   overridden method is final

@gitgabrio as I feared this is also causing a couple of compilation failues in Kogito. From the log:
2024-01-11T14:26:21.4348889Z [ERROR] /home/runner/work/incubator-kie-drools/incubator-kie-drools/apache_incubator-kie-kogito-runtimes/jbpm/jbpm-flow-builder/src/main/java/org/jbpm/assembler/DuplicateProcess.java:[34,9] constructor ConfigurableSeverityResult in class org.drools.compiler.compiler.ConfigurableSeverityResult cannot be applied to given types;
2024-01-11T14:26:21.4353362Z [ERROR]   required: org.kie.api.io.Resource,org.kie.internal.builder.KnowledgeBuilderConfiguration,java.lang.String
2024-01-11T14:26:21.4355274Z [ERROR]   found:    org.kie.api.io.Resource,org.kie.internal.builder.KnowledgeBuilderConfiguration
2024-01-11T14:26:21.4356507Z [ERROR]   reason: actual and formal argument lists differ in length
2024-01-11T14:26:21.4360369Z [ERROR] /home/runner/work/incubator-kie-drools/incubator-kie-drools/apache_incubator-kie-kogito-runtimes/jbpm/jbpm-flow-builder/src/main/java/org/jbpm/assembler/DuplicateProcess.java:[39,19] getMessage() in org.jbpm.assembler.DuplicateProcess cannot override getMessage() in org.drools.drl.parser.BaseKnowledgeBuilderResultImpl
2024-01-11T14:26:21.4363298Z [ERROR]   overridden method is final
2024-01-11T14:26:21.4366121Z [ERROR] /home/runner/work/incubator-kie-drools/incubator-kie-drools/apache_incubator-kie-kogito-runtimes/jbpm/jbpm-flow-builder/src/main/java/org/jbpm/compiler/ProcessLoadError.java:[34,15] incompatible types: org.kie.api.io.Resource cannot be converted to java.lang.String
2024-01-11T14:26:21.4371716Z [ERROR] /home/runner/work/incubator-kie-drools/incubator-kie-drools/apache_incubator-kie-kogito-runtimes/jbpm/jbpm-flow-builder/src/main/java/org/jbpm/compiler/ProcessLoadError.java:[43,19] getMessage() in org.jbpm.compiler.ProcessLoadError cannot override getMessage() in org.drools.drl.parser.BaseKnowledgeBuilderResultImpl
2024-01-11T14:26:21.4374485Z [ERROR]   overridden method is final

2024-01-11T14:26:21.4458198Z [ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile (default-compile) on project kogito-codegen-rules: Compilation failure: Compilation failure:
2024-01-11T14:26:21.4462236Z [ERROR] /home/runner/work/incubator-kie-drools/incubator-kie-drools/apache_incubator-kie-kogito-runtimes/kogito-codegen-modules/kogito-codegen-rules/src/main/java/org/kie/kogito/codegen/rules/QueryGenerator.java:[214,49] no suitable constructor found for DroolsError(no arguments)
2024-01-11T14:26:21.4465415Z [ERROR]     constructor org.drools.drl.parser.DroolsError.DroolsError(java.lang.String) is not applicable
2024-01-11T14:26:21.4466650Z [ERROR]       (actual and formal argument lists differ in length)
2024-01-11T14:26:21.4468071Z [ERROR]     constructor org.drools.drl.parser.DroolsError.DroolsError(org.kie.api.io.Resource,java.lang.String) is not applicable
2024-01-11T14:26:21.4469605Z [ERROR]       (actual and formal argument lists differ in length)
2024-01-11T14:26:21.4473934Z [ERROR] /home/runner/work/incubator-kie-drools/incubator-kie-drools/apache_incubator-kie-kogito-runtimes/kogito-codegen-modules/kogito-codegen-rules/src/main/java/org/kie/kogito/codegen/rules/QueryGenerator.java:[219,23] getMessage() in org.kie.kogito.codegen.rules.QueryGenerator.NoBindingQuery cannot override getMessage() in org.drools.drl.parser.BaseKnowledgeBuilderResultImpl
2024-01-11T14:26:21.4477364Z [ERROR]   overridden method is final

Yup, I'm fixing them....

Jenkins retest this

@mariofusco @yesamer do you know how to relaunch the build ?

@mariofusco @yesamer do you know how to relaunch the build ?

Done.


fix singlefiledata and some names

just some small changes to make provenance and some names look better

just some small changes to make provenance and some names look better

Just to clarify, look better in what sense?

Just when I was making the provenance graph for my calculations one of the reasons it looked very large and unreadable is that the singlefiledata types default the "filename" to a very long string, while now it's a name that makes more sense.
see pictures (the outputs in particular)for comparison.

This PR should be only for changing the singlefiledata filename so if you are ok with those we can approve.
I did some small changes in the model part that elliot was commenting but I would say if we really don't like how that's handled I open another issue about that?

is fine if explodes but shall explode with an error.

is fine if explodes but shall explode with an error.

referring to the model thing?
sure, I suggest we close this and I open another pr for making the model handling a bit better (and in general I'll try to go through some similar bugs that maybe I didn't notice initially

just some small changes to make provenance and some names look better

Just to clarify, look better in what sense?

Just when I was making the provenance graph for my calculations one of the reasons it looked very large and unreadable is that the singlefiledata types default the "filename" to a very long string, while now it's a name that makes more sense. see pictures (the outputs in particular)for comparison.

Ok thanks. Are we still looking at consolidating the nodes at some point, separately?

yea I think

I've reverted the changes so this is now just the changes for the SinglefileData filenames. We should still decide about wheher to use .name.
I'll add the other changes in separate PRs.


feat: support cfx_clientVersion rpc method

Builds ready [e1ddd6d]builds: chrome, firefox, opera
bundle viz: background, ui, portal-inpage, portal-contentscript, ui-libs, bg-libs, phishing-detect
dep viz: background
all artifacts


Temps and track heaters are not showing

Got them to show but dont accuratly calculte the status of the track heaters

Got em!


Is there a way to use the useSupabaseClient and other functions outside of a Nuxt-related component?

I am trying to use const supabase = useSupabaseClient(); in a composable file:
useAuth.ts:
const supabase = useSupabaseClient();

  const login = async (email: string, password: string) => {
    try {
      const { data, error } = await supabase.auth.signInWithPassword({
        email,
        password,
      });
      return { data, error };
    } catch (error) {
      console.error("Login error thrown from useAuth.ts:", error);
      throw error;
    }
  };

But I am getting this error:

[nuxt] A composable that requires access to the Nuxt instance was called outside of a plugin, Nuxt hook, Nuxt middleware, or Vue setup function. This is probably not a Nuxt bug. Find out more at `https://nuxt.com/docs/guide/concepts/auto-imports#using-vue-and-nuxt-composables

Is it not possible to do this or am I doing it wrong?

I'm getting a similar error when calling the useSupabaseAuthClient() composable via a helper function in the utils/ directory, but only if I'm using that helper function in a child component in the components folder.
If I use the helper function from pages/index.vue it works fine.

Solved this problem:
composables/useAuth.ts :
const authClient = useSupabaseClient();
export default function () {
  const signIn = async (email: string, password: string) => {
    try {
      const { data, error } = await authClient.auth.signInWithPassword({
        email,
        password,
      });
      return { data, error };
    } catch (error) {
      console.error("Login error thrown from useAuth.ts:", error);
      throw error;
    }
  };
    return {
    signIn
    }
}


The numerial difference between the tensorflow and numpy

I wrote my own conv and fc layer based on numpy for data comparison of my FPGA implementation. However, I found that results from the tensorflow in your framwork and my nunpy implementation has tiny difference. For example, for the fc layer, I give the same input, while the two outputs keep a ratio of 1.0165, I don't know where does it come from? I guess it maybe from the tf.reduce_mean, which may has tiny difference from numpy's  mean function. So how I can get the E value of each layer in the inference stage, so that I can check it, or what other reason do you think can also induce this difference?, thanks.

Possible reasons:

Models are not mathematically the same. For example, in certain cases tensorflow has a different padding mechanism from other frameworks.
floating point arithmetic. e.g. (a+b)/c != a/c + b/c; a * b + c with FMA instruction can have different outputs compared to simply doing multiplication and add.

If there is no problem with (1), then I'm not surprised to see a absolute difference of  ~1e-7 at first several layers and ~1e-5 at some last layers. If the error is very large you can check it layer by layer to see if some layer is mathematically different.

Thanks for your comments....current I only check the FC layer, so there is no issue of padding.... I only dump the last pooling layer in the tensorflow and feed it to first FC layer in my numpy implementation. The most interesting thing is all the output keep a constant ratio.... So I doubt if it is induced by the factor E (tf.reduce_mean(tf.abs(x))), do you know how can I get this E value, so that I can double check, thanks.

If you are using output_var_names to specify which output you want to use, you can simply print E to find out the name of the tensor E so you can run inference on this tensor.

Thanks for your reply, I have confirmed that this tiny different was induced by the tf.reduce_mean, I write a simple to verify this...
import numpy as np
import tensorflow as tf

weight_file = 'alexnet-126.npy'
param_dict = np.load(weight_file).item()
data = param_dict['fc0/W']

print 'Numpy results:{}'.format(np.mean(np.abs(data)))

vec = tf.placeholder(tf.float32, data.shape)
avg = tf.reduce_mean(tf.abs(vec))

avgs = []
with tf.Session() as sess:
    tf_mean = sess.run(avg, feed_dict={vec: data})
    print 'Tensorflow results:{}'.format(tf_mean)

If run this scripts. the output is
Numpy results:0.0377448014915
Tensorflow results:0.0374231785536
It seems that the difference is much larger than I expected...such as 1e-7, what is your option?

I changed the tf.float32 to tf.float64, the output seems as close as I expected....However, if I change the numpy from np.float to np.float64, it seems no change... So it seems tf.float32 has much lower precision

I believe np.float is np.float64. And when you use different floating point precision this behavior is not a big surprise.

It seems the difference has relation to the size of the matrix, the difference increases with the matrix size becomes large. Since the fc0 has tens millions of  weights, the difference becomes a little large... It may relate to the detail of the implementation. Do you know some detail between the tf.reduce_mean and np.mean, thanks.

With floating point a+b+c != a+c+b, especially for large numbers. When there are millions of numbers it might be the case. But I also think the difference here is quite large.
I'm closing this and you can track the relevant issue in tensorflow: https://github.com/tensorflow/tensorflow/issues/5527


home assistant升级到2022.3.0后报错

hacs安装提示“Repository structure for main is not compliant”
手动安装报错“Unable to install package miservice>=2021.3.24: ERROR: Could not find a version that satisfies the requirement miservice>=2021.3.24 (from versions: 2021.2.24, 2021.3.1, 2021.3.16, 2021.3.17, 2021.3.18, 2021.3.20, 2021.3.22, 2021.3.24) ERROR: No matching distribution found for miservice>=2021.3.24”

手动安装即可。

手动安装即可。

麻烦问下，手动怎么安装


Make the pencil tool look less crappy while drawing

We need to backtrack and erase the last line segment that was drawn. Draw at a low framerate, you'll see it.

We probably need a more sophisticated layer setup for this. I'm thinking 'committed drawing', 'additive in-progress drawing', and 'new-every-frame in-progress drawing'. The last two correspond to path (final smoothing) and path (tail).


Revert "Ugly hack while Scryfall set data is buggy."

Reverts PennyDreadfulMTG/Penny-Dreadful-Tools#6882
Closes #6880

Hey @silasary,
Your changes look good to me!
View build log
TravisBuddy Request Identifier: 06bcd9d0-0f33-11ea-b3c6-2f81db3b77d2


[Marker.io] not sure what is wrong with letter spacing. it is incorrect at so many places and so many card popups

Steps to reproduce:

scroll down and click on any card present in 2nd last row( startign with Y)
click
check the letter spacing first and rest of the text

Actual result: lot of space between first and next letters
Expected result: please fix

Reported by: vinod<EMAIL_ADDRESS>- Contact via Marker.io
Source URL: https://wf-b.stg.prezzee.com/en-us/brands
Issue details: Open in Marker.io
Device typedesktopBrowserChrome <IP_ADDRESS>Screen Size1366 x 768OSWindows 10 (10.0.0)Viewport Size1366 x 641Pixel Ratio@1x

🤖 Marker.io bot - This issue was marked as ✅ Resolved in Marker.io


[FLINK-25612][docs] Update the outdated illustration of ExecutionState in the documentation

What is the purpose of the change
Currently, the illustration of ExecutionState located in the page "Jobs and Scheduling" is outdated. It doesn't involve the INITIALIZING state, which is introduced in FLINK-17102. This change updates the outdated illustration of ExecutionState in the documentation.
Brief change log

Updates the outdated illustration of ExecutionState in the documentation.

Verifying this change
This change is only related to the docs and requires no test coverage.
Does this pull request potentially affect one of the following parts:

Dependencies (does it add or upgrade a dependency): (yes / no)
The public API, i.e., is any changed class annotated with @Public(Evolving): (yes / no)
The serializers: (yes / no / don't know)
The runtime per-record code paths (performance sensitive): (yes / no / don't know)
Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Kubernetes/Yarn, ZooKeeper: (yes / no / don't know)
The S3 file system connector: (yes / no / don't know)

Documentation

Does this pull request introduce a new feature? (yes / no)
If yes, how is the feature documented? (not applicable / docs / JavaDocs / not documented)

The new illustration:


Update the scaladoc to be consistent with the examples in the README

Codecov Report

Merging #53 into master will not change coverage.
The diff coverage is n/a.

@@          Coverage Diff          @@
##           master    #53   +/-   ##
=====================================
  Coverage     100%   100%
=====================================
  Files           8      8
  Lines          24     24
=====================================
  Hits           24     24

Impacted Files
Coverage Δ

...det/spark/kafka010/writer/DStreamKafkaWriter.scala
100% <ø> (ø)
:arrow_up:

...thub/benfradet/spark/kafka010/writer/package.scala
100% <ø> (ø)
:arrow_up:

...adet/spark/kafka08/writer/DStreamKafkaWriter.scala
100% <ø> (ø)
:arrow_up:

...enfradet/spark/kafka08/writer/RDDKafkaWriter.scala
100% <ø> (ø)
:arrow_up:

...nfradet/spark/kafka010/writer/RDDKafkaWriter.scala
100% <ø> (ø)
:arrow_up:

...ithub/benfradet/spark/kafka08/writer/package.scala
100% <ø> (ø)
:arrow_up:

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 abbc737...4b68b68. Read the comment docs.


updated copyright year in license and notice file

ack

Changes Unknown when pulling 38e426a6c1d876a767eae0c5aa0bb38cd9a0718d on h/license into ** on master**.


Medium post URLs lacking identifiers aren't recognized

https://medium.com/life-learning/the-number-one-predictor-of-career-success-according-to-network-science?source=tw-552efa9e6b51-1440085038070#1da3--share-0-175 isn't picked up

Looks like this is doable using these headers they return
    "x-medium-entity-id" = be7fcc8e9558;
    "x-medium-entity-type" = Post;

Will need to turn on the includeHeaders flag for the "Open Story" Medium action.

Resolved in https://github.com/timonus/OpenerManifest/commit/6e0440e29f55dcf7c06284b3d3cc0bcb79fa61dc


Read GP regression

http://www.gaussianprocess.org/gpml/chapters/RW2.pdf

2 page LaTeX summary of this chapter.

Resolved in pull request #152


Proposal: Simplify handling deleted rows

Rows are actually not deleted. They are only marked as deleted. But the current API is not ideal because practically all queries have to be filtered. A proposal:

replace isDeleted column with internal/invisible __isDeleted
store data in invisible tables with a suffix [tableName_all]
create views for useQuery [tableName] and [tableName_deleted]
add 'remove' function to useMutation

With such a change, developers wouldn't have to filter rows everywhere.

Hmm, I don't think it's a good idea anymore. After all, it would be just an abstraction to replace a single line .where("isDeleted", "is not", model.cast(true)) of SQL. And it would complicate the API by duplicating all tables and two additional special functions (delete and undelete). No, it wasn't a good idea.


Systematic recompilations of some sources

Every time core/test or core/compile is fired, sbt reports that 3 Scala sources from core/target/scala-2.10/classes/... and then 1 class source from the same place (the … is what sbt prints out: I don't know the exact path) are compiled.
d_m said on irc that he thinks this is related to codegen, i.e. some files are always "dirty". This is annoying on a slow machine as those recompilations can take a few seconds.

Closing for now. We are modularizing Spire, which should help a bit.


[stable/nginx-ingress] Add hostPort options for TCP/UDP ports.

Allows to define a hostPort option for each UDP and/or TCP port if using DaemonSet.
The hostPort value will be the same as the port one.

ping @chancez @mgoodness @jackzampolin

I don't have the time to finish it properly. I'm going to close it, if anyone wants to take over, feel free. Otherwise I'll probably push a new PR for this later.


How to Extract an Answer Without Explicitly Knowing the Type of DNS Query

I've been trying to figure out this problem for a while (I'm not sure if the API already provides a solution, so I thought I would post it here).
Suppose we have the following function (skipping error checking for simplicity):
// Performs a DNS query against a name server for a given domain and query type.
func query(server, domain, dnsType string) {
  c := new(dns.Client)
  m := new(dns.Msg)

  m.SetQuestion(dns.Fqdn(domain), dns.StringToType[dnsType])
  r, _, _ := c.Exchange(m, server)

  // The issue: how do I access the Answer field given `dnsType` as a string?
  // If we knew the query type was TXT, the documentation suggests the following:
  t, _ := r.Answer[0].(*dns.TXT)
  return t.Txt
}

Any suggestions?

[ Quoting<EMAIL_ADDRESS>in "[miekg/dns] How to Extract an Answe..." ]

I've been trying to figure out this problem for a while (I'm not sure if the API already provides a solution, but I thought I would post it here anyways). As a disclaimer, I'm a fairly new programmer and not an expert in Go.
Suppose we have the following function (skipping error checking for simplicity):
// Performs a DNS query against a name server for a given domain and query type.
func query(server, domain, type string) {
 c := new(dns.Client)
 m := new(dns.Msg)

 m.SetQuestion(dns.Fqdn(domain), dns.StringToType[type])
 r, _, _ := c.Exchange(m, server)

 // How to access the Answer property now since `type` is a string?
// If we knew the query type was TXT, the documentation suggests the following:
t, _ := r.Answer[0].(*dns.TXT)
return t.Txt
}

You can type switch or look at r.Header().Rrtype

this is more of a Go question. Closing here.


Error in terminus organizations sites

I'm getting the following error when trying to list sites in an organization:
$ terminus organizations sites

  1. UC Berkeley

Choose an organization: 1

Fatal error: Class 'Terminus\Self' not found in phar:///Users/cboyden/Repo/cli/builds/terminus/php/Terminus/User.php on line 23

$ terminus cli version
Terminus 0.3.4-beta

was fixed by commit ec170ed


Is library still being developed/supported?

First, thank you for creating this free and flexible form-generation library !
I've been looking forward to seeing examples of using blitzar + other frameworks, Quazar in particular for months' but nothing there yet
https://blitzar.cycraft.co/blitz-form/#frameworks

Blitzar is semi-supported. Personally I only use it on a few low-maintenance projects, so I'm not actively building new features. But all the source code is open and I'm open to any contributions from the community!
I'll also do security patches when requested! : )
Thanks @abumalekFayed for weighing in! Blitzar works perfectly with Quasar and Vue 3 indeed!
Here is the working test project:
https://github.com/CyCraft/blitzar/blob/production/example-projects/quasar/package.json
Any documentation PRs also highly appreciated!
--Magnetar was made with 💜 by Luca Ban.You cannot sponsor every project, but next time you do, think of this one for its prolonged maintenance.
--Blitzar was made with ♥ by Luca Ban.If you use this library in your projects, you can support the maintenance of this library by a small contribution via Github 💜.


Extend import suggestions don't work when there's more than one option

Given the following code:
import Data.Map ()

foo = fromList []

ghcide will produce a code action "Add fromList to the import list of Data.Map".
However, the code below will not produce an "Add fromList to the importList" suggestions at all:
import Data.Map ()
import Data.HashMap.Strict()

foo = fromList []

I am using hls with emacs. I do see the following CodeLens:
foo = fromList []
                                                                                typecheck: • Variable not in scope: fromList :: [a0] -> t
data TestSumType = TestSumType1 Int | TestSumType2 Bool                                                                                • Perhaps you want to add ‘fromList’ to one of these import lists:
                                                                                ‘Data.Map’ (/home/devanla/fsf/haskell-scratch/app/test-lsp.hs:21:1-18)
                                                                                ‘Data.HashMap.Strict’ (/home/devanla/fsf/haskell-scratch/app/test-lsp.hs:22:1-29)

And, when I do lsp-execute-code-actions, I see a lot of options listed in the menu I can choose from. I have pasted a few here:
import Data.List.NonEmpty.Extra (fromList)
import Data.List.NonEmpty.Extra
import Data.IntMap.Strict (fromList)
import Data.IntMap.Strict
import Data.Vector (fromList)
import Data.Vector
import Data.List.NonEmpty.Compat (fromList)
import Data.List.NonEmpty.Compat
import GHC.Exts (IsList(fromList))
import GHC.Exts
import Data.Map.Lazy (fromList)
import Data.Map.Lazy
import Data.Map (fromList)
import Data.Map
import Data.Set.Internal (fromList)
import Data.Set.Internal
import Data.Sequence.Internal (fromList)

Am I checking this incorrectly?

Yes. This ticket is for the "extend import" code action. You are missing the two import declarations in the original repro.

Do you have more context? Files to modify? and how I can test the changes?:)

The relevant code is in Development.IDE.Plugin.CodeAction, function suggestExtendImport.
To test the changes, extend the unit tests.
Good luck!

Do you actually have unit test for this section? I can't find anything in /tst/src/development/ide

So, here is the cause of the issue.
When we have one suggestion for  'Add imports', the complier error looks like this:
haskell-scratch-2/learn-lsp/app/testlsp.hs:7:7: error:
    • Variable not in scope: fromList :: [a0] -> t
    • Perhaps you want to add ‘fromList’ to the import list
      in the import of ‘Data.Map’ (app/testlsp.hs:4:1-18).
  |
7 | foo = fromList []
  |       ^^^^^^^^

The diagnostics string Perhaps you want to add ‘fromList’ to the import list       in the import of ‘Data.Map’ (app/testlsp.hs:4:1-18).  is captured by the the RegEx here: https://github.com/haskell/ghcide/blob/a345e11aa3f811240a8961fe08806c3b7862d12e/src/Development/IDE/Plugin/CodeAction.hs#L649.
But, when you have multiple suggestions, for code like this:
import Data.Map ()
import Data.HashMap.Strict()

then the `diagnostics from the compiler is
    • Perhaps you want to add ‘fromList’ to one of these import lists:
        ‘Data.Map’ (app/testlsp.hs:7:1-18)
        ‘Data.HashMap.Strict’ (app/testlsp.hs:8:1-29)

which does not match the current regex.
I have a fix for this here: https://github.com/haskell/ghcide/pull/913


Tool: Write exit code to log

When a tool exits with a non-zero exit code, it just says TheTool: Process returned an error. but I think that the exit code should be written here as well: TheTool: Process returned an error (exit code 42).
See: https://github.com/cake-build/cake/blob/develop/src/Cake.Core/Tooling/Tool.cs#L91

Closed via #655.


Add support for confluent schema basic auth

Confluent cloud uses basic auth for authentication with the confluent schema registry. Currently, we do not allow setting this when fetching schemas from the schema registry.
Since this involves authentication details, it should probably be part of the connection profile configuration.

Hello @mwylde ,
I would like to give it a shot. Is this feature still in demand? If yes, could you please guide me on where to start?
For instance:

What is the expected outcome?
Which related components/files/directories should I explore first?
I am new to computing engines, so any guidance you could provide would be immensely helpful.

My understanding is as follows:
A user (producer) registers a schema in the Confluent Schema Registry -> The producer begins to serialize data and send it to Kafka (or other types of storage/message queues) -> The Arroyo connector (if that's the correct term?) in arroyo_connectors retrieves the schema from the Schema Registry on Confluent Cloud -> The connector deserializes the byte-formatted data -> ...
My expected outcomes:

Update create_connection_profile to include basic information.
In the connector, retrieve the connection_profile, check if we need to fetch the schema from Confluent, and add basic authentication if necessary.

Any guidance would be greatly appreciated.

This has been completed with #416


DateTime properties are handled as text properties for range query

Querying OData entities with $filter on DateTime properties results in incorrect answer when it spans 2001-09-10.
Example: querying with $filter=birthday ge datetime'1960-01-01T00:00:00' and birthday le datetime'2001-09-10T00:00:00', where birthday is a custom property with type DateTime, results in an empty result even if matching entities exists.
As 2001-09-09 is the day UNIX time over<PHONE_NUMBER>, I guess Personium searches DateTime properties as text properties.
Investing __mappings of Elasticsearch shows that Personium indexes all custom properties as text, as well as keyword, long, and double using multi-fields feature (fields).
Seeing getSuffix in UserDataQueryHandler.java shows that if EDM type is SINGLE or DOUBLE, Personium use double field and if EDM type is INT32, it use long field. Otherwise, including when the type is DateTime, it use text field.
The type of the Lucene query Elasticsearch dispatches depends on the field type, not the type of values in actual documents, nor type of query parameters.
https://www.elastic.co/guide/en/elasticsearch/reference/6.6/query-dsl-range-query.html
So, while DateTime properties are stored as numbers (Unix time) in documents, it is searched as text properties, I guess.

Thank you for raising this issue with detailed source code analyses. We will put high priority for fixing this.


How to override the icon of the SelectField component?

I want to change the icon of the SelectField component, but there is no interface to change the icon.
Just expose the iconStyle for change style of icon.
So, how to override the icon of the SelectField component?

I think we will have to expose iconButton, do you wanna do it iconButton is inside Dropdown Menu and the prop is exposed there. You just have to expose it in the SelectField Component. Feel free to make a PR.

This is a new feature / prop for an edge case requirement of a component on master. I don't think we have the bandwidth to review a PR for that, and would instead suggest that @hongyuanlei maintain a fork of this component. It's unlike to diverge much for that very same reason.

Thank you everyone for the hard work. Any update on this feature? Or are there any workarounds at the moment? I tried manually overriding the iconButton with DropDownMenu.defaultProps.iconButton = <IconButton></IconButton> but didn't work.

For anyone wondering a workaround you can override using dropDownMenuProps:
 <SelectField
dropDownMenuProps={{
            iconButton:<ActionHome />,
          }}
>```

When using dropDownProps on SelectField React throws error.  Warning: Unknown prop 'dropDownMenuProps' on <div> tag

@benjamingeorge you must not be passing it in correctly. It exists as a prop on http://www.material-ui.com/#/components/select-field so make sure you're following that correctly.

I'm doing
<SelectField dropDownMenuProps={{
                    menuStyle : {
                        background : 'red'
                    }
                }}
>
...
</SelectField>

Is this not correct ?  I'm on react 15.4.2 and the latest material-ui version.

Yea I mean I did it like:
const selectFieldProps = {
  dropDownMenuProps: {
     menuStyle: {
        width: 50px
     }
  }
}
<SelectField {...selectFieldProps}>
...
</SelectField>

But your way should work too. I was thinking the latest version might have gotten rid of it or changed it somehow but looking at https://github.com/callemall/material-ui/blob/master/src/SelectField/SelectField.js#L46 it still exists. Not sure sorry :(


How big input size does this speed tested?

How big input size does this speed tested?

We use (608, 608) for testing in YOLOF_CSP_D_53_DC5_3x , while for other settings, we test the model with the standard image size (800, 13333) in Detectron2.


FancyZones weird behaviour with portrait and landscape multi-monitor setup

ℹ Computer information

PowerToys version: v0.31.2
PowerToy Utility: FancyZones?
Running PowerToys as Admin: ✔
Windows build number: Win 10 Version 2004 (Build 21296.1010)

📝 Provide detailed reproduction steps (if any)

Using 1. Monitor in landscape
Using 2. Monitor in portrait
Configurate FancyZones with the new editor (split them vertical)
Move one window in the landscapes zones & try to read the bottom of that program

✔ Expected result
the moved program sizes correctly with the max height for monitor 1
❌ Actual result
FancyZones takes a summary resolution of all (three in my case) monitors, leaving the landscape zones with unseen additonal height.
As a workaround you can split horizontal on the landscape screens, creates unseen zones - which can be confusing when quick-swapping programs through the zones
(see Zones Setup Screenshot)
📷 Screenshots
Screen Setup (for reproduction i explained monitor 1 and 2 as seen below at 3)

Zones Setup (all three monitors shown there)
(should be 1080x1920,3840x1080; but it counts as 4920x1920)

blue crosses: can't see
red dotted: workaround split

btw
Really love the new editor, makes creating those layouts way faster!
Thank you all for PowerToys

@Ghosty-chan
with your configuration, you should not use

because that option is designed for very specific cases where all monitors are identical or you have a 5K/8K monitor that is split in logical monitors.
Create one layout per monitor so they will fit each monitor.

Ah I see my fault from did confiure it once and left it with that - my bad should have checked that better 👍
But this locks the ability to create zones across monitors?
I think that's because I checked it once already - to actually use zones across the screens.. hmpf!
Okay, tested that out fast - thank you for the fast response too!
With the grid the creation is faster.. but would need to create those unused zones - if I want to scale my zones across multiple monitors.
While with the custom scaling in the canvas, that's probly better to use then (for my purpose atleast)
So this kinda turns into a feature request - grid splitting correctly / no zones outside of view 🤣
Well.
Thank you again and I guess that was all then
(if you dont need anything anymore)

@Ghosty-chan
if you wan to use the Allow zones to span across monitors with your configuration, you will have to create a canvas layout so that each zone will be contained in the monitor area.
We don't have plans to support grid-based templates for your scenario, since it will have to many edge cases and the core team doesn't have the resources to focus on that.


Update for 0.98.0.

Nushell 0.93.0 introduced change in  the way plugins are managed. After updating nu-plugin and nu-protocol crates, this plugin should work now with current Nushell version.
This PR should resolve: https://github.com/Euphrasiologist/nu_plugin_plot/issues/20

Thanks platlas!


PV and PVWatts sun angle calculations at high latitudes

For latitudes above about about 61 degrees N (e.g., north of Anchorage AK) --
northern_latitude_ak_weather_files.zip, SAM reports -999 for daytime sun angle values during summer months so that POA irradiance and system power generated goes to zero:

Fixed with commit NREL/ssc@d8b2338de33ba8755606a39ee974adaf6d82f820


doc: Documentation issue in 'boards/luatos/esp32s3_luatos_core/doc/index'

Describe the bug
The getting started documentation has the following line for using serial over JTAG USB using the esp32s3_luatos_core_usb config, but this path does not exist.
west build -b esp32s3_luatos_core_usb/esp32s3/procpu samples/hello_world
I believe this should instead be:
west build -b esp32s3_luatos_core/esp32s3/procpu/usb samples/hello_world
Environment

Page: boards/luatos/esp32s3_luatos_core/doc/index
Version: main
SHA-1: c0866030ebc9c0588eb349de34eb96af5317161e

Indeed. Could you send a PR fixing this?

@kartben - done, PR #74198


Milestone 4: Color theme? Fix title bar

Addressed by #35 - leaving title bar as is to leave room for content in main area.


[WIP] Add nlpo3

What does this changes
Add nlpo3 to part of word_tokenize function.
Your checklist for this pull request
🚨Please review the guidelines for contributing to this repository.

[x] Passed code styles and structures
[ ] Passed code linting checks and unit test

Coverage increased (+0.03%) to 97.71% when pulling 43c23b7094e93081f23be0d4312cabd4d07f4277 on add-nlpo3 into 6135ba5f490e00640de902a0d5c65a4537739d98 on dev.

There's a bug in load_dict(), will fix in nlpo3-python 1.2.1 https://github.com/PyThaiNLP/nlpo3/pull/50

Thank you @bact


Add locale option to related navigation component

What

Adds a locale option for the related navigation component so a BCP47 language tag can be used to show what language the link is in.
If the locale passed for the link is the same as the locale for the page, no lang attribute will appear. Only when the locale for the link is different to the locale for the page is the lang attribute needed.
Why

The related links can sometimes be in different languages to each other and to the page. The example is taken from Chinese translation of the PM's statement on the EU referendum outcome.
This page is translated into Chinese, so the related links in English need to be have lang="en".

Visual Changes

No visual changes

Similarly can 2c451a9237286e5b606ef9f50512337a869fcf40 combine with 35162f5313f37b3cadfc05c7625eb9c065b03de7 please

Also can you add a link to trello card for this please


upcoming: [DI-18829] - Resources MultiSelect component in cloudpulse global filters view

Description 📝

Added Resources Selection component inside the Global Filters of CloudPulse view

Changes  🔄
List any change relevant to the reviewer.

Created new component CloudPulseResourcesSelect with multi selection support
Added the component into GlobalFilters of Monitor landing page
Added a new useResourcesQuery method to fetch the instances based on the resource type
Added unit tests for the resources selection component

Target release date 🗓
Please specify a release date to guarantee timely review of this PR. If exact date is not known, please approximate and update it as needed.
Preview 📷
Include a screenshot or screen recording of the change
:bulb: Use <video src="" /> tag when including recordings in table.

Before
After

How to test 🧪
Prerequisites
(How to setup test environment)

...
...

Reproduction steps
(How to reproduce the issue, if applicable)

...
...

Verification steps
(How to verify changes)

...
...

As an Author I have considered 🤔
Check all that apply

[x] 👀 Doing a self review
[x] ❔ Our contribution guidelines
[x] 🤏 Splitting feature into small PRs
[x] ➕ Adding a changeset
[ ] 🧪 Providing/Improving test coverage
[ ] 🔐 Removing all sensitive information from the code and PR description
[x] 🚩 Using a feature flag to protect the release
[ ] 👣 Providing comprehensive reproduction steps
[ ] 📑 Providing or updating our documentation
[ ] 🕛 Scheduling a pair reviewing session
[ ] 📱 Providing mobile support
[ ] ♿  Providing accessibility support

Commit message and pull request title format standards

Note: Remove this section before opening the pull request
Make sure your PR title and commit message on squash and merge are as shown below

<commit type>: [JIRA-ticket-number] - <description>
Commit Types:

feat: New feature for the user (not a part of the code, or ci, ...).
fix: Bugfix for the user (not a fix to build something, ...).
change: Modifying an existing visual UI instance. Such as a component or a feature.
refactor: Restructuring existing code without changing its external behavior or visual UI. Typically to improve readability, maintainability, and performance.
test: New tests or changes to existing tests. Does not change the production code.
upcoming: A new feature that is in progress, not visible to users yet, and usually behind a feature flag.

Example: feat: [M3-1234] - Allow user to view their login history

@venkymano Thank you for addressing the feedback. Changes looks good to me. I agree with @bnussman-akamai feedback.

Looks like there is a typescript error that needs to be resolved


update information on the LitCal project

Thanks for the update, but I certainly won't merge it as is. Individual entries of the list should be kept concise, usually fitting within a single line when viewed on a desktop screen, summarizing in few words what each app/library is all about, not attempting to enumerate its features. Nested list of related projects is a no-go. Some of the apps from the nested list possibly qualify for a top-level entry of their own right, as long as they are able to "generate a complete and mostly correct calendar for any year" (even if only as consumers of a data API).

Ok I split the LitCal project into 3 top level projects, instead of nested lists. Does this work better?


adds windows support

adds windows support to dnvm.sh
-adds a condition to the __dnvm_current_os function which checks if you are using cygwin
-if on windows, sets a DNX_USER_HOME path which does not conflict with the colon delimeter used elsewhere
-if the variables are not unset at the start, somehow they are getting set incorrectly elsewhere
tested with the following commands among others
dnvm install -r coreclr -arch x64 latest -OS win -u
dnvm use -r coreclr -arch x64 1.0.0-beta8-15618 -p

Hi @slofurno, I'm your friendly neighborhood .NET Foundation Pull Request Bot (You can call me DNFBOT). Thanks for your contribution!
You've already signed the contribution license agreement. Thanks!
We will now validate the agreement and then real humans will evaluate your PR.
TTYL, DNFBOT;

@slofurno You might want to file a bug explaining why you want to add windows support to dnvm.sh. Then you want to send a PR to the dnvm repository, not this one.


SubTopic can't maintain HasActiveTopic flg.

I have an issue.
When I add async to SubTopic's OnReceiveActivity() and call await method, SubTopic can't maintain HasActiveTopic flg.

I mistook. that's promptly's bug. thanks.


Cleanup

Codecov Report

Merging #257 into master will increase coverage by 0.08%.
The diff coverage is 61.11%.

@@            Coverage Diff             @@
##           master     #257      +/-   ##
==========================================
+ Coverage    82.1%   82.18%   +0.08%
==========================================
  Files          18       18
  Lines        1095     1106      +11
  Branches      186      190       +4
==========================================
+ Hits          899      909      +10
- Misses        196      197       +1

Impacted Files
Coverage Δ

src/worker/searchtorrent.js
92.15% <ø> (-0.16%)
:arrow_down:

src/worker/mediaInfo.js
79.66% <100%> (+0.35%)
:arrow_up:

src/worker/torrent.js
79.62% <57.14%> (-6.42%)
:arrow_down:

src/worker/client.js
87.2% <66.66%> (+4.65%)
:arrow_up:

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 a10b0e4...cb2b9bc. Read the comment docs.


NvaSDK.getRobotData undefined but NvaSDK.getRobotMeta works

stumbled on this during development

We must just choose a noun and update everywhere. Currently

SmallData
Meta
Data

New function is getAgentMetadata


Unable to add airco again after reinstall integration

Hi,
This integration was working fine, but I was missing the horizontal swing. I never removed my config when upgrading to v3 so I wanted to try this.
I removed the airco devices, after that the integration in HACS. Rebooted, installed again, again reboot.
When I try to reconnect my airco systems, I keep getting the error "Couldn't connect to airco". What can I try to do?

I was using a wrong ip address!


OptionsMapTable logic to replace the deployment hardcoded values final

This PR fixes #

OptionsMapTable to get the deployment options which have the value,displayname and the description
It removed the maptable formed at extension level and simply gets the values from the optionsMapTable.
And removed all boolean hardcoded properties from the mssql and its references.

ScreenShot:

FYI you have some compile errors currently

yes, these compile errors are because the related STS changes need to be merged and then will update the STS version and make sure these all passed!
Thanks for the quick reviews :)

This PR checks will expect to be failed with only these changes, as the remaining changes for SC extension is on other PR!
Either I can pull those changes with this PR or merge two PR's back to back!
All unit and integration tests are passing in local with latest main and with SQL DB/SC PRs.

As Discussed with Kim! going to merge the both PR's back to back for this special case! So that it will be easy to just revert the changes back for one extension!


Embed boxes collapse

When you have embed boxes that you can collapse, if you collapse a child, then collapse its parent, then expand the parent, th child is expanded too but with the fa-plus icon instead of fa-minus.
Expanding children could be an error.
Instead of using .find() on line 442, using .children() fix that issue.

Could you please post the html for the embedded boxes. I will work on it soon. Thanks!

                Scene 1

            Plan 1

        <button data-widget="collapse" class="btn btn-box-tool"></button>

        C'EST QUAND MEME plapla

                Plan 2

            C'EST QUAND MEME plapla

Don't know if it works for you to read the html

You have to put your code within three copies this symbol `. Review this link please:
https://github.com/adam-p/markdown-here/wiki/Markdown-Cheatsheet#code

I edited it for now to display the code.

Fixed in v2.1.0a


dot-location rule should be configured as ['error', 'object']

The Google Style Guide states that for dot operators in multiline expressions, the dot operator should be on the preceding line:
var x = foo.bar().
    doSomething().
    doSomethingElse();

However, xo configures the dot-location rule as:
'dot-location': ['error', 'property']

which mandates that the dot operator be on the following line. This should be overriden by eslint-config-google as follows:
'dot-location': ['error', 'object']

Closing due to PR #23.


Java 17.1 : Enums structure and introduction

Description
Add audio, documentation, and video regarding the Enums structure and introduction
Location of File to be added The files should be added inside the Enums structure and introduction which will be inside Enums folder which will be inside of Java folder. If the folder is not present, create the folder with this exact name.

The documentation file can be in the .md/.py/.ipynb format.
Audio should be in .mp3 format and to be submitted through a Google drive link.
Video can be in any format and should be submitted through a Google Drive link.

Note:
You are required to comment with \assign CONTENT_TYPE, so that other content types can be created at the same time. Failing to comment in the above manner will lead to the removal of assignment from the issue even if the bot assigns. You are required to do a PR within 7 days otherwise you will be unassigned and others will be assigned. Issues will be assigned on a first come first serve basis.
Domain
Java_Domain
Type of Contribution
Audio, Video, Documentation
Code of Conduct

[x]    I follow Contributing Guidelines & Code of conduct of this project.

/assign document

/assign

/assign documentation

/assign audio


Manual curation for 2024.12 release

Refer to documentation for full description of steps.
Checklist:

[x] Step 1 — Process
[x] Step 2 — Curate

[x] Curation
[x] Review 1
[ ] Review 2

[ ] Step 3 — Export
[ ] Step 4 — EFO feedback

@tcezard (cc @Dona094) Spreadsheet is ready here.

First round of curation:

43 DONE
47 IMPORT
6 NEW
1 UNSURE

I think this is as far as we'll push this.

Thanks Tim, export done and EFO issue created.


bitcoin: 25.1 -> 26.0

Description of changes

new major release
release notes: https://bitcoincore.org/en/releases/26.0/ + https://github.com/bitcoin/bitcoin/blob/26.x/doc/release-notes.md

Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
24.05 Release Notes (or backporting 23.05 and 23.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

Darwin builds are failing, but these are not regressions - I just checked and 25.1 fail on darwin too ... :-/

I remember running into
  CXX      libbitcoin_node_a-blockencodings.o
In file included from blockencodings.cpp:15:
In file included from ./txmempool.h:9:
In file included from ./coins.h:10:
In file included from ./core_memusage.h:10:
In file included from ./memusage.h:10:
./support/allocators/pool.h:161:27: error: aligned allocation function of type 'void *(std::size_t, std::align_val_t)' is only available on macOS 10.13 or newer
        void* storage = ::operator new (m_chunk_size_bytes, std::align_val_t{ELEM_ALIGN_BYTES});
                          ^
./support/allocators/pool.h:161:27: note: if you supply your own aligned allocation functions, use -faligned-allocation to silence this diagnostic
./support/allocators/pool.h:204:15: error: aligned deallocation function of type 'void (void *, std::align_val_t) noexcept' is only available on macOS 10.13 or newer
            ::operator delete ((void*)chunk, std::align_val_t{ELEM_ALIGN_BYTES});
              ^
./support/allocators/pool.h:204:15: note: if you supply your own aligned allocation functions, use -faligned-allocation to silence this diagnostic
./support/allocators/pool.h:235:18: error: aligned allocation function of type 'void *(std::size_t, std::align_val_t)' is only available on macOS 10.13 or newer
        return ::operator new (bytes, std::align_val_t{alignment});
                 ^
./support/allocators/pool.h:235:18: note: if you supply your own aligned allocation functions, use -faligned-allocation to silence this diagnostic
./support/allocators/pool.h:250:15: error: aligned deallocation function of type 'void (void *, std::align_val_t) noexcept' is only available on macOS 10.13 or newer
            ::operator delete (p, std::align_val_t{alignment});
              ^
./support/allocators/pool.h:250:15: note: if you supply your own aligned allocation functions, use -faligned-allocation to silence this diagnostic
4 errors generated.

on a local x86_64-darwin machine the other day, too. I think it's an issue with NixOS clang - though I haven't looked into it any deeper.

Hope to fix darwin builds with #272716. Might make sense to get that in first and backported?

There still another issue with tests failing on darwin. Hopefully it will manifest in the CI run for https://github.com/NixOS/nixpkgs/pull/272716 - we just have to wait.

I am going to try whether the unmerged patch from https://github.com/bitcoin/bitcoin/pull/26915 fixes our issue.

No, it doesn't. The issue is in wallet/test/wallet_tests.cpp.test not in Python functional tests.

Opened the upstream issue here: https://github.com/bitcoin/bitcoin/issues/29026

Hope to fix darwin builds with https://github.com/NixOS/nixpkgs/pull/272716. Might make sense to get that in first and backported?

Note that the deployment target for 26.0 is now also macOS 11.0+.

Going to merge and backport this, since bitcoin is broken on darwin already.


Preserve original URLs when --remap is used

I'm using the --remap feature to validate links pointing to private GitHub repositories containing documentation.
$ lychee . --remap 'https://github.com/<my org>/(?P<repo>[^/]+)/(?:blob|tree)/(?P<revision>[^/]+)/(?P<path>[^#]+) https://api.github.com/repos/<my org>/$repo/contents/$path?ref=$revision' --header "Authorization=token $GITHUB_TOKEN" -v

Since there's no straightforward way to verify if a link to a private GitHub repository is broken, I'm mitigating this by using both the --github-token argument and setting the --header "Authorization=token $GITHUB_TOKEN".
With this setup, the --remap feature substitutes links like:
[`sre-design-docs/use-conventional-commit-messages.md`](https://github.com/<my org>/<my private repo>/blob/master/docs/design/docs/non-existint-document.md)

With their API equivalent:
✗ [404] https://api.github.com/repos/<my org>/<my private repo>/contents/docs/design/docs/non-existint-document.md?ref=master | Failed: Network error: Not Found

This approach works as expected, but I’m wondering if there's a way to convert the output link back to its original Markdown format. The goal is to prevent confusion when users search for the broken link in the document. Ideally, I’d like this validation to occur "in the background" to maintain a seamless user experience.
Thank you for considering this feature request. I hope others find this workaround helpful as well.

Thank you for your detailed explanation of how you're using lychee's --remap feature to validate links pointing to private GitHub repositories. It's always great to see users coming up with creative solutions to meet their specific needs!
Your suggestion to show the remapped URLs in the output is an excellent idea. This would indeed help prevent confusion when users search for broken links in their documents.
I'm wondering if we should show the original URL as well as the remapped URL, though.
We could modify lychee to display both URLs using the following format:
[STATUS] ORIGINAL_URL -> REMAPPED_URL | Additional info

For example, the output would look like this:
[404] https://github.com/<my org>/<my private repo>/blob/master/docs/design/docs/non-existint-document.md -> https://api.github.com/repos/<my org>/<my private repo>/contents/docs/design/docs/non-existint-document.md?ref=master | Failed: Network error: Not Found

This format shows the connection between the original link and its remapped version.
I wonder if it's too verbose, though? Alternatively, we could show the original URL only in verbose mode (-v).
We support multiple output formats (--format), so that would require some planning, though.


Update Cog

put crew monitoring server in science server room https://github.com/space-wizards/space-station-14/issues/32226

Currently working on a very large cog update right now so I prefer if I just manually add this to my update

Currently working on a very large cog update right now so I prefer if I just manually add this to my update

sure, no problems


PopupMenu's clear method doesn't remove signals

Operating system or device - Godot version: 2.1 latest
Issue description (what happened, and what was expected):
PopupMenu.clear()
PopupMenu.add_item("Hello", 0)
PopupMenu.connect("item_pressed", self, "IGNContextMenu")

And if ran again, we get a signal already connected error. Just curious if this is intended or not. The .clear definition says Clear the popup menu, in effect removing all items If all items are removed, their signals should be also

@Dillybob92 You are connecting the whole PopupMenu, not individual items.
Closing as wontfix, this is intended as you don't clear the signal connections in any way.

Oh wow, that was fast :) kept thinking individual items are signald but its the id that is passed

Perhaps add a note/reminder about this in the docs?

@Sslaxx No, I don't think it is useful, it would just complicate things for advanced devs :laughing:


Wrong generation when using comment in function parameters

Hello,
When I want to regenerate this code:
export default function imp(test// a comment
=[]
,test2 //comment 2
){}

I get this:
export default function imp(test    // a comment
 undefined [], test2) {
}

Comments are not always generated and default value is corrupted.
Thanks in advance for your help.

I've tested my code using the latest version downloaded as a zip and I don't get any error.
But if I use require('escodegen') instead of require('./escodegen'), I get errors.
When will you publish or release this version to npm ?

I just needed too update package.json estraverse to 4.1.1 version and it seems to work perfectly

Maybe you'd like to send a PR then?


Reduce the size of node_modules using npx yarn-deduplicate yarn.lock

Assigning a few extra people, in case you want to do the same in repos you maintain
rm -rf node_modules/ && yarn install
before: 35.19 seconds , 735 MB
after: 9.28 seconds , 573 MB

jest snapshots -> jest-styled-components -> @adobe/css-tools upgraded from 4.0.1 to 4.3.1 (difference starts at 4.0.2)

jest snapshots -> jest-styled-components -> @adobe/css-tools upgraded from 4.0.1 to 4.3.1 (difference starts at 4.0.2)

yarn-deduplicate is a bit misleading(naming) then, as it updates the dependencies as well.

If we blindly update deps with "highest" deduplication strategy please at least mention this in a changelog. For me it is unexpected that we bump redux in this PR for example.

NPM hell never seem to stop amuse me. Why even having yarn.lock files, if it gets overridden by yarn-deduplicate? We can just hope that there are no bugs in the sub-sub-sub-package A caused by the common carrot version dependency in another sub-sub-package B, because A didn't test it.

@matevz Lock file is just for reproducibility. We can delete it and reinstall from just our package.json, and that would deduplicate too, but also update all transitive dependencies to their latest valid versions.
Each package still specifies which subdependecy versions it supports, e.g.
https://github.com/testing-library/jest-dom/blob/v6.1.5/package.json#L82-L83 "@adobe/css-tools": "^4.3.1",
https://github.com/styled-components/jest-styled-components/blob/v7.2.0/package.json#L56-L57 "@adobe/css-tools": "^4.0.1"
deduplicated to 4.3.1 (it wouldn't deduplicate if something needed "4.0.2" or "^3.1.1")
But yes, even these updates within supported ranges can add bugs

Updated changelog and commit message to:
Update and deduplicate sub-dependencies using `npx yarn-deduplicate yarn.lock`

This reduces the size of node_modules and speeds up installing dependencies.

But yes, even these updates within supported ranges can add bugs

That's exactly what I fear yes. Mostly the carrot versioning is used in package.json and the package maintainers typically run tests on exact dependencies inside their yarn.lock file. Deduplication effectively bumps all of those and we will encounter bugs before the original package maintainers will.


一连接就掉线 [FATAL]pcap_sendpcaket failed with vaule -1,send error: PacketSendPacket failed

[2018-12-07 22:32:48][WARN]huge packet,data len=1464 (>=1375).strongly suggested to set a smaller mtu at upper level,to get rid of this warn
[2018-12-07 22:32:48][INFO]new packet from <IP_ADDRESS>:41958,conv_id=de7d7164
[2018-12-07 22:32:48][FATAL]pcap_sendpcaket failed with vaule -1,send error: PacketSendPacket failed
一连接就掉线

改mtu


Removed the whenever gem in favor of rufus-scheduler to allow jellyfish ...

...modules schedule tasks.

Closes #363


Is it possible to set radio fields to required and set defaults to false?

Hi @kelp404
I've added an array of false to a radio field and set it to required... however, the validation doesn't seem to work...
Any ideas?
Cheers,
Rikki

I've figured this out, I shall post how I did it soon!

Great, but your response came after a long time. Now, this question has no
importance I guess.
On Sat, Mar 28, 2015 at 4:28 AM, Rikki Pitt<EMAIL_ADDRESS>wrote:

I've figured this out, I shall post how I did it soon!
—
Reply to this email directly or view it on GitHub
https://github.com/kelp404/angular-form-builder/issues/53#issuecomment-87114791
.

It's still valid, I'll write it up when I get chance.

On Thursday, April 2, 2015, Rikki Pitt<EMAIL_ADDRESS>wrote:

It's still valid, I'll write it up when I get chance.
—
Reply to this email directly or view it on GitHub
https://github.com/kelp404/angular-form-builder/issues/53#issuecomment-88912440
.


UI redesign: change font & color of timestamp in a message

Fixes #21752

Can we just use opacity with the default font colors as discussed in https://github.com/zulip/zulip/pull/21754#issuecomment-1204672931?

Replied here:

Background color for message and recipient bar are dynamic. I don't think we can use opacity based approach for them. We could use it for other elements though later on. (Sorry, I thought I would comment on it but forgot to.)

@amanagr this is exactly why we should use opacity approach. We have logic of switching dark and light themes, we have example of the darkest background no matter the color. .75 opacity should work fine.

I guess it is worth trying out. Used 75% opacity for recipient bar and 50% opacity for message text.

@timabbott I improved the commit message of the first commit, both those changes are correct since we are trying to remove
color overrides for message_time and recipient_row_date in dark_theme.css and just overriding color variables in zulip.css for them.

@timabbott I'm not sure how close this PR is to CZO deployment, but looks like the next step is for you to take a look, with reference to the comment above.

The small caps font looks really weird to me; can we just use a normal font with an 90% size?

Testing 90% font size instead looks mostly OK except for I think we don't have quite enough width in the timespace row to avoid overlaps with times like "12:22 PM":

I'm checking the pull request and see that there is no support for the dark theme

I can understand why it feels weird. The current implementation does to me too as my original design in that aspect. So if any that is purely my fault. I think I made the font-size too small. Here is the updated screen with small caps font where font-size is 1px bigger for times and same for date.
I don't suggest to do 90% font-size since we end up with some fractional font-size which isn't great.

In this case the difference isn't that big. Here are the reasons for small caps:

Mostly dates and time represented by digits, which have the same height as capital letters
AM PM is also capital letters
3-letter months are shortage and also represented with capital letters like JAN, FEB, if we don't want to put dot like in Jan. Feb.
Digits in Small caps of Source Sans 3 with almost the same heigh would look cleaner
Small caps for dates and times gives them distinct look and helps to identify type of information by an eye

If there is a big concern about the width (which is bigger in small caps case) I suggest to stick to 14ps size regular letters but to use proportional uppercase linting for numbers by:font-feature-settings: 'pnum' on, 'lnum' on;

Ahh, OK, that explains the reasoning. I have no objection to using capital letters everywhere for these components; my main concern was that with the font we're using, the small-caps font digits looked weird in a way that stands out for me, when all the other text nearby is on our normal font.
I can test-deploy it for others to give feedback if useful, though we should fix the dark theme bug you noticed first.
Regarding percentages, @andersk and I were prototyping making the font in the app scalable by using things like font-size: 90%; probably worth starting a topic if we want to do something different as the implementation of that goal.

@terpimost I can't reproduce the bug you see in dark theme

Also, this is stuck on your response on:

Regarding percentages, @andersk and I were prototyping making the font in the app scalable by using things like font-size: 90% for items not using the default font; probably worth starting a topic if we want to do something different as the implementation of that goal.

It is possible you were playing with colors in light theme and switched to dark theme?

I guess thinking more about the small-caps question, to me, just using 90% font size (or something equivalent) on the default font looks good. Is there a reason it's worth using a unique font just for these two elements? To me personally, the small caps look off to me with small caps, and I'm guessing the reason is just that it feels discordant to have two slightly different fonts next to each other. (And I think the color/size and placement within a column is enough to make it easy for eyes to scan).
@terpimost thoughts? If we want to test-deploy a small-caps version to get broader feedback, I'm happy to do that, but your last message wasn't sufficiently clear that I expect @amanagr to implement it.

@timabbott I gave 2 screenshots as example. If you strongly believe and feel that small caps isn't the right thing here I'm ok with that. I think that small caps is an appropriate usage in this case and they look better.
I suggest to ask other 3 people what do they prefer and go with the version which more people prefer

Sounds we should test-deploy the version Vlad prefers to get more feedback. @amanagr are you able to change this to match his proposal so that we can do that? I'm not entirely sure whether the current state of the PR matches that or not.

@timabbott this should be ready for a test-deploy.

Nice! @terpimost is this ready to test-deploy from your perspective? It would be nice to try it out together with https://github.com/zulip/zulip/pull/23099.

Great, lets review in live!

Pushed to resolve conflicts!

Great, thanks! @timabbott , this PR should be ready for testing on CZO.

I think this is replaced by #23696 now?

Yes.


Sprint 7: Discussion around sections and topic areas for the dashboard

This is a part of the extended series of development for dashboard visualizations. Let this be the place where people can put their new ideas for visualizations or to voice the questions they would like to see answered.
This cycle, the focus is going to step back from specific visualizations to sections and topic areas for the dashboard.
There will be a design session for the dashboard in mid December and we are looking for feedback from what coverage people would like to see.
Some questions to think about:

What are some general topic areas for coverage on a repo/project? (Contributor break down, PR activity, Security, etc)
Is there extended questions to be answered from the perspective of a community member or an outsider looking in?

More to be added

@thewizzy Curious if you or any security folks have any input on this

From a security point of view there are metrics that are useful, the  OpenSSF Scorecard checks cover many of these well. The CHAOSS Risk WG is also working on a number that would be useful.
Many of the signals signals that point to a healthy project/project engagement are likely going to indicate a project that will respond well to security issues.


Still seeing priority changing issue with experimental feature on

Hi 🙂
I've gone ahead and turned experimental features back off. After testing this change #233, I am still seeing the issue? Anyone else?
test:
to be sure I was testing correctly I completely uninstalled the shortcut. Restarted chrome. installed the shortcut again. refresh todoist page.
result: Still cannot change priority via shortcut buttons 1 , 2, 3, and 4 🙁
Sorry for the trouble if this is a false alarm, but I am not sure what I could be doing wrong if this was fixed?

I've got experimental features turned on and it's working for me. Are you sure you have the latest version running?

Yeah I'm not sure? I'm on v2988 (beta), is that what you are on?

strangely, what I have noticed as well when I turn on experimental features is that my up and down arrow navigation breaks as well? Not sure if it related or what.

Mostly interesting is what version of the shortcut is running - can you check if it's indeed v172?

I confirmed at the end of this video that the plugin is indeed on v172 (plugin) and v2997 (todoist web)on my mac (which is strange because it was on v2998 before so they must have rolled it back)
I also found some interesting behavior that I did not recognize before (actually just recognized it as I was creating the video)
It seems that the priority is assigned in some cases, but not others (when on experimental) (00:30 timestamp in the video when I test this).

I have a keycastr running to show my input to explain what I mean
from what I can tell, if the status is nothing, then it cannot be assigned to anything. But if the status is already assigned to a specific priority, I can in fact change it to something else (even 0). But then at that point, I cannot change it back to 1, 2, 3, or 4?

Let me know what you think.
https://www.loom.com/share/98df25ac3ecd412489c4ac2c852e9cc5

I decided to take another loom on just experimental mode to hone specifically on what I believe the problem is:

priority cannot be assigned on expirimental mode unless it already exists as either p1, p2, or p3. If 4 is used (effectively removing priority p4) priority cannot be assigned to anything else)

whereas when expirimental mode is off, priority can be assigned via todoist-shortcuts regardless of what the existing status is (which can be seen in the former video)

https://www.loom.com/share/9b20466a4c14492f98f1f12cbee687fe
Sorry if any of this is confusing. Please let me know if I can show better

I'm on 2998 and it's been working for me for the last few versions. Do you have any output in the JS console that might indicate what might be happening?

Will work on getting this!

Recently priority changing of a single task broke for me with experimental features on.
I think I know why only some people see the breakage.  When opening the edit, there's a modal popup that says "⚡ New: Pick your Quick Add options."  Todoist-shortcuts was getting confused as it was finding a popup in order to find the priority selection menu.  However, then it would immediately exit edit mode.  This would all happen so quickly the popup never even gets displayed to the user.
I'm assuming that was the issue, so closing this.


[Question] How to get information in post-receive git hook

How can I get the information provided to stdin in the git post-receive hook?
I've tried
read var
echo $var

and it returns nothing

post-receive hook doesn't get anything from stdin. See git documentation on how to use it: https://git-scm.com/docs/githooks

It takes no arguments, but gets the same information as the pre-receive hook does on its standard input.

This hook executes once for the receive operation. It takes no arguments, but for each ref to be updated it receives on standard input a line of the format:
<old-value> SP <new-value> SP <ref-name> LF


Update theme-product.js

getProductJson fetch route is wrong.

https://github.com/Shopify/theme-scripts/issues/94

@kivlov, we had to move forward with a fix, so I took the liberty to push a PR that address the issue https://github.com/Shopify/theme-scripts/pull/95.
😄 Thank you for discovering the issue and feel free to contribute again in the future.