MapLayersWidget - sections of background map are not visible around the imodel

We are utilizing the MapLayersWidget to provide a background map in our studio application. When adding this to application we use a classId of "UnifiedSelectionViewportControl2D".
Upon loading an iModel from iModel hub, the map appears blank around the area where our model is centered. Upon zooming out, some parts of the map appear, with clipping appearing in different sections of the map. When zoomed far enough out, we can see a circle of area that is not covered in map.
Expected behavior
For the map to be visible in the area of our iModel.
Screenshots

OS: Windows
Browser : Chrome
iTwin.js Version: 4.4.0-dev.10

@ashar-bentley @FelixGirard

Can you please add to your description steps required for somebody else to reproduce the problem?

The issue happens when the setAllow3dManipulations is set to false
Steps:

Open the heatmap sample that has the following view setting set to false:

line 21:  viewState.setAllow3dManipulations(false);
https://www.itwinjs.org/sandboxes/iTwinPlatform/Heatmap Decorator

Zoom out until you start seeing the background map getting clipped:

Now open my fork of the same sample with line 21 modified to set the value to true:
line 21:  viewState.setAllow3dManipulations(true);
https://www.itwinjs.org/sandboxes/AsharGhani/HeatMapDecoratorWith3D-On
The issue is no longer reproducible:

For some iModels we are seeing a more exacerbated version of this problem, where the problem occurs when fully zoomed in.

@markschlosseratbentley @danieliborra

We'll take a look at it in our next sprint

I don't think there is any masking involved.  This is just a side effect of turning off 3d manipulations.  The only thing you can do there is zoom and the zoom for this mode doesn't take the background map into account, so it is getting clipped by the far frustum plane.

I believe that I have a fix for this.  The basic problem is that the ellipsoid of the earth is not taken into account when zooming in this mode of a 3d file with 3d manipulations and the camera turned off.

A PR for a fix for this has been created here: #7275


Assertion Error reports are truncated to not show the error.

