Export scrublet plots to .png or .pdf files

Hi there,
Is there any way that I can save the scrublet plots (scrub.plot_histogram() and scrub.plot_embedding()) to png or pdf file?
Thanks!
Best
Dié

Hi,
Obviously this is quite an old question, but in case this helps someone:
import matplotlib.pyplot as plt
scrub.plot_histogram()
plt.savefig("scrublet_output_plot.pdf")

Thanks,
George

After I output one pdf file, I output another pdf file still the previous result：
scrub.plot_histogram()
plt.savefig("scrublet_output_plot.pdf")

scrub.set_embedding('UMAP', scr.get_umap(scrub.manifold_obs_, 10, min_dist=0.3))
scrub.plot_embedding('UMAP', order_points=True)
plt.savefig("scrublet_UMAP_plot.pdf")

scrublet_UMAP_plot.pdf is the same as scrublet_output_plot.pdf


Update chroot / no sound / keep settings

Output of the command sudo edit-chroot -all
name: trusty
encrypted: no
crouton: version 1-20150620222151~master:89796a99
release: trusty
architecture: amd64
xmethod: xorg
targets: gnome
host: version 7978.74.0 (Official Build) stable-channel leon
kernel: Linux localhost 3.8.11 #1 SMP Thu May 12 00:55:50 PDT 2016 x86_64 x86_64 x86_64 GNU/Linux
freon: yes

