Unable to discoverDeviceHierarchy

New user setup and I am running into a problem with the device discovery not completing.
The connection to my MQTT broker is working (regular updated messages to homeassistant\hc3-dead topic).
Running 1.0.203 from this site and HC3 5.130.64
The initialsation process for device discovery is not completing but gives no error message.
The following shows all the detail I get through the console:
[14.01.2023] [15:41:32] [DEBUG] [QUICKAPP284]:
[14.01.2023] [15:41:32] [DEBUG] [QUICKAPP284]: ------- Connected to MQTT (Home Assistant)
[14.01.2023] [15:41:32] [DEBUG] [QUICKAPP284]: Bridge mode: PRODUCTION
[14.01.2023] [15:41:32] [WARNING] [QUICKAPP284]: Variable deviceFilter not found
[14.01.2023] [15:41:32] [DEBUG] [QUICKAPP284]: All is good - default filter applied, where only enabled and visible devices are used
[14.01.2023] [15:41:32] [DEBUG] [QUICKAPP284]: Filter: {"filters":[{"value":[true],"filter":"enabled"},{"value":[true],"filter":"visible"}],"attributes":{"main":["id"]}}
[14.01.2023] [15:41:35] [DEBUG] [QUICKAPP284]: [BinarySensor.init] Uknown doow/window sensor 193 Shop Door
I tried to add in some debug messages around the code to isolate where it is stopping, but cannot chase it through yet. The odd part is the lack of error messages in the console.

Hi @rjclocks,
Can you please try using the latest 1.0.211 version, and tell if the issue persists or solved?
Do you have any Nice or Zigbee devices, or only Z-Wave and QuickApps?

I have tried the version you asked and have the same issue.
I do have one Zigbee lightbulb registered on my HC3, but it isn't available most of the time as it is currently only switched on briefly using a Z-Wave socket.
Everything else is Z-Wave on the system.

Hi @rjclocks
Only Z-Wave are supported at the moment, and adding Zigbee devices would be a new feature.

Can you please provide me your device description, so I can see if this something easy to do or complex? See "Want to propose a new device support? Click here" section at the home page https://github.com/alexander-vitishchenko/hc3-to-mqtt
I'll improve logging so QuickApp doesn't break when dealing with Zigbee

Thanks for the help with getting it sorted.
I will drop the information on there tomorrow and will close this issue.


Support for L5.5

Laravel 5.5 is out! 😄 Please update Package!

composer update in a Laravel 5.5 installation breaks due to Landlord requiring 5.4.

@HipsterJazzbo please update dependencies. 😸

Until the PR merged you can add
"hipsterjazzbo/landlord": "dev-master"

"repositories": [
    {
        "type": "vcs",
        "url":  "git@github.com:rikvdlooi/Landlord.git"
    }
]


stage1: support per-app memory and cpu isolators

To allow systemd inside stage1 to set resource limits for apps we mount
the cgroup controllers hierarchy in rkt. We need this because
systemd-nspawn mounts cgroup controllers as read-only.
We mimic systemd-nspawn cgroup mounts with the difference that we
bind-mount the apps' subdirectories over themselves so they stay
read-write. We leave the mounting of systemd's cgroup hierarchy to
nspawn.
Addresses (partially) #811

Updated

You could add a couple of functional tests, ideally to check that the isolators are enforced by the kernel. If you want to do that in a later PR, you could at least add a couple of isolators in tests/image/manifest with large values and check that the ACIs with the isolators can run without regression. I would like to see if Semaphore can run this on the different flavors of systemd.