Assertion Error reports are truncated so as to not show the difference between the asserted and actual values.
For example:
AssertionError: {"xfer":{"seq":1,"data":{"resupd":{"tom":"2013-10-15T15:28:23Z","reason":{"code":127,"device":109},"pos":{"tof":"2013-10-15T15:2 deepEqual {"xfer":{"seq":1,"data":{"resupd":{"tom":"2013-10-15T15:28:23Z","reason":{"code":127,"device":109},"pos":{"tof":"2013-10-15T15:2
Is there a way of turning the truncation off?

old

Not an issue with mocha, but rather node's assert:
https://github.com/nodejs/node-v0.x-archive/issues/7538


Deploy to EddieHub Kubernetes cluster using GitHub Actions

Example in http://github.com/eddiejaoude/stargate

Need a fix for using GHPR for building the Docker-Image

I can have a look at this npmrc-Problem when building the image. Is there a way on how to test this without making 100 commits to main?

I can have a look at this npmrc-Problem when building the image

thank you! this is on my list but I did not get round to it yet

Is there a way on how to test this without making 100 commits to main?

Wit could be done in a branch and the Action trigger could be updated temporarily for that branch

Sounds legit.
I'll have a look at this then

Here is an example I am trying, I did a temporary update to the Action trigger https://github.com/EddieHubCommunity/api/pull/115

This was the commit, because now I removed the temporary code, the PR link won't make sense 🤦♂ https://github.com/EddieHubCommunity/api/pull/115/commits/d079a40aa334620324dec7c15e8ee69535d1fe60

I think this is working now isnt it?

Oh yes this is done, thank you, I will close 👍

Consider moving the issue in the project board.


Fix readthedocs config file for generated project

Hello,
When i push my django's project's documentation to ReadTheDocs, i have an issue
Checklist:

[ ] I've made sure that tests are updated accordingly (especially if adding or updating a template option)
[ ] I've updated the documentation or confirm that my change doesn't require any updates

Rationale
I adapted the instructions in the CookieCutter-Django project readthedoc.yml file to match the template

Thanks!


Label suggestion

hacktoberfest-accepted

@Nimit1428 this is too specific and I am not interested in adding it to issuehub. However you can always find issues tagged with the hacktoberfest-label by tweaking the label param e.g. http://issuehub.io/?label[]=hacktoberfest-accepted


feat(v2): add unique page/wrapper className to each theme pages

Motivation
It's issued in #4322  that you can't style a page wrapped by a layout component immediately, thus you have to add another wrapper component to put a style around the page itself.
It would be better if we can style the layout component immediately, and by adding another className prop into the layout component, we can achieve this pretty easily.
By adding a constant, called ThemeClassNames which contains the page and wrapper class names for every page in docusaurus-theme-classic (for now), we can organize the theme class names much more concise.
I've added ThemeClassNames.ts in docusaurus-theme-common which contains the stuff that I've described before, and I applied it in all the pages in docusaurus-theme-classic which are:

[x] BlogListPage
[x] BlogPostPage
[x] BlogTagsListPage
[x] BlogTagsPostPage
[x] DocPage
[x] MDXPage

Have you read the Contributing Guidelines on pull requests?
Yes.
Test Plan
(Write your test plan here. If you changed any code, please provide us with clear instructions on how you verified your changes work. Bonus points for screenshots and videos!)
Related PRs
(If this PR adds or changes functionality, please take some time to update the docs at https://github.com/facebook/docusaurus, and link to your PR here.)

Thanks, that looks nice
We need:

the same for all doc pages (not just blog pages)
the same for "wrappers" like "blog-wrapper" / "docs-wrapper" etc (keep it retrocompatible, just add missing wrappers + move names to ThemeClassNames.wrappers)
maybe find a way to document this? (not sure where, try to suggest  a good place if you think about one)

Thanks, just resolved the issues, just making sure the pages that I have to change are:

Blog Pages, which includes (BlogListPage, BlogPostPage, BlogTagsListPage, BlogTagsPostPage)
DocPage
MDXPage

I have also added the wrapperClassName constants in docusaurus-theme-common and applied it to the previous pages.
Apparently, the wrapperClassName in MDXPage is passed by props, so I'm not quite sure if I should change that or not. So, for right now I'm leaving it be.
Other than that, all left is adding the documentation regarding this change, apparently I have no clue regarding where to add this topic in the docs, do you have any hints?

For MDX pages the wrapper can be set with frontmatter, but a solution could be to do something like:
      wrapperClassName={wrapperClassName ?? ThemeClassNames.wrappers.mdxPages}>

That looks fine, just added some comments.
You can probably add a section here: https://docusaurus.io/docs/styling-layout
To ensure that the doc remains up to date, you can maybe just display ThemeClassNames file content in a code block? (copy what I did here: https://docusaurus.io/docs/i18n/crowdin#example-configuration)
Also what about adding a comment to ThemeClassNames to describe the purpose of this? (having stable classnames shared by all themes and meant to be targeted by custom CSS)

Thank you for the comments & reviews. I have resolved all of the reviews that were given. I have added the documentation under the Global Styles section in which I explained briefly about the purpose of the Theme Class Names but now how and where to use them, do I need to explain them too?
Also about this:
Also what about adding a comment to ThemeClassNames to describe the purpose of this? (having stable classnames shared by all themes and meant to be targeted by custom CSS)

Do you mean adding a comment in the code file or in the documentation page?

thanks 👍


Redundand #ifdef TOOLS_ENABLED in VisualScriptEditor.cpp

Godot version:
3.2 master
In VisualScriptEditor.cpp
https://github.com/godotengine/godot/blob/680bcb1ef45c67da1b58ff3be84ca5e4fd1e40cf/modules/visual_script/visual_script_editor.cpp#L46
and
https://github.com/godotengine/godot/blob/680bcb1ef45c67da1b58ff3be84ca5e4fd1e40cf/modules/visual_script/visual_script_editor.cpp#L1919
and https://github.com/godotengine/godot/blob/680bcb1ef45c67da1b58ff3be84ca5e4fd1e40cf/modules/visual_script/visual_script_editor.cpp#L2459

I don't think https://github.com/godotengine/godot/blob/680bcb1ef45c67da1b58ff3be84ca5e4fd1e40cf/modules/visual_script/visual_script_editor.cpp#L46 is redundant. (Also, removing that makes the build fail with tools=no)
I made a PR removing the inner ones.

I would like to point out that this is an editor-specific class, and in such circumstances it should not even be added to compilation. I think the SCons file for that module needs to be changed.

@Zylann Thanks for pointing out! I don't know why TOOLS_ENABLED was added then in https://github.com/godotengine/godot/issues/6022


Investigate Detected overflow in native logger

Related to https://gradle.slack.com/archives/C0WTFHWT1/p1618124196122000
Appears regularly, searching Slack I see:

Apr 19, 2021 10:46:43 AM net.rubygrapefruit.platform.internal.jni.NativeLogger log
INFO: Detected overflow for /Users/lorinc/IdeaProjects/dotcom

https://gradle.slack.com/archives/C03A0MT6S/p1617742738187800?thread_ts=1617317203.149000&cid=C03A0MT6S
https://gradle.slack.com/archives/C09LZKUCB/p1619014298003400?thread_ts=1618970464.001600&cid=C09LZKUCB
https://gradle.slack.com/archives/C0WTFHWT1/p1615276741042000

cc: @gradle/execution

Let's close this and re-open when we see this again.

We found this issue while investigating strange time differences between TC build time and what DV showed as build time.
It turns out to be this error, causing stdout logs to grow to over 200MB.
In the linked issue, there are a few, recent, examples of the error.
@wolfs @lptr

This is curious. The code emitting the log message is this:
https://github.com/gradle/gradle-fileevents/blob/c1f9aba9cc9f70b282f5c1850b1bb948ce25d1b4/src/main/cpp/generic_fsnotifier.cpp#L37
void AbstractServer::reportOverflow(JNIEnv* env, const u16string& path) {
    logToJava(LogLevel::INFO, "Detected overflow for %s", utf16ToUtf8String(path).c_str());
    jstring javaPath = env->NewString((jchar*) path.c_str(), (jsize) path.length());
    env->CallVoidMethod(watcherCallback.get(), watcherReportOverflowMethod, javaPath);
    env->DeleteLocalRef(javaPath);
    getJavaExceptionAndPrintStacktrace(env);
}

The LogLevel::INFO is ours, and it should get mapped to java.util.logging's Level.INFO here:
https://github.com/gradle/gradle-fileevents/blob/8a378f97e20f97a09e3ab6676d7eaa2154cd41e9/src/main/java/org/gradle/fileevents/internal/NativeLogger.java#L11-L35
Which in turn then gets mapped to... I'm not entirely sure what, probably here:
https://github.com/gradle/gradle/blob/eeaaa1a450e2641c887eda2c80ede27338c372f6/platforms/core-runtime/logging/src/main/java/org/gradle/internal/logging/source/JavaUtilLoggingSystem.java#L34-L48
And by default, unless --info is specified, these INFO logs should never get to stdout. Yet it seems at least some of the time they do... 🤔

To rule out JUL to SLF4J bridging problems, I put the following in a build.gradle.kts and ran gradle help:
println("Hello from println!")
java.util.logging.Logger.getLogger("main").info("Hello from info log!")
java.util.logging.Logger.getLogger("main").warning("Hello from warning log!")

As expected, it printed the following:
Hello from println!
Hello from warning log!

So I think logging with INFO via JUL works just fine. My suspicion is that the problem is somewhere on the native side, i.e. we are actually not calling JUL with INFO, but with something else here:
LOGGER.log(LogLevel.values()[level].getLevel(), message);

The lookup doesn't fail, because then we'd be calling LOGGER.log() with a null level, which would throw. So we know one of the valid values for level are passed in, but I strongly suspect it is not corresponding to LogLevel.INFO... 🤔

Hm, we actually see the logged levels on the console for each log message when running tests:
18:40:25.844  FINE    Event flags: 0x11000 (ID 428988109) for '/private/var/folders/mt/w8xt125171b77qvh3q10jhd00000gn/T/spock_can_set_log_level_b_1_tmpDir17679547430312204778/can set log level by #action/root/changed.txt'
18:40:27.582  INFO    Event queue overflow, dropping all events
18:40:27.584  SEVERE  Couldn't queue event: OVERFLOW (EVENT_QUEUE) at null
18:40:27.620  INFO    Event queue overflow, dropping all events
18:40:27.620  SEVERE  Couldn't queue event: OVERFLOW (EVENT_QUEUE) at null
18:40:27.620  SEVERE  Couldn't queue event: TERMINATE

Etc. These are all correct. So if the messages logged at LogLevel::INFO actually get logged to JUL as Level.INFO, and the translation between JUL Level.INFO messages actually get handled as SLF4J Level.INFO messages in Gradle's bridging, then... where does this thing get printed?

I looked at the logs from an actual build in TeamCity that did produce 300 MB+ of logs on the console. It's full of messages like this:
[14:36:23]W:	 [Step 8/15] INFO: Detected overflow for /home/tcagent1/agent/work/3ca4d96b62d7bc0e/perfetto-proto/build/protos/perfetto-43.2/src/traced/probes/ftrace/test/data/android_flounder_lte_LRX16F_3.10.40/events/nvmap/nvmap_pin
[14:36:23]W:	 [Step 8/15] Oct 09, 2024 12:31:19 PM net.rubygrapefruit.platform.internal.jni.NativeLogger log
[14:36:23]W:	 [Step 8/15] INFO: Detected overflow for /home/tcagent1/agent/work/3ca4d96b62d7bc0e/gradle/plugins/keycloak-theme/build/classes/kotlin/main/gradle/kotlin/dsl/accessors
[14:36:23]W:	 [Step 8/15] Oct 09, 2024 12:31:19 PM net.rubygrapefruit.platform.internal.jni.NativeLogger log
[14:36:23]W:	 [Step 8/15] INFO: Detected overflow for /home/tcagent1/agent/work/3ca4d96b62d7bc0e/app-lib-object-storage-googlecloud/build/classes/groovy/test/com/gradle
[14:36:23]W:	 [Step 8/15] Oct 09, 2024 12:31:19 PM net.rubygrapefruit.platform.internal.jni.NativeLogger log

I think the first W: means "warning" by TeamCity, meaining the message came from stderr. Then there are two kinds of lines, the first says the name of the logger (...NativeLogger) and the method being called (log), the second prints the actual message.
This is a weird format that gave me an idea. What if there's a logging.properties file on the plugin classpath for this particular build, and it configures JUL messages to go to stderr?

I think the solution should be to use SLF4J for logging. It's a simple change, and the only reason we used JUL in the first place was to avoid adding a new dependency to native-platform. But the code now lives in its own repository, and is Gradle-internal, so we can easily do the switch.

Here we go:

https://github.com/gradle/gradle-fileevents/issues/20


When hitting enter on the organiser edit field it should initialise the AutoSuggest field

Reassigning to @Coenego for review.

Coverage remained the same at 100.0% when pulling b3856b4c8d7ffd1eddca3df706040d6c96f4f148 on bp323:issue-195 into ed815a6ca13d8798d3568000ab722c74127eeb90 on CUL-DigitalServices:master.


Load variant annotation data from Cancer Genome Interpreter

See https://www.cancergenomeinterpreter.org/biomarkers, a CC0 licensed database.  Perhaps to be aligned with the CIVIC bot? cc @andrawaag

@andrawaag @andrewsu @sebotic
I sketched out a single example to use to discuss a few things. This is only one example and there will be other issues with other entries....
There's no way to link to a single entry, so ho here: https://www.cancergenomeinterpreter.org/biomarkers and type "BRCA1 deletion" in the "Biomaker" box.
The data from the tsv file download is below:

Alteration
Alteration type
Assay type
Association
Biomarker
Curator
Drug
Drug family
Drug full name
Drug status
Evidence level
Gene
Metastatic Tumor Type
Primary Tumor acronym
Source
Targeting
individual_mutation
transcript
gene
strand
region
info
cDNA
gDNA
Primary Tumor type

BRCA1:del
CNA

Responsive
BRCA1 deletion
RDientsmann
[]
[PARP inhibitor]
PARP inhibitors

Pre-clinical
BRCA1

OV
PMID:22392482

Ovary

Sometimes a drug family is specified, not a drug. So we need to be able to normalize all of these drug families. There are 116 unique drug family strings. I think most can be matched up to
ChEBI by hand (example: PARP Inhibitors). We also need to be able to handle dual/multiple inhibitors (e.g. PI3K & MEK inhibitors ).

I'm not sure how to handle the evidence. CGI gives an "Evidence level", which may be one of the following: Pre-clinical, Early trials, Case report, FDA guidelines, European LeukemiaNet guidelines, NCCN guidelines, Late trials, CPIC guidelines, Clinical trial. In civic, this is a little more detailed because the evidence is specifically about the claim made by the evidence, but this is information about the source itself, and so I think it makes sense to put it on "stated in"'s item.

Thoughts?

Had a look at the therapies. There are combo therapies in there where just one of the compounds actually targets the mutated oncogene, but it's only obvious to the expert which one it is. Maybe it can be looked up in the original ref.
Strangely, they often use drug family, but the reference only states very specific compounds.

Strangely, they often use drug family, but the reference only states very specific compounds.

@sebotic Which did you look at that did this?

yes, extracting it manually from the referenced publication might work in many cases.

Notes:
This is not documented (I don't think), but when multiple drugs are listed semicolon-separated, it means they are used in combination (e.g. Dasatinib;Venetoclax PMID:27582059), and when listed comma-separated it means used separately (e.g. " [EPZ-005687,EPZ-6438]" PMID:24563539)

Here I'm looking at normalization of the Alteration type in CGI. Since we have many Sequence Ontology concepts in Wikidata already and @andrawaag has done mappings from CiVIC, I started with mapping them to SO. If I couldn't find anything, I've listed a NCI methathesaurus mapping. But I think we want to stick with SO, so unless anyone else finds better mappings, I'll ask the SO people.
There are 5 listed: MUT, CNA, FUS, EXPR, BIA.

CGI
Description
SO
SO Label
Description
Notes

MUT
Somatic mutations
http://purl.obolibrary.org/obo/NCIT_C18060
Somatic Mutation
Any mutation with an origin in cells that are not destined to become gametes.
somatic_variant ?

CNA
deletion or amplification (copy number alteration?)
?
?
Could be deletion or amplification. May need to ask SO people

FUS
fusion
http://purl.obolibrary.org/obo/SO_0001882
feature_fusion
A sequence variant, caused by an alteration of the genomic sequence, where a deletion fuses genomic features.

EXPR
overexpression or underexpression
http://purl.obolibrary.org/obo/SO_0001540
level_of_transcript_variant
A sequence variant which alters the level of a transcript

BIA
biallelic inactivation
http://purl.obolibrary.org/obo/NCIT_C129829
Biallelic Mutation
A mutation that occurs on both alleles of a single gene.

Mapping of "Primary Tumor type" to DO. Again because we have DO in Wikidata, and to stay consistent with how civic variants are represented in Wikidata.

CGI
DO

Chronic myeloid leukemia
http://purl.obolibrary.org/obo/DOID_8552

Lung adenocarcinoma
http://purl.obolibrary.org/obo/DOID_3910

Gastrointestinal stromal
http://purl.obolibrary.org/obo/DOID_9253

Medulloblastoma
http://purl.obolibrary.org/obo/DOID_0050902

Thyroid carcinoma
http://purl.obolibrary.org/obo/DOID_3963

Myelofibrosis
http://purl.obolibrary.org/obo/DOID_4971

Stomach
http://purl.obolibrary.org/obo/DOID_10534

Non-small cell lung
http://purl.obolibrary.org/obo/DOID_3908

Cutaneous melanoma
http://purl.obolibrary.org/obo/DOID_8923

Acute promyelocytic leukemia
http://purl.obolibrary.org/obo/DOID_0060318

Systemic mastocytosis
http://purl.obolibrary.org/obo/DOID_349

Colorectal adenocarcinoma
http://purl.obolibrary.org/obo/DOID_0050861

Erdheim-Chester histiocytosis

Myelodisplasic proliferative syndrome

Acute myeloid leukemia
http://purl.obolibrary.org/obo/DOID_9119

Breast
http://purl.obolibrary.org/obo/DOID_1612

Any cancer type
http://purl.obolibrary.org/obo/DOID_162

Lagerhans cell histiocytosis
http://purl.obolibrary.org/obo/DOID_2571

Myelodisplasic syndrome

Ovary
http://purl.obolibrary.org/obo/DOID_2394

Giant cell astrocytoma

Renal angiomyolipoma
http://purl.obolibrary.org/obo/DOID_8411

Gastroesophageal junction adenocarcinoma

Hyper eosinophilic advanced snydrome

Acute lymphoblastic leukemia
http://purl.obolibrary.org/obo/DOID_9952

Basal cell carcinoma
http://purl.obolibrary.org/obo/DOID_2513

Eosinophilic chronic leukemia

Lung
http://purl.obolibrary.org/obo/DOID_1324

For mapping of drugs, mapped all drugs to Wikidata QIDs. Will make separate comment for drug combinations.

Drug Name
QID
Pubchem CID

4ohtestosterone
Q4637157
160615

abemaciclib
Q27074101
46220502

abiraterone
Q321431
132971

ado-trastuzumab emtansine
Q3997863

afatinib
Q4688818
10184653

ag-120
Q18881245

ag-221
Q27077182
89683805

alectinib
Q21099132
49806720

amiloride
Q419995
16231

anastrozole
Q419143
2187

ar42
Q27276699
6918848

arn-509
Q21098975
24872560

arsenic trioxide
Q7739
261004

atezolizumab
Q20707748

axitinib
Q4830631
6450551

azd5363
Q27074756
25227436

azd6738
Q27896182
121596701

belinostat
Q4882925
6918638

bendamustine
Q425745
65628

bevacizumab
Q413299
135329020

bicalutamide
Q1988832
2375

bortezomib
Q419319
387447

bosutinib
Q894611
5328940

byl719
Q27074391
56649450

cabozantinib
Q795057
25102847

capecitabine
Q420207
60953

cediranib
Q5057052
9933475

ceritinib
Q21011233
57379345

cetuximab
Q420296

cisplatin
Q412415

cobimetinib
Q15708292
16222096

crenolanib
Q5184160
10366136

crizotinib
Q5186964
11626560

dabrafenib
Q3011604
44462760

dacomitinib
Q17130597
11511120

dasatinib
Q419940
3062316

daunorubicin
Q411659
30323

decitabine
Q1181878
451668

docetaxel
Q420436
148124

dovitinib
Q27077102
9886808

doxorubicin
Q18936
31703

entrectinib
Q25323953
25141092

entrictinib
Q25323953
25141092

enzalutamide
Q1996756
15951529

enzastaurin
Q5381479
176167

epz-005687
Q27077206
60160561

epz-5676
Q27088395

epz-6438
Q27088941
66558664

erlotinib
Q418369
176870

everolimus
Q421052
6442177

exemestane
Q418819
60198

flourouracil
Q238512
3385

flutamide
Q418669
3397

fluvestrant
Q5508491
104741

foretinib
Q5469311
42642645

foretinib
Q5469311
42642645

fulvestrant
Q5508491
104741

gdc-0810
Q27272746
56941241

gefitinib
Q417824
123631

gemcitabine
Q414143
60750

gsk2141795
Q27089099
51042438

hm61713
Q27088175
54758501

ibrutinib
Q5984881
24821094

ilorasertib
Q27265085
46207586

imatinib
Q177094
5291

irinotecan
Q412197
60838

lapatinib
Q420323
208908

lee011
Q27088552
44631912

lenalidomide
Q425681
216326

lestaurtinib
Q6531771
126565

letrozole
Q194974
3902

liposomal doxorubicin
Q29004943

lucitanib
Q27082198
25031915

mercaptopurine
Q418529
667490

midostaurin
Q6842945
9829523

mitomycin c
Q19856779
5746

mk-1775
Q27074716
24856436

mk2206
Q25100065
24964624

mytomycin c
Q19856779
5746

neratinib
Q6995920
9915743

nilotinib
Q412327
644241

nimotuzumab
Q3877039

nintedanib
Q15149723
9809715

nivolumab
Q7041828

octreotide
Q27088142
383414

olaparib
Q7083106
23725625

onalespib
Q27287092
11955716

orterone
Q6581305
9883029

osimertinib
Q21506464
71496458

paclitaxel
Q423762
36314

palbociclib
Q15269707
5330286

panitumumab
Q417775

pazopanib
Q7157043
10113978

pd-0332991
Q15269707
5330286

pembrolizumab
Q13896859

pertuzumab
Q1998021

phenformin
Q753100
8249

plx3397
Q27088306
25151352

plx4720
Q27088418
24180719

pomalidomide
Q7227206
134780

ponatinib
Q198728
24826799

pramlintide
Q2062094
70691388

quizartinib
Q7272714
24889392

regorafenib
Q3891664
11167602

rociletinib
Q27088606
57335384

rucaparib
Q7376558
9931954

ruxolitinib
Q7383611
25126798

selumetinib
Q7448840
10127622

sirolimus
Q32089
5284616

sorafenib
Q421136
216239

sunitinib
Q417542
5329102

tamoxifen
Q412178
2733526

tegafur
Q413370
5386

temozolomide
Q425088
5394

tensirolimus
Q7699074
6918289

thioguanine
Q27895847
91669166

tipifarnib
Q7808830
159324

trametinib
Q7833138
11707110

trastuzumab
Q412616

tretinoin
Q29417
444795

u0126
Q7863562
5354033

vandetanib
Q7914515
3081361

veliparib
Q7919041
11960529

vemurafenib
Q423111
42611257

venetoclax
Q23671272
49846579

verapamil
Q410291
2520

vinblastine
Q282629
241903

vismodegib
Q2070286
24776445

volasertib
Q7939986

vorinostat
Q905901
5311

These are listed as drugs also. but should be either a drug family or treatment: lhrh analogues or antagonist, bcl2 inhibitor, chk1/2 inhibitor, anthracyclines, platinum agent, hsp90 inhibitor, chemotherapy, mek inhibitor

Drug  Combinations
The drug combinations listed where both are actual drugs (and not drug families): We can make combination items like this: https://www.wikidata.org/wiki/Q3836750
There are 39 of these, and there are currently none in Wikidata. Some may be present in other databases, but I haven't checked yet.
There are others where one or both is a drug family or treatment (chemotherapy). Not sure how to treat these:

Everolimus;Trastuzumab;Chemotherapy
MEK inhibitor;Docetaxel
Trastuzumab;Everolimus;Chemotherapy
Irinotecan;CHK1/2 inhibitor
Trastuzumab;HSP90 inhibitor
Decitabine;BCL2 inhibitor
Tensirolimus;Chemotherapy
Sorafenib;MEK inhibitor
Gemcitabine;MEK inhibitor
Lapatinib;Chemotherapy

Evidence Levels and Sources
These evidence levels have journal articles (specified by PMID) or clinical trials (specified by NCIT) as the sources

Pre-clinical: journal articles
Early trials: journal articles or clinical trial IDs (Phase I/II)
Case report: journal articles
Late trials: journal articles  (Phase III/IV)
Clinical trial: journal articles

Guidelines
For these evidence levels, some have PMIDs listed, most just have "FDA" or "NCCN" listed.
FDA guidelines: PMID:24670165, PMID:24327273, PMID:27283860, PMID:22417203, PMID:19726763, PMID:19726761, PMID:20065189, PMID:22025146, FDA
https://www.fda.gov/drugs/scienceresearch/researchareas/pharmacogenetics/ucm083378.htm
NCCN guidelines: PMID:21562040, PMID:26287849, PMID:20921461, PMID:24024839;PMID:20619739;PMID:23325582, NCCN, FDA
https://www.nccn.org/professionals/physician_gls/f_guidelines.asp
European LeukemiaNet guidelines: PMID:21562040 (only this one)
CPIC guidelines: PMID:23988873 (only this one)
NCCN/CAP guidelines: NCCN (only one item)
Plan of action
Wait until we work out the evidence levels in Civic before tackling the non-guideline items. Will create items for FDA and NCCN guidelines, and use this as the determination method.


Use Node@16 for Tests

So it turns out that there was no PNPM version set for tests and it wanted node@14 (PNPM v6 works with node@12 according to the compatibility chart: https://pnpm.io/installation#compatibility )
Then vitest wanted node@16.
Not sure if we should also set the required node version for the module to 16 also, as it works fine with node@12, or if we should only set tests to use node@16
Regardless, this PR will fix the tests

We can set it to node v18 again if you want, in Stremio we currently use node v14, we are trying to be careful with node updates due to DEP0005 which causes a breaking change. We still have 387 matches for the use of Buffer() (our engine was initially created on node@4) and there is no automated way of handling the transition to the new Buffer API
I am usually more in favor of setting the required Node.js version to what the module itself actually requires to function correctly instead of LTS. With that said, the minimum required Node.js version only gives a warning on install, not an error, so there is no harm in setting it to LTS either
I will make another PR reverting to node@18 and you can choose which of the two PRs you prefer merging

Here is the alternative PR: https://github.com/doom-fish/rar-stream/pull/32

I am giving up on this PR, because it seems that although node@12 will run the module just fine, usingnode@12 or node@14 will not run the typescript build on npm install.
So our choices are realistically just node@16 and node@18, which would work to both install the module and run the tests.
It may be best to just revert back to using node@18 because (as you mentioned) it is also the last supported node LTS.
The PR to revert is at: https://github.com/doom-fish/rar-stream/pull/32


node.js Profile usage?

Hello! I'm having trouble figuring out how to get Profiles working when using node.js. Given this example:
const automapper = require('automapper-ts');
const Person = require('./Person');
const OtherPerson = require('./OtherPerson');

class PeopleProfile extends automapper.Profile {
    constructor() {
        super();
        this.profileName = 'PeopleProfile';
    }

    configure() {
        this.createMap('Person', 'OtherPerson')
            .forMember('otherName', opts => opts.mapFrom('name'))
            .forMember('otherAge', opts => opts.mapFrom('age'));
    }
}

I am getting the following error: TypeError: Class extends value undefined is not a constructor or null. Which sounds like Profile is not being exported? Can anyone point out what I'm doing wrong?

We are seeing the same thing when trying to use this in a front-end angular app.

It seems this is also the case in the browser as well.


Results has one item when it should not, until you access results then there's 0

Expected Results
Accessing count/isEmpty for Results should be correct
Actual Results
Very strangely, count is 1 and isEmpty is false when there's no results, until you access it by printing the results for example, at which point count is 0 and isEmpty is true as expected
Steps for others to Reproduce
I don't have a sample project that replicates it, just our real app. Wonder if you have any ideas before trying to create a demo.
Code Sample
//property
private var markers: Results<Marker>?

//in viewDidLoad
markers = realm?.objects(Marker.self).filter("ANY songs.id = %@", newSong.id).sorted(by: [SortDescriptor(keyPath: "time"), SortDescriptor(keyPath: "createdAt", ascending: false)])

//later on in response to the user tapping a button
if let markers = markers {
    print(markers.isEmpty)
    print(markers.count)
    print(markers)
    print(markers.isEmpty)
    print(markers.count)
}

This prints the following:
false
1
Results<Marker> <0x7feb3e02a410> (

)
true
0

If I access the markers by printing them first then isEmpty and count are correct.
print(markers)
print(markers.isEmpty)
print(markers.count)

Prints:
Results<Marker> <0x7fc2636297a0> (

)
true
0

Note that everything is running on the main thread, nothing should be modifying the markers, there shouldn't be any markers in the results at any point here. We haven't changed this code for a while, we upgraded from 4.3.2 to 5.3.3 and now are encountering this. Let me know if any other info would be helpful.
Version of Realm and Tooling
Realm framework version: 5.3.3
Realm Object Server version: ?
Xcode version: 11.6
iOS/OSX version: iOS 13.6
Dependency manager + version: CocoaPods 1.9.3

@hipwelljo

we upgraded from 4.3.2 to 5.3.3
Do you ever notice this happen with realm files created after 4.x, or does this only occur on files created before 4.x that were subsequently upgraded to 5?

This occurs with realm files created with 5.3.3 - confirmed by deleting the app and reinstalling.

Note that it doesn't happen every time. It does seem to occur every time the current song changes (which affects the filter, so the property is set again) though, even though both songs have 0 markers.

It sounds like the problem is that when calling count() on a freshly created Results which matches no objects you're incorrectly getting 1, but you get the correct count as long as you've ever accessed the objects in the Results? We do have separate code paths for those two cases (count() on a newly constructed Results directly runs the query and counts the number of matches without building a result set, while if you've done anything that requires building the result set we just return the size of that), so it sounds like there's a bug in the query count function.
I haven't had any luck with trying to reproduce this, so more information might help. Since it's a query bug, the data models in use and an example of the actual data for an object would help ensure that I'm at least trying the right things.

Yes that sounds correct. I'm attempting to replicate it in a sample project but haven't had luck either yet.

This issue has been automatically closed because there has been no response to our request for more information from the original author. With only the information that is currently in the issue, we don't have enough information to take action. Please reach out if you have or find the answers we need so that we can investigate further.


npm rebuild fails (lifecycleScripts/clean should not delete lifecycleScripts!)

After successfully running npm install --save nodegit, a subsequent npm rebuild yields:
><EMAIL_ADDRESS>install /Users/michael/whatever/node_modules/nodegit
> node lifecycleScripts/install

module.js:340
    throw err;
          ^
Error: Cannot find module '/Users/michael/whatever/node_modules/nodegit/lifecycleScripts/install'
    at Function.Module._resolveFilename (module.js:338:15)
    at Function.Module._load (module.js:280:25)
    at Function.Module.runMain (module.js:497:10)
    at startup (node.js:119:16)
    at node.js:935:3

Probably because the install script deletes the lifecycleScripts directory!
https://github.com/nodegit/nodegit/blob/0841799b5d3fe0627aa3c741d65069de6e1798fa/lifecycleScripts/clean.js#L46

This is already fixed in master. Waiting for one or two other bugs before publishing.

Ah, gotcha – sorry, I didn't look at package.json in master.
That line is still in the clean script though – does it make sense that it should delete itself?

Yeah, I'd think so. The point of that scripts is like a true "kill everything unneeded" deal for maximizing space savings, assuming a completed install. even without, a rebuild will fail (several of the node modules used for installation are removed since theyre not needed for runtime). I'm more tempted to delete the script entirely, since everyone seems to have varying expectations.


Fix validation error when specifying multiple metrics

This fixes an issue where the loop iterator variable for queries references the last specified MetricStat in the case of multiple metrics. The issue is evident in the following ExternalMetric:
apiVersion: metrics.aws/v1alpha1
kind: ExternalMetric
metadata:
  creationTimestamp: null
  name: rds-db-test
  namespace: default
spec:
  name: rds-db-test
  queries:
  - id: rds_db_test
    metricStat:
      metric:
        dimensions:
        - name: DBInstanceIdentifier
          value: foobar
        metricName: CPUUtilization
        namespace: AWS/RDS
      period: 600
      stat: Average
      unit: Percent
    returnData: false
  - expression: AVG(METRICS())
    id: rds_db_avg_test
    returnData: true
  resource:
    resource: deployment

This produces the following error:
kubectl get --raw "/apis/external.metrics.k8s.io/v1beta1/namespaces/default/rds-db-test"
Error from server (BadRequest): InvalidParameter: 3 validation error(s) found.
- minimum field value of 1, GetMetricDataInput.MetricDataQueries[0].MetricStat.Period.
- minimum field size of 1, GetMetricDataInput.MetricDataQueries[0].MetricStat.Metric.MetricName.
- minimum field size of 1, GetMetricDataInput.MetricDataQueries[0].MetricStat.Metric.Namespace.

This can also be replicated locally with the following program:
package main

import (
	"flag"
	"fmt"
	"log"

	"github.com/awslabs/k8s-cloudwatch-adapter/pkg/aws"
	"github.com/awslabs/k8s-cloudwatch-adapter/pkg/config"
)

func main() {
	flag.Parse()
	c := aws.NewCloudWatchClient()
	queries := []config.MetricDataQuery{
		{
			ID: "rds_db_test",
			MetricStat: config.MetricStat{
				Metric: config.Metric{
					Dimensions: []config.Dimension{
						{
							Name:  "DBInstanceIdentifier",
							Value: "foobar",
						},
					},
					MetricName: "CPUUtilization",
					Namespace:  "AWS/RDS",
				},
				Period: 600,
				Stat:   "Average",
				Unit:   "Percent",
			},
			ReturnData: false,
		},
		{
			ID:         "rds_db_avg_test",
			Expression: "AVG(METRICS())",
			ReturnData: true,
		},
	}
	r, err := c.Query(queries)
	if err != nil {
		log.Fatal(err)
	}
	fmt.Println(r)
}

Running this produces the following validation error without the fix:
E0807 13:22:22.033542   18945 client.go:98] err: InvalidParameter: 3 validation error(s) found.
- minimum field value of 1, GetMetricDataInput.MetricDataQueries[0].MetricStat.Period.
- minimum field size of 1, GetMetricDataInput.MetricDataQueries[0].MetricStat.Metric.MetricName.
- minimum field size of 1, GetMetricDataInput.MetricDataQueries[0].MetricStat.Metric.Namespace.

The fix allows it to run as expected without any error.
Description of changes:

Data is copied when looping over queries (q := q)
The loop is refactored to remove redundant logic when handling expressions.

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

Hmmm, I've built and deployed a version of k8s-cloudwatch-adapter with this fix and am still getting the same errors, so this needs further investigation...

Looking into this further I found and fixed where duplicate logic needed to be updated: the adapter now works as expected in the cluster.
@chankh would it make sense to re-use the MetricSeriesSpec struct as the type for MetricsDiscoveryConfig.Series?  We can then de-duplicate the query construction logic.


Error: Can't resolve all parameters for URLHandler: (?).

Version: 1.0.140
Platform: darwin 20.5.0
Plugins: terminus-clickable-links

Fixed in clickable-links v3.0.0

It's working fine with clickable-links v3.0.1

Same problem with clickable ip plugin with terminus 141 can you make an update for this specific plugin?

I've submitted a PR but the plugin author hasn't reacted. The latest update to the official clickable-links plugin now includes support for IPs.


Traces update k8s instrumentation

Purpose of this pull request
This PR updates guide how to instrument K8s objects using Sumo Logic Kubernetes Collection with OpenTelemetry Operator.
Select the type of change:

[ ] Minor Changes - Typos, formatting, slight revisions
[x] Update Content - Revisions and updating sections
[ ] New Content - New features, sections, pages, tutorials
[ ] Site and Tools - Updates, maintenance, and new packages for the site, Gatsby, React, etc

To see the specific tasks where the Asana app for GitHub is being used, see below:

https://app.asana.com/0/0/1203238071291656

Do we mention that .net part is in beta ?

@pbrzoska-sumo In the last commit I've added information about .Net instrumentation and mentioned in the note below it's beta.


docs: Website doesn't support relative links

The solution we use to host our docs doesn't support relative links, for instance, a link such as https://github.com/inspektor-gadget/inspektor-gadget/blob/v0.22.0/docs/architecture.md?plain=1#L85 in https://inspektor-gadget.io/docs/v0.22.0/architecture/#ig points to https://inspektor-gadget.io/docs/v0.22.0/pkg/gadgets/ and gives a 404.
In other places, we use the absolute links, but it's not good as it'll point to the incorrect branch, for instance, the benchmark tests link in https://inspektor-gadget.io/docs/v0.22.0/ci/#benchmarks points to https://github.com/inspektor-gadget/inspektor-gadget/blob/main/internal/benchmarks/benchmarks_test.go instead of pointing to the specific v0.22.0 tag of that version.
Ref https://github.com/inspektor-gadget/inspektor-gadget/pull/2212#discussion_r1406261416

This is fixed by #3496. We can now use the %IG_TAG% or %IG_BRANCH% to point to correct version of things.


Textarea autoresize

Textarea autoresize is not working anymore. Hiddendiv class does not solve the issue.

Also I've noticed that the custom attribute md-char-counter is not rendered on textarea element.
Any thoughts?

Textarea autoresize is not working anymore. Hiddendiv class does not solve the issue.

That's a bug in Materialize 0.98.2 which will be resolved next Materielize release.

Also I've noticed that the custom attribute md-char-counter is not rendered on textarea element.

I thought I had merged that.. 😃
I'll take a look.

Hmm md-char-counter on a textfield works in the catalog app: http://aurelia-ui-toolkits.github.io/demo-materialize/#/samples/input-character-counter

Perfect, thanks!
Yesterday when testing and consulting the samples, then input-character-counter did not work when md-text-area="true" was set. Now it works.

Maybe because I updated yesterday.. 😏


Set JS scripts to "strict mode"

Set the JS files to "strict mode":
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Strict_mode#strict_mode_for_scripts

For the backend, there is no problem.
For the frontend, I don't know if all browser supports the strict mode nowadays. So the client script may remain in sloppy mode

From the link above:

Browsers not supporting strict mode will run strict mode code with different behavior from browsers that do, so don't rely on strict mode without feature-testing for support for the relevant aspects of strict mode.

Still interested in seeing if there is a way to get around this... seems like there would be a way to hide a key via frontend... any suggestions?

Hi Lexie,
I made a few researches since the other day.
It appears pretty clear you can't reliably protect an API key used from
the front-end. There are obfuscation techniques that may prevent the key
to obviously appear in the code. But someone decided to steal your
credential can always capture them at run-time when the application
issue its requests.
I stared writing a blog article on the subject:
https://github.com/YesIKnowIT/Blog/blob/2022/keep-you-secret-secret/2022/keep-you-secret-secret/article.adoc
(early draft)
On 15/07/2022 00:55, Lexie Crawford wrote:

Still interested in seeing if there is a way to get around this... seems
like there would be a way to hide a key via frontend... any suggestions?
—
Reply to this email directly, view it on GitHub
https://github.com/lexcraw4d/BonVoyage22/issues/11#issuecomment-1184969061,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAMZ47UYOF5MKSESAGE6U73VUCLG5ANCNFSM5X3NYAVQ.
You are receiving this because you authored the thread.Message ID:
@.***>

Awesome I tried accessing the doc but it doesn't open. That's a bummer I wonder why Google created it with front end snippets like that. Retag your doc here if you can!


mac-21 is dead.

Type of Request
bug
Infrastructure Environment
LUCI, Github, Cocoon scheduler, Autosubmit, etc...
What is happening?
mac-21 is dead.

Steps to reproduce
Step 1:
Step 2:
..
Step n:
Expected results
I expect to see X when Y is finished.

mac-21 is up and running fine, I can login remotely from my end.
flutter@flutter-devicelab-mac-21 ~ % uptime
9:23  up 13:08, 3 users, load averages: 1.73 1.71 1.62

mac-21 is out of sync with the Salt master, ran command "salt-call state.apply" to re-sync with Salt master again.


TypeError: Cannot read property 'kind' of undefined

I get the following:
TypeError: Cannot read property 'kind' of undefined
    at /Users/rolandjitsu/Projects/infarm/dashboard/node_modules/codelyzer/selectorNameBase.js:79:50
    at Array.forEach (native)
    at SelectorNameValidatorWalker.validateSelector (/Users/rolandjitsu/Projects/infarm/dashboard/node_modules/codelyzer/selectorNameBase.js:77:18)
    at SelectorNameValidatorWalker.validateDecorator (/Users/rolandjitsu/Projects/infarm/dashboard/node_modules/codelyzer/selectorNameBase.js:70:18)
    at Array.forEach (native)
    at SelectorNameValidatorWalker.visitClassDeclaration (/Users/rolandjitsu/Projects/infarm/dashboard/node_modules/codelyzer/selectorNameBase.js:58:33)
    at SelectorNameValidatorWalker.SyntaxWalker.visitNode (/Users/rolandjitsu/Projects/infarm/dashboard/node_modules/tslint/lib/language/walker/syntaxWalker.js:264:22)
    at /Users/rolandjitsu/Projects/infarm/dashboard/node_modules/tslint/lib/language/walker/syntaxWalker.js:459:63
    at visitEachNode (/Users/rolandjitsu/Projects/infarm/dashboard/node_modules/typescript/lib/typescript.js:8247:30)
    at Object.forEachChild (/Users/rolandjitsu/Projects/infarm/dashboard/node_modules/typescript/lib/typescript.js:8405:24)
    at SelectorNameValidatorWalker.SyntaxWalker.walkChildren (/Users/rolandjitsu/Projects/infarm/dashboard/node_modules/tslint/lib/language/walker/syntaxWalker.js:459:12)
    at SelectorNameValidatorWalker.SyntaxWalker.visitBlock (/Users/rolandjitsu/Projects/infarm/dashboard/node_modules/tslint/lib/language/walker/syntaxWalker.js:28:14)
    at SelectorNameValidatorWalker.SyntaxWalker.visitNode (/Users/rolandjitsu/Projects/infarm/dashboard/node_modules/tslint/lib/language/walker/syntaxWalker.js:249:22)
    at /Users/rolandjitsu/Projects/infarm/dashboard/node_modules/tslint/lib/language/walker/syntaxWalker.js:459:63
    at visitNode (/Users/rolandjitsu/Projects/infarm/dashboard/node_modules/typescript/lib/typescript.js:8235:20)
    at Object.forEachChild (/Users/rolandjitsu/Projects/infarm/dashboard/node_modules/typescript/lib/typescript.js:8323:21)

I'm using:

codelyzer: 0.0.28
tslint: 3.15.1
ts-node: 1.3.0
typescript: 2.0.2

Can I see a code snippet of the file you are running codelyzer on?

@preslavsh Unfortunately I run it on probably around 200+ TS files, so I am not sure where it fails. Also, due to an NDA, I am not allowed to disclose any code. And the error does not seem to provide any clue which file that may be.

At least I can tell you that the following rules cause that error:
{
    "component-selector-name": [true, "kebab-case"],
    "directive-selector-type": [true, "attribute"],
    "component-selector-type": [true, "element"],
    "directive-selector-prefix": [true, "infarm"],
    "component-selector-prefix": [true, "infarm"]
}

I have created PR for that, but it's only a smart guess.

Ok, so it boils down to this:
private static createComponent(selector: string, template: string): any {
	@Component({selector, template})
	class DynamicComponent {}
	return DynamicComponent;
}

I have a service that creates dynamic modules/components.

The following does not throw:
@Component({selector: selector, template: template})

But then I get errors for the shorthand rule:
(object-literal-shorthand) app/shared/component-builder/type-builder.service.ts[15, 15]: Expected property shorthand in object literal.
(object-literal-shorthand) app/shared/component-builder/type-builder.service.ts[15, 35]: Expected property shorthand in object literal.

@rolandjitsu thanks for digging into this! With the information you provided we should be able to fix it in by a day or two.

@mgechev no worries, @preslavsh pointed me in the right direction.

@rolandjitsu I will not publish to npm in the next a couple of days. I'm planning a bigger release which includes template support.


Ignore install folder in git

In case one would like to install the project in a dedicated "install" folder within the project root. This commit ignores the folder in git.

closed because not needed


Js linter config updates

Introduces .eslintrc and .jscsrc files for explicitly configuring javascript linters.   Also sets up some helpful starter rules, which invite refinement.
Adds a few new npm commands for autofixing javascript linting errors.

the linter and the jscs config are at the package.json, I like the fix option.

Oh duh.   Ok, I'll drop the config files and keep the fix commands.


Laravel 5.6 update?

Are there any plans to update to laravel 5.6?

Great news guys, Laravel 5.6 support was just introduced.
https://docs.getcraftable.com/v2/#/upgrade-guide?id=upgrade-laravel-55-gt-56
Thanks a lot for your patience.


Development

Changed the code according to PEP 8.

Indentation
Space before/after equal signs in expressions
Space around boolean expressions
Usage of 80 character column width

Added validation and output to the pull request

Added some user feedback and comments. Changed the order of the download section to "download first then process". This way the processing only starts when all files are downloaded.


Conduct User Testing for Bilingual Information Architecture in Figma

Objective: To gather user feedback and insights on our information architecture models for our bilingual (English and French) Figma file. The focus is on assessing usability, navigation, and user experience in both languages.

Unprioritized for now. Staying in the backlog when its going to be time to assess the new Information architecture the team will have landed on and deployed @dylanzheng94

Test is done and results are in. Needs review to plan any action items.


Prevent ToolbarItem click from firing twice

Description
Fixes issue with Toggle Item firing Click event twice, bug reported here:
https://github.com/radix-ui/primitives/issues/1525
This PR was based into another related issue reported back in january
https://github.com/radix-ui/primitives/pull/1157
The PR follows same principle, creating an scoped preventing multiple click event to be triggered, also i've added a Unit test to ensure the Click gets called just once.

I'm seeing that Version / check (pull_request) step is failing - but i don't know how to make it pass, i see that i need to generate a release version but in the Contributing Guidelines don't have any on how to achieve this. How can i generate release files?

They do have a bit about it, but it's not super clear:

You also need to inform Yarn workspaces that a particular package has changed for proper versioning. Run yarn version check -i to mark the appropriate type of change for those packages.

You can make the change a patch, you might have to re-run the check too to "decline" the top-level package.
🙏

I don't know why but yarn version is getting stuck.
This command takes so long? Been running for minutes... Maybe something wrong because im using mac m1
Gonna try into another computer

I was having trouble to generate version with m1, might be some issue with the command, it was freezing the cmd
Solved at windows :P

@benoitgrelard could you approve the workflows please? :D

Thanks for your contribution!


setting resourcemethod parameter for body

This is the custom resource method I have added. I am passing the worksheet param which is a object expecting it to be passed as body of the request but its being passed against a key name 'worksheet' in the body.
How do I make the worksheet param as body of the request.
    @ResourceAction({
        method: RequestMethod.Put,
        isArray: false,
        path: '/{!:warriorId}/worksheet/{!:qstnSet}/{!:startDate}'
    })
    updateWorksheet: ResourceMethod<{ warriorId: number, startDate: number, qstnSet: string, worksheet: IWorksheet }, IWorksheet>;

Don't very clear from the documentation.

Hello. For now it's not possible to do that.
I will think about the solution.

I've made something special for you.
Please update the lib to ver 1.9.0
Now it's possible to create methods with split path params and body. In your case you can use it like that:
@ResourceAction({
  method: RequestMethod.Put,
  //isArray: false, by default it's false
  path: '/{!:warriorId}/worksheet/{!:qstnSet}/{!:startDate}'
})
updateWorksheet: ResourceMethodStrict<IWorksheet, { warriorId: number, startDate: number, qstnSet: string}, IWorksheet>;

@troyanskiy thanks for this exactly what I was looking for. Much cleaner and legible.


Where in code can we set the γ , λ and β ?

Hello. Just curious where in code can I set these parameters?

γ :  --temp
λ：--weight-pl
β：--beta


scope assignmens override + flatten all

Automation for azure-sdk-for-go

Can one of the admins verify this patch?


Fix #77 - DiagnosticReadinessPacket.isOBDModule() is wrong.

DiagnosticReadinessPacket is a super class for both the DM5 and DM26 packets.
In determining if a monitor is supported, the method isOBDModule() is used.  This looked at the value in the third byte of the DM5 message. But when calculated using a DM26 packet, the value returned from the method was wrong.  Actually it would only be wrong if the value in the third byte of a DM26 was 0x05 of 0xFF.
So isOBDModule() is fixed to return true if the packet is a DM26 packet or (DM5 and the the value is not 0x05 or 0xFF)
Additionally, I cleaned up the tests.  Since DiagnosticReadinessPacket is a super class for the DM5 and DM26 packets, I also made the DiagnosticReadnessPacketTest as super class for the DM5 and DM26 packet tests.  This allowed for removing duplicate tests.  The case "test0xFFWith0x05AsThirdByte()" in the DM26 Tests ensures this bug has been fixed.

Not a bug, but a style question.
Instead of this:
private boolean isDM26() {
        return this instanceof DM26TripDiagnosticReadinessPacket;
    }

Shouldn't you just have
    protected boolean isDM26() {
        return false;
    }

And in DM26TripDiagnosticReadinessPacket, override with true?


fix typo in Croatian translation

Description

[x] I have read and understand the CONTRIBUTING.md document in this repository

Type of change

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

Checklist:

[ ] I have added tests that prove my fix is effective or that my feature works
[x] Existing test suite passes locally with my changes
[ ] I have made corresponding changes to the documentation

Nice catch, thanks for the contribution 👍


Move the Add-In menu

Is it possible to move the Add-In menu to the end after reports.  When user go to RTC it load the Bulk Mover UI instead of defaulting to the Project Area Dashboard.

@innerjoin
We're facing this issue, too when using the extension on WebSphere Application Server.
In our dev environment we're running a WebSphere Liberty Server and there we do not see this issue. The Add-Ons menu entry on this server is been put at the end.

This is weird. I always thought that this is a Jetty only issue because there are other spots where Jetty behaves differently as well... So I guess it all comes down at which time the Add-ons plugin is activated.
If we can find out the identifier of the plugin which provides the standard RTC menu, we could at this identifier to the Add-on manifest to ensure the plugins are activated in the right order.
@MartinBenninger You have already looked at how the work item menu is built. Can you find out what it'a identifier is?

This issue was linked by RTC Work Item 684932 on behalf of<EMAIL_ADDRESS>

@arejay73 @daytalker
Please have a look at the Menu Provider in WIBM 1.4.4. It contains a new dependency entry in the MANIFEST.MF file that should fix this issue.
Thank you @MartinBenninger for searching the respective plugin for me 🥇

It seems not to be working, so I'm opening this issue again...
@arejay73 @daytalker I think I can't do anything here, so you should open a Case (former PMR) at IBM.

@arejay73 @daytalker
Have you guys opened a Case (PMR) for this? If not, shall I?

Hi Lukas,
I did not open a PMR as we’re going forward with liberty.
We’ve installed it already on our qual instance and there the location of the Add-On menu is correctly.
Current plan is to upgrade pro instances at the end of December.
Greetings,
Simon

Simon Eickelhttp://intranet.rsint.net/live/rs/rsphonebook/rsphonebookhuman/show.php3?id=47735&nocontainer=1&_language=dents\_PRIVATE
6DSE Software Development Tools and Methodshttp://intranet.rsint.net/live/rs/intranet/rsdisplay,id,326,nodeid,326,p,0,_language,de,psappurl,_p_2Flive_p_2Frs_p_2Frsfunction_p_2Fshow.php3_p_3Fid_p_3D5841_p_26nodeid_p_3D5841_p_26_language_p_3Dde_p_26_psmand_p_3D100.html
Phone: +49 89 4129 12183
Fax: +49 89 4129 62183
Email<EMAIL_ADDRESS>
Rohde & Schwarz GmbH & Co. KG
Muehldorfstrasse 15 | 81671 Munich
Internet: www.rohde-schwarz.com
Geschäftsführung / Executive Board: Christian Leicher (Chairman), Peter Riedel
Sitz der Gesellschaft / Company‘s Place of Business: Munich | Registereintrag / Commercial Register No.: HRA 16 270
Persönlich haftender Gesellschafter / Personally Liable Partner: RUSEG Verwaltungs-GmbH | Sitz der Gesellschaft / Company‘s
Place of Business: Munich | Registereintrag / Commercial Register No.: HRB 7 534 | Umsatzsteuer-Identifikationsnummer
(USt-IdNr.) / VAT Identification No.: DE 130 256 683 | Elektro-Altgeräte Register (EAR) / WEEE Register No.: DE 240 437 86
From: Lukas Steiger<EMAIL_ADDRESS>Sent: Saturday, December 1, 2018 7:31 PM
To: jazz-community/rtc-workitem-bulk-mover-ui<EMAIL_ADDRESS>Cc: Eickel Simon 6DSE<EMAIL_ADDRESS>Mention<EMAIL_ADDRESS>Subject: EXT [Newsletter] Re: [jazz-community/rtc-workitem-bulk-mover-ui] Move the Add-In menu (#17)
@arejay73https://github.com/arejay73 @daytalkerhttps://github.com/daytalker
Have you guys opened a Case (PMR) for this? If not, shall I?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/jazz-community/rtc-workitem-bulk-mover-ui/issues/17#issuecomment-443447486, or mute the threadhttps://github.com/notifications/unsubscribe-auth/APAHPj2ghDFm2Zw1Z1-lHHdHol381qWOks5u0srRgaJpZM4VWnIN.
Content provided within this e-mail including any attachments, is for the use of the intended recipients and may contain Rohde & Schwarz company restricted information. Any unauthorized use, disclosure, or distribution of this communication in whole or in part is strictly prohibited. If you are not the intended recipient, please notify the sender by reply email or by telephone and delete the communication in its entirety.


i made the file look nicer

npnp (pls take this as a joke)

oh heck i cant delete prs.

no thanks :)


plugins/auth-backend: couple of backend fixes needed to make auth work e2e

@freben yeah was about to start doing that change but didn't wanna collide too much with raghu's work :grin:


change ValueError to warnings.warn for nchannel not in {1,3,4}

Seems many image stacks may have different number of channels.  Also seems that the transformations will work no matter the number of channels.  I found this minor change useful when working with 20 channel images.  I think the only problem (although I haven't looked very deeply) is that now a ValueError will be raised in "array_to_img" if the transformed images are being saved to disk.  I can add a ValueError further upstream triggered if the "save_to_dir" keyword is not None.  This seems to work fine though for "live augmentation" feed to a network.

I see the tests are checking for ValueError for malformed image data .... wondering if there is a way to test that a warning was generated ... my assumptions about the transformations were that if they work for 1,3, or 4 dimensions they should work for N-dimensions. Anyhow, willing to update the tests if anyone thinks this is a good idea.  Otherwise, happy to just keep it in my local branch too.


fix: added fallback when no data passed to message handler

Sometimes event.data seems to get null.

@Snuffleupagus Year I'd like believe this never happen. But actually this occurred in our project few times (not many). I couldn't reproduce it and determine what is the case. It might begin to occur from<EMAIL_ADDRESS>Here is actual bug report from bugsnag (bug tracker).

Most errors occurred on Chrome on android.

Most likely the actual problem is elsewhere in the code-base

This code seems to not be available from public api and we don't use it directly. Do you have any idea about the case?
Thanks.

Here is actual bug report from bugsnag (bug tracker).

It's really difficult to tell from just a screen-shot, but it looks like maybe you're using a minified build of the PDF.js library?
If so, I'd suggest using the "regular" builds instead and see if the issue persists. Generally though, without a test-case I'm sorry to say that I don't think it's a good idea to make the changes suggests here.
(There's been other issues, see e.g. #11941, which suggests that there may be some issues with minified builds.)

@Snuffleupagus Yes, we use minified pdf worker, and I don't think the case is minifying. I think the case is that message event without data is sent from worker by some reason. It is obvious that error occurred at comparison between data.targetName and this.sourceName (Source mapping is working correctly).

[...] and I don't think the case is minifying.

Rather than assuming that it's unrelated, as mentioned in https://github.com/mozilla/pdf.js/pull/12091#issuecomment-657437119 please actually test with a "regular" build instead (i.e. using pdf.js/pdf.worker.js files).

I think the case is that message event without data is sent from worker by some reason.

Again, that shouldn't actually be happening (and it's quite frankly difficult to see how/where that'd occur, without a test-case).

I agree with the analysis above that this should never happen and if it does, it should be fixed at the source instead, so this is not a fix we can consider without clear steps to reproduce the issue and a reason for why it can only be addressed here and not at the source.


Right side panel is not displaying properly

This is a Bug Report

Problem:
[Install and Set Up kubectl on Linux] page layout is collapsed.
Right side layout is displaced to down.
Proposed Solution:
Right side layout should be in place.
Page to Update:
https://kubernetes.io/docs/tasks/tools/install-kubectl-linux/#install-kubectl-binary-with-curl-on-linux

Additional Information:

/language en
/area web-development

@dipesh-rawat (or any maintainers) Can i get some hint and go ahead to work on this please?

It appears that the changes in https://github.com/kubernetes/website/pull/42913 have inadvertently resulted in the layout of page broken. Potentially addressing https://github.com/kubernetes/website/pull/42913#discussion_r1336990733 could solve it.

We should fix the layout of the page.
/triage accepted
/priority backlog

/retitle Page layout for "Install and Set Up kubectl on Linux" is broken

/remove-area web-development
This is more of a content fix.


memcached?

is there anyway to add memcached to this code the ram is dying

Hello @Turkisec , I think it is not possible to add a memory cache system inside this code (PHP), because if we stop to think, we will see that this library, it downloads an external video and executes it in the internal memory of the server.
If it was an internal video, the server wouldn't need to download the external video, but in the end, the same memory size would be used.
Think of it as if you were playing the movie Avatar 2 (4k blu-ray) on your computer that only has 2GB of ram, a Pentium 4 processor and an 80GB hard drive.
Obviously, your computer will have problems playing the video, even more so if you try to open the same video simultaneously (which could cause the blue screen of windows).
Unless you are referring to cache memory, in order to prevent this code from downloading an external video every time it is executed.
Then yes, in this case we can think of a solution capable of downloading an external video and keeping it for a while on the HD/SSD of the server, so that when another user opens the same video, the server does not need to download it from an external URL.
But even so, the server would spend the same amount of memory in the end.
In my case, I'm running my own library on a 1 vCPU, 1GB / 25GB Disk (SSD) server at Digital Ocean. My videos are hosted within the Amazon S3 platform. And they have 1080p quality, and the heaviest video is 400MB.
For now I have few users (less than 10), but as the platform grows, it is very likely that I will have a server with more than 4 vCPU, 8GB / 100GB Disk (SSD).
What is your server configuration? Or from the local machine you are trying to open the video from? And what are the characteristics of the video?


Trigger model structure and doc

010   market
011   limit (price = limit price)
020   stop-loss (price = stop loss price)
021   stop-loss-limit (price = stop loss trigger price, value = triggered limit price)
022   stop-loss-profit (price = stop loss price, value = take profit price)
023   stop-loss-profit-limit (price = stop loss price, value = take profit price)
024   stop-loss-and-limit (price = stop loss price, value = limit price)
030   take-profit (price = take profit price)
031   take-profit-limit (price = take profit trigger price, value = triggered limit price)
040   trailing-stop (price = trailing stop offset)
041   trailing-stop-limit (price = trailing stop offset, value = triggered limit offset)
050   OCO
110 market margin
111 limit margin
120 stop-loss margin
150 OCO margin

merged by push


Implicity setting of converted type is missing then setting

Describe the bug

Parquet converted type is not set implicitly then logical type is set to timestamp.
To Reproduce

Write a parquet file with a 64Bit Integer primitive array column and logical type timestamp of milliseconds. Inspecting the output reveals missing converted type. Code snippet declaring the primitive array with the erroneous behaviour:
Type::primitive_type_builder(name, PhysicalType::INT64)
            .with_logical_type(Some(LogicalType::Timestamp {
                is_adjusted_to_u_t_c: false,
                unit: precision_to_time_unit(self.precision),
            }))
            .with_repetition(self.repetition)
            .build()
            .unwrap()

Expected behavior

According to the documentation here the converted type is supposed to be populated automatically then setting the logical type. https://docs.rs/parquet/latest/parquet/schema/types/struct.PrimitiveTypeBuilder.html#method.with_logical_type
Additional context

This problem occured in upstream odbc2parquet then users queried DATETIME columns from a Microsoft Database. If a consumer of the written parquet file relies on the converted type, it is empty. See this issue: https://github.com/pacman82/odbc2parquet/issues/284

The PrimitiveTypeBuilder shoudl add the converted type automatically when applicable - https://github.com/apache/arrow-rs/blob/master/parquet/src/schema/types.rs#L307.
However, according to the format docs.

TIME_MILLIS is the deprecated ConvertedType counterpart of a TIME logical type that is UTC normalized and has MILLIS precision. Like the logical type counterpart, it must annotate an int32.
TIME_MICROS is the deprecated ConvertedType counterpart of a TIME logical type that is UTC normalized and has MICROS precision. Like the logical type counterpart, it must annotate an int64.

Are any of the following possible:

The time unit is nanoseconds
The timeunit is milliseconds but being written as Int64
The timeunit is microseconds but being written as Int32

Hello @tustvold ,
thank you for your feedback and the quick repsonse. I suspect that it is the third option. I'll go check the code of odbc2parquet and will report back here.
Best, Markus

Seems like it is the third option. Thank you again. Fine with me to close this issue.

Here is a minimal reproducing example:
use parquet::{
    basic::{LogicalType, Repetition},
    data_type::{DataType, Int32Type},
    format::{MilliSeconds, TimeUnit},
    schema::types::Type,
};

fn main() {
    Type::primitive_type_builder("field_name", Int32Type::get_physical_type())
        .with_logical_type(Some(LogicalType::Timestamp {
            is_adjusted_to_u_t_c: false,
            unit: TimeUnit::MILLIS(MilliSeconds {}),
        }))
        .with_repetition(Repetition::OPTIONAL)
        .build()
        .unwrap();
}

It works if I exchange the type for Int64Type but then I run into the original issue of the converted type being off.

I am happy to post this example into a new issue, if it helps or reopening this one.

Oh I got confused, parquet has TIME and TIMESTAMP :facepalm:

TIMESTAMP_MILLIS is the deprecated ConvertedType counterpart of a TIMESTAMP logical type that is UTC normalized and has MILLIS precision. Like the logical type counterpart, it must annotate an int64.
TIMESTAMP_MICROS is the deprecated ConvertedType counterpart of a TIMESTAMP logical type that is UTC normalized and has MICROS precision. Like the logical type counterpart, it must annotate an int64.

So they should both be Int64.
Taking a step back, the following test passes so I am not sure how to reproduce your issue
#[test]
fn test_timestamp() {
    let t= Type::primitive_type_builder("foo", PhysicalType::INT64)
        .with_logical_type(Some(LogicalType::Timestamp {
            is_adjusted_to_u_t_c: false,
            unit: TimeUnit::MICROS(MicroSeconds {}),
        }))
        .with_repetition(Repetition::OPTIONAL)
        .build()
        .unwrap();
    assert_eq!(t.get_basic_info().converted_type, ConvertedType::TIMESTAMP_MICROS);

    let t= Type::primitive_type_builder("foo", PhysicalType::INT64)
        .with_logical_type(Some(LogicalType::Timestamp {
            is_adjusted_to_u_t_c: false,
            unit: TimeUnit::MILLIS(MilliSeconds {}),
        }))
        .with_repetition(Repetition::OPTIONAL)
        .build()
        .unwrap();
    assert_eq!(t.get_basic_info().converted_type, ConvertedType::TIMESTAMP_MILLIS);
}

To reproduce try creating a file and inspect it with parquet tools. I am not surprised to see this test pass, as it failed for me even if I set the converted type explicitly.

I'm not sure what I am doing wrong here
#[test]
    fn test_timestamp_round_trip() {
        let mut data = Vec::with_capacity(1024);
        let field = Arc::new(
            types::Type::primitive_type_builder("col1", Type::INT64)
                .with_logical_type(Some(LogicalType::Timestamp {
                    is_adjusted_to_u_t_c: false,
                    unit: TimeUnit::MICROS(MicroSeconds {}),
                }))
                .with_repetition(Repetition::REQUIRED)
                .build()
                .unwrap(),
        );
        let schema = Arc::new(
            types::Type::group_type_builder("schema")
                .with_fields(&mut vec![field.clone()])
                .build()
                .unwrap(),
        );

        let props = Arc::new(WriterProperties::builder().build());
        let mut writer =
            SerializedFileWriter::new(&mut data, schema.clone(), props).unwrap();
        let mut row_group_writer = writer.next_row_group().unwrap();
        let mut column_writer = row_group_writer.next_column().unwrap().unwrap();
        column_writer
            .typed::<Int64Type>()
            .write_batch(&[1, 2, 3, 4], None, None)
            .unwrap();
        column_writer.close().unwrap();
        row_group_writer.close().unwrap();
        writer.close().unwrap();

        let bytes = Bytes::from(data);
        let reader = SerializedFileReader::new(bytes).unwrap();
        assert_eq!(reader.metadata().file_metadata().schema(), schema.as_ref())
    }
```cccccchdviitcbjieuttjinuietjbtufibvefdvgbbbd

Great test. I am very sorry. I should have been much clearer how to reproduce the symptom I am seeing. I did take your test, but modified it to write it into an acutal file called tmp.par.
std::fs::write("tmp.par", data).unwrap();
// let bytes = bytes::Bytes::from(data);
// let reader = SerializedFileReader::new(bytes).unwrap();

// assert_eq!(reader.metadata().file_metadata().schema(), schema.as_ref());
// assert_eq!(
//     reader.metadata().file_metadata().schema().get_fields()[0]
//         .get_basic_info()
//         .converted_type(),
//     ConvertedType::TIMESTAMP_MICROS
// );

Now if insepecting the file with parquet tools:
pip install parquet-tools
parquet-tools inspect tmp.par

It yields
serialized_size: 143

############ Columns ############
col1

############ Column(col1) ############
name: col1
path: col1
max_definition_level: 0
max_repetition_level: 0
physical_type: INT64
logical_type: Timestamp(isAdjustedToUTC=false, timeUnit=microseconds, is_from_converted_type=false, force_set_converted_type=false)
converted_type (legacy): NONE
compression: UNCOMPRESSED (space_saved: 0%)

It is very interessting to see the parquet reader implementations disagree here. In context the issue occurred that timestamps outputed by odbc2parquet can not interpreted by Azure Data Lake anymore, since migrating to logical types.
Thanks for your help so far, and sorry for not being clearer in the beginning. I typed some of these into a phone, which made me error on the site of briefety.
Best, Markus

@tustvold Would you prefer I would open a new bug ticket for this and leaving this one closed? My initial assumption that it is not set in the parquet metadata is falsified by the test you have written. Still the converted type does not show up in the written file, at least according to parquet-tools. Could it be that the parquet crate is inferring the converted-type from the logic type then reading the file, but of course an older reader relying on the converted type being actually written in the file could not do that? Just a guess on my side.

Could it be that the parquet crate is inferring the converted-type from the logic type

This is definitely possible, looking at the code it will use the same type builder that will set the type. However, the following test passes
#[test]
    fn test_writes_converted_type() {
        use crate::format::{MicroSeconds, FileMetaData, TimeUnit};
        let mut data = Vec::with_capacity(1024);
        let logical_type = LogicalType::Timestamp {
            is_adjusted_to_u_t_c: false,
            unit: TimeUnit::MICROS(MicroSeconds {}),
        };
        let field = Arc::new(
            types::Type::primitive_type_builder("col1", Type::INT64)
                .with_logical_type(Some(logical_type.clone()))
                .with_repetition(Repetition::REQUIRED)
                .build()
                .unwrap(),
        );
        assert_eq!(
            field.get_basic_info().converted_type(),
            ConvertedType::TIMESTAMP_MICROS
        );
        let schema = Arc::new(
            types::Type::group_type_builder("schema")
                .with_fields(&mut vec![field.clone()])
                .build()
                .unwrap(),
        );

        // Write data
        let props = Arc::new(WriterProperties::builder().build());
        let mut writer =
            SerializedFileWriter::new(&mut data, schema.clone(), props).unwrap();
        let mut row_group_writer = writer.next_row_group().unwrap();
        let mut column_writer = row_group_writer.next_column().unwrap().unwrap();
        column_writer
            .typed::<Int64Type>()
            .write_batch(&[1, 2, 3, 4], None, None)
            .unwrap();
        column_writer.close().unwrap();
        row_group_writer.close().unwrap();
        writer.close().unwrap();

        // Must read footer manually as default logic automatically infers
        let footer = data[data.len() - 8..].try_into().unwrap();
        let metadata_len = crate::file::footer::decode_footer(footer).unwrap();
        let metadata = &data[data.len() - 8 - metadata_len..data.len() - 8];
        let mut prot = TCompactInputProtocol::new(metadata);
        let t_file_metadata = FileMetaData::read_from_in_protocol(&mut prot).unwrap();
        assert_eq!(t_file_metadata.schema.len(), 2);

        let element = &t_file_metadata.schema[1];
        assert_eq!(&element.name, "col1");
        let actual = ConvertedType::try_from(element.converted_type).unwrap();
        assert_eq!(actual, ConvertedType::TIMESTAMP_MICROS);
        let actual = LogicalType::from(element.logical_type.clone().unwrap());
        assert_eq!(actual, logical_type);
    }

Would you prefer I would open a new bug ticket for this and leaving this one closed

If you could that would be grand, I'm struggling to understand what is going on


Localization of Standard OSX Menu Items

Is your feature request related to a problem? Please describe.
The Standard OSX Menu Items are in english given by magic values like

https://github.com/AvaloniaUI/Avalonia/blob/973791f9504c82bb32174a94239a66c0036d5af6/src/Avalonia.Native/AvaloniaNativeMenuExporter.cs#L98
https://github.com/AvaloniaUI/Avalonia/blob/973791f9504c82bb32174a94239a66c0036d5af6/src/Avalonia.Native/AvaloniaNativeMenuExporter.cs#L105
https://github.com/AvaloniaUI/Avalonia/blob/973791f9504c82bb32174a94239a66c0036d5af6/src/Avalonia.Native/AvaloniaNativeMenuExporter.cs#L117
https://github.com/AvaloniaUI/Avalonia/blob/973791f9504c82bb32174a94239a66c0036d5af6/src/Avalonia.Native/AvaloniaNativeMenuExporter.cs#L127
https://github.com/AvaloniaUI/Avalonia/blob/973791f9504c82bb32174a94239a66c0036d5af6/src/Avalonia.Native/AvaloniaNativeMenuExporter.cs#L137

Describe the solution you'd like
There should be some kind of localization or callback to rename the headers
Describe alternatives you've considered
No response
Additional context
No response

Typically, you can set DisableDefaultApplicationMenuItems to true, and populate these items in your app, with localization handled on your app side.
But this feature request is reasonable non the less.


Include src/ in published package

Fixes #227

ping @brianleroux

Hey @paolobueno sorry I have not made time for this repo. If you can get the CI passing I'll happily merge/publish!

Do you want me to publish this on npm?

@brianleroux - yes! If you can publish this will resolve all the issues with the library many people experience. Currently published version is incomplete and some of the problems were already resolved on the master.


Export binexport file via command line

Hello,
I am using IDA 7.3 on Linux and the latest version of Bindiff (Bindiff ver. 5 and BinExport 10). And I am writing to inquire the procedure to export a binExport database from the commandline.
So after installing the BinDiff and IDA-Pro, I am using the following command:
sudo ./idat64 -A -S"/export/d1/idaedu-7.3/bin_export.idc" -OExportModule:"/export/d1/idaedu-7.3/mcf.binExport" "/export/d1/idaedu-7.3/mcf_base.i386-m32-gcc42-nn.i64"

And the bin_export.idc script is like this:
#include <idc.idc>
static main()
{
        Batch(0);
        Wait();
        Exit(1 - RunPlugin("zynamics_binexport_8", 2));
}

However, after executing the command, somehow it is hanging there, and cannot proceed any further.. Am I doing anything wrong? Thank you.

@cblichmann  thank you for taking care of this. Any comments or suggestions? Thanks a lot.

There are several things going on here:

You're using zynamics_binexport_8 as the plugin name in the IDC, which is the old name (BinDiff 4.x). The curent version uses just binexport10.
The IDC script you're using is using syntax that predates IDA 7 IDC.
idat64 is entirely untested with BinDiff 5. I don't recommend using it.

So the correct script would be
static main() {
  batch(0);
  auto_wait();
  qexit(1 - load_and_run_plugin("binexport10", 2));
}

However, you can do without an IDC script:
TVHEADLESS=1 /opt/idapro-7.3/ida64 \
    -OBinExportModule:<DIRECTORY_OR_BINEXPORT_FILENAME>
    -OBinExportAlsoLogToStdErr:TRUE \
    -OBinExportAutoAction:BinExportBinary \
    <PATH_TO_YOUR_EXE_OR_IDB>

Note that TVHEADLESS=1 is optional, as is -OBinExportAlsoLogToStdErr:TRUE.

@cblichmann  Thanks a lot for the comments. I am connecting a remote server with no X so ida64 is not working. Here are what I have been doing so far:

./idat64, click the File -> Load File -> Script File and load the script you provided. It shows that "exporting Database; Please wait", but after it is finished, I still cannot find the exported .BinExport file.

I tried the second option without IDC script:

Somehow it is still hanging there.. I guess I will try to setup the X and use ida64. Will keep you posted.

Did you strace/debug the IDA process to see where it is hanging? Maybe it's just waiting for user input (you didn't specify -A).

Closing. Feel free to reopen if you still need help.


Small copy-paste error in license text

Copied my license text from you and realized it was referencing Serde. Don't mess with Big License!

Thanks!

Don't mess with Big License!

I've learned at this point to never mess with 'Big $anything'


orocos_kinematics_dynamics: 1.3.1-0 in 'lunar/distribution.yaml' [bloom]

Increasing version of package(s) in repository orocos_kinematics_dynamics to 1.3.1-0:

upstream repository: https://github.com/orocos/orocos_kinematics_dynamics.git
release repository: https://github.com/smits/orocos-kdl-release.git
distro file: lunar/distribution.yaml
bloom version: 0.5.25
previous version for package: null

:tada:

This is a place holder for a pending release with ABI changes to unblock us.
@smits @meyerj @mikaelarguedas  FYI


Recursively find go.mod and run mod commands

This extends the current go mod tidy && go mod vendor logic to recursively do so in other go submodules that might be present in the repository.
The go vendoring guarantees that no dependency go.mod files are present in the ./vendor folder.
Successfully tried on: https://github.com/openshift/cluster-api-provider-ibmcloud/pull/48
For ./go.mod and ./hack/tools/go.mod in https://github.com/openshift/cluster-api-provider-ibmcloud/pull/48/commits/67dffdc9bafe1cef378338402683a8c3991ab356

this is making sense to me, are you ready to merge @damdo ?

I am yes :) @elmiko

I am yes :) @elmiko

/lgtm


Added state for baseline start

@fritzbrand I just realised that the previous PR didn't add the new application to the main.py file. You'll need to import the baseline survey app into main like [this] (https://github.com/praekeltfoundation/vaccine-eligibility/blob/main/yal/main.py#L8) and also add it to the [application definition] (https://github.com/praekeltfoundation/vaccine-eligibility/blob/main/yal/main.py#L84)


fix include_package_data in npe2 branch

Just noticed that @brisvag's package published with the npe2 cookiecutter is lacking napari.yaml in the wheel
https://pypi.org/project/napari-molecule-reader/#files
include_package_data is in the wrong section, this fixes

heads up on this one @nclack  and @DragaDoncila... anyone who has used the cookiecutter on the npe2 branch already will have broken plugins when they publish to PyPI.  and, since they don't receive these updates after running cookiecutter, they probably won't receive them.  not sure if we should make a PSA on zulip? 😅

...ooops. Yeah I think zulip PSA in general would be the way to go. Also, are we even adding that flag in the migration?
@jamesyan-git this will affect your affinder and zarpaint PRs too so make sure you include that line before merging those.

we might actually consider doing some github grepping and PRs

Also, are we even adding that flag in the migration?

not sure what you mean.  this is unique to npe2, wasn't necessary before.  only exists in the npe2 branch

not sure what you mean. this is unique to npe2, wasn't necessary before. only exists in the npe2 branch

Sorry, I was referring to the np2 convert command. It looks like we add options.package_data but not include_package_data?

gotcha, yes, lets fix that too.  In fact, I'm not really sure we needed options.package_data at all.  i think that include_package_data alone might be sufficient.  checking now

yep, include_package_data = True is sufficient

going to merge this and follow up with some things

yep, include_package_data = True is sufficient

Dumb question but, how does it know that napari.yaml is part of package_data if we don't tell it that via options.package_data

from https://setuptools.pypa.io/en/latest/userguide/datafiles.html

In summary, the three options allow you to:

include_package_data
Accept all data files and directories matched by MANIFEST.in.

package_data
Specify additional patterns to match files that may or may not be matched by MANIFEST.in or found in source control.

exclude_package_data
Specify patterns for data files and directories that should not be included when a package is installed, even if they would otherwise have been included due to the use of the preceding options.

ok, a bit more info.  If you don't have a MANIFEST.in file, then it looks like include_package_data=True is enough.  If you do have a MANIFEST file, then you will need to either add recursive-include * *.yaml to MANIFEST.in, or you need to add napari.yaml to options.package_data


Show warning when no listing type selected

On create page
http://localhost:3000/create
If no listing type is selected, and user hits Next, nothing happens. We should show some message asking them to select a type.
Related to #46

I think this is already fixed. WIll confirm.

fixed.


fix: Update CP4D version in README to 4.6.1

Contributes to: #191
Description of changes:

Missing update to README.md
GitOps deployment not waiting long enough to declare deployment complete

Output of argocd app list command or screenshot of the ArgoCD Application synchronization window showing successful application of changes in this branch.

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


the demo page gives a runtime error

The huggingface demo may launch failed, "Launch timed out, workload was not healthy after 30 min "

Hello,
The issue you've encountered with the Huggingface demo timing out is due to Huggingface Spaces' mechanism, where inactivity over an extended period can lead to such errors. We've now restarted the service, and it should be operational. Please visit https://huggingface.co/spaces/OpenMotionLab/MotionGPT to access the demo.
Thank you for your patience and understanding.

this error happened again


Make airframe outputs consistent

It would be good if the airframe outputs could use consistent outputs for the same function.
So for example, the standard plane frames use MAIN3, 4, or 5 for throttle.
(FYI I have updated the user guide so that the airframe reference is now the canonical place to get the output information, but I still think consistency in setup would make things easier for users).

There will be exceptions of course, but we can definitely do a better job being consistent.

Done.

@LorenzMeier Please reopen this. The change I made better organises the content, but (despite my comment in #7482 does not "fix" the problem).
To fix this requires an update to the configuration files for the specific vehicles (mixers?) to make sure that they map the same output for throttle (and where possible other outputs). As I understand it, the change is technically easy to make, but would be a considerable "compatibility break."

Hey, this issue has been closed because the label status/STALE is set and there were no updates for 30 days. Feel free to reopen this issue if you deem it appropriate.
(This is an automated comment from GitMate.io.)


Resources$NotFoundException when run source without any modification

I tried to import project to Android Studio 2.3.3 and still using default config of project (without modification of any string). When I run fatal error happens, I also tried to remove all of other languages resource but no luck. Any suggestion for me.
W/Stardroid.AbstractLayer: Renderer not set - aborting: NewConstellationsLayer
com.google.android.stardroid W/ResourceType: For resource 0x7f0701fd, entry index(509) is beyond type entryCount(508)
com.google.android.stardroid W/ResourceType: Failure getting entry for 0x7f0701fd (t=6 e=509) (error -75)
com.google.android.stardroid E/AndroidRuntime_3_crash: crash in the same process: pool-3-thread-3
android.content.res.Resources$NotFoundException: String resource ID #0x7f0701fd
at android.content.res.Resources.getText(Resources.java:286)
at android.content.res.Resources.getString(Resources.java:372)
at com.google.android.stardroid.source.proto.ProtobufAstronomicalSource.getLabels(ProtobufAstronomicalSource.java:111)
at com.google.android.stardroid.layers.AbstractSourceLayer.initialize(AbstractSourceLayer.java:74)
at com.google.android.stardroid.layers.AbstractFileBasedLayer.access$201(AbstractFileBasedLayer.java:46)
at com.google.android.stardroid.layers.AbstractFileBasedLayer$1.run(AbstractFileBasedLayer.java:65)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
at java.lang.Thread.run(Thread.java:818)

i am also facing the same issue. did you resolve it?

i got the solution.. comment for loop and pass hard coded string and rebuild it. it will work

I think one problem is that the datafiles are out of sync with the code.  We have a weird build that we created 10 years ago and really needs throwing out.  If any strings are added or removed the datafiles need to be regenerated.


Add openstack_ga, openstack_crds_cleanup and openstack_deploy_update target

The openstack_ga target allows to deploy the oldest available index of the openstack-operator using the commit from the stable branch configured using the OPENSTACK_STABLE_BRANCH environment variable, which defaults to 18.0-fr1.

The openstack_crds_cleanup target allows to remove all openstack related CRDs from an environment. All deployments need to be deleted before

The openstack_deploy_update target batches the OpenstackVersion target version to be the avaliable version to trigger an update.

With this an operator update from oldest available openstack-operator index of the 18.0-fr1 branch to the latest from main can be tested using this procedure:
rm -rf  out/operator/openstack-operator/
make openstack_ga
make openstack_deploy (wait for the deployment to finish) make openstack_cleanup
make openstack
make openstack_deploy_update

Related: https://github.com/openstack-k8s-operators/openstack-operator/pull/1217

closing in favor of https://github.com/openstack-k8s-operators/install_yamls/pull/964


Allow for partial returns

Per test log:

Letter to Landlord re_ Return of Security Deposit - proposed partial return edits.docx
letter_to_landlord_security_next_steps-NR Jan 2024 partial SD return edits.docx
Welcome to Michigan Legal Help - Jan 2024 edits to include partial SD returns.docx


Add MetaTag Info to site

The ability to add metatag info to the site via settings page or config.json

No longer needed due to templates being implemented.


header wrap fix

Possible solution for issue #611

Coverage remained the same at 77.323% when pulling d355cfb28effbdf764acd3e777c78ccf1784f639 on amacwhirter:master into bab1fcc808e376a169cce760183fe59aecc387dd on gregnb:master.


[Question] How do I parse JSON into custom types?

Reviewing the documentation, I don't see a lot of helpful examples on more complex parsing scenarios. Really it seems like most of the documentation describes going from types to JSON, but I need to completely deserialize JSON data into C++ objects.
Here is the JSON data I'm working with:
{
  "campaigns": [{
      "name": "patt_coupon",
      "start_date": "2019-01-01",
      "end_date": "2019-12-31",
      "push": "pass.com.company.coupon.5dollar",
      "pull": [
        "pass.com.company.coupon",
        "pass.com.company.coupon_revised"
      ]
    },
    {
      "name": "loyalty",
      "start_date": "2019-01-01",
      "end_date": "2019-12-31",
      "push": "pass.com.company.loyalty.program1",
      "pull": [
        "pass.com.company.loyalty.program1"
      ]
    }
  ]
}

For the campaigns array, I want to parse each element into an array of custom objects:
#include <fstream>
#include <stdexcept>
#include <boost/date_time/gregorian/gregorian.hpp>
#include <fmt/format.h>
#include <nlohmann/json.hpp>

using json = nlohmann::json;
namespace boost
{
   namespace gregorian
   {
      void from_json(json& j, boost::gregorian::date& d)
      {
         std::string dateValue;
         j.get_to(dateValue);
         d = boost::gregorian::from_string(dateValue);
      }
   }
}

class WalletCampaignConfiguration::WalletCampaign
{
public:
   WalletCampaign(json& config)
   {
      config.at("start_date").get_to(startDate);
   }

   boost::gregorian::date startDate, endDate;
   std::string pushPass;
   std::vector<std::string> pullPasses;
};

int main() {
   std::ifstream file{jsonPath}; // this points to the file containing the JSON above
   if (!file)
   {
      throw std::runtime_error{"Unable to open wallet config json: " + jsonPath.string()};
   }

   json config;
   file >> config;

   for (auto const& campaignJson : config.at("campaigns"))
   {
      m_campaigns.push_back(std::make_unique<WalletCampaign>(campaignJson));
   }

   auto const& c = *m_campaigns.at(0);
   std::cout << "start: " << c.startDate << "\n\n";
   std::cout << "end: " << c.endDate << "\n\n";
   std::cout << "push: " << c.pushPass << "\n\n";

   for (auto const& p : c.pullPasses)
   {
      std::cout << "pull: " << p << "\n\n";
   }
}

I'm compiling this using Visual Studio 2019 with C++17 enabled. The code above doesn't compile, with these errors:
1>E:\code\frontend\source\Core\Wallet\Source\Wallet\WalletCampaignConfiguration.cpp(47,30): error C2672:  'nlohmann::basic_json<std::map,std::vector,std::string,bool,int64_t,uint64_t,double,std::allocator,nlohmann::adl_serializer>::get_to': no matching overloaded function found
1>E:\code\frontend\source\Core\Wallet\Source\Wallet\WalletCampaignConfiguration.cpp(47,1): error C2783:  'ValueType &nlohmann::basic_json<std::map,std::vector,std::string,bool,int64_t,uint64_t,double,std::allocator,nlohmann::adl_serializer>::get_to(ValueType &) noexcept(<expr>) const': could not deduce template argument for '__formal'
1>E:\code\frontend\source\Core\External\json\include\nlohmann/json.hpp(2680): message :  see declaration of 'nlohmann::basic_json<std::map,std::vector,std::string,bool,int64_t,uint64_t,double,std::allocator,nlohmann::adl_serializer>::get_to'

I'm not sure why it doesn't compile. But I'm sure it has to do with something about how I'm trying to use the library. Can you give me an example of how to parse this JSON document in an object oriented way as I'm trying to do?

I don't have time to compile the code in the moment. But one note: The signature of the from_json function must be
void from_json(const json& j, boost::gregorian::date& d)

instead of
void from_json(json& j, boost::gregorian::date& d)

(see https://github.com/nlohmann/json#basic-usage).

Thanks for the quick response. To help you out, I put this code on Wandbox along with your single header file and the above JSON. You can easily compile it that way:
https://wandbox.org/permlink/rgECm599lctiFXkA
Note with your fix it still has problems. The for loop where I construct the unique_ptr to WalletCampaign doesn't work. I guess the elements I'm getting aren't json types. A big part of this is intended to be a code review. If you have the time, I want to know the idiomatic way of doing what I'm trying to do. I feel like I'm doing this the hard way. Your library seems like it should simplify a lot of my boilerplate.
Again I appreciate your time. Let me know if you get a spare moment to code review this. Thanks!

Your constructor should accept a const reference:
WalletCampaign(const json& config)

That makes the code compile at Wandbox.
You may want to replace the constructor taking a json to a from_json function, but this is just style.
What makes you feel you write boilerplate code?

Thanks, your fix was the missing piece. The compiler diagnostic did not make the const issue obvious. Very cryptic output. Maybe you can add a static_assert to detect these issues for easier learning experience? Just a thought...
In terms of boilerplate, I'm still learning things, but so far making JSON elements "optional" is pretty tedious. There's no 1 line solution to this that I've seen so far. It would be nice to see built-in support for std::optional<T>. I have seen some examples where you implement a specialization of adl_serializer, but this should be built-in IMHO. And also adl_serializer can't be specialized with just from_json (I only do one-way conversion, I don't support saving to JSON, only reading from JSON).
Right now I do this:
      boost::gregorian::date startDate;
      auto element = config.find("start_date");
      if (element != config.end())
      {
         element->get_to(startDate);
      }

Would be nicer instead to have something like this:
std::optional<boost::gregorian::date> startDate;
config.try_get_to("start_date", startDate);

at() will throw so I can't use that.

Any objection to making these part of your library?

namespace nlohmann
{
   template<typename T>
   struct adl_serializer<std::optional<T>>
   {
      static void to_json(json& j, const std::optional<T>& value)
      {
         if (!value)
         {
            j = nullptr;
         }
         else
         {
            // this will call adl_serializer::to_json which will
            // find the free function to_json in T's namespace!
            j = *value;
         }
      }

      static void from_json(json const& j, std::optional<T>& value)
      {
         if (j.is_null())
         {
            value.reset();
         }
         else
         {
            // same as above, but with adl_serializer<T>::from_json
            value = j.get<T>();
         }
      }
   };

   template<typename T>
   struct adl_serializer<std::unique_ptr<T>>
   {
      static void to_json(json& j, const std::unique_ptr<T>& value)
      {
         if (!value)
         {
            j = nullptr;
         }
         else
         {
            j = *value;
         }
      }

      static void from_json(json const& j, std::unique_ptr<T>& value)
      {
         if (j.is_null())
         {
            value.reset();
         }
         else
         {
            value = std::make_unique<T>();
            *value = j.get<T>();
         }
      }
   };
}

Probably need to add one for shared_ptr too.

(There is a function contains to check if a key is present in an object. This may clean up code in case you don't want to compare iterators.)
I'm hesitating to add the conversions for optionals and smart pointers right now. I need to understand what this may break first.


cannot create database

It seems to download everything from OpenCellID, but once everything is done, the backend says there is no database. Internal storage size is just 18MB.
I also had to enable all the permissions manually.

Which data source are you using? Open Cell ID has had an issue with their ZIP files that causes the built in ZIP decode library on Android phones to fail. I've had no issues with the Mozilla version (which also contains all the OCID data as they have some sort of sharing agreement).

I tried using opencellID only. But now I have created the database with fastlacellsgenerator, and everything is working normally (except database update I assume..).


Support "templates" for creating easy stubs

When a library can't load, we should still be able to generate something so that we can use this tool in lieu of explaining everything about how to set up a correct DefinitelyTyped folder

The command on the DefinitelyTyped readme seems to imply this is possible but it no longer works.
dts-gen --dt --name my-package-name --template