fix: remove authority properly in replace player

This is an alternative to #1257
Now the user can pass a parameter to ReplacePlayer to indicate
that the old player should remain attached to the connection.
Note the user could simply pass true and then call RemoveAuthority themselves
which was the approach in #1257
Personally I would prefer #1257,  but this is at least better than
master because authority is removed the proper way.

I like the idea of an optional bool, but I think it should be removeAuthority and default false.
As I said in the other PR, the expected behaviour in the Room system is for the client to retain authority of the room player when switching to the game player.
If this PR is going to remove authority by default, then NetworkRoomManager needs 2 changes to make it retain authority, but I'd rather it defaulted to retaining.

just to be clear, this DOES fix the bug where the client wasn't notified about authority being removed? AND it adds the option to keep it?

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

just to be clear, this DOES fix the bug where the client wasn't notified about authority being removed? AND it adds the option to keep it?

Yes on both accounts


[Feature] Update related table cell sections to grouped style

So that they look and feel more like Apple's native design.

Done!


A more memory-efficient(1/9) and faster  (10×)  cuda kernel for performing top-k and top-p operations.

In this branch, I have implemented a faster and more memory-efficient CUDA kernel to replace the https://github.com/vllm-project/vllm/blob/f8a1e39fae05ca610be8d5a78be9d40f5274e5fc/vllm/model_executor/layers/sampler.py#L266。
The inspiration for the implementation of this new operator comes from https://github.com/NVIDIA/FasterTransformer/blob/afdf9a9eb86f15363c0249117d166d6b45dbb371/src/fastertransformer/kernels/sampling_topk_kernels.cu#L346

The new kernel is faster.

The new kernel is memory efficient.(Considering memory savings, the current top-k operation supports a maximum of 1024.)

I aligned the behavior of the def _apply_top_p_top_k function with the operator I implemented and provided unit tests.https://github.com/SuperCB/vllm/blob/new_kernel/tests/samplers/test_topk.py

greate job! how much end-to-end latency could be reduced？

greate job! how much end-to-end latency could be reduced？

I haven't tested this yet.

Hi @SuperCB, thanks for the great work! Could you check the merge conflict?

Hi @SuperCB, thanks for the great work! Could you check the merge conflict?

I have finished it.

I have been using these FT sampler kernel recently too. topk_stage1 will split the vocab into BLOCKS_PER_SEQ parts to calculate top-k separately, so a minimal fix would be setting BLOCKS_PER_SEQ  to 1 for very large top_k.
However the practical problem is, when only top_p is used, top_k will always be set to vocab_size and this kernel is not optimized for this setting. I would suggest porting the FT top_p kernels as well. Still, handling different sampling params in a batch will be complex too.
btw, you cannot set k to vocab size in your code, it will lead to illegal memory access.

The performance improvement seems to be significant. When will it be merged into the main code branch?

@WoosukKwon @SuperCB I suggest we modify the default Top-K to be below 1024, following the suggestion of the review. Huggingface uses a Top-K default of 50, so I have good reason to believe there should be no issues with 1024.
I suggest we modify the following line to top_k=1024 to solve this issue.
https://github.com/vllm-project/vllm/blob/7d761fe3c12e87df37383467c43c97dec2bb8470/vllm/worker/worker.py#L91

I observe
RuntimeError: CUDA error: an illegal memory access was encountered with this branch when
top_k = 50 and top_p = 0.9

guess this kernel works only with 32bit fp

guess this kernel works only with 32bit fp

yes


Api for payment instruments

Thanks for PR, however this api call has been already added in the following PR https://github.com/gopaycommunity/gopay-php-api/pull/10


Block a person

You should be able to block someone. This means:

If they follow you, they are no longer following you.
If they try to follow you again, they can't.
Activities from them to or bto you are ignored and not put in your inbox or messages/notifications box.

There are other bits where you should be able to ignore the person wherever they are; I might capture those later.

I'd really like this feature and it would help me move more of my conversations to the pump.io experience.

Ref #1241 which mandates the Block verb


twixread does not seem to work with recent raw Siemens data