To improve the security, individual cgroup knobs could be bind-mounted RW (cgroup.procs, cpu.shares...) instead of cgroup directories.
This is not blocking for this PR because the pod has CAP_SYS_ADMIN anyway (#576) so malicious apps could already remount the cgroup RW.

Updated.
I think I addressed all the comments, I'm aware of the code repetition when calling libsystemd functions but hopefully we'll switch to go-systemd soon.

Updated

systemd v215 prints some nasty error messages when it tries to create cgroups and the fs is RO:
Failed to set cpu.shares on /machine.slice/machine-rkt\x2d0db305d3\x2da464\x2d491b\x2d8509\x2d825674e971fd.scope: Read-only file system
Failed to set cpu.cfs_period_us on /machine.slice/machine-rkt\x2d0db305d3\x2da464\x2d491b\x2d8509\x2d825674e971fd.scope: Read-only file system
Failed to set cpu.cfs_quota_us on /machine.slice/machine-rkt\x2d0db305d3\x2da464\x2d491b\x2d8509\x2d825674e971fd.scope: Read-only file system
Failed to set memory.limit_in_bytes on /machine.slice/machine-rkt\x2d0db305d3\x2da464\x2d491b\x2d8509\x2d825674e971fd.scope: Read-only file system

This seems to make TestVolumes fail sometimes.
These log messages don't appear in flavor=coreos (different default loglevel?) and hence flavor=coreos builds don't fail.
After v219 systemd prints these errors in the debug loglevel
I tried removing the --debug parameter from TestVolumes and it doesn't fail.
I think at this point we should wait for #966 to get merged and ignore flavor=src v215

@iaguis so if I understand correctly, you're going to bump this to 220?

@iaguis : #966 has been merged. Can you rebase?

Updated.
To clarify a bit:
This feature works on the coreos image because we skip creating the cgroups in rkt and systemd-nspawn v215 doesn't remount them read-only so everything is fine.
From v219 on it should work fine and since we're not testing v215 from src now (#966), tests should pass.

I did some manual tests with user namespaces and cgroups with:
sudo systemd-nspawn -D . --private-users=1000:65536

Everything in /sys belongs to nobody:nogroup, so it might be a problem for networking applications that needs /sys (/sys/class/net/). But that problem is not related to this PR.
But /sys/fs/cgroup behaves correctly:

services outside of the container (e.g. /sys/fs/cgroup/systemd/system.slice/cups.service) belongs to nobody so even if rkt mistakenly gave read-write access, the container would not be able to mess with it.
services in the container (e.g. /sys/fs/cgroup/systemd/machine.slice/machine-debian\x2dtree.scope/) belong to root from the point of view of the container, or to the mapped user from outside, so the container will be able to read-write them.

So it's a good news :+1:
/cc @tixxdz

Looks good overall. Unit tests are failing.

Unit tests are failing.

Yeah, they fail on Travis because cgEscape escapes some strings depending on the values of /sys/fs/cgroup/* and on the test case we assume /sys/fs/cgroup/memory exists. I guess they don't mount any cgroups.
I'll just remove that test case, if /sys/fs/cgroup/memory doesn't exist not escaping it is the right thing to do.

LGTM!
I added a note in #845.
Can you open follow-up issues for tests (including checking that the filesystems are mounted with the correct RO flags) and for bind-mounting individual cgroup knobs?

Follow-up issues: #981, #982, #983

Tests are green now so let's merge this :smile:


new slim set, component

I made a slim set for component. This maps most things (|I avoided using "cytoplasm"
4171 | cytoplasm (GO:0005737
)

2260
cytosol (GO:0005829)
...

34
division septum (GO:0000935)
...

33
prospore membrane (GO:0005628)
...

18
extracellular region (GO:0005576)
...

68
cell surface (GO:0009986)
...

216
endoplasmic reticulum membrane (GO:0005789)
...

111
actin cytoskeleton (GO:0015629)
...

33
cytoplasmic stress granule (GO:0010494)
...

19
P-body (GO:0000932)
...

25
phagophore assembly site (GO:0000407)
...

23
peroxisome (GO:0005777)
...

348
Golgi apparatus (GO:0005794)
...

207
cell cortex (GO:0005938)
...

55
cell wall (GO:0005618)
...

192
cytosolic ribosome (GO:0022626)
...

52
actin cortical patch (GO:0030479)
...

2649
nucleus (GO:0005634)
...

68
kinetochore (GO:0000776)
...

49
nuclear pore (GO:0005643)
...

50
nuclear periphery (GO:0034399)
...

360
nucleolus (GO:0005730)
...

251
nucleoplasm (GO:0005654)
...

98
endosome (GO:0005768)
...

187
vacuole (GO:0005773)
...

50
contractile ring (GO:0070938)
...

95
mitotic spindle (GO:0072686)
...

156
spindle pole body (GO:0005816)
...

502
endoplasmic reticulum (GO:0005783)
...

232
plasma membrane (GO:0005886)
...

749
mitochondrion (GO:0005739)
...

574
chromosome (GO:0005694)

This will need its own page similar to the biological process slim.
It won't have esyN links

Excellent.  Is this ready to go or are you still tweaking?

This one is  ready.

I've done a quick test to make sure there aren't any major problem.  Seems OK except I missed cytosol when copying and pasting.

This will need its own page similar to the biological process slim.
It won't have esyN links

I'll work on that later.  We'll need some new text for the top of the CC slim page.  The current text is BP specific.
Here's how it looks:

And on the gene page:

We'll need some new text for the top of the CC slim page. The current text is BP specific.

This page and the menu on the left will need updating too: https://www.pombase.org/browse-curation

That looks great!
I should have done these  MF  and CC slims years ago.
What does the relationship between
endoplasmic reticulum membrane and endoplasmic reticulum look like in the  current obo file
https://github.com/geneontology/go-ontology/issues/19436
( in PomBAse  endoplasmic reticulum membrane  does not slim to ER, but I see the relationship in QuickGO)

Fission yeast GO slim -> Fission yeast GO Biological Process slim

2 Fission yeast GO Cellular Component slim
A “GO slim” is a subset of the Gene Ontology terms selected for a specific purpose in interpreting large-scale data, such as functional annotation of a genome or high-throughput experimental results. PomBase uses ~a GO slim~ GO slims to provide a simple summary of S. pombe’s biological capabilities by grouping gene products using broad classifiers.
The table below shows terms in the current fission yeast cellular component  GO slim, and the number of annotations to each term. GO IDs link to PomBase ontology term pages. ~Icons beside each GO term link to esyN, which provides a graphical view of interactions for the genes from the PomBase High Confidence Physical Interaction Network (HCPIN) dataset. Only the subset of genes linked into the interaction network will be displayed in the esyN network view.  ~The annotation totals link to pages with information about the term and a list of annotated genes.

Might also add
Note: We have intentionally excluded "cytoplasm" from the cellular componet slim  set since  4171 fission yeast gene products (3919 proteins) are annotated to this term. You may wish to add this term to your own slim sets.

So all this needs is the link to the list of proteins which
a) Have a CC annotation but do not map to the slim
b) Have no CC annotation

This page and the menu on the left will need updating too: https://www.pombase.org/browse-curation

I forgot this page existed and I still need to Google to find the DNA binding  page
We need to get this page under a menu somehow! I will open a ticket for that.

I'll set up a slim page for CC without linking to it so we can fine tune things and sort out documentation.  We can link to the new page when everything's ready.

So all this needs is the link to the list of proteins which
a) Have a CC annotation but do not map to the slim
b) Have no CC annotation

Would you like a similar section on the disease slim page or the MF slim page?

Yes we already have this on the BP page
We want the same for CC and MF.
For disease  we may as well have both too. The 2nd list might be useful for me  anyway

Yes we already have this on the BP page
We want the same for CC and MF.
For disease we may as well have both too. The 2nd list might be useful for me anyway

Great.  I've added that section to all three slim pages on my desktop:
BP: http://desktop.kmr.nz:4242/browse-curation/fission-yeast-go-slim-terms
CC: http://desktop.kmr.nz:4242/browse-curation/fission-yeast-cc-go-slim-terms
MONDO: http://desktop.kmr.nz:4242/browse-curation/disease-slim
There is a little bit of debugging to do because the numbers don't add up on the MONDO page.  It says:

Total slimmed gene products (protein and ncRNA): 1088
Gene products with MONDO annotation that are not in a slim category: 101

Those numbers add to 1189 but we have 1184 disease genes:
http://desktop.kmr.nz:4242/results/from/id/c72d1a18-ff11-4cca-a1f8-ad391c0b7740
I'll work on that.
Because there have been lots of overlapping changes, I'll need to release the CC slim page and the DO->MONDO update at the same time.  We don't need to have a link to the CC slim page straight after release if it's not ready for the public.

1 . Did you add the MF section?
2. I think there are a few genes where the annotation  does not get through. I. found 2. That might be it? https://github.com/pombase/curation/issues/2701
3. I have done all the MODO cross checking that I intend to do. It looks good, and will only get better as any issues reported are fixed
https://github.com/pombase/curation/issues/2700
4. I'm happy for all of this to go live together whenever you are ready.

Did you add the MF section?

Not yet.  I wanted to get everything else working first.

I'm happy for all of this to go live together whenever you are ready.

Great.
Some are some changes needed to the documentation.  It's mostly small things so I'll have a go at it and ask you and Midori to check my work.
I also need to see what happens to existing DO queries in the query builder history when the DO IDs disappear.

I also need to see what happens to existing DO queries in the query builder history when the DO IDs disappear.

If they just disappear and say "rerun" that isn't do bad...

If they just disappear and say "rerun" that isn't do bad...

We won't be able to re-run them because the term ID will be gone from the database.  All we can do is remove the query from the history or somehow mark it as obsolete.

Yeah that sounds OK ...that must happen other times anyway.

Yeah that sounds OK ...that must happen other times anyway.

Good point.
I just checked.  If a term goes missing the query just returns zero results - no error.

Those numbers add to 1189 but we have 1184 disease genes:

I think I've worked it out.  The 5 genes below have a MONDO annotations that do not have an is_a path to MONDO:0000001 "disease or disorder", instead they have path to "disease susceptibility" (MONDO:0042489).
An example term is:
myocardial infarction, susceptibility to (MONDO:0012039)

Here are the genes:

Systematic ID
Gene name

SPBC25H2.12c
cct7

SPCC737.06c
gcs2

SPBC646.16
scl1

SPAC1486.01
sod2

SPBC1709.18
tif452

(I'm off to bed so my desktop will be off until 10pm-ish UK time)

I think we decided that we would avoid susceptibilities for these multifactorial diseases (At least for the time being).
Thoughts?
@mah11  @Antonialock
Otherwise there are probably 100s more. I think these  causal genes are more interesting from a MOD perspective?

Now we know that it's not a bug that's causing the numbers to not add up I think we can go ahead and release the MONDO stuff.  I'll do a little bit more testing and I'll check the documentation today so we can try it on Wednesday night (UK).  If it all looks OK on the dev site on Thursday morning I'll update the main site.  Otherwise I'll skip the update while I fix things.
The CC slim changes will go live at the same time.

GReat! We c an make the descision about scope on Thursday.
We will probably have time to chat with @Antonialock  in side chats at the GO meeting tomorrow.

Now live at: https://www.pombase.org/browse-curation/fission-yeast-cc-go-slim-terms

queued here
https://github.com/pombase/website/issues/1535


Adding Cloud Product Linode

@kbohinski you need to add a logo. Please follow the instructions on our wiki

@RichJeanes @Carlgo11 Fixed both requests

You added a reference to an image but it appears you haven't added the image file itself.

You can also remove "sms: No" and "hardware: No"

Sorry! Its actually fully functional now!


Problem with the use of accents in .kv files

Words with accents in .kv files does not show correctly on the screen.
"Anotação" in the .kv file becomes "AnotaÃ§Ã£o" in the screen.
My editor uses utf-8 encoding.
The only way I've found to use accented words in the .kv file is the following:
# This does NOT work: Anotação becomes AnotaÃ§Ã£o
# Builder.load_file("telas.kv")    # This changes characters

# This works:

file = open("telas.kv", "r", encoding="utf-8")
text = file.read()
Builder.load_string(text)

Python: 3.7.6
OS: Windows 10
Kivy: 1.11.1
Kivy installation method: pip

we should probably have another look at #5649


Update hdinsight.md

OPS Build status updates of commit be5c086:
:clock10: Full build: the average full build time is 69 min(s) 43 sec(s), this is based on the last 157 build(s) for this repository.
:warning: This is a FULL build due to the incremental build being disabled in configuration file (.openpublishing.publish.config.json in 'live' branch). For more detailed info, please click here.

OPS Build status updates of commit be5c086:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs-ref-services/hdinsight.md
:white_check_mark:Succeeded
View (azure-java-stable) View (azure-java-preview) View (azure-java-legacy)

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.

OPS Build status updates of commit be5c086:
:clock10: Full build: the average full build time is 69 min(s) 42 sec(s), this is based on the last 158 build(s) for this repository.
:warning: This is a FULL build due to the incremental build being disabled in configuration file (.openpublishing.publish.config.json in 'live' branch). For more detailed info, please click here.

OPS Build status updates of commit be5c086:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs-ref-services/hdinsight.md
:white_check_mark:Succeeded
View (azure-java-stable) View (azure-java-preview) View (azure-java-legacy)

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.

#sign-off


I suggest the ssh button to generate ssh address when using js to get the current page host way.

This allows the correct host to be obtained by default without properly configuring the [server] ROOT_URL address.

Thanks. Could you send a PR to gitea?

The ssh is not equal to the Web host, so this doesn't work. The value just needs to be exposed to the installer

He means after you install a new instance of gitea, ssh clone address' host is empty.

It's not empty, it just defaults to the wrong hostname.

The setting https://github.com/go-gitea/gitea/blob/master/conf/app.ini#L102 is responsible for the host displayed there.

So we need send a bug fix?

That's not a bug, it's simply not exposed on the installation wizard

The setting https://github.com/go-gitea/gitea/blob/master/conf/app.ini#L102 is responsible for the host displayed there.

Why is there an 's' after $(DOMAIN)?

I thought that is a supported interpolation syntax 😆

That's how the ini lib implemented the interpolation ;)


[组件库] 安装失败

这个功能解决了什么问题
PS D:\Gitlab\flutter_ticket> flutter pub add tdesign_flutter
Flutter assets will be downloaded from https://storage.flutter-io.cn. Make sure you trust this source!
"tdesign_flutter" is already in "dependencies". Will try to update the constraint.
The current Dart SDK version is 3.1.2.

Because flutter_ticket requires SDK version >=3.1.5 <3.2.0, version solving failed.

你建议的方案是什么
提高pubspec.yaml兼容版本
environment:
  sdk: ">=2.18.0 <4.0.0"
  flutter: ">=3.3.0"

本地环境是直接下载 flutter_windows_3.13.5-stable.zip 安装的


sdk/horizon: handle errors in the streamer

https://github.com/stellar/experimental-payment-channels/blob/99c2143a18ae5f389e85ffc488ed220b7d5348c5/sdk/horizon/horizon.go#L125-L128

Duplicate of #275


✨ feat: update Dockerfile to improve dependency management and security

Changed pnpm install to use --frozen-lockfile to ensure deterministic installs.
Updated environment variable names to use consistent casing (e.g., HUGGINGFACE_API_KEY).
Fixed development image to create the run directory with proper permissions (chown node:node).
Switched to a non-root user (node) in the development image for better security practices.

@gitworkflows sorry for the delay i ntesting this but I do see the following permission denied warning when testing on Windows 11:


Left panel Width corrected

Both room and schedule left panel is 13.88% wider.

Current coverage is 42.52% (diff: 100%)

Merging #736 into development will not change coverage

@@           development       #736   diff @@
=============================================
  Files                6          6
  Lines              689        689
  Methods             71         71
  Messages             0          0
  Branches           113        113
=============================================
  Hits               293        293
  Misses             396        396
  Partials             0          0

Powered by Codecov. Last update c8cc532...1799a78


Time series prediction usage

Hello!
I have read in your README.md file the next point: "For non language applications or for integrating in other architectures you can use the xLSTMBlockStack". I have an issue now: I want to use your xlstm implementation for time series data prediction, however, I have met problems with "embeddings" while using "xLSTMBlockStack". Based on what should I define "embedding_dim" variable in config? Can you please elaborate on this topic?
Thank you in advance.

If your doing time series of continuous numbers, you should remove the embedding layer. embedding layers are meant to take discrete numbers (like a token lets say 3345) and convert them to a floating point tensor with n_features.

Hello!
Have you solved this problem?

Have you solved this problem?

The embedding_dim should be seen as synonym for hidden_dim, when you are not using embeddings. The xLSTMBlockStack does not contain embedding/un-embedding layers.


Support auto downscaling on Text when available width is too narrow

This is an approach to use the .minimumScaleFactor modifier to improve the situation noted in the ticket (clipping) - likely more common with side by side content.
An example to illustrate - uses 4 side-by-side text elements, all of which have too large of a font size to fit as normally expected.

"Hello World" - 30pt
"X" - 150pt
"Somereallylongwordhere" - 30pt
"👋🏼" - 200pt  <-- the primary issue in ticket

After
Before

Ran the UI test suite on this, appears there will be one expected change in the test-fixed-size component test, which will now scale a bit to wrap, rather than ellipsize.

After
Before


Update workflow.yml

added codecov action

Welcome to Codecov :tada:
Once merged to your default branch, Codecov will compare your coverage reports and display the results in this comment.
Thanks for integrating Codecov - We've got you covered :open_umbrella:


Fix css selector

Was ":after", will work better with ":before" (see https://github.com/ecomfe/fontmin/issues/37), but removing the selector entirely yields correct results as well, and is in fact more or less how Glyphicon works in Bootstrap.

Is this repository still being monitored? It would be nice if this 9 month old PR could be merged, or commented on?


Any reason to have syntastic_check_on_wq on by default?

It seems to be a completely unreasonable behavior that doesn't deserve its own configuration options, but nevertheless not only the option is present, it's enabled by default, forcing every single user to change it.

Now that you mention it I'm not sure it's reasonable to ask design questions about a project that has been dead for a few years now (hint: have you looked at ALE?). :smile: But there's also no reason not to answer such questions as long as it doesn't take too much time.
The rationale behind the existence of check_on_wq is that you might make a last-minute change that is a syntax error, save the file with :wq, and then go on  your merry way thinking syntastic has validated your project and everything is fine.  Some people were concerned about that scenario and asked for check_on_wq.
Tangentially related: a few months ago there was a change in Vim affecting the the QuitPre logic, simply because somebody thought all autocmds should be run the same way.  I have suspected ever since that said change broke check_on_wq in a way that can't be fixed, but I haven't bothered to check.  So perhaps Vim developers have granted your wish inadvertently.
Back to the initial question: check_on_wq aside, there are variables and defaults in syntastic that make no sense whatsoever these days and that only exist for historic reasons (example: always_populate_loc_list).  They are still with us because by the nature of syntastic there is no default configuration that would be considered reasonable for all (or even for most) users, and because "WTF did they broke today" is more annoying than you writing a line in a file once and then forgetting about it for the entire life of the project.  Hope that helps. :smile:


Deployment workflow

PULL REQUEST
Summary
This PR will add a workflow that is triggers the workflow named target_workflow in the repo named phdi-playground. See explanation of each step of the workflow below:
Users are prompted to provide two inputs:
-target_service: The service name (e.g., phdi-playground) that identifies the target repository where the workflow should be triggered.
-target_version: The version (e.g., v1.0.0) that will be passed to the target workflow.
Related Issue
Fixes Issue 79
Additional Information

A PAT is currently being used for authentication

Checklist

[ X] Descriptive Pull Request title
[X ] Link to relevant issues
[ X] Update documentation

Yes, once we confirm the workflow acts as expected. I'll change it to automatically trigger when a PR is merged to main.


Opinionated ideas

@SamVerschueren do you mind if I put some ideas to make clinton a single project linting tool? Please feel free to take them over or delete the issue.

Make sure package has build script on prepublish, optionally compiling code to ES5/ES3, shaking tree, converting import/export to CJS, babel etc. (to avoid publishing unbuilt source)
Make sure regular linter (eslint or alike) and tests pass
Make sure readme has all necessary sections: description, [logo/image], usage, badges, API, license etc. Would be nice to give recommendations instead of warnings.
Make sure .npmignore or files in package.json has redundant directories and files, like images, docs, etc.
Make sure .gitattributes includes proper linguist config eg. https://github.com/a-vis/regl-line2d/blob/master/.gitattributes
Make sure project has demo page (optional)

Make sure package has build script on prepublish, compiling code to ES5 or ES3 (to avoid publishing unbuilt source)

👎 ES2015 all the way. No need to compile down unless you use non-standard syntax.

Make sure .npmignore has redundant directories and files, like images, docs, etc.

This should be ensuring you specify a files field in package.json instead.

Make sure .gitattributes includes proper linguist config eg. a-vis/regl-line2d:.gitattributes@master

That is only needed the few times GitHub doesn't correctly detect it. In most cases it will.

#BE~~

Not sure why I even started giving unsolicited advice.


Admin console

Summary | Résumé
Closes #167.
Admin console to be able to change the details of a user. In particular, this is needed to add additional groups/privileges to certain users (ie make then managers or S32 approvers, etc). Also added the ability to restore all roles (for testing, if you were to take away the role there would be no way to restore the roles without this feature).

The view didn't load up the options for me (might be a codespaces issue?)
In the dropdown menu for role switching and the UI notifications, the administrator word doesn't seem to be translated

Sorry @gcharest! Totally my fault! I have fixed this now.


Laravel 6 instalation problem

There is a problem with a "optimus/heimdal" when I try to install the core in my project with Laravel 6.
Problem 1
    - Installation request for laravel/framework (locked at v6.0.0, required as ^6.0) -> satisfiable by laravel/framework[v6.0.0].
    - apiato/core 2.4.7 requires optimus/heimdal ~1.5 -> satisfiable by optimus/heimdal[1.5.0].
    - apiato/core 2.4.x-dev requires optimus/heimdal ~1.5 -> satisfiable by optimus/heimdal[1.5.0].
    - apiato/core v2.4.0 requires optimus/heimdal ~1.5 -> satisfiable by optimus/heimdal[1.5.0].
    - apiato/core v2.4.1 requires optimus/heimdal ~1.5 -> satisfiable by optimus/heimdal[1.5.0].
    - apiato/core v2.4.2 requires optimus/heimdal ~1.5 -> satisfiable by optimus/heimdal[1.5.0].
    - apiato/core v2.4.3 requires optimus/heimdal ~1.5 -> satisfiable by optimus/heimdal[1.5.0].
    - apiato/core v2.4.4 requires optimus/heimdal ~1.5 -> satisfiable by optimus/heimdal[1.5.0].
    - apiato/core v2.4.5 requires optimus/heimdal ~1.5 -> satisfiable by optimus/heimdal[1.5.0].
    - apiato/core v2.4.6 requires optimus/heimdal ~1.5 -> satisfiable by optimus/heimdal[1.5.0].
    - apiato/core v2.4.8 requires optimus/heimdal ~1.5 -> satisfiable by optimus/heimdal[1.5.0].
    - Conclusion: don't install optimus/heimdal 1.5.0
    - Installation request for apiato/core ^2.4 -> satisfiable by apiato/core[2.4.7, 2.4.x-dev, v2.4.0, v2.4.1, v2.4.2, v2.4.3, v2.4.4, v2.4.5, v2.4.6, v2.4.8].

@Mahmoudz we need to talk about this package, looks like there's no more support


claims validity precheck as spam prevention

Done in #123 , part of #98 .
Added SignedExtention - ValidateClaim which is part of runtime's SignedExtras. It is the extrinsic is claim call - it validates the transaction by verifiy the signature and balance due.


[BUG][Flink] Job fails to write to delta sink with WebIdentityTokenCredentialsProvider

Bug
Which Delta project/connector is this regarding?

[ ] Spark
[ ] Standalone
[x] Flink
[ ] Kernel
[ ] Other (fill in here)

Describe the problem
Have create a delta sink in Flink application which write to AWS s3. Job is running file when ran on local as credentials are provided part of Environment Variable. When I deployed on flink cluster on kubernetes providing Hadoop conf as below
conf.set("fs.s3a.aws.credentials.provider", "com.amazonaws.auth.WebIdentityTokenCredentialsProvider")
The error stack trance.
2023-12-15T06:07:38.5545198Z stdout F Caused by: org.apache.hadoop.fs.s3a.auth.NoAuthWithAWSException: No AWS Credentials provided by DynamicTemporaryAWSCredentialsProvider TemporaryAWSCredentialsProvider SimpleAWSCredentialsProvider EnvironmentVariableCredentialsProvider IAMInstanceCredentialsProvider : com.amazonaws.SdkClientException: Unable to load AWS credentials from environment variables (AWS_ACCESS_KEY_ID (or AWS_ACCESS_KEY) and AWS_SECRET_KEY (or AWS_SECRET_ACCESS_KEY))
I can see only below classes.
DynamicTemporaryAWSCredentialsProvider
TemporaryAWSCredentialsProvider
SimpleAWSCredentialsProvider
EnvironmentVariableCredentialsProvider
IAMInstanceCredentialsProvider
Notes: The source is also AWS kinesis using same I am able to process the records.
Steps to reproduce

Observed results

Expected results

Further details

Environment information
scala.version=2.12.7
scala.binary=2.12
flink.version=1.17.0
flink-s3-fs-hadoop=1.17.0
delta-version=3.0.0
hadoop-client=3.1.0
Willingness to contribute
The Delta Lake Community encourages bug fix contributions. Would you or another member of your organization be willing to contribute a fix for this bug to the Delta Lake code base?

[ ] Yes. I can contribute a fix for this bug independently.
[ ] Yes. I would be willing to contribute a fix for this bug with guidance from the Delta Lake community.
[x] No. I cannot contribute a bug fix at this time.

I also ran into this issue.  I attempted to upgrade my hadoop versions to 3.3.6, which seemed to include com.amazonaws.auth.WebIdentityTokenCredentialsProvider in the jar, but this method of authentication still seemed to fail, with an S3 error message indicating not enough permissions.  It seems like the permissions ended up using the EKS EC2 role, which is at the end of the default chain.

I also tried to enable other validation methods, but it seems to always end up relying on the default chain.  Does the Delta Sink have support for setting other validation methods?


Consider additional DEBUG logging

[x] ack and nack ("ACK message from channel %s with delivery tag %s")
[x] consume ("Consuming messages from queue %s")
[ ] Blocking.__init__ ("RabbitMQ connection established")

I'm leaving out the "connection established" message, since regular usage would get a "consuming" or "published" message soon after establishing the connection.
I've only added message-related debug messages (publish, consume, ack, nack), rather than "machinery"-related messages (declaring exchanges and queues, binding queues, etc.).


HiveError: Cannot write resource

Assalamu Alaikum
I get below issues on the run
E/flutter (10082): [ERROR:flutter/lib/ui/ui_dart_state.cc(209)] Unhandled Exception: HiveError: Cannot write, unknown type: _$_Resource. Did you forget to register an adapter? E/flutter (10082): #0      BinaryWriterImpl.write (package:hive/src/binary/binary_writer_impl.dart:337:9) E/flutter (10082): #1      BinaryWriterImpl.writeList (package:hive/src/binary/binary_writer_impl.dart:223:7) E/flutter (10082): #2      BinaryWriterImpl._writeList (package:hive/src/binary/binary_writer_impl.dart:389:7) E/flutter (10082): #3      BinaryWriterImpl.write (package:hive/src/binary/binary_writer_impl.dart:328:7) E/flutter (10082): #4      BinaryWriterImpl.writeFrame (package:hive/src/binary/binary_writer_impl.dart:281:9) E/flutter (10082): #5      StorageBackendVm.writeFrames.<anonymous closure> (package:hive/src/backend/vm/storage_backend_vm.dart:127:31) E/flutter (10082): #6      StorageBackendVm.writeFrames.<anonymous closure> (package:hive/src/backend/vm/storage_backend_vm.dart:123:28) E/flutter (10082): #7      ReadWriteSync.syncWrite.<anonymous closure> (package:hive/src/backend/vm/read_write_sync.dart:26:41) E/flutter (10082): #8      _rootRunUnary (dart:async/zone.dart:1436:47) E/flutter (10082): #9      _CustomZone.runUnary (dart:async/zone.dart:1335:19) E/flutter (10082): <asynchronous suspension> E/flutter (10082): #10     BoxImpl._writeFrames (package:hive/src/box/box_impl.dart:88:7) E/flutter (10082): <asynchronous suspension> E/flutter (10082):

Yes!! I also face the same issue. How could I resolve this error? anyone kindly help me.

Assalamu Alaikum I get below issues on the run
E/flutter (10082): [ERROR:flutter/lib/ui/ui_dart_state.cc(209)] Unhandled Exception: HiveError: Cannot write, unknown type: _$_Resource. Did you forget to register an adapter? E/flutter (10082): #0 BinaryWriterImpl.write (package:hive/src/binary/binary_writer_impl.dart:337:9) E/flutter (10082): #1 BinaryWriterImpl.writeList (package:hive/src/binary/binary_writer_impl.dart:223:7) E/flutter (10082): #2 BinaryWriterImpl._writeList (package:hive/src/binary/binary_writer_impl.dart:389:7) E/flutter (10082): #3 BinaryWriterImpl.write (package:hive/src/binary/binary_writer_impl.dart:328:7) E/flutter (10082): #4 BinaryWriterImpl.writeFrame (package:hive/src/binary/binary_writer_impl.dart:281:9) E/flutter (10082): #5 StorageBackendVm.writeFrames.<anonymous closure> (package:hive/src/backend/vm/storage_backend_vm.dart:127:31) E/flutter (10082): #6 StorageBackendVm.writeFrames.<anonymous closure> (package:hive/src/backend/vm/storage_backend_vm.dart:123:28) E/flutter (10082): #7 ReadWriteSync.syncWrite.<anonymous closure> (package:hive/src/backend/vm/read_write_sync.dart:26:41) E/flutter (10082): #8 _rootRunUnary (dart:async/zone.dart:1436:47) E/flutter (10082): #9 _CustomZone.runUnary (dart:async/zone.dart:1335:19) E/flutter (10082): <asynchronous suspension> E/flutter (10082): #10 BoxImpl._writeFrames (package:hive/src/box/box_impl.dart:88:7) E/flutter (10082): <asynchronous suspension> E/flutter (10082):

Assalamu Alaikum!!
Sir, could you please tell me, if you find the answer to that error? If not then let me know if you have another solution?
mianumar5653(github) (miaumar332@gmail.com),
Jazakallah

Yes!! I also face the same issue. How could I resolve this error? anyone kindly help me.

Brother did you reach the solution, please share if you did? God bless you.


return CLI metadata

[#151235404]

return cli meta data
add how to build/install cli in readme
change option name '-f' to '--output' since '-f' usually means force execution

LGTM


Add snippets for scaffolding common SFC boilerplate

See the VSCode Snippet Guide and the Vetur implementation.
For example, a snippet vue that allows an option for TypeScript (default to HTML and Composition API),
<template>

</template>

<script setup lang="ts">

</script>

To be honest I know Vetur included the style section but personally I would really like to see this excluded by default. The prevalence of component libraries defeats the need in many cases. Although, users who are not using a component library would certainly need it.

I also hope to have this function，now I only see vueinit can generate template
"

"

See https://twitter.com/kromate_24/status/1510054329973198858.

Users adding this themselves was certainly not the idea of this issue. Can you discuss a little about why this feature will not be considered, for future searchers? Maybe why it falls outside the scope of this effort?

Users adding this themselves was certainly not the idea of this issue. Can you discuss a little about why this feature will not be considered, for future searchers? Maybe why it falls outside the scope of this effort?

Yes, I too personally felt like that. This is not a major change and it will definitely improve DX.
So having this small collections of snippets would be super helpful.


Artifacts: Get rid of the markdown parser.

We were always just emitting the markdown output to the console. This feature was very expensive, both in terms of deployment size and in terms of execution time.
When running vcpkg find artifact gcc, this change reduces the execution time from ~708 ms to ~378 ms, or 1.8 times as fast. It also cuts the deployed size of the ecmascript by 48%. (This is very close to letting us just embed the ecmascript directly which means we can avoid an extra download when someone touches artifacts)

I'm assuming the majority of the speedup is just due to node parsing less ecmascript. If we compare the old and new deployments side by side the top 1, 3, and 4 packages in terms of size (lodash, marked, and esprima) are gone.

Soon: YAML :)

Before:

After:


Please invite me to the GitHub Community Organization

Name
Hariket Sheth
Discord Username (if applicable)
Hariket Sheth#1969
Additional Context
I would like to contribute as much as possible for the growth of the community

Welcome to ChryzHub @hariketsheth 🥳🎉


Synchronizing to hive partition is incorrect

spark 2.4.0.cloudera1
hadoop 2.6.0-cdh5.11.1
hive 1.1.0-cdh5.11.1
hudi 0.4.7

I select some data from hive table and wrote a new table with hudi then sync to hive.

My Code
Dataset<Row> hiveQuery = spark.sql("select timestamp,key,name,part_date from dw.xxxxx where part_date='2019-08-02' limit 10");

hiveQuery.write()
	.format("com.uber.hoodie")
	.option(DataSourceWriteOptions.HIVE_ASSUME_DATE_PARTITION_OPT_KEY(), true)
	.option(DataSourceWriteOptions.HIVE_URL_OPT_KEY(), "jdbc:hive2://xxxx:10000")
	.option(DataSourceWriteOptions.HIVE_DATABASE_OPT_KEY(), "dw")
	.option(DataSourceWriteOptions.HIVE_SYNC_ENABLED_OPT_KEY(), true)
	.option(DataSourceWriteOptions.HIVE_TABLE_OPT_KEY(), "hoodie_test")
	.option(DataSourceWriteOptions.HIVE_PARTITION_FIELDS_OPT_KEY(), "part_date")
	.option(DataSourceWriteOptions.RECORDKEY_FIELD_OPT_KEY(), "key")
	.option(DataSourceWriteOptions.PARTITIONPATH_FIELD_OPT_KEY(), "part_date")
	.option(DataSourceWriteOptions.PRECOMBINE_FIELD_OPT_KEY(), "timestamp")
	.option(HoodieWriteConfig.TABLE_NAME, "hoodie_test")
	.mode(SaveMode.Append)
	.save("/wxm/hudi/data/hoodie_test");

The job success however I found some problems with the hive partition in new table.
1. The partition path is incorrect.
If the data migration is through hive syntax as select, then the partition should be like this:
// insert overwrite table new_table partition(part_date)  select xxx from old_table
/wxm/hudi/data/hoodie_test/part_date=2019-08-02

The path I am running with the code above is：/wxm/hudi/data/hoodie_test/2019-08-02
The hive partition should be in the form of key=value and hudi missing part_date field name.
2. Hive table has no partition
I use show partitions table not find any partition, I think if you set up a hive partition, you should add it automatically. This causes the query to have no data.
hive> show partitions xxx;
OK
Time taken: 0.317 seconds

hive> select * from xxx limit 10;
OK
Time taken: 0.451 seconds

Manual operation query data
Then I manually added the partition alter table add partition(part_date='2019-08-02') and moved the file generated by hudi to the partition hadoop fs -cp /wxm/hudi/data/hoodie_test/2019-08-02/* /wxm/hudi/data/hoodie_test/part_date=2019-08-02/
I can select the data.

【ps】：

When I run the job for the second time the partition will be added automatically and the data will be found.

However can only find the second time data and i found two parquet files.
I guess it is because the first time the table just created and there is no partition ops, the second time the table is found to exist, then partition add automatically. I don't know why do not add a partition while first time building table.

Sorry. Have not had the chance to look at this closely :(. Will circle back tmrw.

@imperio-wxm if I'm reading correctly, the hudi sync was able to successfully register the table but the partitions are incorrect ?

The hive partition should be in the form of key=value and hudi missing part_date field name.
This is a convention and not necessary per se for external tables..

Can you paste the logs you get for the Hive sync portion? In general, we expect 	.option(DataSourceWriteOptions.PARTITIONPATH_FIELD_OPT_KEY(), "part_date") to have values of the form yyyy/mm/dd .. Do you have them as yyyy-mm-dd ?

@vinothchandar @n3nash

The hive partition should be in the form of key=value and hudi missing part_date field name.
This is should be something I understand some problems

Default partition value is yyyy/mm/dd and  I rewrote the partitioning method change to yyyy-mm-dd
@Override
public List<String> extractPartitionValuesInPath(String partitionPath) {
	// partition path is expected to be in this format yyyy/mm/dd
	String[] splits = partitionPath.split("-");
	if (splits.length != 3) {
		throw new IllegalArgumentException(
				"Partition path " + partitionPath + " is not in the form yyyy-mm-dd ");
	}
	// Get the partition part and remove the / as well at the end
	int year = Integer.parseInt(splits[0]);
	int mm = Integer.parseInt(splits[1]);
	int dd = Integer.parseInt(splits[2]);
	DateTime dateTime = new DateTime(year, mm, dd, 0, 0);
	return Lists.newArrayList(getDtfOut().print(dateTime));
}

Have an important question:
When I run the job for the first time, no partition is added to generate the file. When I run the second time, the partition will be added automatically, but the first data will not be loaded. I want to konw why?

When I run the job for the first time, no partition is added to generate the file.
are you seeing that the commit was successful and hive sync was successful and there were no partitions added in Hive? if so, thats not normal behavior.. Please clarify ..

@imperio-wxm wondering if you had a chance to check it out.

@imperio-wxm, you need to set the value of DataSourceWriteOptions.HIVE_ASSUME_DATE_PARTITION_OPT_KEY() to false.
Why the first time can't get the data
Because, when you rewrite the partitioning method in order to parse yyyy-mm-dd form, it depends on the the return form of the methodPartitionValueExtractor#extractPartitionValuesInPath.
For example, if you custom extractor like bellow, the new partition is like part_date=2019-11-12, so
it needs to set HIVE_ASSUME_DATE_PARTITION_OPT_KEY to false.
After that, HoodieHiveClient will get all folder partitions. Otherwise, it will get three levels form partition.
For detail, you can visit FSUtils#getAllPartitionPaths.
public class DayValueExtractor implements PartitionValueExtractor {

    private transient DateTimeFormatter dtfOut;

    public DayValueExtractor() {
        this.dtfOut = DateTimeFormat.forPattern("yyyy-MM-dd");
    }

    private DateTimeFormatter getDtfOut() {
        if (dtfOut == null) {
            dtfOut = DateTimeFormat.forPattern("yyyy-MM-dd");
        }
        return dtfOut;
    }

    @Override
    public List<String> extractPartitionValuesInPath(String partitionPath) {
        // partition path is expected to be in this format yyyy/mm/dd
        String[] splits = partitionPath.split("-");
        if (splits.length != 3) {
            throw new IllegalArgumentException(
                    "Partition path " + partitionPath + " is not in the form yyyy-mm-dd ");
        }
        // Get the partition part and remove the / as well at the end
        int year = Integer.parseInt(splits[0]);
        int mm = Integer.parseInt(splits[1]);
        int dd = Integer.parseInt(splits[2]);
        DateTime dateTime = new DateTime(year, mm, dd, 0, 0);
        return Lists.newArrayList(getDtfOut().print(dateTime));
    }
}

Right example
import org.apache.spark.sql.SaveMode
val basePath = "/flink/hudi/hoodie_test"
var datas = List("{ \"key\": \"uuid\", \"event_time\":<PHONE_NUMBER>836, \"part_date\": \"2019-11-12\"}")
val df = spark.read.json(spark.sparkContext.parallelize(datas, 2))

df.write.format("hudi").
    option("hoodie.insert.shuffle.parallelism", "10").
    option("hoodie.upsert.shuffle.parallelism", "10").
    option("hoodie.delete.shuffle.parallelism", "10").
    option("hoodie.bulkinsert.shuffle.parallelism", "10").

    option("hoodie.datasource.hive_sync.enable", true).
    option("hoodie.datasource.hive_sync.jdbcurl", "jdbc:hive2://xxxx:12326").
    option("hoodie.datasource.hive_sync.username", "dcadmin").
    option("hoodie.datasource.hive_sync.password", "dcadmin").
    option("hoodie.datasource.hive_sync.database", "default").
    option("hoodie.datasource.hive_sync.table", "hoodie_test").
    option("hoodie.datasource.hive_sync.assume_date_partitioning", false).
    option("hoodie.datasource.hive_sync.partition_fields", "part_date").

    option("hoodie.datasource.hive_sync.partition_extractor_class", "org.apache.hudi.hive.DayValueExtractor").

    option("hoodie.datasource.write.precombine.field", "event_time").
    option("hoodie.datasource.write.recordkey.field", "key").
    option("hoodie.datasource.write.partitionpath.field", "part_date").

    option("hoodie.table.name", "hoodie_test").
    mode(SaveMode.Append).
    save(basePath);

@lamber-ken  get the full context now.. DEFAULT_HIVE_ASSUME_DATE_PARTITION_OPT_VAL is false in fact.

Right, we also can change assumeDatePartitioning to !assumeDatePartitioning at FSUtils#getAllPartitionPaths to fix this issue, WDYT?
public static List<String> getAllPartitionPaths(FileSystem fs, String basePathStr, boolean assumeDatePartitioning)
    throws IOException {
  if (assumeDatePartitioning) {
    return getAllPartitionFoldersThreeLevelsDown(fs, basePathStr);
  } else {
    return getAllFoldersWithPartitionMetaFile(fs, basePathStr);
  }
}

I am using hudi-0.5.0
here the raw data
{"partitionpath": "2019/12/18","ts":"2019/12/18","name":"Andy", "age":30,"uuid":"d6e42d99-a447-43f4-94f4-ee61f1e5a6c4"}
{"partitionpath": "2019/12/18","ts":"2019/12/18","name":"Justin", "age":19,"uuid":"d6e42d99-a447-43f4-94f4-ee61f1e5a6c8"}

but when use run.sync.sh tool

Adding partitions 1 to table synctable
Exception in thread "main" org.apache.hudi.hive.HoodieHiveSyncException: Failed to sync partitions for table synctable
at org.apache.hudi.hive.HiveSyncTool.syncPartitions(HiveSyncTool.java:172)
at org.apache.hudi.hive.HiveSyncTool.syncHoodieTable(HiveSyncTool.java:107)
at org.apache.hudi.hive.HiveSyncTool.syncHoodieTable(HiveSyncTool.java:67)
at org.apache.hudi.hive.HiveSyncTool.main(HiveSyncTool.java:192)
Caused by: java.lang.IllegalArgumentException: Partition key parts [] does not match with partition values [2019-12-18]. Check partition strategy.

/**
 * HDFS Path contain hive partition values for the keys it is partitioned on. This mapping is not straight forward and
 * requires a pluggable implementation to extract the partition value from HDFS path.
 * <p>
 * This implementation extracts datestr=yyyy-mm-dd from path of type /yyyy/mm/dd
 */
public class SlashEncodedDayPartitionValueExtractor implements PartitionValueExtractor {

  private transient DateTimeFormatter dtfOut;

  public SlashEncodedDayPartitionValueExtractor() {
    this.dtfOut = DateTimeFormat.forPattern("yyyy-MM-dd");
  }

  private DateTimeFormatter getDtfOut() {
    if (dtfOut == null) {
      dtfOut = DateTimeFormat.forPattern("yyyy-MM-dd");
    }
    return dtfOut;
  }

  @Override
  public List<String> extractPartitionValuesInPath(String partitionPath) {
    // partition path is expected to be in this format yyyy/mm/dd
    String[] splits = partitionPath.split("/");
    if (splits.length != 3) {
      throw new IllegalArgumentException("Partition path " + partitionPath + " is not in the form yyyy/mm/dd ");
    }
    // Get the partition part and remove the / as well at the end
    int year = Integer.parseInt(splits[0]);
    int mm = Integer.parseInt(splits[1]);
    int dd = Integer.parseInt(splits[2]);
    DateTime dateTime = new DateTime(year, mm, dd, 0, 0);
    return Lists.newArrayList(getDtfOut().print(dateTime));
  }

  /**
   * Generate Hive Partition from partition values
   *
   * @param partition Partition path
   * @return
   */
  private String getPartitionClause(String partition) {
    List<String> partitionValues = partitionValueExtractor.extractPartitionValuesInPath(partition);
    Preconditions.checkArgument(syncConfig.partitionFields.size() == partitionValues.size(),
        "Partition key parts " + syncConfig.partitionFields + " does not match with partition values " + partitionValues
            + ". Check partition strategy. ");
    List<String> partBuilder = new ArrayList<>();
    for (int i = 0; i < syncConfig.partitionFields.size(); i++) {
      partBuilder.add(syncConfig.partitionFields.get(i) + "=" + "'" + partitionValues.get(i) + "'");
    }
    return partBuilder.stream().collect(Collectors.joining(","));
  }

it's correct on hudi-0.5.0
private transient DateTimeFormatter dtfOut;

  public SlashEncodedDayPartitionValueExtractor() {
    this.dtfOut = DateTimeFormat.forPattern("yyyy-MM-dd");
  }

  private DateTimeFormatter getDtfOut() {
    if (dtfOut == null) {
      dtfOut = DateTimeFormat.forPattern("yyyy-MM-dd");
    }
    return dtfOut;
  }

  @Override
  public List<String> extractPartitionValuesInPath(String partitionPath) {
    // partition path is expected to be in this format yyyy/mm/dd
    String[] splits = partitionPath.split("/");
    if (splits.length != 3) {
      throw new IllegalArgumentException("Partition path " + partitionPath + " is not in the form yyyy/mm/dd ");
    }
    // Get the partition part and remove the / as well at the end
    int year = Integer.parseInt(splits[0]);
    int mm = Integer.parseInt(splits[1]);
    int dd = Integer.parseInt(splits[2]);
    DateTime dateTime = new DateTime(year, mm, dd, 0, 0);
    return Lists.newArrayList(getDtfOut().print(dateTime));
  }

it's correct on hudi-0.5.0
private transient DateTimeFormatter dtfOut;

  public SlashEncodedDayPartitionValueExtractor() {
    this.dtfOut = DateTimeFormat.forPattern("yyyy-MM-dd");
  }

  private DateTimeFormatter getDtfOut() {
    if (dtfOut == null) {
      dtfOut = DateTimeFormat.forPattern("yyyy-MM-dd");
    }
    return dtfOut;
  }

  @Override
  public List<String> extractPartitionValuesInPath(String partitionPath) {
    // partition path is expected to be in this format yyyy/mm/dd
    String[] splits = partitionPath.split("/");
    if (splits.length != 3) {
      throw new IllegalArgumentException("Partition path " + partitionPath + " is not in the form yyyy/mm/dd ");
    }
    // Get the partition part and remove the / as well at the end
    int year = Integer.parseInt(splits[0]);
    int mm = Integer.parseInt(splits[1]);
    int dd = Integer.parseInt(splits[2]);
    DateTime dateTime = new DateTime(year, mm, dd, 0, 0);
    return Lists.newArrayList(getDtfOut().print(dateTime));
  }

hi, I guess you didn't use this parameter DataSourceWriteOptions.HIVE_ASSUME_DATE_PARTITION_OPT_KEY.

Yes i did not use it,
Maybe the partition path should be like //*/, which will be more flexible
such as data  or location form if I understand correctly
On Sat, 21 Dec 2019 at 21:40, lamber-ken<EMAIL_ADDRESS>wrote:

it's correct on hudi-0.5.0
private transient DateTimeFormatter dtfOut;
public SlashEncodedDayPartitionValueExtractor() {
this.dtfOut = DateTimeFormat.forPattern("yyyy-MM-dd");
}
private DateTimeFormatter getDtfOut() {
if (dtfOut == null) {
dtfOut = DateTimeFormat.forPattern("yyyy-MM-dd");
}
return dtfOut;
}
@Override
public List extractPartitionValuesInPath(String partitionPath) {
// partition path is expected to be in this format yyyy/mm/dd
String[] splits = partitionPath.split("/");
if (splits.length != 3) {
throw new IllegalArgumentException("Partition path " + partitionPath + " is not in the form yyyy/mm/dd ");
}
// Get the partition part and remove the / as well at the end
int year = Integer.parseInt(splits[0]);
int mm = Integer.parseInt(splits[1]);
int dd = Integer.parseInt(splits[2]);
DateTime dateTime = new DateTime(year, mm, dd, 0, 0);
return Lists.newArrayList(getDtfOut().print(dateTime));
}
hi, I guess you didn't use this parameter
DataSourceWriteOptions.HIVE_ASSUME_DATE_PARTITION_OPT_KEY.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/apache/incubator-hudi/issues/828?email_source=notifications&email_token=AN2KTR76YYUSOS7LMCKRSJLQZYMDFA5CNFSM4IKQF66KYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEHO4I3I#issuecomment-568181869,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AN2KTR7PJZ3X5DPUZ6BRILLQZYMDFANCNFSM4IKQF66A
.

--
Thanks
Hao Li

In that case, I am not sure why the code would not find the partitions it just wrote? is this S3? may be an eventual consistency issue?

In that case, I am not sure why the code would not find the partitions it just wrote? is this S3? may be an eventual consistency issue?

We can discuss about it here, https://github.com/apache/incubator-hudi/pull/1105#issuecomment-569978944

hi @imperio-wxm, this issue was fixed at master branch, if you have time, you can test again. :D

Closing this due to inactivity.


App Crash on  when using the spinner Android 6 and below

Please complete the following information:

Library Version  V1.1.3
Affected Device(s) Android 6 and below

Describe the Bug:
Hello,
There's a bug that is being reported by crashlytics on Android 5 and 6 and I faced when testing on Android 4.4  that causes the app to crash when using the spinner.
it's working fine on Android 10 and Android 8
this the logcat
    java.lang.NullPointerException
        at android.widget.PopupWindow.update(PopupWindow.java:1375)
        at com.skydoves.powerspinner.PowerSpinnerView$updateSpinnerWindowSize$1.run(PowerSpinnerView.kt:496)
        at android.os.Handler.handleCallback(Handler.java:733)
        at android.os.Handler.dispatchMessage(Handler.java:95)
        at android.os.Looper.loop(Looper.java:136)
        at android.app.ActivityThread.main(ActivityThread.java:5017)
        at java.lang.reflect.Method.invokeNative(Native Method)
        at java.lang.reflect.Method.invoke(Method.java:515)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
        at dalvik.system.NativeStart.main(Native Method)

Is there any fix for this problem as I am getting multiple crashes on Android 5 and 6.
Thanks.

Hi, @basemosama.
The crash would occur when we call setItems or setSpinnerAdapter before the PowerSpinnerView is initialized.
It seems to be called after finish inflating.
powerspinnerView.post {
  setItems(..)
}

yes, the problem happens when I use setItems or app:spinner_item_array
it works fine in Android 10 and 11
but when I tested it on Android 6 and 4.4 it causes the app to crash.
Is it a problem with the library or is there something wrong on my implementation ?

Hi, @basemosama.
I just found the issue in the library, It will be fixed in the next release!
Thank you for your reporting :)

Released a new version 1.1.4.
Thanks!

Nice,
Thanks for the quick update.


Commit for patch 8.2.5066 does not match commit comment.

Steps to reproduce
N/A
Expected behaviour
This commit says it is about timer_create on Macs, but the changes are for something completely different.
Version of Vim
patch 8.2.5066:
Environment
N/A
Logs and stack traces
No response

This commit says it is about timer_create on Macs, but the changes are for something completely different.

Sorry about that.  I had a patch to try out this #ifdef change, but did
not want to send it out yet.  Unfortunately the patch that I did send
out picked up the description of the other patch.  Other than the wrong
description it should be OK.
--
[Autumn changed into Winter ... Winter changed into Spring ...  Spring
changed back into Autumn and Autumn gave Winter and Spring a miss and
went straight on into Summer ...  Until one day ...]
"Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD
/// Bram Moolenaar -- @.*** -- http://www.Moolenaar.net   \
///                                                                      \
\\        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ ///
\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

I had a patch to try out this #ifdef change,

Regarding the #ifdef' patch, I am surprised and puzzled. My Mac does
not have timer_create, so I am surprised that somebody else had a
problem. Please let me know if I can be of help looking at this.

I have sent out the change that should fix the reported problem.
Configure should run on Mac, I don't know why this extra condition was
there.
--
My girlfriend told me I should be more affectionate.
So I got TWO girlfriends.
/// Bram Moolenaar -- @.*** -- http://www.Moolenaar.net   \
///                                                                      \
\\        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ ///
\\            help me help AIDS victims -- http://ICCF-Holland.org    ///


Clear pairing information

I'm sorry to bother you . My C language is poor , so i can not clear pairing information. I would appreciate you if  you can help me package a function or teach me some details in order to remove the pairing information ?  Thank you very much .
init_hap_storageReaded bytes ->1409

HomeKit: init_storage_ex size 0x581
Home Integration: hap_services added chararacteristic  0: 00000023-0000-1000-8000-0026BB765291
Home Integration: hap_services added chararacteristic  1: 00000025-0000-1000-8000-0026BB765291
Home Integration: hap_init_homekit_server library version v1.1
Home Integration: homekit_is_paired 1
HomeKit: Starting server
HomeKit: Using existing accessory ID: 29:CA:D3:95:26:75
HomeKit: Found admin pairing with 5F24A199-146E-4BEA-9908-E8DC95FAA940, disabling pair setup
HomeKit: Configuring mDNS

When i try to add SPIFFS.remove("/pair.dat"); to the code，the problem seems to have been solved。

There are a few possibility to remove existing pairings:

When device is online (connected to Wifi) pairing can be removed from Apple Home App. Just remove deivice. But if device is not online pairing will no be removed on device and you need next  steps..
You can remove pairing.dat from the web interface , see readme section
You can remove pairing.dat from the code (you exactly mentioned about that) and as well some logic can be implemented. Like long press on the some button can trigger removing pairing.dat

Okey,I have already solved this problem,thanks your reply.
------------------ 原始邮件 ------------------
发件人: @.>;
发送时间: 2021年8月2日(星期一) 中午1:42
收件人: @.>;
抄送: @.>; @.>;
主题: Re: [Yurik72/ESPHap] Clear pairing information (#102)
There are a few possibility to remove existing pairings:
When device is online (connected to Wifi) pairing can be removed from Apple Home App. Just remove deivice. But if device is not online pairing will no be removed on device and you need next  steps..
You can remove pairing.dat from the web interface , see readme section
You can remove pairing.dat from the code (you exactly mentioned about that) and as well some logic can be implemented. Like long press on the some button can trigger removing pairing.dat
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or unsubscribe.


Support for unbuffered writes

Hello,
this PR aims to tackle one problem I had: streaming the output of a program while it is running over HTTP, similarly to the Github/GitLab CI "live" screens.
In fact, the goal is to perform a request to the server with cURL inside a gitlab-ci job, and see the output unfolds as the program is executed:

              web browser
----------    ------------> -------------------
| CLIENT |                  |  GitLab CI job  |
----------   <------------  -------------------
               streams the     |              ∧
                  output       |              |
                               | executes     | prints the
                               |              | output
                               |              | "live"
                               ∨              |
                             -------------------
                             |       cURL      |
                             -------------------
                              |               ∧
                              |               | streaming
                              | HTTP          | (chunked
                              | query         | transfer)
                              |               | of stdin
                              |               | and stdout
                  spawns      ∨               |
-----------  <------------   --------------------
| program |                  | tiny-http server |
-----------   ------------>  --------------------
               sends stdout
               and stdin in
                 a pipe

Without this patch, the program executes in its entirety, and the output is sent all at once
once the pipe where the program writes its output is closed.
To achieve that goal, I submit two "sub-features":

The ability to disable buffering inside Response objects with the Response::with_buffered method.
Enabling this will force the transfer encoding to be TransferEncoding::Chunked and will ask the
chunks encoder to flush to its underlying writer on every write.
To get "instantaneous" write, disabling buffering in the chunks encoder is not enough, as the underlying
writer returned when calling Server::recv() (ClientConnection.sink) is in fact a BufWriter wrapping
the "real" output. The buffered_writer option in ServerConfig, when set to false while instantiating
a new server, omits the BufWriter to write to the TcpStream withotu any buffering. The cost of that
abstraction is that ClientConnection.sink now boxes the writer to be able to choose between
BufWriter<RefinedTcpStream> or RefinedTcpStream dynamically, which means there is now one additional
pointer deference. I do however expect the performance impact to be small as this pointer is then stored
in an Arc<Mutex<>>, and I think locking/unlocking the mutex should be more costly that deferencing the
pointer.

I expect this to decrease performance when sending big files, which is why these two sub-features are disabled
by default, and must explicitly be opted-in (by calling the with_buffered method for the first, and by
instanciating the server with the buffered_writer setting for the second).
Also note that the current iteration of this work breaks the current ABI, as it updates ServerConfig to
add the buffered_writer option, and ServerConfig was already exposed through the Server::new function.

Alright, I have reworked the PR to rebase it on master, and also:

removed all the boolean parameters.
Added a new MaybeBufferedWriter enum to remove the Box<dyn Write> that I have introduced in the previous version. This should lead to slighter better performance (and mainly produce less allocations).

Note that the rustc-1.56 failure is not due to the PR itself, but the need to bump the minimal version in the CI to 1.57 for rustls.

@bradfier Sorry to dust up this old PR, but there were conflicts preventing an eventual merge, so I updated the PR and reworked the then-outdated commit message.


GoRouter have duplicated logs

Steps to reproduce
by using the latest go router version with latest logging package version can be reproduced as below
logging package : https://pub.dev/packages/logging

set debugLogDiagnostics: true in GoRouter
have the configuration below for Logging in code sample section

Also with version go_router: ^10.2.0 and below the logs seems like working fine and shows with  debugLogDiagnostics: false to false
flutter:3.16.5
go_router:13.1.0
logginer:1.2.0
Expected results
Expected logs
D/[FBP-Android](19236): [FBP] onMethodCall: getAdapterState
I/flutter (19236): 2024-02-19 15:39:22.060845 INFO - GoRouter: Full paths for routes:
I/flutter (19236):   => /home
I/flutter (19236):   => /drip
I/flutter (19236):
I/flutter (19236): 2024-02-19 15:39:22.073715 INFO - GoRouter: setting initial location /home
I/flutter (19236): 2024-02-19 15:39:22.370618 INFO - GoRouter: Using MaterialApp configuration
I/flutter (19236): 2024-02-19 15:39:22.533719 FINE - HomeViewModel: init HomeViewModel
I/flutter (19236): 2024-02-19 15:39:22.650645 FINE - HomeViewModel: Emitted state ViewStateLoading()

Actual results
Duplicated logs after setting debugLogDiagnostics: true
I/flutter (19236): 2024-02-19 15:39:22.060845 INFO - GoRouter: Full paths for routes:
I/flutter (19236):   => /home
I/flutter (19236):   => /drip
I/flutter (19236):
[GoRouter] Full paths for routes:
             => /home
             => /drip
I/flutter (19236): 2024-02-19 15:39:22.073715 INFO - GoRouter: setting initial location /home
[GoRouter] setting initial location /home
I/flutter (19236): 2024-02-19 15:39:22.370618 INFO - GoRouter: Using MaterialApp configuration
2
[GoRouter] Using MaterialApp configuration
I/flutter (19236): 2024-02-19 15:39:22.521964 INFO - GoRouter: Using MaterialApp configuration
[HomeViewModel] init HomeViewModel
I/flutter (19236): 2024-02-19 15:39:22.533719 FINE - HomeViewModel: init HomeViewModel
I/flutter (19236): 2024-02-19 15:39:22.650645 FINE - HomeViewModel: Emitted state ViewStateLoading()
[HomeViewModel] Emitted state ViewStateLoading()

Code sample
Code sample
import 'dart:async';
import 'package:equatable/equatable.dart';
import 'package:logging/logging.dart';

import 'plain_log_writer.dart';

class LogConfig {
  static StreamSubscription? loggerSubscription;

  static void init({required Level logLevel}) {
    final PlainStdoutLogWriter logWriter = PlainStdoutLogWriter();

    Logger.root.level = logLevel;

    loggerSubscription?.cancel();

    loggerSubscription = Logger.root.onRecord.listen((LogRecord record) {
      if (record.error is Error) {
        logWriter.logError(record, record.error as Error);
      } else if (record.error is Exception) {
        logWriter.logException(record, record.error as Exception);
      } else if (record.stackTrace != null) {
        logWriter.logStacktrace(record, record.stackTrace!);
      } else {
        logWriter.logRecord(record);
      }
    });

    // use generated (by equatable) toString methods for logging out objects
    EquatableConfig.stringify = true;

    Logger.root.info('Started logging on level ${Logger.root.level} with $logWriter');
  }
}

and

import 'package:flutter/foundation.dart';
import 'package:logging/logging.dart';

class PlainStdoutLogWriter {
  void logError(LogRecord record, Error error) {
    _printLog(record, ': $error\n${error.stackTrace}');
  }

  void logException(LogRecord record, Exception exception) {
    _printLog(record, ': $exception\n${record.stackTrace ?? ""}');
  }

  void logStacktrace(LogRecord record, StackTrace stackTrace) {
    _printLog(record, ': ${record.error}\n${record.stackTrace ?? "null stackTrace"}');
  }

  void logRecord(LogRecord record) {
    _printLog(record);
  }

  void _printLog(LogRecord record, [String extraMessage = '']) {
    // don't log if turned off
    if (record.level < Level.OFF) {
      // Here it is ok to print(), we are using the logger until here.
      // ignore: avoid_print
      debugPrint('${record.time} ${record.level.name} - ${record.loggerName}: ${record.message}$extraMessage');
    }
  }
}

also by setting the log level to any not above INFO
 LogConfig.init(logLevel: Level.FINE);

Screenshots or Video
Also duplicated logs shows as yellow color in VScode

Flutter Doctor output
[!] Flutter (Channel [user-branch], 3.16.5, on macOS 14.3 23D56 darwin-arm64, locale en-DE)
! Flutter version 3.16.5 on channel [user-branch] at /Users/**/Development/flutter
Currently on an unknown channel. Run flutter channel to switch to an official channel.
If that doesn't fix the issue, reinstall Flutter by following instructions at https://flutter.dev/docs/get-started/install.
! Upstream repository unknown source is not a standard remote.
Set environment variable "FLUTTER_GIT_URL" to unknown source to dismiss this error.
• Framework revision 78666c8dc5 (9 weeks ago), 2023-12-19 16:14:14 -0800
• Engine revision 3f3e560236
• Dart version 3.2.3
• DevTools version 2.28.4
• If those were intentional, you can disregard the above warnings; however it is recommended to use "git" directly to perform update checks and upgrades.
[!] Android toolchain - develop for Android devices (Android SDK version 33.0.1)
• Android SDK at /Users/**/Library/Android/sdk
✗ cmdline-tools component is missing
Run path/to/sdkmanager --install "cmdline-tools;latest"
See https://developer.android.com/studio/command-line for more details.
✗ Android license status unknown.
Run flutter doctor --android-licenses to accept the SDK licenses.
See https://flutter.dev/docs/get-started/install/macos#android-setup for more details.
[!] Xcode - develop for iOS and macOS (Xcode 15.2)
• Xcode at /Applications/Xcode.app/Contents/Developer
• Build 15C500b
✗ Unable to get list of installed Simulator runtimes.
• CocoaPods version 1.14.3
[✗] Chrome - develop for the web (Cannot find Chrome executable at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome)
! Cannot find Chrome. Try setting CHROME_EXECUTABLE to a Chrome executable.
[✓] Android Studio (version 2023.1)
• Android Studio at /Applications/Android Studio.app/Contents
• Flutter plugin can be installed from:
🔨 https://plugins.jetbrains.com/plugin/9212-flutter
• Dart plugin can be installed from:
🔨 https://plugins.jetbrains.com/plugin/6351-dart
• Java version OpenJDK Runtime Environment (build 17.0.7+0-17.0.7b1000.6-10550314)
[✓] VS Code (version 1.79.2)
• VS Code at /Users/**/Downloads/Visual Studio Code.app/Contents
• Flutter extension version 3.82.0
[✓] Connected device (3 available)
• 2201123G (mobile)           • 7b5a8447      • android-arm64 • Android 13 (API 33)
• sdk gphone64 arm64 (mobile) • emulator-5554 • android-arm64 • Android 13 (API 33) (emulator)
• macOS (desktop)             • macos         • darwin-arm64  • macOS 14.3 23D56 darwin-arm64
[✓] Network resources
• All expected network resources are available.
! Doctor found issues in 4 categories.

@waliseddiqi
Most probably you are hitting https://github.com/flutter/flutter/issues/107982 that you can check and confirm.
Also, this could be occuring due to the fact that you are passing debugLogDiagnostics: true. Can you try by passing it as false and check if log is duplicated still ?
Moreover, check this and other underlying comments from the linked issue to see if they help to get expected result or not.
Please check above using latest go_router version.

@darshankawar I checked the issue you mentioned before and it didnt help resolving the issue I am facing.
Passing debugLogDiagnostics: false get rid of the duplicated logs but It doesnt show go_router logs anymore, the change was added here for disabling go_router logs if the flag is false.
I just want to see go_router logs without having duplicated logs of my app as I added in screenshot, I guess the issue occur when I listen to logging package logs from my app and also go_router listens to it thats why duplication occurs

@waliseddiqi
Check this and the solution to see if it helps to resolve your issue or not.

@darshankawar  those are the exact issue I am facing right now. Hopefully the request changes in there will be merged in upcoming go_router updates.
I will follow the thread there you may close this issue or mention it there

Thanks for confirming. Closing this as duplicate. You may share your findings in that issue for better tracking.


move containers fixing code to its function

Right now the code that does fix for containers list
is part of createK8s function, moved it to fix.go
so this is where all fixers live.

blocked on #180

@containscafeine updated tests, now they pass!


Add more troubleshooting information.

Purpose / why
Suggest restarting Docker if connection errors - possibly related to this ticket (thanks @g7morris) https://github.com/docker/compose/issues/3927
What changes were made?
Added another troubleshooting block
Verification
Does it read right and build ok? (code block in an admonition)
Interested Parties
@Islandora/documentation ?

Checklist

Pull-request reviewer should ensure the following

[ ] Does this PR link to related issues?
[x] Does the proposed documentation align with the Islandora Documentation Style Guide?
[ ] Are the changes accurate, useful, free of typos, etc?
[ ] Does this PR update the last updated on date on the documentation page?

Person merging should ensure the following

[x] Does mkdocs still build successfully? (This is indicated by TravisCI passing. To test locally, and see warnings, see How To Build Documentation.)
[ ] If pages are renamed or removed, have all internal links to those pages been fixed?
[ ] If pages are added, have they been linked to or placed in the menu?
[x] Did the PR receive at least one approval from a committer, and all issues raised have been addressed?

I've reviewed and this looks good. Thanks @rosiel for this update.

I should have commented here but did it here instead https://github.com/Islandora/documentation/issues/1712#issuecomment-738218226 re what looks like an old screenshot?


fix parse errors when a rule would be excluded

related to issue 12
Signed-off-by: Ives Hotz<EMAIL_ADDRESS>

The logic improvements provided helped to improve this function across all the audits we are creating.
Thank you once again for your continued feedback and support.
A new release will be available shortly for the latest remediation and audit benchmark for the latest cis version.
Many thanks
uk-bolly


feat: support multiple installs with vehicle selecting

defaults to first vehicle if only one available in installation and services
closes #4 and #5

@cdnninja this is the changes needed for multiple vehicle support


Error states for AddressInput

Currently there is no validation on the <AddressInput /> component, this means that users can enter a completely invalid wallet address and be completely unaware.
We need to design and implement error states for the <AddressInput /> if there:

is no value entered for the component
an invalid entry is on the component

Error state design has now been uploaded to the Invision prototype

@peasandwell to pick up again.


Fix issues related to OAuth Resource owner password grant flow

Summary: When using CAS as OIDC provider, and when we want to use username/password for authentication, CAS was not working as expected.
When we have a service registered as Confidential client giving it a client_id and client_secret, we should be providing both when using grant_type as password.
https://tools.ietf.org/html/rfc6749#section-4.3.2
We found following issues which are fixed in this PR.

When we supply username, password and client_id, CAS provides Access Token without checking for client_secret.

Expected behaviour is to return Unauthorized when the client_secret is provided for the registered service.

When we supply username, password, client_id and client_secret, CAS provides Access Token but for profile of the client. i.e we see a behaviour of grant_type=client_credentials.

Expected behaviour is to return access token for the user authenticated by provided credentials.
As a fix for this, added a check in OAuth20ClientIdClientSecretAuthenticator.java to skip Client authentication if the grant_type is password. And in OAuth20UsernamePasswordAuthenticator.java, client_secret is always checked if the registered service is provided with one.
There are couple of other issues which are fixed related to this flow.

If the OIDC scopes are not defined in registered service, then skip filtering for scopes and allow all OIDC scopes.
Find registered service using client_id instead of service when creating UserProfile

[x] Brief description of changes applied
[x] Test cases for all modified changes, where applicable
[x] The same pull request targetted at the master branch, if applicable
[x] Any documentation on how to configure, test
[x] Any possible limitations, side effects, etc: None
[X] Reference any other pull requests that might be related: None

@mmoayyed Can you please review this PR when you have some time ? Thanks

Sure. Apologies for the delay. Should be able to finalize before the weekend.

@mmoayyed Thanks for looking into this, and reverted change related to oidc service scopes.


Option to enable "Do Not Disturb" in the Notification Center

Feature request: Automatically enable "Do Not Disturb" in the OSX Notification Center during a cycle, and then disable during the break.
"Do Not Disturb" was added in Mavericks. See it by holding 'option' and clicking the OSX Notification Center:
https://www.dropbox.com/s/germyjxd1le3udk/Screenshot 2015-01-30 20.51.42.png?dl=0

:+1:

:+1:

Unfortunately, there is not an API to access the Do Not Disturb feature :(

:-1:

This stack overflow post might be of help: http://apple.stackexchange.com/a/69760/117542

Hmm, personally a little too hacky for my tastes. Definitely something to consider if there is ever a public API for it.
One thing I have thought of doing is adding scripting support to Tomighty to run scripts off various events, similar to what Focus does. This would let people script their DnD settings via AppleScript. Will probably close this ticket at some point.

Closed, since it's not going to be implemented. Feel free to open a new ticket if DND ever gets an API.


Pull Request for Feature_Spec_for_Controllers branch

In this PR the following requirements are achieved :

RSpec as a gem is added.

A Request spec file is created for all the controllers.

For each action followings are checked:

[ ]      Whether the Response status was correct or not.
[ ]      Whether a correct template was rendered or not.
[ ]      Whether the response body includes correct placeholder text or not.

Hi @chuaindia,
While you made a great effort in this project, unfortunately, I cannot proceed to review your code.
Invalid Code Review Request
You have submitted a project, that is invalid because the README file is not descriptive. Here is a screenshot to help us

Your Code Review Request will be marked as invalid in your Dashboard, so please submit a new one once you are ready 🙏
Cheers and Happy coding!👏👏👏
Feel free to leave any questions or comments in the PR thread if something is not 100% clear.
Please, remember to tag me in your question so I can receive the notification.
Please, do not open a new Pull Request for re-reviews. You should use the same Pull Request submitted for the first review, either valid or invalid unless it is requested otherwise.

Invalid Code Review Request does not count into the code reviews limit.

Ok I am correcting that.


Enhancement: Fix webhook evaluator logic

Description
This PR updates the webhook evaluator logic and a UI improvement to learn more about the evaluator.
Related Issue
Closes #1366

why an additional tooltip ? Let's simply add a Link.

True, thank you. I've made the changes.


add filtering feature to patients list

address this story:
https://www.pivotaltracker.com/story/show/150112248

add filtering feature to patients list
display loading indicator for status column before it is ready for filtering, otherwise filtering won't work correctly
fix sorting issue for consent date, was not sorted numerically
hide ID column for EPROMS (still selectable in side menu), see story:
https://www.pivotaltracker.com/story/show/149439243

adding one eproms change here, will inform when this  is ready to merge

This is ready to be merged upon reviewing.

@OptimusRhine
Adam, I realized adding export functionality is just adding attribute to the table to activate it.
Do you mind taking look at my changes to see nothing is amiss?


[Feature] Improving testing using redux-saga-tester

I was unimpressed by my saga tests and came accross this issue:
https://github.com/redux-saga/redux-saga/issues/518
which corresponds to what is being done here.
A certain @3LOK answered with a utility to improve the testing of sagas. I completely agree with the vision and am fairly happy with the APIs of his tool:
https://github.com/wix/redux-saga-tester
I think it would be great to include these in the project. I can attempt writing a PR to migrate the tests if you think this is useful stuff.
What do you think?

great idea - I'll be happy to help out if I can.

Would appreciate a RFC PR converting some first tests to get a taste for what this is like!

Ok I'll try to put one together within a few days.


Axis Grid/Frame in 3D

🚀 Feature
An Axis Grid/Frame in 3D. This is a standard feature from many visualization software. Here an example from paraview

and Imaris

Motivation
A frame really helps of get a sense of perspective, orientation and size of the objects.

Thanks for the feature request, @manerotoni ! @brisvag has a "work in progress" pull request adding bounding boxes. Is this along the lines of what you are looking for? Please feel free to add any comments or suggestions either here or in the pull request!
https://github.com/napari/napari/pull/4894#issuecomment-1203865332

Yes, I would say that axes and grid are a great candidate for ViewerOverlay, using that PR's terms :)

Hi everyone!! Congratulations on creating Napari, I love this tool and use it daily for my analyses. It would be incredibly useful to have the axes grid visualization tool, any updates?

Related, at I2K I got a request for gridlines in 2D mode across the canvas.


Fixed misspelled words and small grammar issues

I fixed a couple small errors in the wiki pages.

Thanks @HamletDRC!


Compilation warning after switching to v3.0.2

Getting Moving a local object in a return statement prevents copy elision in state_handling.hpp:186:11:
macOS 10.14.4
Xcode 10.2.1
MACOSX_DEPLOYMENT_TARGET = 10.13;
CLANG_CXX_LANGUAGE_STANDARD = "c++17";
CLANG_CXX_LIBRARY = "libc++";

In file included from ../../vendor/sol2/include/sol/sol.hpp:56:
In file included from ../../vendor/sol2/include/sol/state.hpp:27:
In file included from ../../vendor/sol2/include/sol/state_view.hpp:31:
../../vendor/sol2/include/sol/state_handling.hpp:186:11: warning: moving a local object in a return statement prevents copy elision [-Wpessimizing-move]
                        return std::move(err);
                               ^
../../vendor/sol2/include/sol/state_handling.hpp:186:11: note: remove std::move call here
                        return std::move(err);
                               ^~~~~~~~~~   ~

Fixed in latest.


Docs - Hacktoberfest - Remove reference to the t-shirt

There is no longer a t-shirt reward as of 2023
https://hacktoberfest.com/participation/#faq

No need for a changelog here, small fix only.

Thanks @zerolab


Parameter value should be evaluated just once in inject()

If e.g. a method call that returns a new instance of a Java class is passed to @ConfigProperty parameter, the method would be evaluated/called twice and two instances will be created by accident. This is acceptable for very simple state-less objects but not for objects that for example register JMX properties or connects to a remote system.
// Configuration.scala, createNewInstance() is called twice instead of once
aConfigBean.aParameter(createNewInstance(nameOfInstance))
// Generated Palette.scala calls inject() that evaluates the value twice
def aParameter(value: => Builder[_]): this.type = inject("aParameter", value)

Thanks.


[STYLE] Add a better images to index.html file (home page) for better appealing UI

@peb-peb can I work on this please I will change the home page photo

No description provided.

How?

Adding high-quality images that align with the aesthetic and purpose of your website @jayk-gupta

We can add a better image which would be more relevant to the content of the website and would be viewer oriented. This will make the website look more professional and appealing, and it will help to attract more visitors.

Important Announcement: Closure of GitHub Repository Issues, Website Redesign, and Discord Channel Invitation
We apologize for the inconvenience caused, but we must inform you that all current issues in our repository will be closed. This decision aims to improve our development process and enhance organization.
Excitingly, we are announcing a complete redesign of our website, focused on improving user experience and incorporating new features aligned with our goals.
Please note that approximately half of the existing issues are redundant and will be closed accordingly.
We also invite you to join our Discord channel for project collaboration and communication. Visit GSSoC server and assign yourself Web Resource Hub project role using the self-roles feature.
Join here
Your feedback and support are invaluable to us. We look forward to hearing your thoughts on the upcoming changes.
Thank you for your understanding and continued support.
Sincerely,
Project Admin


Allow for anonymization of in-memory configurations

Introduce build_anonymizers function to centralize configuration logic
Introduce anonymize_configuration function to anonymize configurations in memory
Reduce newly created code duplication by using anonymize_configuration to anonymize configuration in files
Write a test for this

This change is

Why? I am building something for which I want to anonymize configurations before I even have them on the disk, as I never want them on the disk un-anonymized.

Thanks for the quick review! I believe I have addressed all your concerns and the CI should pass - I ran pre-commit run --all-files locally and there were no issues.
Let me know if this matched your desired design now.

I don't know where that comment went, but I moved the imports back to where they belong.

Reviewed 2 of 3 files at r2, 1 of 1 files at r3, all commit messages.
Reviewable status: all files reviewed, 2 unresolved discussions (waiting on @Kircheneer and @sfraint)

tests/unit/test_anonymize_files.py line 9 at r3 (raw file):

from netconan.anonymize_files import FileAnonymizer, anonymize_files

Do you know how this got added? Wasn't triggered by pre-commit run --all-files for me. Please revert if so.

Fixed!

Fixed CI again now, sorry.


proposal: DD_APM_ANALYZED_SPANS env var is a clunky way to enable analyzing spans

Summary of conversation with Kirk Kaiser in the #apm Slack channel:
I think using an env var to enable collection of analyzed spans like below is a little clunky. In a microservices ecosystem deployed to a Kubernetes cluster, I’d have to update the agent daemonset configuration every time a new span/service is added to the ecosystem. It’d be nice if there were an option to enable/disable analysis of all spans like DD_APM_ANALYZE_SPANS=true/false. This could maybe be coupled with DD_APM_SPAN_WHITELIST and DD_APM_SPAN_BLACKLIST for more control.

@gbbr any update?

A better solution could be analyzing all the services and, instead of a whitelist, Datadog can have a blacklist for those not desired services.

Hey everyone!
We've now launched a new way to configure your Trace Search and Analytics via environment variables based upon this feedback:
https://docs.datadoghq.com/tracing/advanced_usage/?tab=java#trace-search-analytics
Happy to hear any further feedback. Thanks again everyone for the suggestions and comments.

@burningion I read the link, but it is not clear to me how should I config the analyzed spans. Do I still need to set the var DD_APM_ANALYZED_SPANS with all my services in Kuberenetes?

Hey everyone!
We've now launched a new way to configure your Trace Search and Analytics via environment variables based upon this feedback:
https://docs.datadoghq.com/tracing/advanced_usage/?tab=java#trace-search-analytics
Happy to hear any further feedback. Thanks again everyone for the suggestions and comments.

As far I've understood we still need to configure the agent to forward the spans received by the client like this: https://docs.datadoghq.com/tracing/trace_search_and_analytics/agent_trace_search/?tab=agent630
How does this then solve the problem above?

@andreamaruccia, I got it working by configuring the tracing clients, not the agents. So that means I no longer set the envvar DD_APM_ANALYZED_SPANS on the agent. Instead I just set it up globally by initializing my Node.js tracing clients with the config { analytics: true }.


addEventListener / removeEventListener

Currently when creating a FifloLogger we can add a callback onchange
https://github.com/cheminfo/fifo-logger/blob/360382052785d3b3fbb3778a5378649501bc1233/src/FifoLogger.ts#L32-L36
We would like to have the possibility to àddEventListener, removeEventListener` on an instance of FifoLogger.
It should be compatible with the browser and nodeJS.
@targos What would be the best approach to do this ?

Extend EventTarget
Dispatch a CustomEvent (or something that extends it)

This is only possible since Node.js 20.
https://developer.mozilla.org/en-US/docs/Web/Events/Creating_and_triggering_events


Add LICENSE.md

I see that you license Kopy under Apache 2, and that's listed in the POM file you publish. Some tooling that scans open source repositories for companies also looks for a LICENSE.md file at the root of the repo (Github also triggers off this).
Could you add the Apache 2 license in a LICENSE.md file?

Done!
Commit: https://github.com/JavierSegoviaCordoba/kopy/commit/3624fdd67ee21c22b0f50870d890af7b4be25979


Values meaning

Hello, what is the meaning of the numeric values? what does the number from 1 to 4 (?) means?

same doubt here


Add button to clear logs view

 Issue by ron064
Sunday Sep 21, 2014 at 02:52 GMT # Sample: Friday Sep 13, 2013 at 22:58 GMT
Originally opened as https://github.com/pebble/cloudpebble/issues/100

Now in entering to "view app logs" old logs are shown. I think it's useful, that it's not lost, but I would like to have an option to clear the display.

 Comment by msowka
Sunday Jan 04, 2015 at 03:58 GMT # Sample: Friday Sep 13, 2013 at 22:58 GMT

Yes, I would like to second that request, a quick one right ;)

 Comment by trusk89
Saturday Apr 04, 2015 at 21:20 GMT # Sample: Friday Sep 13, 2013 at 22:58 GMT

Third.

 Comment by gcey
Tuesday Apr 28, 2015 at 19:35 GMT # Sample: Friday Sep 13, 2013 at 22:58 GMT

I can't believe, that there is no possibility to clear the "app logs".
Maybe we just did not find it.
But if it really doesn't exist, it should be provided with high priority.

 Comment by amcolash
Monday May 18, 2015 at 19:41 GMT # Sample: Friday Sep 13, 2013 at 22:58 GMT

Definitely agree with all above. After 20 runs, it is getting pretty messy

 Comment by bingepiphany
Friday Jul 10, 2015 at 16:19 GMT # Sample: Friday Sep 13, 2013 at 22:58 GMT

I've vote this up if there was an upvote :)

 Comment by unwiredben
Wednesday Jul 22, 2015 at 16:14 GMT # Sample: Friday Sep 13, 2013 at 22:58 GMT

See https://github.com/pebble/cloudpebble/pull/175


Automatically add Delegate store operations to federated store

The federated store will likely have delegate stores underneath it. For example it may federate across graphs built on Accumulo, Hbase etc. These delegate stores will, by default, support operations which aren't supported by the Federated Store by default. For example, the AccumuloStore supports the GetElementsInRanges operation.
It would be good for the FederatedStore to support all operations supported by delegate stores and use the operation forwarding handler.

Merged into develop


flutter web

At the time of flutter web, BarAreaData could not be displayed as long as' applyCutOffY 'was used

I tried to reproduce it right now.
It works with the latest version.