Please describe your issue:
I have no sound (cras doesn't work).
If known, describe the steps to reproduce the issue:
I updated ChromeOS (even-though I didn't want that). And cras didn't work anymore. I readthat updating one's chroot might work to get cras back. I do very important work w/ my Cghromebook, but only in my chroot/Linux. I do NOT want to loose any settings or work. Is it safe to update my chroot w/ the following command (from within Chrome OS??? or from within my chroot??):
sudo sh ~/Downloads/crouton -u -n trusty

I only want cras to work again, the rest may NOT (I repeat: NOT) change!!!!!

@MeneerJansen,
I realize this advice comes a little late but it's always a good idea to keep a backup of your working chroot, just in case...
It's always a little bit of a gamble but updating your chroot via crouton's update mechanism that you show above is normally safe.
Before you do that though, to be just a little more on the safe side, you could log into your chroot and update the chroot's packages/applications first to see if that brings back your sound, using something like this -
sudo enter-chroot -n trusty
sudo apt-get -f install
sudo apt-get update
sudo apt-get upgrade
exit
Then, log back into your chroot using your gnome desktop gui and see if the sound works.
sudo startgnome -n trusty
If sound works again, exit then backup your chroot to the internal drive or to external media - or both.
Either way, now would be a good time to update your chroot via crouton like you showed above:
sudo sh ~/Downloads/crouton -n trusty -u
This will ujpdate your chroots packages/applications but, maybe more importantly, update all of crouton's files including re-compiling and installing 'cras' and others.
Hope this helps,
-DennisL

@DennisLfromGA
Thank you for the advise. It is not too late to backup my current chroot: I didn't change it yet. So I'll backup first. I "upgraded" Chrome OS.
As for the sudo apt-get upgrade. I've been using Linux as my default OS for ten years now (don't have or need no Windows anymore) but I never upgrade my Linux distro that way. Might render my PC unusable. I always make an extra partition to install an new Linux version and see if it works to my satisfaction.
Furthermore, sudo apt-get upgrade will probably upgrade my chroot from Trusty to Xenial, or worse, the non-long term support Ubuntu 16.10 Yakkety Yak. Nonetheless I'' backup my chroot to a SD card do the sudo apt-get update and then upgrade the chroot.
Does anybody exactly know what the Crouton update process does? Does it radically change my Linux Trusty chroot, or does it only install new things that are needed for Crouton to work w/ the latest version of  ChromeOS?

@MeneerJansen - sounds like you know better than, I'll leave it in your capable hands.

I can't tell who's being sarcastic, so I'll bite. sudo apt-get upgrade does not upgrade your distro version. It upgrades packages, installed kernels, headers, etc. Here's the wiki: https://help.ubuntu.com/community/AptGet/Howto
Hope this helps!

@bmorris22 - I think it might have been a little of both (of us), thanx for clarifying the update process.

My apologies. I was not trying to be sarcastic. And I was plainly wrong too! The command sudo apt-get upgrade does not upgrade one's distro! That's the command sudo apt-get dist-upgrade. For somebody like me who's been using Linux for ten years on a daily basis that's pretty dumb mistake to make, ha ha!
Thank you both very much for your replies! Does anybody know what updating one's chroot does then exactly? My guess that it's updating "special" adjustments to Linux to get it to work well as a chroot within ChromeOS (like cras for audio instead of your average basic Alsa).

Updating your chroot runs through more or less the same process as installing it. It will run through the installation scripts and install any necessary packages (upgrade them if they're already installed), it will also run through all the targets installed on your chroot and run the new scripts for them, again applying any changes to them and upgrading any related packages.
(Someone correct me if I'm wrong! I'm basing this on my experience as a user and quick scan of the install, prepare and target scripts).

do sudo sh ~/Downloads/crouton -n trusty -u as it only updates existing packages, crouton, and targets it does not change the release of the chroot

@DanHolli123 Thanks for the info! I feel relieved. First the backup w/ (see the Crouton Cheat Sheet):
sudo edit-chroot -f /media/removable/SDcard_32GB/Cromebook/backupchroot -b trusty

Determine chrootname w/ sudo edit-chroot -a. In my case this took about xxx minutes. I can restore w/:
sudo edit-chroot -f /media/removable/SDcard_32GB/Cromebook/backupchroot -r chrootname

You are VERY welcome.
Glad I helped!

btw since your problem has been solved you should close the issue

@DanHolli123 How do I close this issue?

@MeneerJansen The button next to 'Comment' should say 'Close' or 'Comment and Close' click it


⚠ Bofrost.fr has degraded performance

In 5baef78, Bofrost.fr (https://www.bofrost.fr) experienced degraded performance:

HTTP code: 200
Response time: 1615 ms

Resolved: Bofrost.fr performance has improved in bbaa835 after 10 minutes.


⚠ ClamAV has degraded performance

In e5c0ef2, ClamAV (https://spamassassin.apache.org/) experienced degraded performance:

HTTP code: 200
Response time: 267 ms

Resolved: ClamAV performance has improved in ace49bf after 5 minutes.


[Snyk] Upgrade angular-mocks from 1.7.2 to 1.8.2

Snyk has created this PR to upgrade angular-mocks from 1.7.2 to 1.8.2.
:information_source: Keep your dependencies up-to-date. This makes it easier to fix existing vulnerabilities and to more quickly identify and fix newly disclosed vulnerabilities when they affect your project.

The recommended version is 10 versions ahead of your current version.
The recommended version was released 4 years ago, on 2020-10-21.

Release notes

Package name: angular-mocks

1.8.2 - 2020-10-21chore(release): v1.8.2 codename(meteoric-mining)

1.8.1 - 2020-10-05chore(release): v1.8.1 codename(mutually-supporting)

1.8.0 - 2020-06-04chore(release): v1.8.0 codename(nested-vaccination)

1.7.9 - 2019-11-19chore(release): v1.7.9 codename(pollution-eradication)

1.7.8 - 2019-03-11chore(release): v1.7.8 codename(enthusiastic-oblation)

1.7.7 - 2019-02-04chore(release): v1.7.7 codename(kingly-exiting)

1.7.6 - 2019-01-17chore(release): v1.7.6 codename(gravity-manipulation)

1.7.5 - 2018-10-04chore(release): v1.7.5 codename(anti-prettification)

1.7.4 - 2018-09-07chore(release): v1.7.4 codename(interstellar-exploration)

1.7.3 - 2018-08-08chore(release): v1.7.3 codename(eventful-proposal)

1.7.2 - 2018-06-12

    from angular-mocks GitHub release notes

Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open upgrade PRs.
For more information:
🧐 View latest project report
🛠 Adjust upgrade PR settings
🔕 Ignore this dependency or unsubscribe from future upgrade PRs

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


bbolt backend blocks multiple processes from running

bbolt only allows for a single writer and uses directory locking. To fix this I thought we could just open/close the database in the cache code. However, this causes crashed due to bugs in bbolt:
https://github.com/transparencylog/btget/commit/a49671d192eb634d869c87263c1c0327097d7acf

fixed by moving to badgerdb.


ViT - 47364417 (ADNI)

Overview
This PR introduces a Vision Transformer (ViT) model to classify Alzheimer's Disease using the ADNI brain imaging dataset. The primary goal is to distinguish between normal (NC) and Alzheimer's Disease (AD) cases using the vit_small_patch16_224 architecture. The model is trained alongside preprocessing and data augmentation techniques to improve generalization.
Files
The following files are included in this PR:

dataset.py: Loads and preprocesses the ADNI dataset, splitting into training, validation, and test sets.
modules.py: Defines the Vision Transformer model architecture used for classification.
train.py: Contains the training loop, validation steps, and model checkpointing.
predict.py: Evaluates the trained model on the test dataset and outputs performance metrics.
README.md: Provides a project report, including model overview, training process, results, and usage instructions.
requirements.txt: Lists all dependencies required to run the project.
assets/: Contains images and plots used in the README.md, such as diagrams and performance graphs.

Results
The model achieved over 94% accuracy on the training set and around 85% on the validation set, indicating effective learning and decent generalization during training. However, the test accuracy dropped to 60-63%, suggesting overfitting and challenges in generalizing to unseen data.

Cheers,
Praneet Dhoolia (47364417)

This is an initial inspection
Difficulty : Hard
Task : 5

Recognition Problem:

The code looks good, but comments could be better.
The model shows overfitting

Commit Log:

can be much better, most of the commits just have changes related to spacing issues

Documentation:

Requirement:
Tittle: Done
Description of the algorithm: Done
Problem that it solves: Done
How it works in a paragraph (example any pre-processing): Done
Figure/visualisation (any input, output & results): Done
Dependencies: Done

Pull Request

Looks okay.
Feedback:
Just improve your PR a bit. use markdown in it with an Overview, File structure and a Result section

Thanks for the feedback! I've formatted my PR accordingly.

Observational Feedback
Pull Request:
Correctly created the Pull request from Topic Recognition Branch .
The pull request includes a clear description about the file structure .
Previous Feedback Incorporated .
File Organizing: Well-organized files.
Commit Log:
Commit messages are progressive for the Recognition Problem solved using 4 files .
Commits demonstrate logical development flow.
Documentation:
The README file misses on  Dependencies , Reproducibility and Conclusion .
Code comments and docstrings are included.
Proper GitHub markdown formatting is used, with organized headings, lists, and code blocks.

Thanks for the observations! I've added the missing sections to the readme.

Marking

Good/OK/Fair Practice (Design/Commenting, TF/Torch Usage)
Good design and implementation.
Spacing and comments.
No Header blocks. -1
Recognition Problem
OK solution to problem. Model overfitting-2
Driver Script present.
File structure present.
Good Usage & Demo & Visualisation & Data usage.
Module present.
Commenting present.
No Data leakage found.
Difficulty : Hard. ViT (Hard Difficulty)
Commit Log
Some/Adequate Meaningful commit messages. -1
Some/Adequate Progressive commits. -1
Documentation
Readme :Good.
Model/technical explanation :Good.
Description and Comments :Good.
Markdown used and PDF submitted. PDF checked.
Pull Request
Pull Request has problems: Late submission.-2
No Feedback required.
Request Description is good.
TOTAL-7

Marked as per the due date and changes after which aren't necessarily allowed to contribute to grade for fairness.
Subject to approval from Shakes

Hi, thanks for the feedback! Just a note, I had the same query as one of my peers. I've submitted all of my work under an approved extension, so I would like to appeal the late submission down marking.
Cheers,
Praneet

Approved extension +2

Cant merge because of conflicting changes to main repo files (gitignore). Please update for merge, doesn't affect grade.


Running speed

Hi,
Thank you for developing these excellent tools for single-cell phylogenetic trees.
It works well for me when I am using around 30 SNPs. However, it takes forever to finish after I add the LOH sites to my SNP list to distinguish the cells that lose different chromatin copies.  The dataset now has 114 cells and 145 SNP sites. I have had it running on my computer for a week now, but it is still running, and I have no idea how much time is left.
I would like to run it with HPC, but the longest time I can request for a run is only 7 days. Do you have any suggestions about how I can accelerate it? How much memory space and CPU should I request?
Thank you!

It is possible that the code is stuck at a solution very close to optimality. If you are ok with a slightly suboptimal solution, I would recommend increasing the optimality tolerance in line 286 of the solveConstrainedDollo.py, i.e. replace 1e-6 with a higher value such as 0.05 or 0.1 in the following line:
model.setParam(gp.GRB.Param.OptimalityTol, 1e-6)
Here is a description of this parameter which might be helpful -- https://www.gurobi.com/documentation/current/refman/optimalitytol.html


Kubectl shell breaks after etcdbackup restore

master (22/01)
After restoring a cluster from backup kubectl shell fails with this error:
Unable to connect to the server: x509: certificate signed by unknown authority

reverted fix in https://github.com/rancher/kontainer-engine/pull/124

Tested with master build from Feb 12th.
Steps:

Create a 3 node cluster with all 3 roles
Create few workloads. Verify kubectl is functional
Create a backup.
Local backup succeeds.
Perform a restore.
After restore, launch kubectl from UI. kubectl is functional.

> kubectl get node
NAME                 STATUS    ROLES                      AGE       VERSION
soumyakubectltest1   Ready     controlplane,etcd,worker   41m       v1.13.1
soumyakubectltest2   Ready     controlplane,etcd,worker   41m       v1.13.1
soumyakubectltest3   Ready     controlplane,etcd,worker   41m       v1.13.1


[Suggestion] Use "static readonly" for const like properties

Description
This is more of a coding pattern / perf suggestion.
In classes like Offset there are static properties that create new instances. eg
public static Offset Beginning { get { return new Offset(RD_KAFKA_OFFSET_BEGINNING); } }
This pattern means that a new object instance is created everytime the property is used. As Offset is a readonly type is would be "better" if the same instance was returned every time. ie
public static readonly Offset Beginning = new Offset(RD_KAFKA_OFFSET_BEGINNING);
Or, if you really want it to look like a property (but prefer the above)
public static Offset Beginning { get; } = new Offset(RD_KAFKA_OFFSET_BEGINNING);
This makes the property essentially free rather than allocating and GC'ing every time.
How to reproduce
var x = Offset.Beginning
Creates a new instance of Offset
Checklist
Please provide the following information:

[ ] Confluent.Kafka nuget version:
[ ] Apache Kafka version:
[ ] Client configuration:
[ ] Operating system:
[ ] Provide logs (with "debug" : "..." as necessary in configuration)
[ ] Provide broker log excerpts
[ ] Critical issue

happy to provide PR if interested

good point - happy to accept a PR :-)


Update Security.md

Fixing a small typo.

Proposed change

There was a small typo in security.md file.
Type of change

[ ] New core framework functionality
[ ] Bugfix (non-breaking change which fixes an issue)
[ ] Code refactoring without any functionality changes
[ ] New or existing module/payload change
[ ] Localization improvement
[ ] Dependency upgrade
[x] Documentation improvement

Checklist

[x] I've followed the contributing guidelines
[ ] I've run make pre-commit, it didn't generate any changes
[ ] I've run make test, all tests passed locally

Thank you for spotting a typo @Manushya-a !

My pleasure to be able to contribute to this amazing project!


Add didRealize hook to Component

@joshaber Sometimes it would be nice to be able to customize a Component's behavior from outside, after the render. For example I want to set some scroll view insets after a component is realized, and subclassing component seems like a bit much. What do you think?

Yeah probably. React has a similar hook.


Running error with PyTorch 1.12.1

The following error occurs with PyTorch 1.12.1, but disappears with PyTorch 1.11.0
  File "/home/tangtianyi/transformers/src/transformers/models/encoder_decoder/modeling_encoder_decoder.py", line 26, in <module>
    from ...modeling_utils import PreTrainedModel
  File "/home/tangtianyi/transformers/src/transformers/modeling_utils.py", line 41, in <module>
    from .generation_utils import GenerationMixin
  File "/home/tangtianyi/transformers/src/transformers/generation_utils.py", line 29, in <module>
    from .generation_logits_process import (
  File "/home/tangtianyi/transformers/src/transformers/generation_logits_process.py", line 25, in <module>
    import ngram_repeat_block_cuda
ImportError: /home/tangtianyi/miniconda3/lib/python3.8/site-packages/ngram_repeat_block_cuda.cpython-38-x86_64-linux-gnu.so: undefined symbol: _ZNK3c1010TensorImpl36is_contiguous_nondefault_policy_implENS_12MemoryFormatE

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/home/tangtianyi/model/pretrained_models.py", line 31, in <module>
    from transformers import AutoConfig, AutoModelForCausalLM, AutoModelForSeq2SeqLM, EncoderDecoderModel
  File "<frozen importlib._bootstrap>", line 1039, in _handle_fromlist
  File "/home/tangtianyi/transformers/src/transformers/utils/import_utils.py", line 948, in __getattr__
    value = getattr(module, name)
  File "/home/tangtianyi/transformers/src/transformers/utils/import_utils.py", line 947, in __getattr__
    module = self._get_module(self._class_to_module[name])
  File "/home/tangtianyi/transformers/src/transformers/utils/import_utils.py", line 959, in _get_module
    raise RuntimeError(
RuntimeError: Failed to import transformers.models.encoder_decoder.modeling_encoder_decoder because of the following error (look up to see its traceback):
/home/tangtianyi/miniconda3/lib/python3.8/site-packages/ngram_repeat_block_cuda.cpython-38-x86_64-linux-gnu.so: undefined symbol: _ZNK3c1010TensorImpl36is_contiguous_nondefault_policy_implENS_12MemoryFormatE

@StevenTang1998 I have tested with PyTorch 1.12.1. It works well at my side.  It seems like you did not reinstall fastseq (uninstall fastseq first and install it again) after you changed the version of PyTorch.

thanks


Re: 'Data.gov.uk'

Problem with 'Data.gov.uk' (https://www.api.gov.uk/gds/data-gov-uk/)
Typo in the description.
 which describe each data file that maks up the dataset.

Thanks @norb-c, fixed 👍


Fail to replace kubernetes statefulsets

Description
We use fabric8-maven-plugin to manage the full lifecycle of all of our kubernetes services. We are having a problem upgrading statefulsets (similar to this post but we dont use the kubernetes-client). The version of the maven plugin is 4.3.1. (also tested on 4.4.0) We have no issues with daemonsets but I just cant find a way to update statefulsets. We get the same error as the afore mentioned post.
Info
The error received is as follows
The StatefulSet "testservice" is invalid: spec: Forbidden: updates to statefulset spec for fields other than 'replicas', 'template', and 'updateStrategy' are forbidden

f-m-p version : 4.3.1 (and tested on 4.4.0)

Maven version (mvn -v) : 3.2.3

Kubernetes setup and version : Rancher Kubernetes Services

Client Version: version.Info{Major:"1", Minor:"12", GitVersion:"v1.12.4", GitCommit:"f49fa022dbe63faafd0da106ef7e05a29721d3f1", GitTreeState:"clean", BuildDate:"2018-12-14T07:10:00Z", GoVersion:"go1.10.4", Compiler:"gc", Platform:"windows/amd64"}
Server Version: version.Info{Major:"1", Minor:"13", GitVersion:"v1.13.4", GitCommit:"c27b913fddd1a6c480c229191a087698aa92f0b1", GitTreeState:"clean", BuildDate:"2019-02-28T13:30:26Z", GoVersion:"go1.11.5", Compiler:"gc", Platform:"linux/amd64"}

Bug:
The problem manifests if I update the version of the service during release cycles. As soon as we update the version and try to apply the change to the statefulset.

My corporate firewall appears to be blocking me from attaching example yml files, the source code sections below are the best I can do.
They can be used to reproduce (I have sanitized as per my organisational requirements. The image in use I have set to busybox but in reality it would be an internally built image that is also tagged with the version. The examples wouldn't show that but the image tags would change between each deployment)
The steps to recreate are simple. If you kubectl apply 01 it should work, kubectl apply 02 and it should fail with the error above
kubernetes01.yml
---
apiVersion: v1
kind: List
items:
- apiVersion: v1
  kind: Service
  metadata:
    labels:
      organisation: TESTORG
      app: TestService
      provider: fabric8
      version: 0.1-SNAPSHOT
      group: com.test.service
    name: testservice-headless
    namespace: dpa-cab
  spec:
    clusterIP: None
    ports:
    - name: client
      port: 2181
      protocol: TCP
      targetPort: 2181
    - name: election
      port: 3888
      protocol: TCP
      targetPort: 3888
    - name: server
      port: 2888
      protocol: TCP
      targetPort: 2888
    selector:
      app: testservice
      provider: fabric8
      group: com.test.service
    sessionAffinity: None
    type: ClusterIP
- apiVersion: apps/v1
  kind: StatefulSet
  metadata:
    annotations:
      image.openshift.io/triggers: '[ ]'
    labels:
      organisation: TESTORG
      app: TestService
      provider: fabric8
      version: 0.1-SNAPSHOT
      group: com.test.service
    name: testservice
    namespace: dpa-cab
  spec:
    podManagementPolicy: Parallel
    replicas: 1
    selector:
      matchLabels:
        app: testservice
        provider: fabric8
        version: 0.1-SNAPSHOT
        group: com.test.service
    serviceName: testservice-headless
    template:
      metadata:
        labels:
          app: testservice
          organisation: TESTORG
          provider: fabric8
          version: 0.1-SNAPSHOT
          group: com.test.service
      spec:
        containers:
        - command:
          - sh
          - -c
          - 'trap : TERM INT; sleep infinity & wait'
          env:
          - name: KUBERNETES_NAMESPACE
            valueFrom:
              fieldRef:
                fieldPath: metadata.namespace
          image: busybox
          imagePullPolicy: Always
          name: testservice-ctr
          ports:
          - containerPort: 2888
            name: server
          resources:
            limits:
              memory: 500Mi
              cpu: "0.5"
            requests:
              memory: 256Mi
              cpu: "0.1"
          securityContext:
            privileged: false
        securityContext:
          fsGroup: 0
          runAsGroup: 0
          runAsUser: 0
        terminationGracePeriodSeconds: 300
    updateStrategy:
      type: RollingUpdate

kubernetes02.yml
---
apiVersion: v1
kind: List
items:
- apiVersion: v1
  kind: Service
  metadata:
    labels:
      organisation: TESTORG
      app: TestService
      provider: fabric8
      version: "0.1"
      group: com.test.service
    name: testservice-headless
    namespace: dpa-cab
  spec:
    clusterIP: None
    ports:
    - name: client
      port: 2181
      protocol: TCP
      targetPort: 2181
    - name: election
      port: 3888
      protocol: TCP
      targetPort: 3888
    - name: server
      port: 2888
      protocol: TCP
      targetPort: 2888
    selector:
      app: testservice
      provider: fabric8
      group: com.test.service
    sessionAffinity: None
    type: ClusterIP
- apiVersion: apps/v1
  kind: StatefulSet
  metadata:
    annotations:
      image.openshift.io/triggers: '[ ]'
    labels:
      organisation: TESTORG
      app: TestService
      provider: fabric8
      version: "0.1"
      group: com.test.service
    name: testservice
    namespace: dpa-cab
  spec:
    podManagementPolicy: Parallel
    replicas: 1
    selector:
      matchLabels:
        app: testservice
        provider: fabric8
        version: "0.1"
        group: com.test.service
    serviceName: testservice-headless
    template:
      metadata:
        labels:
          app: testservice
          organisation: TESTORG
          provider: fabric8
          version: "0.1"
          group: com.test.service
      spec:
        containers:
        - command:
          - sh
          - -c
          - 'trap : TERM INT; sleep infinity & wait'
          env:
          - name: KUBERNETES_NAMESPACE
            valueFrom:
              fieldRef:
                fieldPath: metadata.namespace
          image: busybox
          imagePullPolicy: Always
          name: testservice-ctr
          ports:
          - containerPort: 2888
            name: server
          resources:
            limits:
              memory: 500Mi
              cpu: "0.5"
            requests:
              memory: 256Mi
              cpu: "0.1"
          securityContext:
            privileged: false
        securityContext:
          fsGroup: 0
          runAsGroup: 0
          runAsUser: 0
        terminationGracePeriodSeconds: 300
    updateStrategy:
      type: RollingUpdate

.

@pmbsa : Thanks a lot, will try to reproduce and fix your issue accordingly.

HI Stella, is that cadastral correct? apologies for the silly question but its interesting to me that I dont see lakes attached to the homes in the cadastral which is unusual.
thanks
Paul
---- On Wed, 10 Jun 2020 11:33:38 +0100 stale[bot]<EMAIL_ADDRESS>wrote ----
Closed https://github.com/fabric8io/fabric8-maven-plugin/issues/1795.
—
You are receiving this because you were mentioned.
Reply to this email directly, https://github.com/fabric8io/fabric8-maven-plugin/issues/1795#event-3428992354, or https://github.com/notifications/unsubscribe-auth/AD4UP2CLY7LVI5OKE5WGFTLRV5OQFANCNFSM4LCF42EQ.
regards
Paul


Racer does not autocomplete Option.map

I noticed that racer currently is not able to auto complete Option.map (as well as other functions like Option.unwrap_or_else). Maybe it does not know how to auto complete functions which itself take some kind of function (like FnOnce e.g.) as an argument in the function signature?

The Option methods that don't complete in racer 1.2.6 are precisely those that have a type parameter on the method, and a type parameter must have a trait bound. Option::and:: does complete (has no bound on U).
str on the other hand can complete some methods with type parameters and bounds. str uses only where clauses though, no bounds embedded in the declarations of type parameters.

Have just pushed a patch which I hope fixes this


use all selectors, not just "main graph selectors", when collecting overloads-per-selector

Bug/issue #, if applicable: rdar://128284906
Summary
In #72, i introduced a processing step for cross-platform overload groups where those groups were different depending on the symbol graph that they appeared in. However, this implementation had a flaw: When cleaning up relationships to superfluous overload groups, i used the overloads' "main graph selectors" to restrict which lists of relationships to iterate over. This meant that such overload groups that appeared in extension symbol graphs were not properly cleaned up, leading to a crash in Swift-DocC. This PR updates the filter to use a new allSelectors property, which allows these extension overloads to be handled correctly.
Dependencies
None
Testing
Automated testing verifies the expected behavior.
Checklist
Make sure you check off the following items. If they cannot be completed, provide a reason.

[x] Added tests
[x] Ran the ./bin/test script and it succeeded
[ n/a ] Updated documentation if necessary

@swift-ci Please test


Add Loading page to your website

I want to add loading page to the website as when someone will open the website the loading page will come first then the main website content. It will improve the UI of the webpage also .

Go for it! @Sneha123-zudo

I would like to coontribute on this issue if @Sneha123-zudo is not contributing on it

@Spandan-Bhattacharya I would like to contribute under JWOC in this issue if @Sneha123-zudo is not working on this issue.

@Sneha123-zudo any updates?

I am working on it .

@Sneha123-zudo any updates?


Update CHANGE.md after 2.41.0 cut

Separate changes that added before or after 2.41.0 cut. Needs to add change in another PR after this.
Please add a meaningful description for your change here

Thank you for your contribution! Follow this checklist to help us incorporate your contribution quickly and easily:

[ ] Choose reviewer(s) and mention them in a comment (R: @username).
[ ] Mention the appropriate issue in your description (for example: addresses #123), if applicable. This will automatically add a link to the pull request in the issue. If you would like the issue to automatically close on merging the pull request, comment fixes #<ISSUE NUMBER> instead.
[ ] Update CHANGES.md with noteworthy changes.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

See the Contributor Guide for more tips on how to make review process smoother.
To check the build health, please visit https://github.com/apache/beam/blob/master/.test-infra/BUILD_STATUS.md
GitHub Actions Tests Status (on master branch)

See CI.md for more information about GitHub Actions CI.

R: @kileys

2.41.0 release has been cut and CHANGE should also propagate a new section. Currently I see changes provisioned in 2.42 and done in 2.41 is mixed.

LGTM


Single command PoC

PoC of a single python command as a base command, including autocomplete support for subcommands and arguments.
Please see scripts/singlescript.py for the python code, and AUTOCOMPLETE_POC.md for a description.
Description of changes
How to test
Related PRs
(Add links)

Notify
@DANS-KNAW/dataversedans

PoC successful. Before implementing this we need to design the command line (what commands, subcommands, etc?). Closing this PR.


chore: rollup 4 support

This should fix #48.

The CI failed due to incompatible rollup-plugin-dts peerDeps.


[BUG - 2.x (852c937)]

Branch or Release
Commit 852c937
Game and Engine Version
Pseudoregalia, 5.1
Describe the bug
In C++ mods, Hook::RegisterProcessConsoleExecCallback does not actually register a hook on Proton or Wine. It works fine on Windows.
To Reproduce

Launch game with C++ mod which uses Hook::RegisterProcessConsoleExecCallback
Enter console commands with the ConsoleEnabler lua mod, no callback is run

Desktop (please complete the following information):

OS: Linux Mint, Proton Experimental, Wine 8.0.2

Fixed by https://github.com/Re-UE4SS/UEPseudo/commit/970770a25130b2f3c36626d430a67308b5c1a858


jsnext:main

Now that the code is written in es6, could you add jsnext:main to the package.json, so we can include the es6 version and not the transpiled one ?
http://shuheikagawa.com/blog/2017/01/05/main-jsnext-main-and-module/

For this to work, you will need to also publish the src folder to npm (of course).

👍 Sure thing

Reading that article, it looks like I'll have to create another bundle for jsnext:main that doesn't use any ES6 features except import and export. Not as easy as just pointing to src/ as I use a lot more features than just those.

Well;, could at least have module for now.

Published in 1.1.4


[SPRINT] Dey+22 statistical test in RAIL

Dey+22 statistical test in RAIL
Implementation of calibrated predictive distributions (Dey+22) in rail.evaluate
Contacts:
Time: All day
Main communication channel: Slack
GitHub repo: https://github.com/biprateep, https://github.com/LSSTDESC/RAIL
Goals and deliverable
The goal of the sprint activity would be a first implementation of the code developed by Bitrateep Dey in rail.evaluate
Resources and skills needed
Familiarity with rail and qp, Dey+22 work, willingness to learn new things
Detailed description
The idea of the sprint is to kick-off the work of implementing the calibrated predictive distributions presented in Dey+22 into the rail.evaluate module. Bitrateep's code is publicly available and a discussion on how to integrate it into rail needs to be conducted. Bitrateep is going to participate to this sprint hack, helping us in understanding and implementing his code.

Pasting here some resources and topics for future expansion:

Local tests of conditional coverage via PIT: https://proceedings.mlr.press/v161/zhao21b/zhao21b.pdf
Recalibration based on conditional coverage: https://arxiv.org/abs/2205.14568 https://arxiv.org/abs/2110.15209

A non-exhaustive list of other tests of conditional coverage that we may want to evaluate and implement in the long run:

https://arxiv.org/abs/2106.00394
https://arxiv.org/abs/2002.10271
(More to be added after literature search)


Rebase main into scss-prettier and resolved conflicts

Hi @dannymidnight 👋 I rebased main since the recent style changes and went through all the conflicts in https://github.com/buildkite/docs/pull/1901 to make sure we have the latest changes.
Not sure what's the best approach to share this so, in the interest of git etiquette, I've raise this PR for https://github.com/buildkite/docs/pull/1901.

We can remove this branch now. I've updated the previous branch with a fresh run of npm run prettier-fix to resolve the conflicts.


Fix safegraph 7d averaged signals

Fixes #337.
Change summary

map the process() function using functools.partial rather than a local function.
Revert the output date format to be YYYYMMDD rather than YYYY-MM-DD.

publicly declaring my intent to resolve conflicts

Superseded by #356


Image does not load after being cancelled and instantly reloaded

imageView.af_setImageWithURL(url)
imageView.af_cancelImageRequest()
imageView.af_setImageWithURL(url)
The real world case we were having was:

in a collectionview, a cell calls af_setImageWithURL.
The collectionview is reloaded, then in the prepareForReuse() the request is cancelled.
If the same cell makes the same image url request the image does not load

Testing on iOS 8 & iOS 9 this fails on simulator and device

Hi @MartinChan1, thanks for opening this issue. If there is truly an issue with AlamofireImage here...we certainly want to fix it up!
With that said, I've dug heavily through the request and cancellation logic and I can't track down how you would be hitting this edge case. Cancellation should not cause any issues like this. I've created a new test case in b5f5b5ea to verify everything works as expected.
I'm going to close this issue out for now. If you could submit a sample project that demonstrates the issue, that would be tremendously helpful. If you provide any information that leads us to believe there really is an issue with AlamofireImage directly, then I'll be more than happy to re-open and investigate further.
Cheers. 🍻

Hi @cnoon I checked the test and the first image url does not match the second url. It only fails if the 2 urls are equal. The first is https://httpbin.org/image/jpeg, the second is https://httpbin.org/image/png

Oh man apologies @MartinChan1. That's my bad. I'll re-open this issue and continue to investigate this evening. Thanks for catching my mistake!

Okay @MartinChan1, I managed to get to the bottom problem and fixed the issue in 3dc13907.
This ended up being a very difficult issue to figure out how to solve in a backwards compatible manner. The core problem ended up being a race condition in our cancellation logic. We had always assumed you would cancel a download and would restart a different one. After digging into this scenario a bit more, I now realize that was actually a really poor assumption. Our download image logic was relying on the response request to match the current receipt request, otherwise we would early out. That always works if you're switching the images, but it NEVER works if you are reusing the same URL before the main thread has a chance to cycle.
Unfortunately, in most prepareForReuse scenarios, you will cancel the current request and start a new one all before the main thread has a chance to cycle. Because of this, it's pretty easy to hit this scenario.
If we weren't concerned about backwards compatibility, we would pass the RequestReceipt to the completion closure of the downloadImage API on the ImageDownloader. Since that's not ideal, I've added a card to our Trello backlog for the AFI 3.0 release. In the meantime, I've added the concept of a currentDownloadID that lives in the private global scope of the extension. That allows us to pass the unique identifier into the completion closure to allow us to check that it hasn't changed out from under us. This additional check allows us to handle this scenario as one would expect.
I'll be pushing out a patch release over the next couple of days with this fix. Thanks again for reporting this...much appreciated! 🍻

cc @kcharwood for visibility

Hmmmm...found another flaw in this approach. Reopening.

Okay, fixed the last remaining issue in a535fffa. We cannot store the currentDownloadID at the class level. It needs to be a per-instance level property. Therefore, I moved it to use another associated value on the UIImageView extension.

Great! thanks @cnoon


Multiple Crosshair

There is a possibility to use more then one crosshair?
The general idea is, The crosshair is equivalent to a Player Token and there is more then one player on a party.
There is a possibility to Add multiples crosshairs and, mode one at once by clicking on it?
The crosshair should see each other but only the selected one should interact with the polygon vision.
I'm trying to figure out this by encapsulating the battle-map-explorer inside an Vue.Js component with the array of players and changing the instance of the map by clicking on one token. (unfortunately there is no code about it yet, I'm just mind-coding it)
If you have some contact information that we can discuss about, please send-me

This is a reasonable feature request, but I am not working on this project anymore and don't plan to add any new features. Any future development will need to be done by someone else.

I mean, I'm probably try to develop this feature. But bro, this code sill a little complex to me.
This is a possible feature (I guess that should be the main question).

Yes, it definitely is possible to implement, but I guess the difficulty depends on your level of programming experience. I won't have time to provide support in terms of explaining the existing code or guiding how to implement this feature.

Don't worry about that. Will figure how the code works.
You've provide enough incentive to code!


XGBoost 4J spark giving XGBoostError: std::bad_alloc on databricks

I am using XGBoost 4J spark to create a distributed xgboost model on my data. I am developing my model in databricks.
The spark version is 3.1.1, scala 2.12 and XGBoost 4J 1.4.1
My cluster setup looks as below,

5 worker nodes with each worker of size 32GB and 16 cores
Driver node with 14GB of memory and 4 cores

My cluster configuration looks as below,
spark.executor.memory 9g
spark.executor.cores 5
So basically I have 10 executors with 4.6GB memory and 1 driver with 3.3GB of memory.

I imported the package as below,
import ml.dmlc.xgboost4j.scala.spark.{XGBoostRegressionModel,XGBoostRegressor}
In order to find the best parameters for my model, I created a parameter grid with train-validation split as shown below,
//Parameter tuning
    import org.apache.spark.ml.tuning._
    import org.apache.spark.ml.PipelineModel
    import Array._

//Create parameter grid
    val paramGrid = new ParamGridBuilder()
        .addGrid(xgbRegressor.maxDepth, range(6, 10, 2))
        .addGrid(xgbRegressor.eta, Array(0.01))
        .addGrid(xgbRegressor.minChildWeight, Array(8.0, 10.0, 12.0, 14.0))
        .addGrid(xgbRegressor.gamma, Array(0, 0.25, 0.5, 1))
        .build()

I then fit it to my data and saved it,
 val trainValidationSplit = new TrainValidationSplit()
      .setEstimator(pipeline)
      .setEvaluator(evaluator)
      .setEstimatorParamMaps(paramGrid)
      .setTrainRatio(0.75)

val tvmodel = trainValidationSplit.fit(train)

tvmodel.write.overwrite().save("spark-train-validation-split-28072021")

The error comes up when I try to load the model again,
  import org.apache.spark.ml.tuning._
    val tvmodel = TrainValidationSplitModel.load("spark-train-validation-split-28072021")

The error message is
XGBoostError: std::bad_alloc
I checked the executor and driver logs. The executor logs looked fine . I found the same error in driver logs (stderr and log4j files).  Both the log files are attached here.
stderr.txt
log4j-2021-08-03-13.log
Since the error message was mainly found in the driver logs, I tried the following solutions,

Increased the driver memory to 28GB
Increased the driver cores to 8
Made the driver same as worker.
set spark.driver.maxResultSize to 0
spark.driver.memory to 20g

But all the above failed. The log files clearly indicate that driver memory is not overloaded. Hence I am struggling to find out what the error actually is.
It would be great if one of you could point me in the right direction.

On further investigation, I increased the driver size to 128GB and 32 cores.  And got the same error.
I continuously monitored the driver metrics and none of it was over loaded.
Number of CPU used

Memory usage

CPU usage in capacity   Atleast 85% of CPU capacity is idle

Network

The log4J has two different error messages as

ERROR ScalaDriverLocal: User Code Stack Trace: ml.dmlc.xgboost4j.java.XGBoostError: std::bad_alloc

ERROR Instrumentation: ml.dmlc.xgboost4j.java.XGBoostError: std::bad_alloc

The stderr has one error message that looks as below,

ERROR Uncaught throwable from user code: ml.dmlc.xgboost4j.java.XGBoostError: std::bad_alloc

I am starting to think this is a bug with the package and not my cluster configuration.  Maybe the package is not compatible with scala save and load methods.

@wbo4958  Have you seen something similar before?

@jon-targaryen1995 I'm doing the exact same thing (same versions of scala, spark and xgboost4j) and I see the same error when I try to load my model. Any luck resolving this?

Could you please try nightly build: https://xgboost.readthedocs.io/en/latest/install.html#id4 ?

No, I didn't see this, seems the issue may be related to https://github.com/dmlc/xgboost/pull/7067

Is this issue resolved ? I am getting the exact error.

@jon-targaryen1995  What did you do to resolve the bad_alloc issues? (If you ever did) Nodes with more memory? Change a setting in your spark or xgboost params?

@wsurles-vamp, which version were you using to repro this issue? Could you file an new issue and detailed steps to repro it? With that, I will check it. Thx

thanks so much @wbo4958  ,
(I am a coworker of @wsurles-vamp)
this is sensitive data, I will need to create a fake dataset to reproduce to give to you and check what other details are ok to share in public. this is not on databricks.
I'll open a new issue soon with more details but here are some quick basics:
versions
xgboost 1.5.1 (xgboost4j_2.12-1.5.1.jar / xgboost4j-spark_2.12-1.5.1.jar)
xgboost 1.6 with fix from https://github.com/dmlc/xgboost/pull/7844
have seen with spark 3.1.2 and spark 3.2.1
we are using the pyspark wrapper from https://github.com/dmlc/xgboost/pull/4656#issuecomment-510693296
with only edit being adding in killSparkContextOnWorkerFailure param
we have seen it while running python 3.9 and python 3.7

some dataset info
rows: 109 million
rows with label=1 : 51 thousand
cols: 254
'objective': 'binary:logistic'
'treeMethod': 'hist'
there are no cols of all 0s but some are very sparse.
we have a few datasets generating this error, this is just 1 of them, row/col count differs between them. we have some datasets of similar or bigger sizes not getting the error, and it can be intermittent with some rounds of hyperparam tuning getting it but others not, though we haven't notice a correlation between params like maxDepth and the error.

here is our specific stack trace:
ml.dmlc.xgboost4j.java.XGBoostError: std::bad_alloc
	at ml.dmlc.xgboost4j.java.XGBoostJNI.checkCall(XGBoostJNI.java:48)
	at ml.dmlc.xgboost4j.java.DMatrix.(DMatrix.java:54)
	at ml.dmlc.xgboost4j.scala.DMatrix.(DMatrix.scala:43)
	at ml.dmlc.xgboost4j.scala.spark.Watches$.buildWatches(XGBoost.scala:574)
	at ml.dmlc.xgboost4j.scala.spark.PreXGBoost$.$anonfun$trainForNonRanking$1(PreXGBoost.scala:480)
	at org.apache.spark.rdd.RDD.$anonfun$mapPartitions$2(RDD.scala:863)
	at org.apache.spark.rdd.RDD.$anonfun$mapPartitions$2$adapted(RDD.scala:863)
	at org.apache.spark.rdd.MapPartitionsRDD.compute(MapPartitionsRDD.scala:52)
	at org.apache.spark.rdd.RDD.computeOrReadCheckpoint(RDD.scala:373)
	at org.apache.spark.rdd.RDD.$anonfun$getOrCompute$1(RDD.scala:386)
	at org.apache.spark.storage.BlockManager.$anonfun$doPutIterator$1(BlockManager.scala:1481)
	at org.apache.spark.storage.BlockManager.org$apache$spark$storage$BlockManager$$doPut(BlockManager.scala:1408)
	at org.apache.spark.storage.BlockManager.doPutIterator(BlockManager.scala:1472)
	at org.apache.spark.storage.BlockManager.getOrElseUpdate(BlockManager.scala:1295)
	at org.apache.spark.rdd.RDD.getOrCompute(RDD.scala:384)
	at org.apache.spark.rdd.RDD.iterator(RDD.scala:335)
	at org.apache.spark.rdd.MapPartitionsRDD.compute(MapPartitionsRDD.scala:52)
	at org.apache.spark.rdd.RDD.computeOrReadCheckpoint(RDD.scala:373)
	at org.apache.spark.rdd.RDD.$anonfun$getOrCompute$1(RDD.scala:386)
	at org.apache.spark.storage.BlockManager.$anonfun$doPutIterator$1(BlockManager.scala:1481)
	at org.apache.spark.storage.BlockManager.org$apache$spark$storage$BlockManager$$doPut(BlockManager.scala:1408)
	at org.apache.spark.storage.BlockManager.doPutIterator(BlockManager.scala:1472)
	at org.apache.spark.storage.BlockManager.getOrElseUpdate(BlockManager.scala:1295)
	at org.apache.spark.rdd.RDD.getOrCompute(RDD.scala:384)
	at org.apache.spark.rdd.RDD.iterator(RDD.scala:335)
	at org.apache.spark.scheduler.ResultTask.runTask(ResultTask.scala:90)
	at org.apache.spark.scheduler.Task.run(Task.scala:131)
	at org.apache.spark.executor.Executor$TaskRunner.$anonfun$run$3(Executor.scala:506)
	at org.apache.spark.util.Utils$.tryWithSafeFinally(Utils.scala:1462)
	at org.apache.spark.executor.Executor$TaskRunner.run(Executor.scala:509)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
	at java.lang.Thread.run(Thread.java:748)

A couple other quick points of note...
We use dense vectors (to ensure 0s are treated as 0.)
We have a 26 node spark cluster with 120GiB of memory, though we have seen it on nodes with 180. And well before memory has run out, as many others have mentioned.
Seen it on centos7 and rocky linux 8

we have a better idea of what is going on now, we'll create a proper issue soon but might be a few days
this is another related question https://discuss.xgboost.ai/t/useexternalmemory-no-longer-does-anything/2761

FYI @kstock
From xgboost4j-spark 1.6.1, you don't need killSparkContextOnWorkerFailure parameter any more, since 1.6.1 has introduced the spark barrier execution mode to ensure every training task will be launched at the same time and spark will kill the failed training job if some training tasks failed. In a word, xgboost will not stop SparkContext any more.

we are using the pyspark wrapper from https://github.com/dmlc/xgboost/pull/4656#issuecomment-510693296
with only edit being adding in killSparkContextOnWorkerFailure param

Looks like the error happened in building DMatrix,
From the error log "ml.dmlc.xgboost4j.java.XGBoostError: std::bad_alloc", looks like OOM issue?
@trivialfis any idea about this error log?
BTW, the dense vector may blow up the memory very quickly.
BTW, do you have got some chance to use xgboost4j-spark-gpu to train?

@wbo4958, We don't run out of memory per se, but xgboost does seem to increase the size of the memory it requests by a factor of 1.5 and eventually this is a very big jump and too much for the system to provide, and this is when we get the bad_alloc error.
In this graph of system memory (top) and committed memory (bottom), you can see the increase in committed memory in stages as system memory is used. There are two fits on this chart. The first fit fails (in the middle of the chart) when the big committed memory jump happens. (note: there is still ~40GiB available when it fails, the bottom of the chart is not 0)
Then the second fit finishes a little sooner and never has that last large memory commit, and it succeeded.

With a debugger attached to custom build we saw Resizing ParallelGroupBuilder.data_ to<PHONE_NUMBER> elements at the time of the failure. The elements count was steadily increasing. But I think it's the memory request thats causing the failure.
@mallman can go into more detail
We are looking into getting more memory on our cluster and spreading out the xgboost load as much as possible, but is there something we could do to make the committed memory grow more evenly? This is not available in the pyspark parameters available to us, I know. Is that an update you could make?

Hi @trivialfis, any idea about https://github.com/dmlc/xgboost/issues/7155#issuecomment-1113898292.

The QuantileDMatrix is coming to CPU as well if refactoring goes well.  The ParallelGroupBuilder is used during construction of DMatrix.

Hi guys, do you have any updates on this? I am getting this error when I try to read a logged model from mlflow. I get the error when I try to run the line loaded_model = mlflow.spark.load_model(run_path). I see XGBoost suddenly starts creating more and more jobs and eventually crashes.

Hi guys, do you have any update on this? I am getting this error when reading a Spark pipeline from mlflow. I get the error when I try to run the line loaded_model = mlflow.spark.load_model(run_path). Looks like XGBoost suddenly starts creating more and more jobs (a bit strange if I just want to load the model because I am doing nothing with it yet) and eventually crashes.

@olbapjose, loaded_model = mlflow.spark.load_model(run_path) is the python code? so you were trying to load the model directly, and it crashed?

@wbo4958 Exactly, I was trying to load a trained ML pipeline that I had saved previously, where one of the stages is a Spark XGBoost classifier, and it crashes when it tries to load the XGBoost stage. The stack trace looks like the one pasted in the first message. I'm working in a Databricks notebook.

@olbapjose Would you share the model with the zip format, then we can repro in databricks?

@wbo4958 I suspect it is closely related to #8074 , where I have uploaded the trained model I am trying to read. That issue arises both in a Databricks notebook and when using databricks-connect.

Regarding https://github.com/dmlc/xgboost/issues/7155#issuecomment-1113898292 . I think the best way forward is to improve support for QuantileDMatrix in jvm packages.


volume_level attribute is missing after HA start/integration reload

IMPORTANT: Please search the issues, including closed issues, and the FAQ before opening a new issue. The template is mandatory; failure to use it will result in issue closure.
Describe the bug

Same to #1756
"After HA restart, looking at my echo state, and the volume_level prop is missing.
so its not possible to know what is the current level.
The UI component show the slider at 0 positionin this case.
It will appear later in the state, only if i send a tts with volume"
To Reproduce

Setup Alexa Media Player
Restart HA/Reload integration
See error

Expected behavior

volume_level attribute is at least defined and in best case set to current volume level
Screenshots

System details

Home-assistant (version): 2023.2.5
alexa_media (version from const.py or HA startup): 4.6.0
alexapy (version from pip show alexapy or HA startup): 1.26.4
Amazon 2FA is enabled (y/n). <!---We will not debug login issues if unanswered--->: y

Logs
Please provide logs.
Additional context

Volume level only becomes available if the media player is playing supported music or receives some action that sets it. Before that point, the data is not available to the component, unfortunately. That's an amazon issue.


release source package should contain cythonized source.

Installation from source (usually linux), can be painful to users, because of Cython being a moving target, and can be slow to build on some platform (e.g: rapsberry pi), if you have to build multiple versions to find a working one, pain starts to grow. We can't add Cython to dependency (and this fix the version here), because it's not needed at runtime, just at build time, it would be wasteful, and potentially wouldn't even solve the issue, because pip doesn't know it has to install it before installing kivy.
However, the Cython project advise shipping C code produced by Cython in packages, to avoid the problem entirely: distributing cython modules

It is strongly recommended that you distribute the generated .c files as well as your Cython sources, so that users can install your module without needing to have Cython available.

I don't think we want to add that to the repository, but we certainly do want to add it to the source package we build for pypi.
This action would be part of the release process, probably just a:
cythonize **/*.pyx

before the
 python setup.py sdist

for release.
And we could remove the requirement to install Cython for people installing releases (of course, it would still be required for building from master, as having the C source in master would be nightmarish if different devs have different versions of Cython, outputing different C code…)
This change could also potentially benefit Python-for-android.
Any downside to consider?

@tshirtman: I see a lot of merges here, but I am not competent to decide if this is closed yet. What remains?


Cannot delete emails with no subject in web mail

One possible solution is to show [no subject] for those emails. Also we could allow clicking anywhere on the message (date and from).

Fixed in https://github.com/regnull/ubikom-web/commit/fd4c5ff9f7d2811b19e8148eb04c00b81f7cf82d


Run build across multiple machines

I am having an issue running the same job but across multiple servers.  I wrote a utility for our development team to make the job of running builds easier - especially if you want to rebuild across multiple machines.
Each VM has Jenkins and each Jenkins has its own API key defined (all are unique).
So the code looks like this:
foreach(var selection in selections) <- from a list of objects
{
   var url = string.format(selection.url)
   var strKey = selection.key
   var jc = new JenkinsClient
   {
      BaseUrl = url,
      UserName = "Admin",
      ApiToken = strKey
   };
  jc.Jobs.Build() <- this will cause a crash saying "Not authorized" on the 2nd or greater build being run
or

var buildResult = jc.Jobs.BuildAsync(...) <- this will not crash but again, only the first job runs
}

Any idea why this does not work?  If I just run  a single build - that always works.

Scratch that - my bad.  Working fine.


Suggestion: Mob Drops

You should add a new feature to customize mob drops.
For example, a script something like
mobdrops.add(mob, item, min, max)
mobdrops.add(Villager, minecraft:emerald, 0, 1) //Drops 0-1 emerald when villager is killed.
mobdrops.remove(mob, item)
mobdrops.remove(Witch, minecraft:redstone) //Removes redstone from Witch drops.
mobdrops.removeall(mob)
mobdrops.removeall(Witch) //Removes all Witch drops.

what about player-only kills?

@UndeadZeratul That's what I was implying. There could also be a true/false parameter where it must be player kill or not.

Ah, the first one mentions in the comment when villager is killed, but that could be from a zombie, or some form of mob farm that doesn't allow player-only drops.
I was thinking of a true/false parameter as well, since just setting the min to 0 doesn't imply player-only drops.
Either that, or a different method entirely, something like:
mobdrops.addPlayerOnly(mob, item, min, max);
mobdrops.addPlayerOnly(Zombie, <minecraft:bread>, 2, 3); // Drops 2-3 bread when a zombie is killed by the player.

The only thing I'm noticing is that MineTweaker/CraftTweaker (last I looked into it, back in 1.7.10) doesn't have any structure for entities, does it?  Would the mob parameter be a String representing the mob's name?

@UndeadZeratul
I would say the mob parameter be a string of the entity ID's, and then translated into the coding net.minecraft.mob.whatever it is.
Perhaps,
To remove the drop table of a mob.
mobdrops.remove(mob)
mobdrops.remove(Spider);
To add
mobdrops.add(mob, item, min, max, chance, playeronly)
mobdrops.add(Villager, minecraft:emerald, 1, 1, 0.10, true);
Villager has a 10% chance of dropping an emerald on player kills only.

The syntax will be:
//makes sheep drop dirt with a stacksize of between 1 and 5 (inclusive)
game.getEntity("Sheep").addDrop(<minecraft:dirt>, 1, 5);
//makes sheep drop sticks when killed by a player with a stacksize of between 1 and 5(inclusive)
game.getEntity("Sheep").addPlayerOnlyDrop(<minecraft:stick>, 1, 5);
//makes sheep drop a diamond
game.getEntity("Sheep").addDrop(<minecraft:diamond>);
//makes sheep not drop any wool (wild card is used to all Sheep colours are affected)
game.getEntity("Sheep").removeDrop(<minecraft:wool:*>);


[Enhancement] optimize storage medium infer when having mixed types

What type of PR is this：

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

Which issues of this PR fixes ：

Fixes #18653
Problem Summary(Required) ：

When storage_medium property is not explicitly specified on creating table, we infer the storage medium type
based on the types of storage paths reported by backends. Here is the rules,

If the storage paths reported by all the backends all have storage medium type HDD,
we infer that user wants to create a table or partition with storage_medium=HDD.
If the reported storage paths have both SSD type and HDD type, and storage cool down feature is
not used, we also infer with HDD type.
In other cases, it's SSD type.

Checklist:

[x] I have added test cases for my bug fix or my new feature
[ ] This pr will affect users' behaviors
[ ] This pr needs user documentation (for new or modified features or behaviors)

[ ] I have added documentation for my new feature or new function

Bugfix cherry-pick branch check:

[x] I have checked the version labels which the pr will be auto backported to target branch

[x] 3.0
[x] 2.5
[x] 2.4
[x] 2.3

[FE PR Coverage Check]
:heart_eyes: pass : 2 / 2 (100.00%)
file detail

path
covered_line
new_line
coverage
not_covered_line_detail

:large_blue_circle:
com/starrocks/catalog/DataProperty.java
2
2
100.00%
[]

run starrocks_admit_test

run starrocks_admit_test


feat: WYSIWYG Markdown Editor

Overview
Implement the core markdown editor component for the application. Use the tiptap editor suite.
Requirements

True "What you see is what you get" (WYSIWYG) editor using Tiptap Markdown shortcuts
Use any other extensions and play around to improve the user's experience!
https://tiptap.dev/docs/examples
https://tiptap.dev/docs/editor
https://tiptap.dev/docs/editor/extensions/overview

@achyuthcodes30 @PhoenixFlame101 @QubitMatrix
if it's paid issue , i would love to contribute

@kabeer95 this repository is not accepting contributions at the moment!


t_max in QHA calculations via Python API

Hi,
As a user via the Python API for a QHA calculation, I want to create a Phonopy object and then call the set_thermal_properties method with, for example, a t_max=1000 and t_step=10. When I then call the get_thermal_properties method, the last 4 temperatures are truncated and I am left with T=[0, 10, ..., 950, 960] where I would expect the list to go to 1000.
I assume I am using the code correctly (if not, please advise) and the truncation is done as a side effect of the calculation, but I think it would be more reasonable to extend the temperature range automatically within Phonopy in order to return the temperature range that I, the user, expect when I pass in t_max as a parameter.

Do you mean about the usage of Phonopy class? If so, it is something wrong. It should not be truncated. But PhonopyQHA may truncate depending on the range of input data.

We are using an instance of a Phonopy class to get the thermodynamic data for each structure in a set of structures in a QHA calculation and then passing the calculated energies, heat capacities and entropies to PhonopyQHA, which truncates as you said. Is there a more correct way to do this without truncation?

Numerical differentiation up to second order is done in PhonopyQHA, so it needs more temperature points than the tmax. So you need to input thermal_properties obtained by Phonopy which have at least extra 4 temperature points, i.e., Phonopy.set_thermal_properties with larger tmax is necessary than the tmax for PhonopyQHA. It's tricky and not documented well.

So since we are going through using the Phonopy class first, there doesn't appear to be a straightforward way to do this other than extend the t_max range by 4 elements 'by hand', correct?

Yes, I think so.
I understand that the problem is that PhonopyQHA is not well designed. Maybe it is better to prepare another QHA API that wraps Phonopy and current PhonopyQHA. PhonopyQHA is getting old and  slowly dying. Now is the good timing to improve it if I can have time to do it...

Let me add my penny to the discussion. Maybe this can be solved at the level of documentation. t_max is the highest temperature used in the calculation. Silently extending the range may be not so good idea in many pathological cases (e.g. systems with structural phase transition). I, personally would prefer to have it work like it is working now and have this feature clearly marked in the docstring and manual.

I agree with @jochym. At least I will keep PhonopyQHA code as it is and hopefully documentation will be written for it.
To make thermal expansion calculation under QHA more clever is also my direction to do. This will be done by calling PhonopyQHA, so PhonopyQHA will not be modified.


refactor testcase

[Current coverage][cc-pull] is 91.06%

Merging [#599][cc-pull] into [master][cc-base-branch] will increase coverage by +0.18%

2 files (not in diff) in ...tjson/support/spring were modified. more

Misses -17
Partials +1
Hits +16

1 files (not in diff) in ...aba/fastjson/support were modified. more

Misses -12
Partials -1
Hits +13

2 files (not in diff) in ...com/alibaba/fastjson were modified. more

Misses -3
Partials -1
Hits +4

@@             master       #599   diff @@
==========================================
  Files           108        108
  Lines         14937      14937
  Methods           0          0
  Messages          0          0
  Branches       3495       3495
==========================================
+ Hits          13569      13602    +33
+ Misses          716        684    -32
+ Partials        652        651     -1

Powered by Codecov. Last updated by [a5659d0...57200d2][cc-compare]
[cc-base-branch]: https://codecov.io/gh/alibaba/fastjson/branch/master?src=pr
[cc-compare]: https://codecov.io/gh/alibaba/fastjson/compare/a5659d066f045d14fa6aa25c08c92afd702031e0...57200d23e08ba061a62ff8aca30cd0980fdb5a14
[cc-pull]: https://codecov.io/gh/alibaba/fastjson/pull/599?src=pr

testcase failed

@wenshao which case failed?

i alread fixed it.

thank u.


Feat: Searchpage for webpack scaffold

Adds search page on discovering scaffolds made by webpack.
Ref #2718
Aligned to next branch

@EugeneHlushko against master or next?

Preview wont work until we update next branch and rebase this one. @evenstensberg i would like to do small refactor on jsx here, instead of leaving many suggestions if you are not planning on adding any more commits.

@EugeneHlushko nope, I'm all done. Do you mind taking over the responsibility for this PR if so? I'll help you get it landed by what I can help out with. Thanks! 🥰

JFY: this is blocked in until next is updated with master and this branch updated with latest next.

Gotcha


Similarities with redux-schema?

I recently noticed a new project called https://github.com/ddsol/redux-schema, and it seems to have some similarities with redux-orm.  I asked the author of redux-schema what his thoughts were (https://github.com/ddsol/redux-schema/issues/1), and I'm curious what your takeaway is as well.

Nice to see a different permutation on the problem. My takeaway from a glance is pretty similar to @ddsol, looks like redux-schema takes over a bigger part of redux by returning a modified store, and taking over the action creator and reducer responsibilities, whereas redux-orm gives you a way to define reducers and selectors alongside any other business logic you execute through Redux.
Here are my current thoughts on the problem topic of related data in Redux. In a general sense, redux-orm and redux-schema are hacks. Hacks that are very useful and needed, because the Redux reducer architecture does not conform easily to interrelated data. When reducers need info from sibling reducers, we come up with all kinds of hacks, such as

querying data in the action creator and putting it in the action object to keep reducers pure, or
making the reducer control a bigger slice of state, or
passing relevant state down to child reducers as an extra argument.

You know what would eliminate these hacks? A proper immutable database on the front-end. Switch the Redux state object for a database where you can specify mutations and queries declaratively, like SQL or Datalog. Action creators return update statements, perhaps using a nested select statement that specifies some value used in the update. No reducers, since the database knows what to do based on the update statement you gave it. Selectors are just query statements. Relationships between data are acknowledged by the database.
If you're programming in functional style, the declarative update and select statements go well with the paradigm. With OO programming, you could use the statements or build an ORM around that database.
But building a proper database is no small feat. The thing with using JavaScript functions to update data (i.e. reducers) is that you can do anything, no matter how simple or complex.  A database needs to implement a complex query language that can handle all those complex cases, and handle them in a performant way.
In Redux, and on the web generally, you store both business state and UI state. UI state goes well with a Redux-like composition where there are no interdependencies between slices of state. Business state with relationships does not. The combination of keeping business state and UI state in the same place is convenient but it's more difficult for a single database to support both well.
One project that has taken on the feat of a front-end database is datascript. I really like that it lets you specify updates and queries with data. That would make it really easy to test. And the query language is very expressive. However, the interoperability with pure JavaScript puts me off currently, as you need to write the queries as EDN strings instead of data using JavaScript built-ins. Also, the datomic/datascript database has some performance tradeoffs given its expressive query language.
lovefield is a SQL database on the front-end, but it's not immutable. Maybe an immutable version of that would be feasible. Or maybe an immutable database with a query language that is works specifically for the web, similar in syntax to GraphQL.
I believe the overall trend is that as front-end apps get more complex, front-end databases will become more and more viable. We just need a good immutable one!

Thanks for the very detailed answer.
I've certainly observed that the use of relational data inside of Redux definitely does trend towards becoming an actual "immutable database".  On which note, I ran across https://github.com/brandonbloom/jseg recently, which looks like it may sorta be along those lines.
Also, I agree with your thoughts on Datascript.  The concept is interesting, but while it may be "usable" from Javascript, the current API is not particularly JS-friendly.

Well, the reason i decided to try 'redux-orm', because i already implemented 'fast-hack' for almost same, but with plain JS objects and at current stage it's still possible to switch for something other. I was think to refactor and use ImmutableJS Records, but found your solution that's already more solid, than mine.
So looks like everyone tried to make own version that solves same problems :) Maybe time to unite :)

Great response @tommikaikkonen,
What do you think would be the ideal state for complex front end apps with heavy business logic? Would that be a performant DB (doing indexing and lookups) + ORM layer (making it easy to manage relationships) + API layer (syncing data with server) for the business logic and Redux for UI state (Redux would probably use the DB layer via redux-thunk or similar)?
I am still trying to find the right mindset for implementing large-scale apps.

@Elijen, I think the ideal state depends on the project. An array of objects goes a long way in JS. When everything is already in memory, looping through 50-100 objects for querying or copying an array of the same length occasionally is not too slow. People developed complex apps back when Backbone came out.
For front-end, an important factor is whether the app is mainly offline or online. With the latter, it's possible to leave the front-end state simple and do the heavy lifting on the backend. This saves reimplementing business logic in two places. But it's not always possible.
Maintaining write-side business logic on the frontend is not too hard with larger datasets without a DB, but for queries you start needing indexes on more than just the primary keys. A common case is a user sorting a list. An index on the sort column will make that operation on a list of 200 objects snappy versus an O(N) full scan or a backend call. But no one wants to maintain custom indexes when you have proper database systems to do that! It would bring an order of magnitude more complexity. In these cases using a DB can bring a lot of value but it's very uncommon for people to do that.
Your description is one possibility of the structure for a non-trivial app. An ORM is not always needed if the DB handles relationships natively, Redux is not the only sane state management pattern, etc.
I wouldn't look for a single ideal solution, but I think there's a lot to explore in improving state management from non-trivial apps! :)


Do I need to normalize ATAC-seq matirx?

Hi,
I am using gchromVAR to identify the cellular targets for disease by using snATAC-seq, and I have some fine-mapped SNPs.
I have clustered and annotated the cells and generated a bulk ATAC-seq matrix of peaks by cell types,
so do I need to do some normalization for this matrix before I use it as input?
Thanks!
Li

Sounds like your good to go! The method will GC and library size normalize for you.
Jacob


feat(ui): save splitpanes size to local storage

Description
Saves the size of the splitpanes to the local storage for convenience when reloading between testing sessions

Please don't delete this checklist! Before submitting the PR, please make sure you do the following:

[ ] It's really useful if your PR references an issue where it is discussed ahead of time. If the feature is substantial or introduces breaking changes without a discussion, PR might be closed.
[ ] Ideally, include a test that fails without this PR but passes with it.
[ ] Please, don't make changes to pnpm-lock.yaml unless you introduce a new test example.

Tests

[ ] Run the tests with pnpm test:ci.

Documentation

[ ] If you introduce new functionality, document it. You can run documentation with pnpm run docs command.

Changesets

[x] Changes in changelog are generated from PR name. Please, make sure that it explains your changes in an understandable manner. Please, prefix changeset messages with feat:, fix:, perf:, docs:, or chore:.

This was such an easy contribution! I hope it helps others, too 😄
The UI is already pretty nice, to be honest; keep up the good job! 👏


BLD: implement connection pooling

Closes #59.
Draws fairly heavily from https://stackoverflow.com/q/7592056

Releasing connections, taking inspiration from https://stackoverflow.com/a/2225275 and @luster's advice.


How to better calc current balance

How to better calculate current balance of specific wallet? How do you guys do it? I need to know how much confirmed/unconfirmed funds but wont load all TX it'll ruin my server if do it with PHP. mb you using some api/etc? Explain please if possible, thanks!

query https://chain.so/api/v2/get_tx_unspent/btc/1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa
and sum of "value" = current available balance.

I think better use local base to avoid downtime but didnt find any solution how to do it

You could query bitcoind, or better yet, use an API. You could look at using electrum servers (plenty of redundancy) https://github.com/bit-wasp/stratum-php - though it uses ReactPHP which might be a learning curve. You could implement it using synchronous sockets if you like, though.

That said, this question is off topic here, you need to find your own data storage solution :)


⚠ Spryr has degraded performance

In c3a27f7, Spryr (https://spryr.com) experienced degraded performance:

HTTP code: 200
Response time: 3088 ms

Resolved: Spryr performance has improved in 92d80d5 after 7 minutes.


Add Naxios as an option to integrate-contracts.md

Add Naxios as an option to set up Wallet and Contract integration.

@wpdas Sorry for jumping in, but I'd like to invite you to participate in the Race of Sloths - a fun and gamified open-source contributions program. Consider mentioning @race-of-sloths user in your github comment or PR description to join!
See how the flow works here: https://github.com/near/nearcore/pull/11778

@gagdiez Thank you for calling!
@wpdas Thank you for the contribution! Join Race of Sloths by simply mentioning me in your comment/PRs description and start collecting Sloth Points through contributions to open source projects.
What is the Race of Sloths

Race of Sloths is a friendly competition where you can participate in challenges and compete with other open-source contributors within your normal workflow
For contributors:

Tag @race-of-sloths inside your pull requests
Wait for the maintainer to review and score your pull request
Check out your position in the Leaderboard
Keep weekly and monthly streaks to reach higher positions
Boast your contributions with a dynamic picture of your Profile

For maintainers:

Score pull requests that participate in the Race of Sloths
Engage contributors with fair scoring and fast responses so they keep their streaks
Promote the Race to the point where the Race starts promoting you
Grow the community of your contributors

Feel free to check our website for additional details!

Bot commands

For contributors

Include a PR: @race-of-sloths include to enter the Race with your PR

For maintainers:

Invite contributor @race-of-sloths invite to invite the contributor to participate in a race or include it, if it's already a runner.
Assign points: @race-of-sloths score [1/2/3/5/8/13] to award points based on your assessment.
Reject this PR: @race-of-sloths exclude to send this PR back to the drawing board.
Exclude repo: @race-of-sloths pause to stop bot activity in this repo until @race-of-sloths unpause command is called


Add "Deprecated in"/"Removed in" flags in OpenSSL 1.0.2 to help with migration

It's difficult to migrate code right now because we don't know what functions will be gone when moving to 1.1.1 without first trying to compile against it. Can flags be added to 1.0.2 to mark all removed functions so we know what we need to rework before switching versions? Have an IFDEF that can be set that will disable all functions that will be removed in a future version.

This is obsolete request for 1.0.2/1.1.1 migration. We now properly signalize functions that will be removed in future via deprecations in 3.0.


few changes

nameof(Amex) could be better than "Amex".

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

ID: d118f070-8743-e905-2d08-dc725a4e8b5f
Version Independent ID: fae35cbd-75ae-4448-f066-7c91ccc35779
Content: Using Enumeration classes instead of enum types
Content Source: docs/architecture/microservices/microservice-ddd-cqrs-patterns/enumeration-classes-over-enum-types.md
Product: dotnet-architecture
Technology: microservices
GitHub Login: @nishanil
Microsoft Alias: nanil

Hi @dengere,
There are a few other changes too that I'd probably make to this C# and the content of the article. Thanks for posting this issue, I'm marking it as up-for-grabs and leaving a few additional notes here for any takers.

[ ] Modernize C# bits
[ ] Review content for accuracy, grammar, and relevancy
[ ] Consider removing links to old blogs

Considerations
Tuple .ctor, expression bodied members, pattern matching, etc.
public abstract class Enumeration : IComparable
{
    public string Name { get; private set; }

    public int Id { get; private set; }

    protected Enumeration(int id, string name) =>
        (Id, Name) = (id, name);

    public override string ToString() => Name;

    public static IEnumerable<T> GetAll<T>() where T : Enumeration =>
        typeof(T).GetFields(BindingFlags.Public |
                            BindingFlags.Static |
                            BindingFlags.DeclaredOnly)
                  .Select(f => f.GetValue(null)).Cast<T>();

    public override bool Equals(object obj)
    {
        if (obj is Enumeration otherValue)
        {
            var typeMatches = GetType().Equals(obj.GetType());
            var valueMatches = Id.Equals(otherValue.Id);

            return typeMatches && valueMatches;
        }
        return false;
    }

    public int CompareTo(object other) => Id.CompareTo(((Enumeration)other).Id);

    // Other utility methods ...
}

Use nameof operator:
public class CardType : Enumeration
{
    public static readonly CardType Amex = new CardType(1, nameof(Amex));
    public static readonly CardType Visa = new CardType(2, nameof(Visa));
    public static readonly CardType MasterCard = new CardType(3, nameof(MasterCard));

    public CardType(int id, string name)
        : base(id, name)
    {
    }
}

Hello @IEvangelist,
Could you please explain the benefit of using Tuple .ctor here? It's harder to understand for the newcomers and didn't add any improvements (yeah, except fewer lines of code).
I think Tuple .ctor should define in a code style guidelines for your development team. It is not a mandatory or common use case.  It depends on your preferences but adds complexity to understand to people who never use Tuples before.
The purpose of the article shows how to use enumeration classes, but not demonstrates the feature "Tuple .ctor". So, keep it simple.
The article just shows code from eShopOnContainers as an example:

The ordering microservice in eShopOnContainers provides a sample Enumeration base class implementation, as shown in the following example.

And if you look at the source code, you won't find any Tuple .ctor.
2 solutions here:

remove reference to code of eShopOnContainers and improve example
leave the reference to code of eShopOnContainers and leave it as is

The second one:
    public override bool Equals(object obj)
    {
        if (obj is Enumeration otherValue)
        {
            var typeMatches = GetType().Equals(obj.GetType());
            var valueMatches = Id.Equals(otherValue.Id);

            return typeMatches && valueMatches;
        }
        return false;
    }

I think, guys from eShopOnContainers followed "fail fast" approach, it doesn't require to add a level of nesting and increase Cognitive Complexity. It is common practice to check parameter and returns if it is not valid. I would suggest not changing this method.

Hi @Marusyk,
Thank you for reaching out, I'm good with that. I was just stating a few things that I probably would have done and marked this as up-for-grabs. I didn't even have it open in an IDE, but I hear your concerns and agree with them to an extent. I agree that tuple .ctor is controversial and that it is a matter of preference. I also agree that we should try to keep synchronized with the examples. Feel free to make the scoped changes we discussed here, submit a PR and we'll happily review it. Thanks again.


Improved Error Messages

Describe the feature
I saw that Astro 2.0's error messages were quite lovely, and thought I'd share and pose the question of whether we could make similar enhancements to Nuxt's error messaging.

The two biggest wins I see implemented:

Direct links to docs related specifically to the type of error
The ability to "open in editor" directly to the file in your code that initiated the error

Beyond that, just the overall aesthetic presentation of the error is well-executed.
I'd be more than happy to assist in any way possible to improve error messaging - particularly on the visual design / presentational side. I'll do some initial digging into the Nuxt code to see how you currently source errors and where the presentation template resides. Would love to hear thoughts from the core team and community on these and other ways to improve the error messaging!
Additional information

[X] Would you be willing to help implement this feature?
[ ] Could this feature be implemented as a module?

Final checks

[X] Read the contribution guide.
[X] Check existing discussions and issues.

Hey,
This would be indeed quite useful and helpful in debugging and understanding where the issue was actually caused. Also where to look for the resources to learn more about this problem.
If you don't mind, I would love to take a look at this feature request and prepare some sort of RFC on how this could be implemented.
What do you think @danielroe ? :)

Part of this problem will be solved by new cli infra and stack trace utils. Still RFC would be amazing!

@pi0
You mean this https://github.com/nuxt/nuxt/issues/18659?
Regarding RFC. I will take a look at other RFC examples in the repo and will work on one over the weekend if that is ok with @danielroe as well :)

Browser stack trace handling is probably different which is daniel working on it.

I see.
I am assigning myself to this issue and will update you with my RFC proposal in a few days :)

Better Error Messages in Nuxt RFC
This Request For Comments document is based on the issue raised here.
The general idea is to have a better error message in Nuxt that will show the users where they have made a mistake and where to look for additional information such as documentation.
Below, I have summarized my research on Astro errors and how they could be developed in Nuxt. Let me know what you think about it. Once agreed, I could start the implementation part of phase one and later on phase two :)
This is also my first RFC for Nuxt so if there are areas that I should focus more or think about different solutions, please let me know @pi0 @danielroe @manniL . I am open to any feedback as always :)
Inspiration for this RFC taken from the amazing RFC by @lihbr 💚
Labels are going as follows:

🟠 Status: to be discussed
🔴 Status: rejected
🟢 Status: approved

Error Messages in Astro
I checked how the error messages are created in the Astro framework. All errors are created by using a similar interface:
export interface ErrorData {
 code: number;
 title: string;
 message?: string | ((...params: any) => string);
 hint?: string | ((...params: any) => string);
}

While the error messages themselves is an object with errors looking like this:
{
 StaticRedirectNotAvailable: {
  title: '`Astro.redirect` is not available in static mode.',
  code: 3001,
  message:
   "Redirects are only available when using `output: 'server'`. Update your Astro config if you need SSR features.",
  hint: 'See https://docs.astro.build/en/guides/server-side-rendering/#enabling-ssr-in-your-project for more information on how to enable SSR.',
 },
}

And then, this error is used in the core framework like the following:
if (missingDimension) {
  throw new AstroError({
    ...AstroErrorData.MissingImageDimension,
    message: AstroErrorData.MissingImageDimension.message(missingDimension, options.src),
  });
}

To detect the location where the problem existed and to output it in the error a default error is enhanced like the following (and this is no longer agnostic)
function enhanceCSSError(err: any, filename: string) {
 const fileContent = fs.readFileSync(filename).toString();
 const styleTagBeginning = fileContent.indexOf(err.input?.source ?? err.code);

 // PostCSS Syntax Error
 if (err.name === 'CssSyntaxError') {
  const errorLine = positionAt(styleTagBeginning, fileContent).line + (err.line ?? 0);

  // Vite will handle creating the frame for us with proper line numbers, no need to create one

  return new CSSError({
   ...AstroErrorData.CSSSyntaxError,
   message: err.reason,
   location: {
    file: filename,
    line: errorLine,
    column: err.column,
   },
   stack: err.stack,
  });
 }

I think we could do something similar in Nuxt and I have explained it below :)
How can we do it in Nuxt
These error messages in Astro are truly impressive and I really think we could have something similar in Nuxt. Astro is using its own Error Codes (like 3005 or similar) for working with errors that should be implemented in Nuxt if we want to support it.
The current Nuxt error object looks like following:
  const errorObject = {
    url: event.node.req.url,
    statusCode,
    statusMessage,
    message,
    stack: process.dev && statusCode !== 404
      ? `<pre>${stack.map(i => `${i.text}`).join('\n')}</pre>`
      : '',
    data: error.data,
  }

In my opinion, what we could do with Nuxt Error Messages to make them more DX-friendly while still not too difficult to maintain is to add the following functionalities to the current error objects in two phases.
Phase One -> Current Error Object

🟠 Status: to be discussed

For the current Error Object, I would recommend adding a new property called location. It will store the information where the bug was caused in the code based on the stack and can contain a button to locate it in the code as Astro. This should be relatively simple to implement because it just requires better analyzing the error and the stack and displaying data about it in the current error component.
Below is a structure of the error stack:
ReferenceError: P is not defined
    at setup (/Users/jakubandrzejewski/Coding/open-source/nuxt/nuxt-app/app.vue:8:1)
    // stack trace
  {
  statusCode: 500,
  fatal: false,
  unhandled: false,
  statusMessage: undefined,
  __nuxt_error: true
}

It contains information about the problem that occurred in while rendering the application. We could analyze this error object in getErrorLocation helper function that would extract the data:
type ErrorLocation = {
  file: string;
  line: number;
  column: string;
}

function getErrorLocation(errorStack: string) => ErrorLocation;

It can be used to populate the location property in the errorObject:
  const errorObject = {
    url: event.node.req.url,
    statusCode,
    statusMessage,
    message,
    stack: process.dev && statusCode !== 404
      ? `<pre>${stack.map(i => `${i.text}`).join('\n')}</pre>`
      : '',
    data: error.data,
    location?: getErrorLocation(stack), // { file, line, column }
  }

This data will then serve as the foundation for the following functionalities that need to be approved by the Core Team:
Display the file content

🟠 Status: to be discussed

Displaying the file content in the browser indicating where the error occurred (it can even be a simple arrow pointing to the place in the code that caused the problem)
From my experience, the first functionality would be more useful as it would show in the browser where the problem occurred. It would be especially useful when developing an application without TypeScript and trying to access a variable that was not registered:
<template>

    <NuxtWelcome />

</template>

To not make it very advanced in terms of rewriting the current Error component, I have been thinking about basically replacing the currently displayed stack trace with just the name of the file, problem, and the file content with an arrow pointing to the place where the problem occurred.
But I am open to suggestions here :)
Display the Open in Editor button

🟠 Status: to be discussed

It will open the file that caused the problem in the IDE. From my experience this might be an unnecessary feature as for me personally, just having the first option (the content of the file and the location where the problem is) would be enough to allow me to locate the bug and fix it.
Phase Two -> Enhanced Error Object

🟠 Status: to be discussed

As a part of this phase, I would recommend creating three new properties in the errorObject:

Hint -> The better definition of the error will be based on the map of errors similar to Astro
Internal Code -> That will allow us to not only operate on 500 errors but more distinguished errors like 3005 from Astro
Link to the docs -> Where to find help about this bug

This would require much more work as to properly implement a set/map of errors we would need to develop internal error codes for all popular issues and adequate hints and links to the docs to fix them.
The structure of the errorObject could look like this then:
  const errorObject = {
    url: event.node.req.url,
    statusCode,
    statusMessage,
    message,
    stack: process.dev && statusCode !== 404
      ? `<pre>${stack.map(i => `${i.text}`).join('\n')}</pre>`
      : '',
    data: error.data,
    internalCode: NuxtErrors[error].internalCode, // 3005
    docsLink: NuxtErrors[error].docsLink, // https://nuxt.com/docs/something
    hint: NuxtErrors[error].hint // A component X needs a property `src` to work correctly
  }

The NuxtErrors object could look like the following:
const NuxtErrors = {
  <ERROR_NAME>: {
    internalCode: 3005,
    docsLink: 'https://nuxt.com/docs/something',
    hint: 'Component X needs a property `src` to work correctly
  }
  ...
}

I Intentionally haven't created a list of errors yet as I wanted to work on this later on once we will all agree that this approach is correct.
And then displayed correspondingly in the error-dev or error-500 components. It does not have to be rocket science. A simple paragraph with a hint and a link would do I think:
Component X needs the property `src` to work correctly. Learn more [here](https://nuxt.com/docs/something)

Summary
In general, I think and functionality from this RFC would be an improvement to the Developer Experience of using Nuxt. Implementing all of them would elevate error handling to another level in my opinion.
I will appreciate any feedback regarding this feature and the functionality that I have proposed. This is my first RFC so I am sure that it is not perfect. Let me know about your recommendations for the document as well :)
Resources

https://astro.build/blog/astro-2/
https://github.com/withastro/astro/blob/main/packages/astro/src/core/errors/errors-data.ts
https://github.dev/withastro/astro/blob/58c612b746df4b0f489233c71e2aed3f2929acc8/packages/astro/src/core/compile/style.ts#L47-L67

@Baroshem Fantastic start! Thank you for taking the time to research and present this so eloquently!
Some considerations:

Perhaps this could hook into Nuxt DevTools in some capacity, since there's the functionality of running your VSCode editor within Nuxt DevTools.
When we provide links to send users to the docs to understand how to resolve common issues, perhaps too we may want to include links to the Discussions on the Nuxt framework repo as an additional source (maybe with a search term already pre-populated), and/or deep links to the Nuxt Discord's appropriate channels?
deciding what the common issues are might be worth it's own separate discussion - taking in all of the various signals of the GH Issues/Discussions, Discord, and perhaps Twitter/Mastodon informal polling to hear developers' pain points.

I don't have any notes on the implementation strategy you've laid out, and I think structuring it as a two-step enhancement makes a lot of sense.
I'm excited at the prospects of this and would be eager to help review and/or contribute.
Again, excellent initiative here and thank you for efforts!


Use js-sys regex type on wasm32-unknown-unknown with feature enabled

This is still missing a workflow to run the tests in CI but they should work
Edit: insta just doesn't work with wasm-bindgen-test, so testing is not really feasible with the current test setup

Hacked together a small regex test that doesn't use the insta snapshots.
It's not pretty but it runs!

i know it's a draft, just threw in some drive-by comments

So, it's now looking more cleaned up, the regex is cached between invocations, and there is a new CI step


JavaScript Developer Experience 🎥 ✨ 🚫

The development environment supports modern JavaScript development tools and practices.

Subsumed by #2

There's a difference between project features of the Jali project itself (housekeeping) and of projects that use Jali. The former will have a feature code of [devenv] and the latter, this epic, [dev].


Get text content of a node

Hi, is there an option to get the contents of the text contents of a node (characters property I guess)?
Also supposing I have a component build like this, even if we got the access to the characters, would it correctly get the contents of the Button layer?

If those aren't possible now but are technically viable (I haven't worked with Figma APIs too much so I'm not sure) then I'm happy to contribute and create a Pull request for those

there currently isnt functionality for this in the language. the assumption is that the text would be mapped to a text property if it was ever meant to be rendered in code like this.
i am thinking over ways to allow children and their properties to be queryable (see #6), but my recommendation for this specific scenario would be to turn this into a component property on your button component instead of an override in your Figma component definitions.


Loading runtime config should not be lazy static

If loading code of runtime config is lazy static, it will be automatically called when there is code related with mesatee_config. This is not correct since SDK does not need to read config.toml (runtime). However, SDK code uses RPC module which may involve code of mesatee_config and causing loading runtime config automatically in client side.
We should abandon this lazy static and use function call instead. Services should explicitly call this loading config function in their initial functions.

Fixed by #139.


Explorer -> Open Editors scroll issues

Issue Type: Bug
Hello,
I found two scroll issues in the Open Editors view.
The first one is that if all other views are collapsed and only Open Editors is expanded, there is unnecessary vertical scroll. Screenshot attached.
The second one is when there is a file with long name in Open Editors and a horizontal scroll appears if the section is with less width than the name of the file. The scroll overlaps with the last file in Open Editors and make it almost impossible to select if you're at the bottom. Screenshot attached.
VS Code version: Code 1.67.2 (c3511e6c69bb39013c4a4b7b9566ec1ca73fc4d5, 2022-05-17T18:20:57.384Z)
OS version: Darwin x64 20.6.0
Restricted Mode: No

System Info

Item
Value

CPUs
Intel(R) Core(TM) i9-9880H CPU @ 2.30GHz (16 x 2300)

GPU Status
2d_canvas: enabledcanvas_oop_rasterization: disabled_offdirect_rendering_display_compositor: disabled_off_okgpu_compositing: enabledmetal: disabled_offmultiple_raster_threads: enabled_onoop_rasterization: enabledopengl: enabled_onrasterization: enabledraw_draw: disabled_off_okskia_renderer: enabled_onvideo_decode: enabledvideo_encode: enabledwebgl: enabledwebgl2: enabled

Load (avg)
2, 3, 3

Memory (System)
16.00GB (0.35GB free)

Process Argv
. --crash-reporter-id ddf221d7-6a43-437e-a4da-c09b4559cc3e

Screen Reader
no

VM
0%

Extensions (13)

Extension
Author (truncated)
Version

vscode-apollo
apo
1.19.11

vscode-eslint
dba
2.2.2

gitlens
eam
12.0.7

prettier-vscode
esb
9.5.0

go-to-spec
Lou
0.1.3

ruby-rubocop
mis
0.8.6

prettify-json
moh
0.0.3

rails-run-spec-vscode
nok
0.1.4

ruby
reb
0.28.1

slim
sia
0.1.2

code-spell-checker
str
2.2.0

vscode-stylelint
sty
1.2.2

vscode-ruby
win
0.28.0

A/B Experiments
vsliv368cf:30146710
vsreu685:30147344
python383:30185418
vspor879:30202332
vspor708:30202333
vspor363:30204092
pythonvspyl392:30443607
pythontb:30283811
pythonvspyt551:30345470
pythonptprofiler:30281270
vsdfh931cf:30280410
vshan820:30294714
vstes263:30335439
pythondataviewer:30285071
vscod805cf:30301675
pythonvspyt200:30340761
binariesv615:30325510
bridge0708:30335490
bridge0723:30353136
vsaa593:30376534
vsc1dst:30438360
pythonvs932:30410667
wslgetstarted:30449410
pythonvsnew555:30457759
vscscmwlcmt:30465135
cppdebug:30492333
vsclangdf:30486550

Issue 1

Issue 2

Can you not just drag the panel larger in these cases?

Can you not just drag the panel larger in these cases?

For issue 1, the panel could NOT be resized in height.
For issue 2, the panel could be resized in width and I can set my panel to 30% of my screen, sure. But I don't want that. This is a UI problem and I don't want just to resize the panel so the problem disappear. There could be files in a lot of nested folders and resizing in width will just make my main 'coding' panel smaller. This is the least I want.