I have two raw datasets (saved with twixtool) from the same Prisma Fit scanner, with the more recent data set acquired with VE11E software. While the "twixread" function of BART does work with the older data set (VE11B), twixread fails with raw data set obtained with VE11E. In both cases the data were acquired with the same 3-plane localizer sequence.
cmr@cmr1:~/bart$ ./bart twixread -A /home/cmr/rawdat/meas_MID00331_FID30508_3PL_LOC.dat ~/test
WARN: BART version is not reproducible.
VD Header. MeasID: 331 FileID: 30508 Scans: 2
Patient: xxxxxxxxxxxxxxxxxxxxxxxxxx
Protocol: 3PL LOC
VD Header. MeasID: 331 FileID: 30508 Scans: 2
Patient: xxxxxxxxxxxxxxxxxxxxxxxxxx
Protocol: 3PL LOC
WARN: Wrong number of samples: 1 != 0.
WARN: Stopping.
cmr@cmr1:~/bart$ ./bart twixread -A /home/cmr/rawdat/meas_MID00540_FID284271_3PL_LOC.dat ~/test
WARN: BART version is not reproducible.
bart: src/twixread.c:78: siemens_meas_setup: Assertion `(0 < hdr->nscans) && (hdr->nscans < 30)' failed.
Aborted (core dumped)
cmr@cmr1:~/bart$

I am using BART version v0.7.00-526-g093559f-dirty. Tried this under Ubuntu, and Mac OS x. In both cases same issue. Is the twixread function in BART not compatible with raw data from VE11E?
thank you!
Michael

Hi Michael,
could you try again with the commits I just pushed? They seem to work for our VE data. But you are right, previously, bart would not read newer Siemens data correctly.
Best regards,
Christian

Hi Christian:
Thank you very much for getting back about this problem!
It looks to me like the in include in read.h of the ismrm subfolder should say #include "ismrm/ismrmrd.h" instead of "ismrmrd/ismrmrd.h" or one can create a symbolic link named isrmrmrd pointing to ismrm. At least this got me further along the compilation chain. Also the .h files ismrmrd.h and export.h were missing. I copied them to the ismrm subfolder of ~/bart/src. But maybe this all led to the next problem...
When I try to compile bart with gcc-11 under OS X I (for x86_64 arch) get an error saying:
Undefined symbols for architecture x86_64:
  "_ismrm_read_encoding_limits", referenced from:
      _ismrm_read_dims in libismrm.a(read.o)
  "_nlop_tf_create", referenced from:
      _opt_reg_configure in libgrecon.a(optreg.o)
ld: symbol(s) not found for architecture x86_64
collect2: error: ld returned 1 exit status
make[1]: *** [bart] Error 1

I am probably doing something wrong here ... but I did not seem to have this problem with the previous version when I compiled under OS X.
Compilation under Ubuntu is in comparison smooth sailing, but it seems the problem got worse as I get core-dumps with all raw .dat files I try using the new version of bart.
cmr@cmr-gadgetron:~/bart_0.7$ ./bart version
WARN: BART version is not reproducible.
v0.7.00-526-g093559f-dirty
cmr@cmr-gadgetron:~/bart_0.7$ ./bart twixread ~/rawdat/meas_MID00331_FID30508_3PL_LOC.dat test
WARN: BART version is not reproducible.
VD Header. MeasID: 331 FileID: 30508 Scans: 2
Patient: xxxxxxxxxxxxxxxxxxxxxxxxxx
Protocol: 3PL LOC
WARN: Wrong number of samples: 1 != 0.
WARN: Stopping.

cmr@cmr-gadgetron:~/bart$ ./bart version
v0.7.00-529-g50905f7
cmr@cmr-gadgetron:~/bart$ ./bart twixread ~/rawdat/meas_MID00331_FID30508_3PL_LOC.dat test
VD/VE Header. MeasID: 331 FileID: 30508 Scans: 2
Patient: xxxxxxxxxxxxxxxxxxxxxxxxxx
Protocol: 3PL LOC
ERROR: Incorrect number of ADCs read! ADC count difference: 1 != 0!
Aborted (core dumped)

Any help would be much appreciated!
Thank you! and best regards,
Michael

Hi Michael and Christian,
I was able to confirm this works for data from XA both on Linux and Mac, where the previous commit 093559fd385dd did not work correctly. Note I did not try to install ISMRMRD. I used gcc11 on Mac.

Thank you Jon! Would you mind sharing your Makefile?
Thanks,
Michael

For Mac using Macports, my Makefile is the same as https://github.com/mrirecon/bart/blob/master/Makefile
I have the following local Makefile:
~/bart $ cat Makefile.local
PARALLEL=1
CC=gcc-mp-11

You might want to try make allclean followed by make

For reference I used "siemens_to_ismrmrd" to read the raw data file giving trouble with bart.
PHS010803:bart mj847$ siemens_to_ismrmrd -z 2 -f '/Users/mj847/Downloads/Siemens raw/meas_MID00186_FID30751_MOLLI_5_3_1.dat' test
Siemens file is: /Users/mj847/Downloads/Siemens raw/meas_MID00186_FID30751_MOLLI_5_3_1.dat
Output file not specified -- using /Users/mj847/Downloads/Siemens raw/meas_MID00186_FID30751_MOLLI_5_3_1.mrd
-----------------------------------------------------------------
Converting measurement 2 into file /Users/mj847/Downloads/Siemens raw/meas_MID00186_FID30751_MOLLI_5_3_1.mrd in group dataset
-----------------------------------------------------------------
Using parameter map: IsmrmrdParameterMap_Siemens.xml
This file contains 2 measurement(s).
VD line file detected.
Protocol name [1]: AdjCoilSens
Protocol name [2]: T1Map_MOLLI_5_3_1_for_pre_and_post_contrast
Number of parameter buffers: 6
Buffer Name: Config
Buffer Name: Dicom
Buffer Name: Meas
Buffer Name: MeasYaps
Buffer Name: Phoenix
Buffer Name: Spice
Trajectory is: 1
Failed to find YAPS.lFirstFourierPartition array
center_line = 67
center_partition = 0
Baseline: N4_VE11E_LATEST_20181129
Software version: syngo MR E11
Protocol name: T1Map_MOLLI_5_3_1_for_pre_and_post_contrast
Dwell time: 2200
Using parameter XSL: IsmrmrdParameterMap_Siemens.xsl
Study time: 13:08:54
Last scan reached...
PHS010803:bart mj847$ ./bart version
WARN: BART version is not reproducible.
v0.7.00-529-g50905f7-dirty
PHS010803:bart mj847$ ./bart twixread -A '/Users/mj847/Downloads/Siemens raw/meas_MID00186_FID30751_MOLLI_5_3_1.dat' test
WARN: BART version is not reproducible.
VD/VE Header. MeasID: 186 FileID: 30751 Scans: 2
Patient: xxxxxxxxxxxxxxxxxxxxxxxxx
Protocol: T1Map_MOLLI_5_3_1_for_pre_and_post_contrast
ERROR: Could not automatically determine dimensions, adc read error!
Abort trap: 6

As I managed to compile bart with ISMRM=1 I could first convert to ismrm format and then use that file with bart. I was still hoping to get the twixread function in bart to work with these files...

Well, then it seems that there are still issues with the support for VE. Would it be possible to get access to a dataset that does not work? For example by e-Mail? If these are human data, maybe a phantom measurement would be more appropriate to share.
But with such a dataset I could try to iron out remaining bugs in twixread.

Hi Christian:
Is there another email address to which I can send you the Dropbox file share link? I am not sure where these emails go and I don’t want the link to go public.
I have put two raw data sets into a Dropbox folder.
One issue with the twixread in bart may be that you do not specify the scan you want to read in. I saved the complete RAID file in Twix for each acquisition, and these typically contain two scans. The acquisition data are in the last (second) scan, while the first scan has “adjustment” data.
Maybe you have to save the data for the "last scan” (the k-space data from your acquisition without data data from adjustment scan) separately with the TWIX tool, which I think is possible? Or twixread is modified to (typically) skip over the first scan and just read the last scan?
In the siemens_to_ismrmrd command you specify the scan number, though you can also write all scans in the file to hdf5 files.
Thank you!
Michael

On Jun 23, 2022, at 11:02 AM, Christian Holme @.***> wrote:
Well, then it seems that there are still issues with the support for VE. Would it be possible to get access to a dataset that does not work? For example by e-Mail? If these are human data, maybe a phantom measurement would be more appropriate to share.
But with such a dataset I could try to iron out remaining bugs in twixread.
—
Reply to this email directly, view it on GitHub https://github.com/mrirecon/bart/issues/288#issuecomment-1164522984, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABQVJP4D2E5UKLHSRD42KOTVQR4BZANCNFSM5ZCRM6AA.
You are receiving this because you authored the thread.

Hi Michael,
Unfortunately, this is public. You could share the link to<EMAIL_ADDRESS>, then I will take a look.
Best wishes,
Christian

Thank you for the data!
Now, twixread should be able to read those datasets. If you find others that do not work, please reopen this issue or raise a new one.
Best wishes,
Christian

Hi Christian: Thank you very much for your help with this!
Bart’s twixread does now seem to work with Siemens VE11E data acquired with cartesian sampling.
I will also try other trajectories and see how it goes!
Again, thank you for the help and rapid response!
Michael

On Jul 1, 2022, at 5:45 AM, Christian Holme @.***> wrote:
Thank you for the data!
Now, twixread should be able to read those datasets. If you find others that do not work, please reopen this issue or raise a new one.
Best wishes,
Christian
—
Reply to this email directly, view it on GitHub https://github.com/mrirecon/bart/issues/288#issuecomment-1172156166, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABQVJP4NHWF5JEH2OILAQQTVR242NANCNFSM5ZCRM6AA.
You are receiving this because you authored the thread.

Hi Christian:
The data are from patient studies but the raw data were anonymized for export with the Twix tool on the scanner and no patient information is left.
I will create a shared folder and then get back.
Thanks,
Michael

On Jun 23, 2022, at 11:02 AM, Christian Holme @.***> wrote:
Well, then it seems that there are still issues with the support for VE. Would it be possible to get access to a dataset that does not work? For example by e-Mail? If these are human data, maybe a phantom measurement would be more appropriate to share.
But with such a dataset I could try to iron out remaining bugs in twixread.
—
Reply to this email directly, view it on GitHub https://github.com/mrirecon/bart/issues/288#issuecomment-1164522984, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABQVJP4D2E5UKLHSRD42KOTVQR4BZANCNFSM5ZCRM6AA.
You are receiving this because you authored the thread.

Hi,
I know this is an old issue, but I'm still having trouble reading twix files from VE12U. I compiled BART without ISMRMRD support, and tested both with v0.9.0 and with the most recent commit (d9d196289adf124be52780ae723a66517f11002a)
This is the error I'm getting:
[dbosch@nyx-login0 ~]$ bart twixread meas_MID00063_FID16996_ep2d_bold_SMS3_R4_12sl_3rep.dat sms3
VD/VE Header. MeasID: 63 FileID: 16996 Scans: 1
Patient: xxxxxxxxxxxxxxxxxxxxxxxx
Protocol: ep2d_bold_SMS3_R4_12sl_3rep
ERROR: Incorrect number of ADCs read! ADC count difference: 1 != 0!
Aborted (core dumped)
[dbosch@nyx-login0 ~]$

This is happening for all files I've tested. One file can be found here:
https://owncloud.tuebingen.mpg.de/index.php/s/EKTrJcEgCAf24DP (will delete the file after 20. October 2024, let me know if you need it afterwards)
Thanks for looking into this!
Dario

Hi,
This works fine if I specify the -A flag:

bart twixread -A meas_MID00063_FID16996_ep2d_bold_SMS3_R4_12sl_3rep.dat ksp
cat ksp.hdr

Dimensions
384 142 1 31 1 1 1 1 1 1 3 1 2 12 1 1
Command
twixread -A meas_MID00063_FID16996_ep2d_bold_SMS3_R4_12sl_3rep.dat ksp
Files

ksp <meas_MID00063_FID16996_ep2d_bold_SMS3_R4_12sl_3rep.dat

Creator
BART v0.9.00-575-g118a306
Jon Tamir, PhD
Assistant Professor
Jack Kilby/Texas Instruments Endowed Faculty Fellowship in Computer Engineering
Chandra Family Department of Electrical and Computer Engineering
The University of Texas at Austin
www.jtsense.comhttps://jtsense.com/
From: Dario Bosch @.>
Date: Sunday, October 6, 2024 at 02:19
To: mrirecon/bart @.>
Cc: Jon Tamir @.>, Comment @.>
Subject: Re: [mrirecon/bart] twixread does not seem to work with recent raw Siemens data (Issue #288)
Hi,
I know this is an old issue, but I'm still having trouble reading twix files from VE12U. I compiled BART without ISMRMRD support, and tested both with v0.9.0 and with the most recent commit (d9d1962https://github.com/mrirecon/bart/commit/d9d196289adf124be52780ae723a66517f11002a)
This is the error I'm getting:
@.*** ~]$ bart twixread meas_MID00063_FID16996_ep2d_bold_SMS3_R4_12sl_3rep.dat sms3
VD/VE Header. MeasID: 63 FileID: 16996 Scans: 1
Patient: xxxxxxxxxxxxxxxxxxxxxxxx
Protocol: ep2d_bold_SMS3_R4_12sl_3rep
ERROR: Incorrect number of ADCs read! ADC count difference: 1 != 0!
Aborted (core dumped)
@.*** ~]$
This is happening for all files I've tested. One file can be found here:
https://owncloud.tuebingen.mpg.de/index.php/s/EKTrJcEgCAf24DP (will delete the file after 20. October 2024, let me know if you need it afterwards)
Thanks for looking into this!
Dario
—
Reply to this email directly, view it on GitHubhttps://github.com/mrirecon/bart/issues/288#issuecomment-2395327512, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ACCQC27ML2WC3MFT7W2KUKLZ2DP7HAVCNFSM6AAAAABPOCC6ZCVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDGOJVGMZDONJRGI.
You are receiving this because you commented.Message ID: @.***>

Hi,
Thank you, I did not know about the -A flag. I guess I should read the documentation more carefully...
Now it works for me too...


InvalidHeaderName

the reqwest report errors when add the following headers:
:method: GET
:scheme: https
:authority: raw.githubusercontent.com
:path: txtx

the code to test:
let mut h = header::HeaderMap::new();
h.insert(":authority", header::HeaderValue::from_static(
                "raw.githubusercontent.com"));

panic:
panicked at 'static str is invalid name: InvalidHeaderName'

How to add http headers prefix ":" showed above? thanks a lot!

The HTTP2 pseudo headers will be set automatically if the connection is h2.


Is there a policy on Apache 2-only dependencies?

I have a crate I may want to use but it is Apache 2.0 licensed only.  Thanks!

Hi @electricboogie, if you still wish to add an Apache License 2.0 dependency, I'd suggest adding an issue (or maybe even a PR) noting the dependency, why you're adding it and for which utilities it's for. If folks aren't happy about the license they might be able to suggest an alternative dependency. Thanks. :)

Issue #1994 adds a statement on licensing to CONTRIBUTING.md. It confirms some licenses we consider acceptable for dependencies (e.g. the Apache-2.0/MIT dual-license) and some licenses that we do not consider acceptable (e.g. the GNU GPL). However, I deliberately avoided mentioning the Apache 2.0 license alone, because the consensus amongst uutils developers didn't seem as clear to me.
In pull request 2493, @tertsdiepraam suggested:

... The main difference with MIT seems to be that you have to state the changes you make, so I'm leaning towards allowing it for dependencies, but not allowing copying code from Apache 2.0 projects. This ensures that we don't modify the code without stating the changes. Does that make sense?

I suggested that we could add a third license category, between "acceptable" and "licenses we will not use":

Licenses accepted in referenced dependencies, on a case-by-case basis, when there is no MIT-licensed alternative:

Apache License, version 2.0

It was suggested we check what @sylvestre and @rivy think.
Alternatively we could just add it to the bottom of the "accepted" list:

Other permissive license, accepted for dependencies when there's no MIT-licensed alternative (Apache License version 2.0)

Thank you for your opinions. :)

CONTRIBUTING.md now confirms that Apache License 2.0-only dependencies are fine.


Fremennik Medium Diary Item Requirements Golden Helmet

glitch in general it wont move past the achievement going through the tunnel

Hey @SplitTipz can you clarify what the actual bug is please.


This is confusing!

With the id token you show a request for response_type "id_token" only and a response for "id_token+token" but the response contains an access token but no id token! When I attempt to use "id_token+token" I then get an error that says "Resource Identifier is not provided"!

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: be0884d3-263f-9913-7b8c-170d8092baa2
Version Independent ID: 42c5b06a-81a7-97f7-a4cf-7ca77a30ec37
Content: Secure single-page applications using the Microsoft identity platform implicit flow
Content Source: articles/active-directory/develop/v2-oauth2-implicit-grant-flow.md
Service: active-directory
Sub-service: develop
GitHub Login: @rwike77
Microsoft Alias: ryanwi

@LaughingJohn Thanks for your feedback! We will investigate and update as appropriate.

Thanks. FYI I got it working by providing a resource: api://GUID which is the app URL of the web API (not the client). This requirement isn't mentioned anywhere as far as I can see.

That's not how you should use it.  I'll clean up the example.

Thanks @hpsin for updating the samples.  #please-close


MRTK Tools Build Window stuck in Importing Assets loop after accessing Visual Studio project.

Describe the bug
Building an MRTK project using the Build Window provided in MRTK Tools, and then subsequently accessing the Visual Studio project to build an app package, causes the Unity Editor to get stuck in a loop of constantly "Importing Assets" indefinitely. This renders Unity unusable until it is restarted.
To reproduce

Create an MRTK app for HoloLens 2 in Unity, following the HoloLens 2 development fundamentals exercise
In the Unity Editor, go to 'Build Window'
Click on 'Build Unity Project'
Once build is complete, click on 'Open in Visual Studio'
After visual studio has opened, go back to the Unity Editor.
Unity attempts to "Import Assets" and continues indefinitely (I've waited at least 30 minutes).

Expected behavior
The "Importing Assets" window should not appear after the build is complete. It should not reappear continuously every time I switch to the Unity Editor window.
Screenshots

Your setup (please complete the following information)

Unity 2020.3.19f1 (LTS)
MRTK Foundation 2.7.2
MRTK Tools 2.7.2
MRTK OpenXR Plugin 1.0.3
Visual Studio 2019 16.11.4

Target platform (please complete the following information)

HoloLens 2 (ARM64)

Additional context
Problem does not occur when building using Unity Build Settings (Ctrl + Shift + B) and opening the Visual Studio Project manually through file explorer. Screenshot of stuck prompt and the console output generated after build included above.

Closing as duplicate, see above.


Running tests with reverse flag causes test failures

Describe the bug
Tests should be able to run in any order to minimise dependencies between tests.
However, running tests with the reverse flag causes test failures.
To Reproduce
./manage.py test --reverse

Versions (please complete the following information):

Django Import Export: 3.3.1
Python 3.11
Django 4.2

Expected behavior
Tests should pass with no issues
This should be done on the release-4 branch due to test refactorings

Do you want this to be on the release-4 build?
and to make sure I understand this, each test IS NOT isolated, and that is what we are aiming for. Correct?

Yes this should be on release-4 please.  Refer to the contributing.rst page for guidance on how to configure environment for tests.
We are aiming that the test suite runs successfully no matter what order the tests are run (also see the shuffle param) (see docs).  This is best practice for tests.  Likely there are dependencies between tests, probably due to state being retained prior to test runs.
I would say get comfortable with how tests are run by reading the django docs first (apologies if you already know all this).  You can run each test module on its own with reverse and shuffle and you should be able to track down the problem tests fairly quick.
For example you can run a single module with:
cd tests
./manage.py test core.tests.test_mixins

If you get stuck give me a shout.

Understood, Code is up and running on my local machine. I have reproduced the issue, with 1 Failure, 9 Errors, 7 Skips.  With the majority of the errors being:
sqlite3.OperationalError: no such table: core_bookwithobjectrepr
If I run into any walls that I can't find my way over or around, I'll be sure to contact you.


use downstream config to compile ephemeral models

Describe the feature
I'm building ephemeral models with a lot of transformations. Ideally, I'd like to apply the is_incremental() statement within ephemeral models at specific places and logic to be applied or not based on downstream model configurations. I tuned the is_incremental() macro but wasn't able to extract downstream information when compiling ephemeral models.
Describe alternatives you've considered
Being able to call downstream model configurations and relations in ephemeral models.
Additional context
Who will this benefit?
Would benefit anyone trying to replace CTEs by ephemeral models.
Are you interested in contributing this feature?
Is_incremental() tuned:
{% macro is_incremental(downstream_relation = none, downstream_config = none) %}
    {#-- do not run introspective queries in parsing #}
    {% if not execute %}
        {{ return(False) }}
    {% elif model.config.materialized == 'ephemeral' %}
    {{return(downstream_relation is not none
                  and downstream_relation.type == 'table'
                  and downstream_config.materialized == 'incremental'
                  and not flags.FULL_REFRESH)}}
    {% else %}
        {% set relation = adapter.get_relation(this.database, this.schema, this.table) %}
        {{ return(relation is not none
                  and relation.type == 'table'
                  and model.config.materialized == 'incremental'
                  and not flags.FULL_REFRESH) }}
    {% endif %}
{% endmacro %}

Original macro:
{% macro is_incremental(downstream_relation = none, downstream_config = none) %}
    {#-- do not run introspective queries in parsing #}
    {% if not execute %}
        {{ return(False) }}
        {% set relation = adapter.get_relation(this.database, this.schema, this.table) %}
    {% else %}
        {{ return(relation is not none
                  and relation.type == 'table'
                  and model.config.materialized == 'incremental'
                  and not flags.FULL_REFRESH) }}
    {% endif %}
{% endmacro %}

Here I need to retrieve downstream_relation and downstream_config  each time an ephemeral model is compiled.
We could probably do this in a macro but it's not really user friendly.

@lambert-lemanh-cko I've wanted to do exactly this on several previous occasions. I've felt this pain, wanting to split out incremental model logic into more modular components. That said, I don't think it's something we should do.
When a model wants to know something about one of its parents—a config value, the list of columns, the number of rows in the database, whatever—it should use the ref() function as its first pointer to that parent model. Whereas, if a model wants to know something about a downstream model, and tries to ref() it, it would result in a circular dependency... as it should. Nodes in a DAG cannot know anything about the nodes that depend on them downstream, else the graph is really cyclic.
So I think your options in this case are:

Wrap the ephemeral model reference with an is_incremental() filter within your incremental model, and see if your database optimizer is smart enough to push down the predicate, despite the (nested) CTEs. Ideally, it is.

Use a macro.

We could probably do this in a macro but it's not really user friendly.

I hear you on preferring to define core model logic in model SQL, rather than a macro. Still, a macro accurately captures what you're after: you have model SQL that you want to repurpose, with dynamic inputs and modifications each time.
I'm going to close this issue, only because I don't see us making a dbt code change. I'm interested to keep the conversation going, and to see if we can come up with more compelling answers here.

Hi @jtcohen6,
Thanks for your answer.

Yes unfortunately Snowflake is not smart enough to apply the filter at the beginning. It will end up scanning the whole dataset.

Fair enough.

I was thinking of adding optional arguments in the {{ ref() }} macros to parse through information to upstream models. Or maybe if {% set %} could be defined in a model but reused in a upstream/downstream model.

I was thinking of adding optional arguments in the {{ ref() }} macros to parse through information to upstream models. Or maybe if {% set %} could be defined in a model but reused in a upstream/downstream model.

You can certainly use static run-level information, such as vars or flags.FULL_REFRESH, to inform models at every stage along the DAG. An upstream ephemeral model could check the full-refresh status to determine its filtering. But even that will miss some edge cases, such as if it's a standard (incremental) run, but the downstream incremental model's associated table is missing from the database.

I was thinking of adding optional arguments in the {{ ref() }} macros to parse through information to upstream models. Or maybe if {% set %} could be defined in a model but reused in a upstream/downstream model.

You can certainly use static run-level information, such as vars or flags.FULL_REFRESH, to inform models at every stage along the DAG. An upstream ephemeral model could check the full-refresh status to determine its filtering. But even that will miss some edge cases, such as if it's a standard (incremental) run, but the downstream incremental model's associated table is missing from the database.

Ideally we need a variable dynamically defined defined by the dowstream model and parse through the ephemeral model when compiled. Could we not have something like this:
select * from {{ ref(ephemeral_model), config_arg = model.config, relation = this) }}
{{config_arg}} and {{relation}} can then be used when compiling the ephemeral_model. This should also not create cyclic relationships.


TTS not working/intermittent during The Baldesion Arsenal (Eureka)

The TTS feature stops working during The Baldesion Arsenal, most specifically during the last 2 boss fights, AV and Ozma. Every now and then there might be a random call that comes out, but overall, it seems to have stopped working in this content. The mechanic timeline still appears, just the TTS component seem to have stopped working. Is there any news on a fix? Thanks

This seems to be a continuation of #4904, I'd suggest adding whatever information you can to that issue.

I'm going to close this in favor of #4904


Add support for content on same line as block start/end

This is particularly useful when using a templating language that does not prettify whitespace.
Basically, the change involves recording the index from the start of the first line of a block at which the block's opening tag starts, and the index from the end of the last line of a block at which the block's closing tag ends.  Then, when replacing the blockLine in the FileProcessor#replaceBlocks we wrap the replacement with the content before the block start and after the block end.
The new tests demonstrate what is now supported, and only one existing test needed changed (needed to specify startIndex or else the entire string is re-inserted, as 'string'.slice(undefined) == 'string').

@connec need rebase but I think it should be better to wait for HTML parser.

I've rebased.  I'm not sure that we still use it though, so I'd be happy to close this in favour of a better implementation.

@connec I will review this on some projects.
We won't have a better implementation soon, so your work might save us from some issues, which IMO it's important.

@connec it should be fixed and available in the dev branch which is a migration to HTML parser.


F# go to definition spotty

Action:
Mouse over type name in project referencing another project in solution and select go to definition. This works.
But within the same project, if the active fs file is in a folder, and the targeted type is in a file in another folder, results in "Cannot navigate to symbol under the carat."
Both are in modules without namespaces.
Versions:
15.6.6 and 15.7.0 preview 4
This issue has been moved from https://developercommunity.visualstudio.com/content/problem/239657/f-go-to-definition-spotty.html
VSTS ticketId: 605984
These are the original issue comments:
(no comments)
These are the original issue solutions:
(no solutions)

Perhaps worth adding that often the wrong location is selected, especially with DU types when they have the same name as the case. Also, from context menu it is slow, up to 20 seconds, but select it from the tooltips, it's immediate.

Closing this out as no concrete repro was produced, and I can verify that project-to-project Go to Definition works (including now with recursive types).


OCR space ErrorMessage condition to be finetuned

currently https://github.com/theDavidBarton/puppeteer-daily-menu-scraper/blob/master/lib/ocrSpaceApiSimple.js#L30 can throw the following exception in case of undefined in response body (most probably due to network error the OCR posts are unsuccesfull):
TypeError: Cannot read property 'map' of undefined
    at Request._callback ([...]\puppeteer-daily-menu-scraper\lib\ocrSpaceApiSimple.js:30:49)
    at Request.self.callback ([...]\puppeteer-daily-menu-scraper\node_modules\request\request.js:185:22)
    at Request.emit (events.js:189:13)
    at Request.<anonymous> ([...]\puppeteer-daily-menu-scraper\node_modules\request\request.js:1161:10)
    at Request.emit (events.js:189:13)
    at IncomingMessage.<anonymous> ([...]\puppeteer-daily-menu-scraper\node_modules\request\request.js:1083:12)
    at Object.onceWrapper (events.js:277:13)
    at IncomingMessage.emit (events.js:194:15)
    at endReadableNT (_stream_readable.js:1125:12)
    at process._tickCallback (internal/process/next_tick.js:63:19)

in test we should check undefined and find a better condition for these cases in the module.
good luck! :duck:

example response if not undefined:
{
   "ParsedResults":[
      {
         "TextOverlay":{
            "Lines":[

            ],
            "HasOverlay":false,
            "Message":"Text overlay is not provided as it is not requested"
         },
         "TextOrientation":"0",
         "FileParseExitCode":1,
         "ParsedText":"GAVE AWAY MY BOOK\r\nFREE ON\r\nREACHED TOP OF AMAZON\r\nBESTSELLER\r\n",
         "ErrorMessage":"",
         "ErrorDetails":""
      }
   ],
   "OCRExitCode":1,
   "IsErroredOnProcessing":false,
   "ProcessingTimeInMilliseconds":"388",
   "SearchablePDFURL":"Searchable PDF not generated as it was not requested."
}

bump

easy to fix. the issue seems to be the usage of .map is a bad practice here, as we are depending on the quality of the response. if we don't use this unneccesary .map here this issue will be gone.
anyway the parsedResult won't be saved neither after this fix.

during debuging we seems we have this response when the error occurs:
"For this API KEY only 3 concurrent connections at the same time allowed. Contact support if you need more."

https://forum.ui.vision/t/only-3-concurrent-connections-allowed/3669/8
issue seems to be on OCR space's side, but possibly there can be workarounds.

#269 will close this issue. we can track the fix of the bug on OCR space's side, see the forum link one comment above.


e.start() problem to execute ensemble simulation

Even though e.start() command finished in Jupyter Notebook, the output of summa is continuously generating. So we have to wait for this process finishing. Without waiting, when we try to combine output dataset from NetCDF, that makes errors.

The preferred method to run both simulations and ensembles is to use their run methods. The start methods allow for a bit more control, so just launch the processes in the background. This may be useful if users don't want to halt execution of other tasks.


Add BN aware checkpointing

torch.utils.checkpoint is not dealing correctly with batch normalization updating the internal stats twice as two forward passes are done.
This PR is a solution implemented by @tkerola (all credit is his!) that reduces the momentum so both updates result in the same end value.

/test


record the websites that user is trying to use the product tracker other than the websites we are supporting

it will be valuable to know this information to plan supporting new websites based on the demand.
changes:

when the track request validation error is websiteNotSupported, before returning with status code StatusNotAcceptable, we should save the hostname in a new table. this table should have the unsupported host and the timestamp of the request. later we can use this information to count the number of requests coming for each of those unsupported websites and then plan tto support the recent ones in high demand.

we should also update the  chrome extension to send better message (on StatusNotAcceptable status code is received) to hint the user, that we know that the user wants to track product from that host and we will try to include support for it.

https://github.com/muly/product-track/pull/59


add ssh command

This adds a new "ssh" command that makes use of the new ssh tunnel feature of the omnect-device-service. With this, one can use the CLI to create ssh tunnels to devices in the field. This is necessary, as sometimes devices may be in NATed networks and not directly reachable.

 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.You have signed the CLA already but the status is still pending? Let us recheck it.


HAWKULAR-256 Move last updated timestamp to header

instead of being repeated in table body.

Built fine. Travis stalled out. Merging.


Add more ContentType constants

We should also include text/plain and application/octet-stream besides the ones in:

We have these now, feel free to reopen if you still need it


Autofocus not working

Hi! I have a problem with autofocus
<ui-select autofocus="true" ng-model="organisation.country" theme="select2" required>
            <ui-select-match placeholder="Select or search a country in the list...">{{$select.selected}}</ui-select-match>
            <ui-select-choices repeat="country in countries | startingWithFilter: $select.search">

            </ui-select-choices>
</ui-select>

When I click on the box it does not work, should I do something more to make it work?

Resolved. It was an issue with angular-animate incompability.
More info:
https://github.com/angular-ui/ui-select/issues/1201


feat: add codegen for rust(actix)

Closes #153
As discussed in the issue, actix client doesn't provide any inbuilt way make multiform requests like reqwest does.
Therefore I've made my own implementation of multiform requests similar to python(request) codegen.
Due to the nature of rust.
If I have 2 url params, 2 headers, and 1 form data key value pair. Then the generated code is around 90-100 lines.
I could trim the lines down by using some third party crate(package) but I don't think we would want to include a lot of dependencies in the codegen.
Note: Currently these are the 3rd party packages that are used in codegen.

awc (The actual actix client library)
actix_rt (runtime for actix, they provide it in a separate crate)
serde (for deserializing structs)
serde_json (for converting/serializing json to structs)
mime_guess (for finding the mime type of file in multiform upload)

Edit: removed serde from deps

@ashitaprasad @animator If you approve of these changes then I can write tests for them.

Ok, so I've done a lot of jinja magic wherever possible to remove the extra code.
Now If I have 2 url params, 2 headers, and 1 form data key value pair. Then the generated code is around 50-70 lines.

@Tanish2002 Can you kindly update the test cases to include example Request Models POST 4 to POST 9 which have been recently added.

@animator done!

LGTM 🚀


Backport NPE fix to 0.8.1 as <IP_ADDRESS>

Fix to backport is: 8c493ceceb00ec32d2a7eadd7823e696deafccf8

Why merge this into master?  We should leave it as it's own branch.

@mgummelt:  I don't intend to merge to master.  This is for review.  It will be on tag <IP_ADDRESS>

Oh, you can just submit the branch and link the reviewer to the commits if that's what you intend.
LGTM

Thanks @nickbp and @mgummelt for review.


Screenshot in your readme?

It looks like you've got an interesting GUI from the source code.
Projects with a screenshot of their GUI in the readme gets people's attention. They want to learn more and it gives you a chance to show off your work.
A new video was uploaded this week about how to add one:
https://youtu.be/Uby1O7vHEOA

Thank you!!! I like it!
Now everyone knows what you've made at a glance


Vickel: Watch autowin888.com

Vickel requests the watch of the watch_keyword autowin888\.com. See the MS search here and the Stack Exchange search in text, in URLs, and in code.

autowin888\.com has been seen in 1 true positive, 0 false positives, and 0 NAAs.

Approved by Spevacus in Charcoal HQ


Move PR artifacts under pr-logs/pulls in GCS

Signed-off-by: Steve Kuznetsov<EMAIL_ADDRESS>/cc @kargakis @smarterclayton any reason we didn't follow upstream convention here in the first place?

/cc @kargakis @smarterclayton any reason we didn't follow upstream convention here in the first place?

Not that I know of
lgtm

Maybe the convention changed.  Can you also open PRs for openshift/origin-gce?
We might want to move all the old data too.

Can you also open PRs for openshift/origin-gce?

Not sure what you mean -- isn't the only GCS stuff in there for the cluster registry?

Also change zz_origin_gce

Uses branch-logs which doesn't exist upstream -- they just aggregate by job under logs for all jobs

@smarterclayton any comments before I merge this


NameError: name 'manga' is not defined

Ubuntu 14.04 amd64
$ ./manga.py naruto
Which site?
(1) MangaFox
(2) OtakuWorks
(3) MangaReader
Traceback (most recent call last):
File "./manga.py", line 563, in
exec('site, manga, chapters, chapters_to_download = parse' + siteDict[site] + '(manga, False, 1)')
File "", line 1, in
NameError: name 'manga' is not defined
$ ./manga.py naruto
Which site?
(1) MangaFox
(2) OtakuWorks
(3) MangaReader
2
Traceback (most recent call last):
File "./manga.py", line 563, in
exec('site, manga, chapters, chapters_to_download = parse' + siteDict[site] + '(manga, False, 1)')
File "", line 1, in
NameError: name 'manga' is not defined

This is an issue with the README not matching the release 0.5.5 code. The code in the release states
[531] '-n' : 'manga = sys.argv[index + 1]',

so in the version you're using, you'll need to do ./manga.py -n naruto


Dask test api fixes + cml changes

Once #2699 is in, this is next on the list.
This PR adds two extra commits. One addresses the tests that now have to be removed or changed since the API has changed (e.g. replace() method has been removed etc)
The second commit addresses the change of some of the cml to remove things like fill_value

I think this is going to confuse things so I will wait until #2699 is up before I put these changes up


Analyzing a Game Design Document

Proposal:
For this project I would love to go in the direction of doing an analysis on a game design document/pitch. I am not completely certain whether I would want to focus on something I have developed in the past or one that is more developed from a known game however, I think both would be very interesting and fun. Since I have been involved in game design in the past 2 years, I learned a lot about game design documents, and I find them really intriguing in how detailed they get, as well as their huge importance in the industry and the success of the development process. I think it would be very useful to actually incorporate a GDD into an xml project and see what the results are and I'm sure I would learn a lot about how to better structure a future game design document. I will use this as some kind of reference as this has a good mix of structure to it. This is a pitch (announcement/showing of the game and its mechanics) of the original bioshock game.              https://www.systemshock.org/index.php?PHPSESSID=iide3g3h7i1cb58gj7dcn1jgjo;topic=2121.msg21031#msg21031
Organization:
TOC: Table of contents is always an important part to incorporate for ease of use.
Overview: Giving the best overview of the game will make or break the games interest.
Gameplay: The mechanics of the game would be explained and shown in this section. (This will contain the most amount of attributes and elements by far)
Backstory: Including the story part of the game would be a nice switchup from the list style that most of the document would consist of.
UI: Interface of the game will contain a lot of images but also plays an important role for visual information.
Why: Giving an overview at the end will provide additional information to close out the document.
Reason:
I would really enjoy doing a project on this because one of my favorite parts about game design is the learning curve of it which mostly includes figuring out great, unique mechanics that work consistently and that is hard to find nowadays. Which is why we are seeing so many remasters and remakes as well as easy money-making schemes like in game microtransactions instead of creating new and interesting ideas. I want to help myself learn more about the making of game design documents and I think structure plays an important role and creating an xml documentation on one would really reveal a lot.

I really like this idea and it goes along the same path of what I suggested for a project. There is a lot that can be learned and seen with a video game, whether it is your own or someone else's game. It would be fun to dive into a great game or create one for yourself. It is very true that a lot of today's games are filled with micro-transactions and not solely focused on the performance of the game. One thing that I would recommend is to try and find something that you want to focus mainly for the game. For example, looking at the artwork in the game or the music in the game. Something that you can track and create a script for would be ideal. Overall, I think that this project would be awesome to do and would be fun to dive into it as well.

I am very interested in this idea also. It would be great to break a game down and take a look at its core components, it's also helpful to see what parts may be making or breaking this game, and what someone would be interested in keeping or building upon in their own game. Overall great project proposal!


[Docker] MySQL not supported on ARM64

MySQL does not support ARM: https://github.com/docker-library/mysql/issues/318
This issue is there for 4+ years and does not seem to move anywhere.
I propose switch to MariaDB as it should be 1:1 compatible.
Currently it means that noone is able to run this in docker on M1 Macbook (or any other ARM based cpu).

The fastest workaround to make it work without changes locally is to put this into docker-compose.override.yml:
version: "3.7"
services:
    mysql:
        image: mariadb:10.5

@JanMikes That look like good enough solution in the right place :+1:


Added Cyclic sort algorithm and interview questions of various MNCs

I have created the cyclic sort algorithm in java that searches for a number(target element) in a 1D matrix with time complexity of O(N) only. Also added some question on the concept of the cyclic sort.


⚠ Bofrost.es has degraded performance

In a29f525, Bofrost.es (https://www.bofrost.es) experienced degraded performance:

HTTP code: 200
Response time: 1719 ms

Resolved: Bofrost.es performance has improved in 1554194 after 7 minutes.


dynamic content slider not working

Below is an example I made on jsFiddle to reprodice the problem I am facing. I am firing an init function to create slider after loading dynamic content via ajax. Part of the elements and classes created by slick are added to DOM but does not work.
====================================================================
https://jsfiddle.net/woptima/kz64ackf/1/
Where am I mistaking?

problem was the timeOut which I used.


Limit use of [[maybe_unused]] attribute when using gcc 11.

@baldersheim : please review
This is the first part of #26495

This pr is obsoleted by #26499


fix!: rename elements

What I did

rename all the tag names
remove patternfly styles from base spinner (may affect rh-spinner)
add time and isoString public readonly properties to pf-timestamp and refactor tests to be more resiliant (on certain platforms, one of the whitespace chars between the time and am|pm is not a regular space char, leading to test failures)
let special demo files (like elements/pf-tooltip/demo/performance.html reference subresources without ../

Notes to Reviewers
Waiting on #2316
pf-timestamp and pf-spinner need special attention
Demos:

accordion
avatar
badge
button

button/form-control

card
clipboard-copy
code-block
icon

icon/custom-icon-sets
icon/styling-icons

jump-links

jump-links/scrollspy-with-subsections

label

label/patternfly

modal
panel
progress-stepper
spinner
switch
tabs
tile
timestamp
tooltip

tooltip/performance

Not quite sure why these tests are failing

I'll check elements/pfe-a* through pfe-i*

Looking at this now, npm runs start looks good with the dev environment from the components I've looked at but the docs site (non-demo pages) look like they're not getting the built components moved into the _site folder.

Grabbing element/pf-i* through element/pf-p*

Not seeing the main demo page anymore, but before that I looked at the individual component pages and the demos and they looked good outside of a minor css update for card and the images not loading for avatar.  Fixed & pushed that up for card, looks great @bennypowers !

which main demo page is missing? what's the url?

Sorry, https://deploy-preview-2319--patternfly-elements.netlify.app/ and localhost:8080 is no longer loading for me

lol "yarp, there's yer problem!"

Try this one out to spot orphaned pfe references
rg --pcre2 "pfe(?!(\.min\.js|-core|-tools|-env))" -g '!CHANGELOG*.md'

pfe-core, pfe.min.js, etc are all legit, as are the brand icons


Fix the return type for onmessage handler

Imported for review and testing. Created internal issue b/124051620.

Thanks again!


[BACKLOG-11436] workaround 2 rows in tab toolbar

@mdamour1976 @bmorrise please review

Build Completed
:white_check_mark: This pull request has passed all validations.
Build Commands
ant -Dtestreports.dir=bin/reports/unit-test -f ui/build.xml clean-all resolve jacoco && ant -Dtestreports.dir=bin/reports/integration-test -f ui/build.xml jacoco-integration checkstyle publish-local

Cleanup Commands
rm -r ~/.ivy2/local || echo no publish local to remove

Changed files
  ui/src/org/pentaho/xul/swt/tab/TabSet.java

Unit test coverage change
These statistics help you identify how your changes have affected the coverage of the following files. If a file is not in this list, then its coverage was not affected by your changes. To get some help interpreting these metrics, please refer to Jacoco's documentation.
org.pentaho.xul.swt.tab.TabSet

Complexity Change:  + 1.35%
Instruction Change:  + 1.35%
Line Change:  + 1.41%
Method Change:  + 1.95%

org.pentaho.xul.swt.tab.TabSet.new Listener() {...}

Complexity New Coverage: 14.29%
Instruction New Coverage: 18.75%
Line New Coverage: 12.50%
Method New Coverage: 33.33%


LP creation screen displays as media on lockscreen on iOS

While creating an LP on Polycrystal, the screen locked and got this:

Probably low priority, but checking if it might affect other things.

@hieronymus4826 interesting! Can you describe, step by step how you get here? I can't get past the connect options in https://polycrystal.finance/ with the dapp browser.

I have no problem connecting when I press the MetaMask button.
Then I go to Trade -> Liquidity (at this point I get disconnected from the wallet as we are moving to "dex,polycrystal.finance") - > I recconect and approve the pair

And when I am this confirmation screen to supply liquidity and lock the screen I get:

Strange indeed! I can make it happen once and then I can't reproduce it anymore. I guess it's because the site is playing an audio stream or something which causes iOS to display that media overlay, but I can't reproduce it anymore to examine it. But doesn't seem like it's something we need to fix or can fix at the moment. Closing for now. But don't let this stop you from reporting issues. They are really helpful!


Amount disappears completely when the cursor is brought again

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Action Performed:

Open an amount component like send/receive money or split bill
Enter an amount and then click on send money banner
Now the cursor will be gone and bring it back by clicking on the end of amount

Expected results:
cursor should come back without any errors
Actual results:
whole amount disappears and then comes back
Workaround:
Can the user still use Expensify without this being fixed? Have you informed them of the workaround?
Platforms:

Which of our officially supported platforms is this issue occurring on?

[ ] Android / native
[x] Android / Chrome
[ ] iOS / native
[ ] iOS / Safari
[ ] MacOS / Chrome / Safari
[ ] MacOS / Desktop

Version Number:
Reproducible in staging?: needs reproduction
Reproducible in production?: Needs reproduction
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos: Any additional supporting documentation
https://user-images.githubusercontent.com/43996225/234983770-c19096be-64cd-43f2-9882-beda48f23f8a.mp4
Expensify/Expensify Issue URL:
Issue reported by: @chiragxarora
Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1682588631506119
View all open jobs on GitHub

Triggered auto assignment to @isabelastisser (Bug), see https://stackoverflow.com/c/expensify/questions/14418 for more details.

Bug0 Triage Checklist (Main S/O)

[ ] This "bug" occurs on a supported platform (ensure Platforms in OP are ✅)
[ ] This bug is not a duplicate report (check E/App issues and #expensify-bugs)

If it is, comment with a link to the original report, close the issue and add any novel details to the original issue instead

[ ] This bug is reproducible using the reproduction steps in the OP. S/O

If the reproduction steps are clear and you're unable to reproduce the bug, check with the reporter and QA first, then close the issue.
If the reproduction steps aren't clear and you determine the correct steps, please update the OP.

[ ] This issue is filled out as thoroughly and clearly as possible

Pay special attention to the title, results, platforms where the bug occurs, and if the bug happens on staging/production.

[ ] I have reviewed and subscribed to the linked Slack conversation to ensure Slack/Github stay in sync

I'm unable to reproduce this!

It's still present in chrome mweb, not in Android app though

https://user-images.githubusercontent.com/54641656/235247220-bc017971-d454-47e9-8fbd-55bcf475a1be.mp4

Hi @isabelastisser , I've tested it in chrome desktop too and have noticed that the time instant for which the amount goes away is slightly less in desktop hence its more visible in mobile versions.
What appears to me is that when we focus the amount input field, its rendering that component again from the scratch.
https://user-images.githubusercontent.com/54641656/235250784-d2c4db1a-b1b6-44a5-abb7-0e07ba6ba6a8.mp4
can be seen upon close look in this attachment


docs: removed the faulty release file and it's redirects

Description

Removed the faulty release candidate file: https://github.com/asyncapi/website/blob/master/pages/docs/specifications/v2.3.1-2022-04-release.1.md
Removed it's redirects from _redirects

Related issue(s)
Fixes #688

@pratik2315 @alequetzalli I helped solving conflict. It happened because yesterday we released RC 4 for the 2.4 spec and new redirect was added, line about what @pratik2315 changed, thus conflict appeared

@pratik2315 @alequetzalli I helped solving conflict. It happened because yesterday we released RC 4 for the 2.4 spec and new redirect was added, line about what @pratik2315 changed, thus conflict appeared

Damn thanks a lot!!I was confused and searching from a long time about what exactly went wrong😅

There was one more merge conflict, 2.4 related 😅 solved


Move to SpaceDock

Differences from #3160:

Rebased the branch
Removed the hardcoded SpaceDock links
Added forum/repo links
Added a override to SpacetuxSA (never change an override)

Fixes #3160

Commenting to force a build

passes jsonlint which means nothing should break horribly from merging these. I will classify this as objectively better than what we currently have but would've loved seeing this broken into smaller pieces originally to make it easier to run through the bots. Considering the situation at hand I'll merge this so we can move forward rather than keep poking at these and breking it into smaller, working, pieces.

Also I have a large trust in @Olympic1 and their local testing :)


Divide and Rem is very slow

I found divide(/) and rem(%) operation is very slow. Blew is my benchmark code:
fn modulo_plain(c: &mut Criterion) {
    let data = (0..1024_u64).collect::<Vec<_>>();
    let mut result = vec![0_u64; 1024];
    c.bench_function("naive modulo", |b| {
        b.iter(|| {
            result
                .iter_mut()
                .zip(data.iter())
                .for_each(|(a, b)| *a = *b % 3);
        })
    });

    c.bench_function("simd modulo", |b| {
        b.iter(|| {
            let chunks = data.chunks_exact(8);
            let result_chunks = result.chunks_exact_mut(8);
            let scalar = std::simd::u64x8::splat(3);
            chunks.zip(result_chunks).for_each(|(chunk, result)| {
                let v = std::simd::u64x8::from_slice(chunk) % scalar;
                result
                    .iter_mut()
                    .zip(v.as_array())
                    .for_each(|(r, v)| *r = *v);
            });
        });
    });
}

criterion_group!(benches, modulo_plain);
criterion_main!(benches);

The simd_modulo is much slower than naive modulo, and replace the % operation with / will get the same result. If you replace it with +, it will be much faster than naive version. What's wrong with it?
I am using Intel(R) Xeon(R) Platinum 8255C CPU, it supports avx512. I run the bench with the following command:
RUSTFLAGS='-C target-cpu=native' cargo bench

Most CPUs (including yours) don't have integer division vector instructions.  In that case, division is performed by looping across each element in the vector.  In your particular benchmark, you are likely seeing the overhead from chunking the Iterator.

Most CPUs (including yours) don't have integer division vector instructions. In that case, division is performed by looping across each element in the vector. In your particular benchmark, you are likely seeing the overhead from chunking the Iterator.

Got it, thanks!


More signup options

Let's offer easier signup experience with these buttons as well, essentially getting email from these APIs/hooks.

[ ] Twitter
[ ] Facebook
[ ] Google

Hi @feruzm Following is the process that is followed at the time of google signup:

First of all we need to register an App on Google Console. This app will be used to get Google token that we will use in Ecency.
A callback URL is required that will save the user data in our database and login the user upon callback from google.
Google JS client library needs to be included in the Ecency web application.
All above is pretty straight forward and almost same OAuth2 Authentication flow is followed by all the social websites. But we need to decide what will be the backend for this purpose. Where are we going to store the user credentials for social login.
This will also raise other use cases such as if some one has used their google account to sign up on ecency and then uses it to do simple sign up. We have to make sure to prompt an error for this.

Please discuss a little bit about the backend structure that we are going to follow for this task.

@MTSaeed we are not going to add signin option, just signup where email is extracted and send to existing signup backend.


[Sema] Intro the @_spiOnly attribute on import statements

Prepare the scene for the @_spiOnly attribute on import statements. This modifier will effectively import the target only in the private swiftinterface and swiftmodule, the import will be absent from the public swiftinterface. Type-checking will ensure that imported types are only used in SPI and implementation details, uses in API will be diagnosed.
This PR introduces the attribute, the import filters and the flag required to enable the feature. Next I'll add swiftinterface printing support, exportability diagnostics, and integration with adjacent SDK sanity checks.

@swift-ci Please smoke test

@swift-ci Please smoke test

I changed the flag behavior to keep it out of the swiftinterfaces. If we don't print it and always assume the feature to be enabled there we can make older and future compilers compatible with the same swiftinterfaces.
@swift-ci Please smoke test

@swift-ci Please smoke test Linux

There are connection issues on the CI bots.
@swift-ci Please smoke test macOS


deploy fails in Step 3 (again)

I'm getting the following error during deploy:
Error: Error occurred while parsing your function triggers.
TypeError: Cannot read property 'databaseURL' of undefined
at firebase.INTERNAL.registerService.Reference ([...]\smarthome-washer\washer-start\functions\node_modules\firebase\database-node.js:256:95)
at Object.factories.(anonymous function) [as database] ([...]\smarthome-washer\washer-start\functions\node_modules\firebase\app\firebase_app.js:245:32)
at FirebaseAppImpl.getService ([...]\smarthome-washer\washer-start\functions\node_modules\firebase\app\firebase_app.js:108:78)
at Object.serviceNamespace [as database] ([...]\smarthome-washer\washer-start\functions\node_modules\firebase\app\firebase_app.js:263:40)
at Object. ([...]\smarthome-washer\washer-start\functions\index.js:26:30)
at Module._compile (module.js:652:30)
at Object.Module._extensions..js (module.js:663:10)
at Module.load (module.js:565:32)
at tryModuleLoad (module.js:505:12)
at Function.Module._load (module.js:497:3)
More info:
npm --version
5.6.0
node --version
v8.11.4
package.json:
{
"name": "smarthome-washer",
"description": "Codelab for controlling devices through the Google Assistant",
"engines": {
"node": "8"   -> changed this one from 6 to 8, didn't help
},
"dependencies": {
"actions-on-google": "^2.2.0",  -> tried removing all "^", didn't help
"cors": "^2.8.4",
"firebase": "^4.0.0",
"firebase-admin": "^5.13.0",
"firebase-functions": "^2.0.0",
"googleapis": "^27.0.0"
},
"private": true,
"devDependencies": {
"eslint": "^4.19.1",
"eslint-config-google": "^0.9.1"
}
}
Thanks!

Line 26:
const firebaseRef = firebase.database().ref('/');
So it seems to suggest that the variable firebase is undefined. It is declared on line 22:
const firebase = require('firebase');
Have you run npm install in this directory?

I believe that was the problem. Installed firebase locally in the project folder and it worked. Thanks!

Closed by mistake, still need to try this out.

This is the output from running "npm install" in the functions directory:

<EMAIL_ADDRESS>install /home/popas/Code/smarthome-washer/washer-start/functions/node_modules/grpc
node-pre-gyp install --fallback-to-build --library=static_library

make: Entering directory '/home/popas/Code/smarthome-washer/washer-start/functions/node_modules/grpc/build'
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/surface/init.o
make: Entering directory '/home/popas/Code/smarthome-washer/washer-start/functions/node_modules/grpc/build'
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/surface/init.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/avl/avl.o
make: Leaving directory '/home/popas/Code/smarthome-washer/washer-start/functions/node_modules/grpc/build'
Failed to execute '/usr/bin/node /home/popas/.npm-global/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js build --fallback-to-build --library=static_library --module=/home/popas/Code/smarthome-washer/washer-start/functions/node_modules/grpc/src/node/extension_binary/node-v64-linux-x64-glibc/grpc_node.node --module_name=grpc_node --module_path=/home/popas/Code/smarthome-washer/washer-start/functions/node_modules/grpc/src/node/extension_binary/node-v64-linux-x64-glibc' (1)
make: Leaving directory '/home/popas/Code/smarthome-washer/washer-start/functions/node_modules/grpc/build'

Okay, so this works, but I can't determine why
const firebase = require('firebase');
const admin = require('firebase-admin');
// Initialize Firebase
firebase.initializeApp(JSON.parse(process.env.FIREBASE_CONFIG));

Okay that seems like the canonical way to initialize functions to connect to Firebase.

Thanks a lot, it worked!


Adds the (string) position of tokens to the token tree.

This PR adds the position to the tokens in the token tree.
Example found in the following string:
I want to {{ try }} a more {% if advanced | length > 3 %}{{ variable }}{% endif %} template {% set unit = 2 %}{# This is a comment #}{{ variable_after_comment }}
  {
    type: 'raw',
    value: ' template ',
    position: { start: 82, end: 92 }
  },

This means the raw text template can be found between position 82 and 92 in the given template.
This is one of a series of PRs I want to make to parse through tokens and to act on these tokens. Like the NodeTraverser of Twig in PHP.

This looks pretty good. I don't see any reason why it can't be merged, any thoughts @RobLoach?

@willrowe or @RobLoach is it possible to create a minor version of this on NPM? That makes testing the package in other applications way more easy for the other PRs (token traverser).

I was going to add this to the v1.17.0 milestone that I will be choosing fixes/features for in the next couple of weeks, so I'm not sure if we'd do a release for just this or not.


need slot for class Study to store jgi portal identifiers

I was trying to use https://microbiomedata.github.io/nmdc-schema/jgi_portal_identifiers/ which was created to address https://github.com/microbiomedata/nmdc-schema/issues/868, however this slot is not associated with any applicable classes and when I try the json:validate API endpoint i get the following error
{"study_set": [
        {
            "gnps_task_identifiers" : [
"gnps.task:4b848c342a4f4abc871bdf8a09a60807",
"gnps.task:f8efbde4cc154db6a4cf269072d42d40"
],
"jgi_portal_identifiers" :"jgi.proposal:507130",

    "id": "nmdc:sty-11-ntyqjs18"

        }
]
}

{
  "result": "errors",
  "detail": {
    "study_set": [
      "Additional properties are not allowed ('jgi_portal_identifiers' was unexpected)"
    ]
  }
}

There is already a branch open for this based on the old ticket id
https://github.com/microbiomedata/nmdc-schema/tree/issue-868-gnps

duplicate of https://github.com/microbiomedata/nmdc-schema/issues/1041


Performance: Add an internal skip_frame_decoding flag to DecodeOptions.

PTAL?
This PR improves the performance of scenarios where Reader.next_frame_info is used to skip N frames (such scenarios may arise from the way how seeking to an arbitrary frame is implemented currently in SkPngRustCodec - see my earlier comment here and https://crbug.com/371060427).
It's not entirely clear to me how often the scenarios above occur in practice (i.e. what is the practical performance impact of this PR), but the PR is relatively simple and improves such scenarios by 90%, so it seems worth it?

Let me explain the problem that was caught by buf_independent fuzzer:

The suffix of an IDAT payload contains some  bytes that are not needed to decompress the image data.  4 bytes of Adler 32 checksum are one example, but in general the payload may contain more pixels than is needed for the image.
When decompressor handles these extra bytes it may detect a fdeflate-level format error (e.g. maybe an incorrect Adler 32 checksum, or maybe just a malformed data).
This PR stops passing these extra bytes to the decompressor.  These changes the behavior of the png crate (not just the internal behavior, but also the observable behavior - e.g. whether the given input results in errors or not;  and the initial version of the PR meant that some chunking of input could results in errors and some other chunking would succeed).

The latest version of this PR (i.e. https://github.com/image-rs/image-png/commit/4c2e2d1e954fcf0e5907e6c11881f11967b5c5f9) makes the behavior chunking-independent by ensuring that if we started feeding a given IDAT sequence to fdeflate then we will feed all of IDAT payload.  But if we call finish_decoding_image_data without extracting any image data from a given IDAT sequence, then we'll skip the decompressor.  This still changes the behavior (decompressor errors are suppressed in the latter case), but does that in a more predictable way.
WDYT?

In the force push above I am tweaking this PR one more time to explain this errors-ignoring-behavior in a doc comment of next_frame_info (here).  PTAL.  I admit that this behavior looks a bit weird.  But maybe this is all okay.  WDYT?

I think this lack of checking whether the compressed data is valid is unfortunately an unavoidable consequence of not decompressing it.
In the GIF crate this has caused identical issue with detection of frames that contain too many LZW bytes. You just can't know that until you decompress it.

This PR strikes me as kind of messy. It adds state tracking at the level of ReadDecoder which is redundant with what StreamingDecoder already knows. And it uses that state to toggles settings in the underlying StreamingDecoder.
I think part of the issue is that StreamingDecoder is a public API, so we haven't been iterating on its interface. I've got a branch where I've been experimenting with adding an alternative interface that is a more direct mapping to ReadDecoder. (It is still very much WIP, but I think the code is shaping up to be cleaner and the early performance results are also promising)


Filter dead links

It would be nice if there was a method devised that automatically removes dead links...
example link: https://github.com/aquadzn/learn-x-by-doing-y/blob/main/projects.csv#L125 returns the status code 410
Perhaps an action ran every (day/week) and remove lines from the csv file if a request to the endpoint fails?

Maybe it would be better to include a link to the latest internet archive snapshot

Maybe it would be better to include a link to the latest internet archive snapshot

It would be nice if there was a method devised that automatically removes dead links...
example link: https://github.com/aquadzn/learn-x-by-doing-y/blob/main/projects.csv#L125 returns the status code 410
Perhaps an action ran every (day/week) and remove lines from the csv file if a request to the endpoint fails?

https://medium.com/we-are-orb/linear-regression-in-python-without-scikit-learn-50aef4b8d122 is working for me personally
I will try to add a script that checks the response code of the different links.

It would be nice if there was a method devised that automatically removes dead links...
example link: https://github.com/aquadzn/learn-x-by-doing-y/blob/main/projects.csv#L125 returns the status code 410
Perhaps an action ran every (day/week) and remove lines from the csv file if a request to the endpoint fails?

https://medium.com/we-are-orb/linear-regression-in-python-without-scikit-learn-50aef4b8d122 is working for me personally
I will try to add a script that checks the response code of the different links.

Maybe it would be better to include a link to the latest internet archive snapshot as most of the links are mosly text-only

Indeed, so it could be if the link's dead try the archive, if not just remove.

Maybe it would be better to include a link to the latest internet archive snapshot as most of the links are mosly text-only

Indeed, so it could be if the link's dead try the archive, if not just remove.


unbound-anchor fails, claiming file does not exist

Hello! I'm trying to use unbound dns in docker on my windows pc to secure my traffic (using DNSSEC, as I understand it).
My dockerfile looks like:
FROM ubuntu:22.04
RUN apt update
RUN apt install unbound -y
COPY unbound-new.conf /etc/unbound/
RUN mkdir /usr/local/etc/unbound/
RUN unbound-anchor -vvv -a /usr/local/etc/unbound/root.key -c /etc/unbound/unbound-new.conf
ENTRYPOINT [ "unbound", "-vvv", "-dd", "-c", "/etc/unbound/unbound-new.conf" ]

and unbound-new.conf looks like
server:
    do-not-query-localhost: no
    trust-anchor-file: '/usr/local/etc/unbound/root.key'
    qname-minimisation: yes
    interface: <IP_ADDRESS>
    access-control: <IP_ADDRESS>/8 allow
    username: 'root'
    chroot: ''

I seems like this should work. unbound-anchor's man page claims in regards to the key file If the file does not exist, or is empty, a builtin root key is written to it.
When I run the dockerfile build it fails on RUN unbound-anchor ... I get the output:
/usr/local/etc/unbound/root.key does not exist
success: the anchor is ok

I thought unbound-anchor was supposed to create the file? If anyone has any advice it would be great. It's entirely possible I just missed something obvious. Thank you!

Unbound sagt dir einfach nur das er denn root.key file nicht finden kann hier lade ihn mal mit disem befehl runter:
wget https://data.iana.org/root-anchors/root-anchors.xml/root.key -qO- | sudo tee /usr/local/etc/unbound/root.key
I have adapted the installation location for you, you just have to run it on your docker when you have run it, see what it tells you about DNSSEC

That url gives me a 404? https://data.iana.org/root-anchors/root-anchors.xml is a real file but https://data.iana.org/root-anchors/root-anchors.xml/root.key isn't.

this comes from the source where the root files can be found and where you can also get the root.hints the page I am talking about is this: https://www.iana.org/domains/root/files.
All root files are on the page and you can download them with wget if you enter the url. As I have specified the command, you should of course also specify the location where you want it to go so that the achnor can find it.

I'm sorry, I'm confused. I thought unbound-anchor generated the root.key file. I shouldn't need to download that key in that case. Unbound-anchor tells me success: the anchor is ok so I don't think I need to download that file. Does that sound right?

yes I installed Unbound from the sauce here but then I downloaded the root.key from the site on my linux system aka debian and my dnssec worked but it told you yes it can't find the file: /usr/local/etc/unbound/root.key does not exist I mean this part

I was doing the same thing, it looks like the file was created (correctly?) but unbound-anchor failed with nonzero status (which broke docker).

to be honest i never had unbound on docker but as far as i know docker is just a vm where you can create more things like unbound etc so it should still be possible to load the root.key. But according to the wiki I also understood that you can create a file with the command but it never worked for me why I have this from the root side

Yes, so it looks like for some reason, unbound-anchor completes it's action successfully but despite this it returns a non-zero error code (so scripts can use it I guess). To docker's build scripts it looks like this failed, and it breaks everything. So I changed the line to RUN unbound-anchor -vvv -a /usr/local/etc/unbound/root.key -c /etc/unbound/unbound-new.conf || : which causes docker to ignore the "error" (nonzero status code). I think I'm past this error now. Thank you for helping me @Aura67 !


Reorder constraints during unification

We must reorder constraints during unification, e.g. to prevent creating a large disjunction when unifying Maps and Sets. This will require that we implement a traditional unification algorithm.

Look at matchIncremental. The unification algorithm will work like this, but it will use the existing unification cases. Although, these will need to be modified to emit new constraints instead of calling unifyChildren. Instead of MatcherT, we will need a similar monad transformer with LogicT below RWST to allow for branching during unification.

The reason that we originally implemented the top-down unification solver instead of a traditional unification algorithm is that Matching Logic \and corresponds to unification and the top-down solver makes it easy to reconstruct the term which is the unification solution. We can use the traditional algorithm for \in and \equals, which are the bulk of unification problems the backend solves. For \and, we recognize that for function-like patterns A and B, \and(A, B) = \and(A, \in(A, B)) = \and(B, \in(A, B)).

 N |-> N1 </m1>
       <m2>... N1 |-> N2 </m2>
       <m3>... N2 |-> N </m3>

endmodule

You can then reproduce the issue with krun -cPGM="foo(1)"


Fenny: Workflows, 2 weeks

🥚 0. Local Development Without Git
Practice the foundational workflows of software development by learning to write
Markdown locally on your own computer using Visual Studio Code (VSCode), the
Command Line Interface (CLI), and NPM scripts to automate your code's quality
(formatting, linting and spell checking).

[ ] 🥚 Folder Structures: You can explain how files and folders are stored
in your computer and can find, open or create files in your computer
without using the Command Line Interface.
🥚 Command Line Interface (CLI): In a Unix shell you can ...

[x] open a new terminal window
[x] navigate up and down directories using cd
[x] list the contents of a directory using ls
[x] view the contents of a file using cat
[x] create new files using touch
[x] create new folders using mkdir

[x] 🥚 Markdown: You can write a document in Markdown with no syntax
mistakes that renders into a well-formatted document.
🥚 VSCode: You can complete these workflows in VScode, and can use
keyboard shortcuts to complete them all:

[x] Opening a repository in a new window
[x] Opening the VSCode terminal
[x] Adding a new file
[x] Adding a new folder
[x] Deleting a file
[x] Deleting a folder
[x] Previewing a Markdown File
[x] Formatting a Markdown document

[x] 🥚 READMEs: You can write a README file that describes the project you
are working on, why it's helpful, and how someone can use it.
🥚 NPM: You can use NPM commands to verify your code's quality, this
includes ...

[x] using npm install to install a project's dependencies
[x] reading a package.json file to find which scripts are available for
the project
[x] use npm run <script> to execute an npm script

🥚 Formatting Code: You can use Prettier to make sure all the code in your
project is well-formatted:

[x] You can use the Prettier VSCode extension to format a document while you
are writing it
[x] You can use npm run format to format all of the documents in your
project
[x] You can use npm run format:check to make sure all files are
well-formatted

🥚 Linting Code: You can ...

[x] use npm run lint:md to check all Markdown files in your folder for
linting mistakes
[x] you can fix all linting mistakes reported by npm run lint:md

🥚 Spell Check: You can ...

[x] use the Code Spell Checker VSCode extension to correct spelling mistakes
in your Markdown documents while you are writing
[x] use npm run spell-check to check the spelling in all the files of your
project
[x] update .cspell.json to add words that should be allowed in your
project

🥚 File and Folder Naming Conventions: You can ...

[x] identify and follow the naming conventions for the project you are
working on.
[x] use npm run lint:ls to check that all files and folders follow the
project's naming conventions.
[x] you can correct any file and folder names to make them match the project
conventions.

[ ] 🐣 File Extensions: You can identify all of the languages covered at
HYF and give the correct file extension. You don't need to know the
languages, just recognize them.
[ ] 🐣 Touch Typing: You can write a Markdown file without looking at your
keyboard to find any letters, numbers or special characters. (slowly is
ok!)

🥚 1. Local Development With Git
Practice using Git to save and organize your development process. You will learn
how you can use Git to go back to previous versions of your project, and to work
on different changes in parallel.

🥚 Git: Using the CLI you can ...

[x] Initialize a new git repository with git init
[x] stage changes using git add <path>
[x] commit changes using git commit -m <message>
[x] display your repository's git history using git log
[x] create a new branch using git branch <branch-name>
[x] check out a branch using git checkout <branch-name>
[x] create a new branch and check it out using
git checkout -b <branch-name>
[x] merge changes from one branch to another using git merge <branch-name>
[x] return to a previous version of your project with git log and
git checkout <commit-hash>
[ ] stash and retrieve uncommitted changes with git stash and git pop

🥚 .gitignore: You can use a .gitignore file to describe which files
you don't want included in your git history.
🥚 VSCode: You can ...

[x] use the Git Graph extension to to visualize your repo's commit history
[x] use the Git Lens extension to investigate your repository's commit
history
[x] explain how the file tree in VSCode can show you which files have
uncommitted changes

[x] 🥚 Atomic Commits: You can save your development progress using small
commits with clear and helpful message.
[ ] 🐣 Feature Branches: You can organize your development process using
branches. You can create a new branch for each part of your project and
merge those changes to main when they are finished.

🥚 1. Local/Remote Development
Learn how you can connect your local Git repositories with a GitHub repository
to add more structure to your development process and to share your projects.

🥚 Licenses: You can ...

[ ] explain why it's important to include a license for your code on GitHub
[ ] choose a license for your projects that matches how you want others to
use your code

[x] 🥚 GitHub SSH Key: You can connect your computer to your GitHub
account using an SSH key, clone using the SSH link, and push/pull using
your SSH connection.
🥚 GitHub Repositories: You can ...

[x] create new repository on GitHub
[x] write a description for your repository
[x] turn on GitHub Pages
[x] configure your repository to block pushing to main
[x] configure your repository to block merging to main until Continuous
Integration (CI) checks have passed

🥚 Git Remote/Local Connection: You can ...

[x] clone a remote repository to your computer
[x] initialize a new repository locally and connect it to an empty remote
repository
[x] push and pull changes between remote & local branches

[x] 🥚 Pull Requests: You can create a pull request between two branches
in your repository and merge changes without causing any conflicts.
[x] 🥚 PR templates: You can use a PR template to add a checklist to all
of your PRs so you are sure the code is great before merging to main.
[x] 🥚 Continuous Integration: You can use GitHub Actions to check your
code's quality before merging a pull request to the main branch.
[ ] 🐣 Local/Remote Branching Workflow: You can use a branching workflow
that keeps mistakes away from the main branch and prevents conflicts
from happening in GitHub. For each contribution to the project you can ...

Check out a new local branch and write your code
Check out main on your local machine
Pull changes from remote main to local main
Merge changes locally from main to your new branch

Fix any conflicts on your new branch before pushing!

Format and lint your code
Push your new local branch to your remote repository
Open a Pull Request from the new branch to main

Go through the PR's checklist to make sure everything is correct
Make sure all CI checks pass!

Merge your new remote branch to main

You can delete the branch after it's merged if you want to

🐣 3. Remote Collaboration
Learn how to collaborate with a group on a single project hosted in a GitHub
repository. Practice using GitHub's project management features to organize your
group's tasks and to double-check your project's code quality.

[x] 🥚 Contributor Guidelines: Your group can define contributor
guidelines that describes how everyone can add their work to the project.
[x] 🥚 Code of Conduct: Your group can write a code of conduct for your
project that describes how everyone should communicate and what behavior
is considered unproductive.
[x] 🥚 Repository Contributors: You can add group members as collaborators
in a repository.
[x] 🥚 Issue Templates: Your group can use issue templates to make sure
all issues are complete and relevant to the project. in your repository
and merge changes without causing any conflicts.
[x] 🥚 Code Review: You can use the PR Template and CI checks to review
another group member's code before merging it to main.
🐣 GitHub Project Management: You can ...

[x] use issues to define tasks in a group project. Each issue should have a
helpful title, complete description, and helpful labels.
[x] use a Project Board to organize a project's issues
[x] claim issues and track your progress with the project board
[x] link a PR to your claimed issue
[x] assign someone to review your PR
[x] use GitHub code review features to discuss your code with your reviewer

[x] 🐣 Fixing Merge Conflicts: You can fix merge conflicts by selecting
which change to keep, or deciding how to combine them. If a conflict
occurs in a GitHub PR you can pull both branches and fixh the conflict
locally.

🐥 4. Open Source Development
Explore the wider world of Open Source software by learning how communities of
independent developers write and maintain the code we all rely on.

[ ] 🥚 Finding Issues: You can read through an open source project's
issues and determine if there is one you can help with.
[ ] 🐣 Commenting in Issues: You can productively join the conversation in
an open source projects' issues.
[ ] 🐥 Opening Issues: You can open a helpful issue in an open source
repository, following their contributor guidelines and code of conduct.
[ ] 🐔 Contributing: You can create a fork of an open source project and
open a PR that contributes something helpful and follows the Contributor
Guidelines and Code of Conduct.

Week -1 Workflows
Check-In

I Need Help With:
A bit of assurance or evaluation that I have finished the deliveries checklist accordingly, where I have a mistake and how I
can fix it

What went well?

Cloning the class repo and making a branch for student Bio.
Do a series of commands in Git as making a new branch, checkout, commit, push, fetch, pull, git stat, git log, etc.
Fix an issue from my git branch using git push -f origin
Use extensions in VSCode to help me with editing my markdown.
Adding images from the internet.

What went less well?

First several tries of doing PR I encounter an issue during the lint check, it happened over and over without
understanding what really the issue was, and I was stuck the whole day. Only after a call with our coaches explaining
the sequence of what to do regarding a series of npm checking then I am able to pass the lint check and continue with
the PR.
I don't know how to include or attach an image from a local computer to markdown, as it seems I can't find the right
path to paste.

Lessons Learned
It is best to know/evaluate the sequence of what to do for the project, and just found out that my computer is not organize
at all, need to do some house cleaning.

Sunday Prep Work

Re-read the learning objectives and exercises on how to apply it.

@FennyWilriani good that you have managed to solve your issues by following the order of running each command. Keep this good practice 🙂 as for attaching an image, first you should copy that file into the student-bios/assets folder and then you will have an easy task to figure out the path.
my only comment about your deliverable is to always add the correct label to it, so we can find it 🙂

Thank you for your feedback and advice @danielhalasz .. i will for sure apply it on the next project 😁

Week -2 Workflows
Check-In

I Need Help With:
No major problem yet, so far so good 😄

What went well?
Assignment for group went quiet good, in my opinion. few minor correction from Bermart that i already note for the future
project. Still quiet enjoying the flow once you already know how to navigate around the git command. More to explore though.

What went less well?
I still need to learn the technicality of reviewing, merge the request, etc. As the owner of the project.

Lessons Learned

Always pay attention to details.
Dont copy an absolute path for image markdown.

Sunday Prep Work
Reading the next module, Agile Development, and reading more about HTML & CSS.

Me
What was not clear, where did you get stuck?
My bigger frustration was with linting when I did my bio as the individual projects, turns out I was just misunderstanding the instruction given as it was not very clear to me where and when I should do the npm install.
What was clear, what did you master?
Now I can get more confident with Github, from cloning the repo, navigating my way through CLI, editing the markdown in VSCode, pushing the changes until finishing the pull request of one project went well, I think I can adapt fast enough to the technicality of using the necessary software/saas for our project. 👏 👍
Where can you still use some help?
For this module, I was lucky enough to have teammates that are good at the details (where most of the time I can be lack of) and quite proactive, not to mention the great coaches that are there to help with the correction in finishing the project. I think what I need more is practicing as a reviewer and handling pull requests from teammates.
Where can you help others moving forwards?
Just in case other classmates need help with the technicality of how to use the tools we use in HYF and why we use them I can help explain it with my understanding and experience.

The Course
What can there be more of?
I can't really explain it in words but sometimes I can feel a little bit confused in understanding the deliverable instructions 😁
perhaps it's just me that has an issue in digesting the instruction, yet as a beginner, I think it would be really helpful if the instruction is elaborated more.
What can there be less of?
What material was most helpful (from HYF or elsewhere)?

Learn Git branching
First day on Github
w3schools.com
Free code camp

What HYF material was least helpful?
So far nothing is least helpful 💯
Any suggestions for future classes?
Perhaps more time spent with coaches really help especially when we are stuck with issues 😃

I think it would be really helpful if the instruction is elaborated more.

@FennyWilriani thanks for the feedback. where would it help to elaborate on this, in the /guides of the class repo?  We could fill out that document with more instructions and screenshots

@FennyWilriani thanks for the retro! you can also always ask the coaches or me to help out, even through 1-1 short video calls, they are sometimes available and happy to help 🙂


Add builds for different Python versions/OSs

Currently our package is "python version bound" b/c of ScikitLearn (since they are using Cython).
Seems like quite a few people are still using Python 3.5, we might need to add a build step also for that Python version. Also we'll need a Windows CI machine if we want to generate whl files for Windows.
Lets start with adding builds for Python 3.5.

we will add to jenkins conda and other python versions and other cuda versions

See also: https://github.com/dmlc/xgboost/blob/master/Jenkinsfile

Closing in favor of #355 and the windows issue.


[Question]how to deal with the multi-values in one feature?

hi,dear all,
In a feature, I have many values,such as the samples down,
index, feature
1,[pretty,good]
2,[prefect,pretty]
3,[good,wonderful]
4,[pretty,good,wonderful]
5,[perfect,wonderful]
So how to address the problem?
thx

Closing as unrelated to LightGBM. Please ask such questions on StackOverflow or similar resources.
You, for example, can split these lists into separate features(columns).
Or maybe try using word/sentence embeddings to encode the whole list of words at once.

Closing as unrelated to LightGBM. Please ask such questions on StackOverflow or similar resources.
You, for example, can split these lists into separate features(columns).
Or maybe try using word/sentence embeddings to encode the whole list of words at once.

it's a pitty you close the issue,
it's the practical problem in industrial circles, and the rp does not support the utility.

it's a pitty you close the issue,
it's the practical problem in industrial circles, and the rp does not support the utility.

Yeah, I understand that this type of data is quite common. But unfortunately, we cannot handle every general question about ML here due to the need to concentrate on problems with LightGBM.

Yeah, I understand that this type of data is quite common. But unfortunately, we cannot handle every general question about ML here due to the need to concentrate on problems with LightGBM.

The simplest way is to split it to multiple one hot features.

The simplest way is to split it to multiple one hot features.


There is a duplicate active folder under the 'Active and soft deleted blobs' context view after uploading blobs to the folder that contains all files deleted from the folder before it was soft deleted

Storage Explorer Version: 1.27.0-dev
Build Number: 20221103.3
Branch: main
Platform/OS: Windows 10/Linux Ubuntu 22.04/MacOS Ventura 13.0 (Apple M1 Pro)
Architecture: ia32/x64
How Found: Ad-hoc testing
Regression From: Not a regression
Steps to Reproduce

Expand one ADLS Gen2 Storage account -> Blob Containers.
Create a blob container -> Create a folder -> Upload one blob to the folder.
Soft delete the blob -> Soft delete the folder.
Switch to the 'Active and soft deleted blobs' context view.
There is one active folder in the editor -> Open the folder.
Upload one blob to the folder -> Go back to the root.
Check whether there is no duplicate active folder.

Expected Experience
There is no duplicate active folder.
Actual Experience
There is a duplicate active folder.

This is a known service issue. At this point we cannot workaround it for various reasons. Let's make sure the user can access both the active and deleted blobs/directories.


Fix alignment of text and icons in status bar #162995

The current alignment of text and icons in the status bar is not visually appealing. I have made some changes to improve the alignment and make it look more consistent. This pull request includes the necessary changes to achieve this improvement.
issue #162995

Is this still something you plan to work on?

I tried a lot on this for improvement but did not got any efficient solution do i close it.


Java Lambda does not work when debug port enabled

I'm writing my first Lambda, using Java8, triggered via API Gateway. I love the ability SAM Local provides to run and test my code locally. Works great with debugging support disabled, but when I enable a debug port (--debug-port 9999), requests to the local Gateway hang and I am unable to attach a remote debugger from IntelliJ to that port.
I verified that a Docker container was spun up to service the request, and the debug port has been mapped to my host:
CONTAINER ID        IMAGE                   COMMAND                  CREATED             STATUS              PORTS                    NAMES
0c0e5fdc0e7b        lambci/lambda:java8     "/usr/bin/java -agen…"   10 seconds ago      Up 9 seconds        <IP_ADDRESS>:9999->9999/tcp   youthful_williams

I also logged into the Docker container & verified the expected JVM parameters to open the debug port:
bash-4.2$ ps -efww | grep java
496          1     0  0 01:39 ?        00:00:00 /usr/bin/java -agentlib:jdwp=transport=dt_socket,server=y,suspend=y,quiet=y,address=9999

I'm at a loss. Has anyone been able to successfully attach a Java debugger using SAM Local?

User error, I guess. Was unable to attach my debugger to <IP_ADDRESS>:9999 for some reason, used my local ip instead and it worked as expected.


Handle *ast.InterfaceType as any type (no type)

Describe the PR
Handling of interface objects to any type.
rewrite of outdated open PR #884
Relation issue
#850
Additional context
NONE

Conflict fixed.


Startup error

After updating to Paket.Atom 1.0.1 Atom starts up with an error message:
Uncaught Error: spawn C:\Users\agross\.atom\packages/Paket/bin/paket.bootstrapper.exe ENOENT

I'm using Windows and c:\Users\agross\.atom\packages\Paket\bin\paket.bootstrapper.exe exists. Is this a forward slash/backslash issue?

After running the bootstrapper manually, the error disappears.


Remove Margins from FancyZones

📝 Remove Margins from FancyZones
_Have an option to Remove Margins from FancyZones

If you'd like to see this feature implemented, add a 👍 reaction to this post.

Correct me if I'm wrong, but are you asking for this?

I believe they are.

Ahh yes thanks!
On Thu, Apr 8, 2021 at 9:22 AM Matthew Wilmsmeyer @.***>
wrote:

[image: image]
https://user-images.githubusercontent.com/721515/114043409-e06ad900-984b-11eb-90e2-5fd7efe2c837.png
Correct me if I'm wrong, but are you asking for this?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/microsoft/PowerToys/issues/10652#issuecomment-815865938,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ACVHR3FXXZRHXAPNC54NKC3THW32ZANCNFSM42SZDV4A
.

Maybe then have this as a main menu tick box to apply to all existing zones ? I don't think I'll ever want this.
Thanks so much to all devs and team.