Underlying TRV doesnt follow target Temp Anymore (6.8.1)

Version of the custom_component
6.8.1
-->
Configuration
My VTherm attributes are the following:
hvac_modes: off, auto, heat
min_temp: 7
max_temp: 35
target_temp_step: 0.1
preset_modes: none, frost, eco, comfort, boost
current_temperature: 20.7
temperature: 18
hvac_action: idle
preset_mode: eco
is_on: true
hvac_mode: heat
type: null
is_controlled_by_central_mode: true
last_central_mode: Auto
frost_temp: 16
eco_temp: 18
boost_temp: 23
comfort_temp: 20
frost_away_temp: 0
eco_away_temp: 0
boost_away_temp: 0
comfort_away_temp: 0
power_temp: null
target_temperature_step: 0.1
ext_current_temperature: 6
ac_mode: false
current_power: null
current_power_max: null
saved_preset_mode: eco
saved_target_temp: 18
saved_hvac_mode: null
motion_sensor_entity_id: null
motion_state: null
power_sensor_entity_id: null
max_power_sensor_entity_id: null
overpowering_state: null
presence_sensor_entity_id: null
presence_state: null
window_state: off
window_auto_state: off
window_bypass_state: false
window_sensor_entity_id: null
window_delay_sec: null
window_auto_enabled: false
window_auto_open_threshold: null
window_auto_close_threshold: null
window_auto_max_duration: null
window_action: window_turn_off
security_delay_min: 60
security_min_on_percent: 0.5
security_default_on_percent: 0.1
last_temperature_datetime: 2024-12-09T17:42:49.765526+01:00
last_ext_temperature_datetime: 2024-12-09T17:42:10.197316+01:00
security_state: false
minimal_activation_delay_sec: 10
device_power: 1
mean_cycle_power: null
total_energy: 64.48
last_update_datetime: 2024-12-09T17:42:49.767750+01:00
timezone: Europe/Brussels
temperature_unit: °C
is_device_active: false
ema_temp: 20.7
is_used_by_central_boiler: true
temperature_slope: 0
hvac_off_reason: null
is_over_climate: true
start_hvac_action_date: null
underlying_entities: climate.radiator_bathroom
auto_fan_mode: auto_fan_none
current_auto_fan_mode: auto_fan_none
auto_activated_fan_mode: null
auto_deactivated_fan_mode: null
auto_regulation_use_device_temp: false
auto_start_stop_enable: false
auto_start_stop_level: auto_start_stop_none
auto_start_stop_dtmin: null
auto_start_stop_accumulated_error: 0
auto_start_stop_accumulated_error_threshold: null
follow_underlying_temp_change: true
friendly_name: Bathroom Vtherm
supported_features: 401

Describe the bug
When i change the target temp tru the interface, the setting isnt changed to the TRV
Say i change the temp in the app from 16 to 23, normally the underlying TRV changes the target temp also to 23. (and vice-versa)
Often the update gets lost and the TRV stays stuck in the state it was before. presets dont seem to do anything anymore.
I'm trying to:
control the TRV target temp reliable
And I expect:
doesnt work on 6.8.1, TRV stay stuck on wrong target temperature after 1 or 2 changes rolling back 6.7.0 and it immedialely works as intented
Debug log

logs here:
home-assistant_versatile_thermostat_2024-12-09T16-56-27.453Z.log

Huuum, does this have a link with this: https://github.com/jmcollin78/versatile_thermostat/issues/690
I try to have a look at the log but there is 587 ko of logs and I'm only a human (after all). Can you tell me at what time you have seen the issue ?
I will make some test on my own env.

I just try and it is working as expecting. See what happens here: https://github.com/jmcollin78/versatile_thermostat/blob/main/documentation/en/over-climate.md#follow-underlying-temperature-changes
and notably the delay between the last command. If you experience this, just wait 10 sec and redo. It should work.

Similar indeed, if I wait 10 seconds between all commands it seems to hold. But if I do once multiple actions between coule of sections, then it seems to break. Whatever I seem to to or how long I wait..it never seem to correct itself anymore.
I'll play with it longer, on 6.7 it seems to work perfectly. It doesnt care much about the delay it seems

Figured out the issue. Even when there is "No regulation chosen", there is still a rate limited of 5 minutes on the regulations being send.
Changing this to 1 minute allows for faster updates (i thought the regulation time didnt apply when autoregulation was set to none). I gues i could set it to 0 and just let the trv handle the rating?
Weird, seems like 6.7 was less iffy about this or did forced updates. But yeah it works this way.

Same issue here.. 6.8.1

For me it seems to be a rate limiter thing. Even tho auto regulation is disabled, for some reasons it keeps using the minimum regulation interval (which is by default 5 mins) Try lowering it to 1 mins or 0 to update faster. Imho if you disable autoregulation, it should be not looking at this value
…
On Tue, Dec 10, 2024, 16:45 jkbkster @.> wrote: Same issue here.. 6.8.1 — Reply to this email directly, view it on GitHub <#696 (comment)>, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABZ4APOP4EKEJ36OIWMVNKL2E4EANAVCNFSM6AAAAABTJI5TSOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDKMZSGEYDMNBRGI .
Wife is complaining of low temperature.
Anyone with a guide on how-to downgrade?

@jkbkster,

Wife is complaining of low temperature.

Even if you set the temperature on VTherm ? (which should be the natural way to use). Following the underlying changes is "a hack" which causes more trouble than solutions.
@kvanbiesen

there is still a rate limited of 5 minutes on the regulations being send.
Changing this to 1 minute allows for faster updates (i thought the regulation time didnt apply when autoregulation was set to none). I gues i could set it to 0 and just let the trv handle the rating?

Can you show me exactly what is the parameter you change ?

Yes - even when setting the temp in VTherm
The Pi Heating Demand measured on Danfoss TRV never comes up, even if Tdiff between ref and actual temp is more than 1 degrees

This used to work

goto integrations, pick the thermostat, configure, underlying. Disable
regulation en set the update time to 0 or 1.
On Tue, Dec 10, 2024 at 7:03 PM Jean-Marc Collin @.***>
wrote:

@jkbkster https://github.com/jkbkster,
Wife is complaining of low temperature.
Even if you set the temperature on VTherm ? (which should be the natural
way to use). Following the underlying changes is "a hack" which causes more
trouble than solutions.
@kvanbiesen https://github.com/kvanbiesen
there is still a rate limited of 5 minutes on the regulations being send.
Changing this to 1 minute allows for faster updates (i thought the
regulation time didnt apply when autoregulation was set to none). I gues i
could set it to 0 and just let the trv handle the rating?
Can you show me exactly what is the parameter you change ?
—
Reply to this email directly, view it on GitHub
https://github.com/jmcollin78/versatile_thermostat/issues/696#issuecomment-2532483302,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABZ4APMWP7JCC5TOEMFUK4L2E4UG3AVCNFSM6AAAAABTJI5TSOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDKMZSGQ4DGMZQGI
.
You are receiving this because you were mentioned.Message ID:
@.***>

Yes - even when setting the temp in VTherm

@jkbkster  So you have another issue which have nothing to do with the follow that don't seems to work.
I will open a new discussion for you (Because, it not possible that presets don't work in VTherm. I use it everyday in more than 10 Vtherms).

@kvanbiesen

goto integrations, pick the thermostat, configure, underlying. Disable
regulation en set the update time to 0 or 1.

ok thank you.  I understand the case now. This parameter is here to avoid drawing your TRV battery by sending too much commands. It is not supposed to be used in the "follow underlying temp change".
What seems strange is that you said it was working with 6.7.0.
I will have a look quickly.

To all, if you run into this issue please give me your logs with the lines "dtemp (%.1f) is < %.1f -> forget the regulation send" just after you change the setpoint in the TRV.
Thank you.

Great thanks. It's hard to explain sometimes. I looked at the differences
between the logs of 6.7 and 6.8.1 and in the 6.8.1 the rate limit is being
applied cause I see the message (period shorter than 5 minutes), that
doesn't seem to be appearing in 6.7.
Couldn't find much about it in the could but when it seems as soon as the
value is set. It issues it.
I did tried creating a climate over valve but reverted then...maybe
something for stuck? I didn't remove the device , kust changed the
regulation again. Maybe that's causing it.
On Wed, Dec 11, 2024, 07:48 Jean-Marc Collin @.***>
wrote:

@kvanbiesen https://github.com/kvanbiesen
goto integrations, pick the thermostat, configure, underlying. Disable
regulation en set the update time to 0 or 1.
ok thank you. I understand the case now. This parameter is here to avoid
drawing your TRV battery by sending too much commands. It is not supposed
to be used in the "follow underlying temp change".
What seems strange is that you said it was working with 6.7.0.
I will have a look quickly.
—
Reply to this email directly, view it on GitHub
https://github.com/jmcollin78/versatile_thermostat/issues/696#issuecomment-2533771732,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABZ4APOFL5FQTFXVFQIHJRD2E7N3ZAVCNFSM6AAAAABTJI5TSOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDKMZTG43TCNZTGI
.
You are receiving this because you were mentioned.Message ID:
@.***>

My clue is that there is a 'force' parameter to the send_regulated_temperature and it is always False: so the temporal filter is applied.
Should be easy to fix.

Should be fixed now:
https://github.com/jmcollin78/versatile_thermostat/releases/tag/6.8.2
please let me know.

Yup confirmed working now. Trv doesn't care about the minimum regulation period anymore when the check box "following underlying changes" is checked.
Updates multiple times a minute (not that it be used so so fast but it works)
Good work 💯

I really appreciate the investigation you´ve performed, but I am still struggling..
This is the TRV itself, and seems to be regulating quite fine to the setpoints it recevies from the Versatile conf.

This the Versatile TRV conf

From the Heating Demand it seems the TRV is never receiving any external commands to open the valve.

So; I think we are seeing the internal temp sensor in the TRV being prioritized too much to the external sensor.
Therefore I have deactivated "use internal temp of the underlying"

I know from my daughter that she has covered the actual sensor with fluffy bears, so the TRV itself has no idea of the real room temperature.

I dont have that issue as i sync my TRV internal temperature sensor to the
external temp sensor with an automation.
If either the external TEMP sensor changes or the internal temp sensor
change, i update the value from the internal one with the value of the
external sensor.
(I dont have any issue with that at all in 6.8.2 with my automation(s))
On Wed, Dec 11, 2024 at 10:49 AM jkbkster @.***> wrote:

I really appreciate the investigation you´ve performed, but I am still
struggling..
This is the TRV itself, and seems to be regulating quite fine to the
setpoints it recevies from the Versatile conf.
image.png (view on web)
https://github.com/user-attachments/assets/2f130a6a-fa77-44a0-9e4b-dfb6e562cd7a
This the Versatile TRV conf
image.png (view on web)
https://github.com/user-attachments/assets/9cc22722-1de3-4789-974f-160c6e89797a
From the Heating Demand it seems the TRV is never receiving any external
commands to open the valve.
image.png (view on web)
https://github.com/user-attachments/assets/69600419-a232-4f85-a96f-c805aa1a32da
So; I think we are seeing the internal temp sensor in the TRV being
prioritized too much to the external sensor.
Therefore I have deactivated "use internal temp of the underlying"
image.png (view on web)
https://github.com/user-attachments/assets/819f1c8d-42a5-4bca-a006-70729b63f576
I know from my daughter that she has covered the actual sensor with fluffy
bears, so the TRV itself has no idea of the real room temperature.
—
Reply to this email directly, view it on GitHub
https://github.com/jmcollin78/versatile_thermostat/issues/696#issuecomment-2535342872,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABZ4APMHOKHYEDEQHMGYLSD2FADCDAVCNFSM6AAAAABTJI5TSOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDKMZVGM2DEOBXGI
.
You are receiving this because you were mentioned.Message ID:
@.***>

@jkbkster

I really appreciate the investigation you´ve performed, but I am still struggling..

You have another issue than this one. I open a new issue specialy for your case yesterday. Please use the new one and not this one.
-> https://github.com/jmcollin78/versatile_thermostat/issues/700


Docker images all get deleted on reboot

only remedy is to reinstall everything
Reported by @chrisguida

It seems like this might already be tested. I have heard that we reload all the images on startup which would remedy this. Since this doesn't seem like it is replicable off of the current HEAD of integration/0.3.0 I'm guessing this can be closed.

I still have not personally tested this
@elvece have you?


[WIP] Add qchem function to read gamess output

This PR adds the function read_gamess to the qchem module to extracts the atomic coordinates, atomic masses, vibrational frequencies, and normal modes of a molecule from the output file of a vibrational frequency calculation performed with the GAMESS quantum chemistry package.

Thanks @soranjh! This looks like a useful function, but I'm worried that it's susceptible to be error-prone. Are we sure that:

There is no other python package for interfacing with GAMESS that offers a similar functionality?

Now that Tom mention this. The ezSpectrum developed by the group of Ana Krylov comes with the python utility make_xml.py that extracts the information coming coming out of electronic structure calculations for the ground and all excited (electronic) states to be included in the vibronic spectrum calculation (See here http://iopenshell.usc.edu/downloads/manual.pdf). One possibility is to post-process this file. One advantage of this approach is that make_xml.py supports the output of several quantum chemistry packages. In this sense we are not forcing the user to perform his/her calculation with GAMESS.

Is converting GAMESS files a crucial part of how a user would interact with the SF qchem package? I was thinking this was a little outside scope for SF, but I am not knowledgeable on the chemistry side.
@trbromley, if you meant processing the GAMESS file, yes, getting all these numbers from electronic structure calculations is not straightforward. For example, in principle, you have to gather all the information for all excited states.


Update expression browser example

At the time of this commit when Prometheus' latest release is 2.3.1, http_requests_total expression is no longer valid. The expression example was already updated in the server documentation below:
Prometheus Server Doc: Getting Started

@...
This is my commit message
Signed-off-by: Travis Johnson<EMAIL_ADDRESS>

Closing this and creating a new PR with proper sign-off. This my first big PR.


No config files?

I click on open wallet configuration file and it does nothing same thing with masternode conf file?  How do I get them back or make new ones?  I tried to send my coins to a new wallet and redownload the wallet to no avail.

We will fix this problem with the new wallet release.
Thanks CC


About Interface

Does this issue occur when all extensions are disabled?: Yes/No

VS Code Version: 1.82
OS Version: Windows 11

My Interface is looking like this , it showing no option like this one

Steps to Reproduce:

Can you click here and turn UI features on?


Add jacoco support

Added jacoco support
The README has instructions on generating the report and viewing it.

LGTM


DaemonSet flannel on kubernetes 1.11.8 whit error: Failed to ensure iptables rules: Error checking rule existence: failed to check rule existence: fork/exec /sbin/iptables: cannot allocate memory

DaemonSet flannel on kubernetes 1.11.8 whit error: Failed to ensure iptables rules: Error checking rule existence: failed to check rule existence: fork/exec /sbin/iptables: cannot allocate memory and restart pod
Current Behavior
flannel log out:
E0409 05:26:21.078286       1 iptables.go:97] Failed to ensure iptables rules: Error checking rule existence: failed to check rule existence: fork/exec /sbin/iptables: cannot allocate memory
E0408 20:11:23.998884       1 iptables.go:97] Failed to ensure iptables rules: Error checking rule existence: failed to check rule existence: running [/sbin/iptables -t nat -C POSTROUTING -s <IP_ADDRESS>/16 -d <IP_ADDRESS>/16 -j RETURN --wait]: exit status -1:
E0408 20:11:25.722635       1 iptables.go:97] Failed to ensure iptables rules: Error checking rule existence: failed to check rule existence: running [/sbin/iptables -t filter -C FORWARD -s <IP_ADDRESS>/16 -j ACCEPT --wait]: exit status -1:
E0408 20:08:28.791447       1 iptables.go:97] Failed to ensure iptables rules: Error checking rule existence: failed to check rule existence: running [/sbin/iptables -t nat -C POSTROUTING -s <IP_ADDRESS>/16 -d <IP_ADDRESS>/16 -j RETURN --wait]: exit status 3: iptables v1.6.1: can't initialize iptables table `nat': Memory allocation problem
Perhaps iptables or your kernel needs to be upgraded.
E0408 20:05:58.591094       1 iptables.go:97] Failed to ensure iptables rules: Error checking rule existence: failed to check rule existence: fork/exec /sbin/iptables: argument list too long

Your Environment

Flannel version:  flannel:v0.10.0-amd64
Backend used (e.g. vxlan or udp):  vxlan
Etcd version:  etcd Version: 3.3.7
Kubernetes version (if used): 1.11.8
Operating System and version:  Centos7.5  3.10.0-957.10.1.el7.x86_64

I found this thread on the subject: https://bugs.launchpad.net/ubuntu/+source/iptables/+bug/1820114

Same problem here.


What is the name of font&colorscheme on the screenshot in README?

Sorry for the offtopic :)

No problem at all, and sorry for missing this message until now. If you're still looking, that's Apple's SF Mono, https://github.com/jeffkreeftmeijer/vim-dim and https://github.com/jeffkreeftmeijer/appsignal.terminal.


Help detect a missing @observable

Here is a situation I run into today:
 - I have property defined in a custom element
 - I use the property in a template
 - the property is initialized in the body of created, but otherwise never changes
My app was working fine in Chrome, but not in Firefox.
The issue is that the template was being expanded after the value has been set in Chrome, but before in Firefox (the polyfill didn't guarantee the same timing)
This can be fixed in two ways:
 - move the initialization to a getter that caches the result
 - mark the field @observable
We could add to our linter a check, to ensure that all properties used in the template are marked @observable or are final. The challenge is that there are a lot of cases we'd have false positives. For example:
 - we can't figure out the target of a name in the template (where is c if we read a.b.c)
 - the user purposely doesn't want it to be @observable
maybe this is something we can turn on as a diagnostics helper, but not have it on by default?

This issue has been moved to dart-lang/polymer-dart#465.


sphinxygen: init at 1.0.4

This package is needed to update serd (see #350876).
Things done

Built on platform(s)

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

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

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

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

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

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

[X] Fits CONTRIBUTING.md.

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

From the license text it seems like gitlab misinterpreted it, and the license is actually the isc license

The serd library also uses the same isc license and that derivation containes the incorrect one as well

I've fixed this one in #351223 as well, I'll mark it as ready later when its dependencies are merged. I've also updated the license in #351220, from the same author.


[feature] Make --w3m-font-family work for

What problem does this new feature solve?
Currently, setting --w3m-font-family has no effect.  Web3Button is rendered with Arial font.
Describe the solution you'd like
Let me use --w3m-font-family to set the font to whatever I want in the

This is already the case i.e. here is preview of customised modal https://lab.web3modal.com/v2Customised
Are these buttons what you were referring too, or is it something else?

Whatttttt the
Yeah.  It works perfectly.
I apologize.

I saw this in Chrome, but didn't see this (at the bottom):

It IS showing the correct font.
Once I tried with monospace (which isn't such a similar font), it was obvious that it indeed does work.
Sorry for the trouble.


ozaria doesnt use teacher/ or course/

left app/views/teachers/APCSPLanding.(coco|ozar).vue
although we comment out apcsp route but i remember we now fit the apcsp again? i don't know maybe we would use that again. and content has many differences so i think if we enable that route again we still need 2 different apcsplanding file for now

ozaria students still use course so let's check that


Translate doc cluter-large into chinese

CN doc translation

This change is

please fix it then lgtm =)

@zhangxiaoyu-zidif fixed :)


Link to ezlinavis in right upper corner …

… does not work. The problem is in the link, I guess, https://dracor.org/ezlinavis/ does not lead to the actual page, but putting www. in front does.

Disabling the service worker solved the problem for me. @lehkost please test (doing a shift-reload) and reopen when the problem persists.


torchvision.transforms.Scale should be renamed to torchvision.transforms.Resize

Scale/Rescale implies a change by a factor X
Scale(X) usually means that you change the intensity of the image from I to IX or size of the image from S to SX
However in pytorchvision, Scale, is defined as:
Desired output size. If size is a sequence like (h, w), output size will be matched to this. If size is an int, smaller edge of the image will be matched to this number. i.e, if height > width, then image will be rescaled to (size * height / width, size)
The above definition matches better the concept of resize in image processing instead of rescale. For more information please see the following link.
http://scikit-image.org/docs/dev/auto_examples/transform/plot_rescale.html

Thanks for the issue @trustswz. I agree this naming is quite confusing. We could deprecate Scale in favor of resize and add deprecation warnings - wdyt @fmassa?

Yes, let's deprecate Scale and add instead Resize

Fixed in #274


Typeguard Error since 4.9 with unrelated generic

Bug Report
Since typescript 4.9 a typeguard with multiple generics and a conditional assertion (val is) throws a error with a unrelated generic
🔎 Search Terms
4.9 typeguard conditional return 4.8
🕗 Version & Regression Information

This is a regression
This changed between versions 4.8 and 4.9
This is the behavior in every version I tried, and I reviewed the FAQ for entries about _________

⏯ Playground Link
Playground Typescript 4.8.4
Playground Typescript next (4.9 not available)
💻 Code
import * as mongoose from "mongoose";

type Ref<PopulatedType, RawId extends mongoose.RefType> = mongoose.PopulatedDoc<PopulatedType, RawId>;
type RefType = mongoose.RefType;
type DocumentType<T, QueryHelpers = {}> = mongoose.Document<any, QueryHelpers, T> & T;

function isDocument<T, S extends RefType>(
  doc: Ref<T, S>
): doc is T extends DocumentType<infer T1, infer T2> ? DocumentType<T1, T2> : T extends object ? DocumentType<T> : never {
  return doc instanceof mongoose.Model;
}

🙁 Actual behavior
in 4.9 (and next), Error:
A type predicate's type must be assignable to its parameter's type.
  Type 'T extends DocumentType<infer T1, infer T2> ? DocumentType<T1, T2> : T extends object ? DocumentType<T, {}> : never' is not assignable to type 'Ref<T, S>'.
    Type 'Document<any, unknown, unknown> | (T extends object ? DocumentType<T, {}> : never)' is not assignable to type 'Ref<T, S>'.
      Type 'Document<any, unknown, unknown>' is not assignable to type 'Ref<T, S>'.
        Type 'Document<any, unknown, unknown>' is not assignable to type 'S'.
          'S' could be instantiated with an arbitrary type which could be unrelated to 'Document<any, unknown, unknown>'.

🙂 Expected behavior
No Error (like in 4.8)

from what i understand, generic S has nothing to do with the return type

from what i understand, generic S has nothing to do with the return type

But it does. The return type is a type guard, and the argument must be assignable to the type guard, and the type of the argument includes S.

🎉 This issue has been resolved in version 10.0.0-beta.1 🎉
The release is available on:

npm package (@beta dist-tag)
GitHub release

Your semantic-release bot 📦🚀


Update version & fix typo

What changes are proposed in this pull request?
Update version & fix typo.
Why are the changes needed?
Update version & fix typo.
Does this PR introduce any user facing changes?
None

Codecov Report

Merging #13952 (0f202a5) into master (4991e84) will decrease coverage by 19.92%.
The diff coverage is 23.14%.

@@              Coverage Diff              @@
##             master   #13952       +/-   ##
=============================================
- Coverage     43.21%   23.29%   -19.93%
+ Complexity     9134     4568     -4566
=============================================
  Files          1411     1413        +2
  Lines         81744    81850      +106
  Branches       9904     9912        +8
=============================================
- Hits          35328    19068    -16260
- Misses        43463    61400    +17937
+ Partials       2953     1382     -1571

Impacted Files
Coverage Δ

...alluxio/master/journal/raft/RaftJournalSystem.java
0.00% <0.00%> (-59.39%)
:arrow_down:

...alluxio/metrics/sink/PrometheusMetricsServlet.java
0.00% <0.00%> (-72.73%)
:arrow_down:

...a/alluxio/metrics/sink/RatisDropwizardExports.java
0.00% <0.00%> (ø)

...io/metrics/sink/RatisNameRewriteSampleBuilder.java
0.00% <0.00%> (ø)

...main/java/alluxio/master/AlluxioMasterProcess.java
0.00% <0.00%> (-72.89%)
:arrow_down:

.../java/alluxio/master/block/DefaultBlockMaster.java
0.00% <0.00%> (-79.30%)
:arrow_down:

...ain/java/alluxio/master/file/LostFileDetector.java
0.00% <0.00%> (-69.24%)
:arrow_down:

...main/java/alluxio/worker/AlluxioWorkerProcess.java
0.00% <0.00%> (-67.48%)
:arrow_down:

.../master/job/JobMasterClientRestServiceHandler.java
0.00% <0.00%> (ø)

...ommon/src/main/java/alluxio/metrics/MetricKey.java
97.57% <100.00%> (-0.15%)
:arrow_down:

... and 490 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update fdf9d4f...0f202a5. Read the comment docs.

test failures are unrelated to this change

alluxio-bot, merge this please


🐛 Allow HTTP push consumer's endpoint path to be cleared

When you try to delete it, we set it to null, not ""

Closed with https://github.com/sequinstream/sequin/pull/262


Determining version # of cachet installation

What is the easiest method of seeing which version of cachet is installed?

Check the VERSION file.


Need to be able to handle non-json configuration files

ETCD configuration is in /etc/etcd/etcd.conf
CRI-O runtime configuration is in /etc/crio/crio.conf
Both are ini files and trying to adding them to the download/transform causes an error trying to unmarshal json.

I think work on fetching something besides master/node is still in progress.
@gildub should know more.

If ETCD and CRI-O are within scope (to be confirmed), then need to add INI format.

https://github.com/fusor/cpma/pull/108/commits demonstrates it is possible to handle different file formats.


Controling canvas size?

Is there any way to control how big the canvas size is?
I have tried all of these:
minContainerWidth, minContainerHeight, minCanvasWidth, minCanvasHeight
The only change I see in this is the images are greatly enlarged within the copper while the canvas remains the same size.
Ultimately, would be nice to get the cropper and canvas the same size.
Also, when I set the crop box width/height, why is it always 5px smaller?
It also does not center properly.
These do not work properly (Not using all a he same time, used separately. Just adding all the code here)
minCropBoxWidth:300,
minCropBoxHeight:300,
built: function () {
	var container = $(this).cropper('getContainerData');
	var cropBoxWidth = 300;
	var cropBoxHeight = 300;
	$(this).cropper('setCropBoxData', {
		width: cropBoxWidth,
		height: cropBoxHeight,
		left: (container.width - cropBoxWidth) / 2,
		top: (container.height - cropBoxHeight) / 2
	});
	$image.cropper('getCroppedCanvas', {fillColor: '#ffffff'});
	$image.cropper("setCropBoxData", { width: 300, height: 300 });
}

The cropper is all off center. Not at the top but off the the left and down some. And always random.
The cropper randomly loads images full size in the canvas area. Then decides to load the image at like 25% in size centered at the top.

Why control it? Is it necessary?

Um, yes? Because that image above is NOT the second size? And the canvas in the first image is to big and a waste of space?

http://stackoverflow.com/questions/41002081/fengyuanchen-cropper-typeerror-url-createobjecturl-is-not-a-function

@fengyuanchen  why did you close this issue? Is it resolved? I am facing a similar issue, but can't find a solution

@fengyuanchen Same issue!

@fengyuanchen same issue here. It seems to handle correctly the width resize if the image CSS is correctly set. But changing the viewport height is not rightly handled. Resize is then broken on both width/height.


Validate Wikibase manifest on the server

Currently the backend depends on the manifest validation which is done in the web client. We should also validate on the backend, so that we're not relying on well-behaved clients, as discussed here: https://github.com/OpenRefine/OpenRefine/pull/2810#discussion_r475101438
Current Results
A manifest without a version field will currently likely cause the backend to get a NullPointerException when it tries to process the version.
Expected Behavior
Server works correctly regardless of the data that it receives.

Given that Wikibase manifests are stored in the preference store, it is not clear to me how to do this: the preference store can store arbitrary values and there is no clear way to set up custom validation for one of those fields. Also, the preference store is a core component, whereas the Wikibase integration is an extension.


Preserve calendar event color

From Anastasis:
When I upload my calendar I was wondering if you can set anything to make the calendar entry colour different from the default?
You can select it when you are in the calendar manually easy enough, however if you update (sync) with new info the colours are all reset.

I took a quick glance at the Calendar API, and unfortunately I didn't see a way to get/set the color of individual calendar entries. It might not be possible.


Implemented Twitter service to tweet out new PullRequests

Implemented #5

@LonelyPullRequests Please help me get some reviewers :)


DNS Amplification usage

Hey guys
Thank you for your really useful script.
I have a question. how to use DNS amplification clearly?
When I try to start DNS from Layer 4 - I see such message:
Cannot Create Raw Socket
As I can see - the script should receive a DNS file. What should be in that file?
Thank you!

in linux run with sudo
in windows run cmd with administrator
this method only work with spoofable servers

I scanned a domain using whois and got dns servers addresses and put them in the file dns.txt in the files folder
Start the script with this file, it sends a lot of requests. Does it mean it works properly?

in linux run with sudo
Traceback (most recent call last):
File "start.py", line 27, in
from PyRoxy import Proxy, ProxyChecker, ProxyType, ProxyUtiles
ModuleNotFoundError: No module named 'PyRoxy'


Fix some test error when jvm's default language is not en

Some test's assert expect language is english, and these test are failing when jvm's default language is not en.
This is a fix by setting jvm's default language to en.

@PeterAlfredLee
Which asserts do this which which locale? I am wondering if there is an simple fix in the test code. As well, do we need to configure some tests with different different locales instead of forcing single locale build-wide?

Which asserts do this which which locale?

It's in the ParseXmlInZipTestCase.testResolveAndParseInvalidXml and ParseXmlInZipTestCase.testResolveAndParseNotWellFormedXml.

I am wondering if there is an simple fix in the test code.

I think it's possible. Will push later.


[CS2103T-W14-4] Taskify

Taskify will help students manage their tasks (academics/personal/CCA) in a systematic and efficient manner. Optimized for students who are fast-typers and prefer using a  CLI.

Codecov Report

Merging #21 (637160a) into master (c36220c) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master      #21   +/-   ##
=========================================
  Coverage     72.15%   72.15%
  Complexity      399      399
=========================================
  Files            70       70
  Lines          1232     1232
  Branches        125      125
=========================================
  Hits            889      889
  Misses          311      311
  Partials         32       32

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update c36220c...637160a. Read the comment docs.


Cache does not take into consideration variables passed into prompt_func / parse_func

Simple examples:
from bespokelabs import curator

x = 10

def prompt_func():
    return f"'Say x is {x}.' Don't say anything else."

prompter = curator.Prompter(prompt_func=prompt_func, model_name="gpt-4o-mini")

print(prompter().to_pandas())

It will say x is 10.
Run it again and set x=20. It will hit the cache and still say x is 10.

Instead, let's use dill pickling, which includes the variables.
From https://huggingface.co/docs/datasets/en/about_cache

The hash is computed by dumping the object using a dill pickler and hashing the dumped bytes. The pickler recursively dumps all the variables used in your function, so any change you do to an object that is used in your function, will cause the hash to change.

from bespokelabs import curator
import dill
import hashlib
from xxhash import xxh64
import inspect
for x in [10, 20]:
    print(f"x: {x}")
    def prompt_func():
        return f"'Say x is {x}.' Don't say anything else."

    # https://github.com/bespokelabsai/curator/blob/main/src/bespokelabs/curator/prompter/prompter.py#L231
    current_hash = xxh64(inspect.getsource(prompt_func)).hexdigest()
    dill_hash = hashlib.md5(dill.dumps(prompt_func)).hexdigest()

    print(f"Current Hash: {current_hash}")
    print(f"Dill Hash: {dill_hash}")

Actually, dill does not include closure variables
x: 10
Current Hash: 2f7a00618810a082
Dill Hash: 6f31f77bf56705c46756875ac129d62f
x: 20
Current Hash: 2f7a00618810a082
Dill Hash: 6f31f77bf56705c46756875ac129d62f

Unrelated note, dill is also sensitive to formatting
import hashlib
import inspect

import dill
from bespokelabs import curator
from xxhash import xxh64

def prompt_func():
    return "Say x is 10. Don't say anything else."

# https://github.com/bespokelabsai/curator/blob/main/src/bespokelabs/curator/prompter/prompter.py#L231
current_hash = xxh64(inspect.getsource(prompt_func)).hexdigest()
dill_hash = hashlib.md5(dill.dumps(prompt_func)).hexdigest()

print(f"Current Hash: {current_hash}")
print(f"Dill Hash: {dill_hash}")

def prompt_func():
    return    "Say x is 10. Don't say anything else."

current_hash = xxh64(inspect.getsource(prompt_func)).hexdigest()
dill_hash = hashlib.md5(dill.dumps(prompt_func)).hexdigest()

print(f"Current Hash: {current_hash}")
print(f"Dill Hash: {dill_hash}")

Another example where HF works
import hashlib
import inspect

import dill
from xxhash import xxh64

from datasets import Dataset

ds = Dataset.from_dict({"x": [1, 2, 3]})

for x in [20, 10]:
    def add_x(row):
        return {"x": row["x"] + x}

    print(f"Dill Hash: {xxh64(dill.dumps(add_x)).hexdigest()}")

    ds_1 = ds.map(add_x)
    print(ds_1.to_pandas())
    print(ds_1._fingerprint)

https://github.com/huggingface/datasets/blob/2049c00921c59cdeb835137a1c49639cf175af07/src/datasets/utils/_dill.py#L27
Huggingface Pickler class ^
https://github.com/huggingface/datasets/blob/2049c00921c59cdeb835137a1c49639cf175af07/src/datasets/fingerprint.py#L16
Huggingface fingerprint class ^

Same issue appears in #161


Docker pushing FATA[3717] FATA[3791]

Hi, i want to submit this issue, because i have all the day try to pushing a image to a private repository and it throw error.
There is mi error:

mariano@mariano-laptop:/media/mariano/B2FE2042FE1FFD6B/bright/docker$ sudo docker push bomba1990/firefly
[sudo] password for mariano:
The push refers to a repository [bomba1990/firefly] (len: 1)
Sending image list
Pushing repository bomba1990/firefly (1 tags)
511136ea3c5a: Image already pushed, skipping
3b363fd9d7da: Image already pushed, skipping
607c5d1cca71: Image already pushed, skipping
f62feddc05dc: Image already pushed, skipping
8eaa4ff06b53: Image already pushed, skipping
b0f0f9a62374: Image already pushed, skipping
c4490c63e30c: Pushing [=====================>                             ] 368.3 MB/872.1 MB 1h22m14s
FATA[3717] Failed to upload layer: Put https://cdn-registry-1.docker.io/v1/images/c4490c63e30c5efda8bbde5678b9746eed3553fef15cd1b37caf05b32026f968/layer: EOF
mariano@mariano-laptop:/media/mariano/B2FE2042FE1FFD6B/bright/docker$ sudo docker push bomba1990/firefly
[sudo] password for mariano:
The push refers to a repository [bomba1990/firefly] (len: 1)
Sending image list
Pushing repository bomba1990/firefly (1 tags)
511136ea3c5a: Image already pushed, skipping
3b363fd9d7da: Image already pushed, skipping
607c5d1cca71: Image already pushed, skipping
f62feddc05dc: Image already pushed, skipping
8eaa4ff06b53: Image already pushed, skipping
b0f0f9a62374: Image already pushed, skipping
c4490c63e30c: Pushing [==================================================>] 872.1 MB/872.1 MB
FATA[3791]

The docker daemon logs might have some better insight into the issue. Could you provide them for the timeframe surrounding the failed push?

Excume, but where i find those logs?

It depends on your OS and the package you installed (how it configured the service).
2 likely locations are: /var/log/docker.log or if using systemd, journalctl -u docker.service.

Hi @bomba1990
Can you also copy the output of docker version and docker info?
Indeed, if you uplink is extremely slow (you mentioned 4 hours to upload the layer) there might be timeouts...
Thanks.

Do you have the daemon logs? (re https://github.com/docker/docker/issues/11449#issuecomment-82990533)

The environment on which this issue was encountered had at least two major issues:

the distribution was an unsupported Ubuntu 13.10 which is no longer being updated, not for security or for bug fixes
the Docker version is pretty old now.

Please upgrade the OS to something supported (such as Ubuntu 14.04), install the latest Docker release and use the latest version of the registry.
I'll close this issue now because API changes have been made to the registry. Please feel free to comment if you run into this issue with the latest releases.


Class loading not thread safe?

I am running a multithreading BeanShell scripts that
makes use of an external Java class. Time to time, I
get the following error, which I suppose is because the
two threading are trying to define the same class.
java.lang.LinkageError: duplicate class definition:
com/funambol/syncclient/spds/SyncManager
at java.lang.ClassLoader.defineClass0(Native
Method)
at java.lang.ClassLoader.defineClass(Unknown
Source)
at
java.security.SecureClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.defineClass(Unknown
Source)
at java.net.URLClassLoader.access0(Unknown
Source)
at java.net.URLClassLoader.run(Unknown Source)
at
java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown
Source)
at
bsh.classpath.BshClassLoader.findClass(Unknown Source)
at
bsh.classpath.BshClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at
bsh.classpath.ClassManagerImpl.classForName(Unknown Source)
at bsh.NameSpace.classForName(Unknown Source)
at bsh.NameSpace.getImportedClassImpl(Unknown
Source)
at bsh.NameSpace.getClassImpl(Unknown Source)
at bsh.NameSpace.getClass(Unknown Source)
at bsh.NameSpace.getClass(Unknown Source)
at bsh.NameSpace.getClass(Unknown Source)
at bsh.Name.toClass(Unknown Source)
at bsh.BSHAmbiguousName.toClass(Unknown Source)
at bsh.BSHType.getType(Unknown Source)
at bsh.BSHTypedVariableDeclaration.eval(Unknown
Source)
at bsh.BSHBlock.evalBlock(Unknown Source)
at bsh.BSHBlock.eval(Unknown Source)
at bsh.BshMethod.invokeImpl(Unknown Source)
at bsh.BshMethod.invoke(Unknown Source)
at bsh.BshMethod.invoke(Unknown Source)
at bsh.This.invokeMethod(Unknown Source)
at bsh.This.invokeMethod(Unknown Source)
at bsh.This.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Reported by: stefano_fornari
Original Ticket: "beanshell/bugs/153":https://sourceforge.net/p/beanshell/bugs/153

With the absense of any proofs to reproduce there is not much to be done here.
Classes are cached now and using concurrent collections so this should not happen anymore.
Closed cannot reproduce


It doesnot work with as keyword in angular js - ng-repeat="friend in friends | filter:q as results"

Hi, thanks for contributing!
This project is maintained in my spare time, so in order to help me address your issue as quickly as
possible, please provide as much of the following information as you can:

Title: Please indicate the module in question, e.g. "dirPagination: X is broken when Y"
If reporting on dirPagination, please include the version you are using (can be found in the package.json / bower.json file)
If you are able to reproduce your issue on Plunker, this will vastly increase the chances of a rapid response from me.

-- Michael
=======
(Delete the above. Fill in the rest as applicable)
Description of issue:
When we use

The value of results always remain undefined.
Though results gets assigned in the angular version 1.3.17+.
Steps to reproduce:
Anywhere in the dir-paginate attribute add "as results" or any variable name and check the value of that variable by printing in console, it will be undefined.
Expected result:
The value of results should be the current filtered items/rows that are shown on the page.
Actual result:
Undefined.
Demo: (for dirPagination, fork and modify this Plunk: http://plnkr.co/edit/b37IdFFJUokaeSummETX?p=preview)
Any relevant code:

You can check this here - https://docs.angularjs.org/api/ng/directive/ngRepeat.
Check the last example.

I'm having trouble with using the 'as' keyword as well. I get the following error
pagination directive: the 'itemsPerPage' filter must be set. <template-list-item class="table-list-item" dir-paginate="template in $ctrl.items | filter: $ctrl.searchString as filteredTemplates | itemsPerPage: 2" item="template">

ahh disregard.. this is a duplicate.
found my answer here:
https://github.com/michaelbromley/angularUtils/issues/328


slow test split patch

Story
TODO: link to the internal story
Related
TODO: links to related PRs or issues
Description
I tried using KNAPSACK_PRO_BRANCH to uniquely set branch names so that a KNAPSACK_TOKEN can be shared across multiple projects. I noticed an issue where because of this, BuildDistributions.last returns every recorded test, and the cumulative time execution is too great for the KNAPSACK_PRO_RSPEC_SPLIT_BY_TEST_EXAMPLES feature to continue to work correctly.
Changes
I used this change to monkey patch that functionality to only consider the cumulative time execution of only the tests on disk instead of the entire recorded set of tests returned by the build distributions API. Not married to this approach, but if it makes it easier to reason about a more permanent fix, please consider this as a starting point. Feel free to edit and build from this.
Checklist reminder

[ ] You added the changes to the UNRELEASED section of the CHANGELOG.md, including the needed bump (ie, patch, minor, major)
[ ] You follow the architecture outlined below for RSpec in Queue Mode, which is a work in progress (feel free to propose changes):

Pure: lib/knapsack_pro/pure/queue/rspec_pure.rb contains pure functions that are unit tested.
Extension: lib/knapsack_pro/extensions/rspec_extension.rb encapsulates calls to RSpec internals and is integration and e2e tested.
Runner: lib/knapsack_pro/runners/queue/rspec_runner.rb invokes the pure code and the extension to produce side effects, which are integration and e2e tested.

@ArturT a couple additional ideas that I think my team finds helpful with regard to this slow test splitting feature.

make the slow test time threshold per ci node configurable, this will allow teams to find a sweet spot and even on a per project basis if they want to.
allowing teams to pass in slow test patterns AND have it automatically detect as well, right now it only supports either or, but not both. this is helpful in dynamic parallelism scenarios where changing the parallelism affects the time threshold calculation and as a result may miss tests that should always be split.

I think doing 1 and lowering the threshold would make 2 not needed then.
BTW are you sure 1 is needed? If you lower the threshold of tests then more tests are split by examples and this also has impact on speed and memory usage by RSpec. 70% threshold is a sweet spot right now.

@devinburnette Thank you for your contribution and for suggesting ideas.
Slow tests are dynamically determined to be well-balanced across CI nodes. If you want to split more tests by test examples, just run more parallel nodes. It will happen automatically.
I'm closing this PR in favor of this one:
https://github.com/KnapsackPro/knapsack_pro-ruby/pull/277
We released the knapsack_pro 7.10.0 version. Please update it in your project. Thanks.

Thanks!

Slow tests are dynamically determined to be well-balanced across CI nodes. If you want to split more tests by test examples, just run more parallel nodes. It will happen automatically.

@ArturT yes, but the goal is for the number of parallel nodes to be dynamic, in order to support that, I think that means we'll at least need number 2 above. There are certain test files that we want to ensure always get split. But we want to also keep the automatic calculation as well. Can we at least support that? I think it's valuable for knapsack to take a merged set of these slow test files. Both automatic and manually supplied.

The idea is this, some test runs will purposely skip a lot of tests, and therefore we don't want to run the full set of parallel CI nodes only a few. And so that will impact the calculation of slow test files and some of the longest running test files will not be ran as a result. So we need a way of tell it to always run those few test files in those cases.

@devinburnette In an ideal scenario, you run tests without needing to manually define slow tests for splitting by test examples - it happens automatically.
I believe the situation you’re describing should already be handled by the API, and slow test files should be properly detected. If this isn’t happening with knapsack_pro 7.10.0, please provide links to a few CI builds where slow test files should have been split by test examples but were not. Also, include the text output from CI (ensuring you use debug log level). You can send it to<EMAIL_ADDRESS>I’d be happy to investigate and determine if any improvements are needed on the API or gem side. Thank you!


react/jsx-no-bind: Dealing with the state hook

Let's assume that we have a functional (yet stateful) component like,
const Button = () => {
	const [text, setText] = useState("Text A");
	const onClick = () => setText("Text B");
	return (
		<button onClick={ onClick }>{ text }</button>
	);
};

With react/jsx-no-bind, this use of onClick is forbidden, as it will create a new binding to onClick on every render.
We can't really move it out of the function either, like so:
const onClick = setText => setText("Text B");
const Button = () => {
	const [text, setText] = useState("Text A");
	return (
		<button onClick={ onClick }>{ text }</button>
	);
};

Now, onClick has no chance to receive the correct setText parameter, as we can't control this without .bind or creating a new binding for onClick on every render by other means.
This makes me wonder if, despite its usefulness, React's state hook is just wasteful with memory to begin with, or whether I've overlooked something.
Is there a way to avoid this situation with the state hook?

I'll be giving an answer to my own question. This is achievable by doing event handling manually. That is, use both React's useEffect as well as its useRef hook and declare the Button like so:
const Button = () => {
	const reference = useRef();
	const [text, setText] = useState("Text A");
	useEffect(() => {
		const onClick = () => setText("Text B");
		reference.current.addEventListener("click", onClick);
		return () => {
			reference.current.removeEventListener("click", onClick);
		};
	}, []);
	return (
		<button ref={ reference }>{ text }</button>
	);
};

Unfortunately though, the code has become less readable as this involves quite a bit of boilerplate.
I'm leaving this issue open just so that, if the maintainers know of a cleaner way to do this, they can add another answer before this is closed. (Otherwise, just close it.)

An even better solution that removes all boilerplate can be achieved by memoizing the function, which can be done using the useCallback hook.

@kdex Does jsx-no-bind stop complaining if you're using useCallback? If that's the case I think the docs for this rule should be updated with hooks examples. It should probably be updated with some mention about function components anyhow.

@draperunner Thanks a bunch for getting back to me despite this issue being closed, and yes, jsx-no-bind stops complaining if used with useCallback. :)

a PR to update the docs to add hooks examples seems very useful.


refactor: use react-native-quick-crypto, remove rn-nodify

Description
Replaces crypto calls with react-native-quick-crypto which should offer way better performance since it's using JSI/C++. Allows us to remove rn-nodify and for Node core module polyfilling. Also replaces text-encoding with faster alternative fastestsmallesttextencoderdecoder. Renames .node-version file so it can be picked up by version managers.
Type of change

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[x] Refactoring (improving code without creating new functionality)

Tests

[ ] Detox test
[ ] Unit test
[x] No test

QA Notes
Please describe the tests that you ran to verify your changes. Provide instructions so we can reproduce during the Bitkit testing session. You can also leave a video of the PR in action.

Seems to break being able to set custom Electrum servers in Settings->Advanced->Electrum Server


Note to Chris - Thank you - Inspired me to build another containerized dev repo

Hi Chris @chris-crone
thanks a lot for your open project and the content in your blogs.
Maybe you also like to check my repo at https://github.com/TomFreudenberg/golang-cli-cmd-dev-starter
It may give some additional points.
Cheers
Tom

Sorry for the tardy reply but you're welcome! Glad that you managed to make use of it


Individual blog settings (download location) not being saved.

I've created four blog lists (separated by subject) and have made four directories with subdirectories for each blog.  I save the list but when I open the list again, the settings panel is blank for each blog and when I set it to crawl and catch up with the blogs, everything gets downloaded to the default directory.
Is this a bug or am I doing something wrong?

Thanks a bunch!
Bob

I wouldn't do it like this. Try this:
Extract TumblThree, run it, go to the settings, perform the Tumblr login (and all the other settings you want to modify) and in the Settings->General tick Activate portable mode. Now close TumblThree. You'll end up with a correctly setup TumblThree and all necessary settings in that folder. You'll also see some new files like Settings.json, Queuelist.json popping up.
Now, You can duplicate this folder and run all instances of it separately, all of them with their own blog list. Since the binary is only a few KBs, the duplicating shouldn't be such a big issue.
And a note on the export functionality: If you open the exported blog file (exported via Settings->General->Export Blogs), all what's in there are the Tumblr URLs, no settings. Hence, if you import those files, there are no settings for TumblThree to import.
You might also want to read the README.md. I've written a little about the \Index\ folder there which is located in your Download location (default: \Blogs\Index). This folder contains two json files per blog containing all the blogs settings and previously downloaded files. You could also move those to one of your newly created portable TumblThree instances to resume their state.

Hi Johannes,
Thanks for the reply.  It sounds like a lot of screwing around for
a non-techy-or-programmer, so I'm just making one
lo-o-o-ng list and hope for the best.
I do have a question about 'Evaluating' blogs.  When I add a date
to 'download From' in 'Blog Settings', in the
'Queue' it says that it's 'Evaluating' Tumblr posts.  This takes a
lo-o-o-o-ng time and can take overnight to complete
several big blogs.  I get the impression it's checking every single
post for the date before downloading just the ones
after the specified date.  It's a lot faster to just start from the
beginning and download them all then it is what wait ages
for the 'Evaluation'.  Is this something that can be fixed, or is it
by design?
Thanks again.

The issue has been closed. You can still comment. Feel free to ask for reopening the issue if needed.


HTML injection doesn't work in google docs

If I use HTML rule the text is missing when I open it with google docs.
You can try to recreate by simple making docx file that contents
+++HTML `<body><span>Simplest html</span></body>`+++

If you'll open it in google docs you won't see any text.
I don't really have any clue.

I noticed that if I change anything in the output file with Microsoft Word and reopen it in Google Docs it will work.

Ok, I figured out that the issue is that Google Docs doesn't support altChunk. It seems like there is nothing that can be done. I personally will just convert specific HTML tags I have into XML.

I didn't know that, thanks for reporting!


config fails to build after an upgrade

Field
Description

Plugin
<N/A>

Nixpkgs
<unstable>

Home Manager
<unstable>

Description
configuration fails to build after an update.
Minimal, Reproducible Example (MRE)
.
.
.
programs = {
    nixvim = {
      enable = true;
      globals.mapleader = " ";
      clipboard.providers.wl-copy.enable = true;

      config = {
        options = {
      #  number = true;
      #  relativenumber = false;
      #  shiftwidth = 2;
    };
  };
.
.
.

output:
building the system configuration...
warning: Git tree '/home/martin/.dots' is dirty
error:
       … while calling the 'head' builtin

         at /nix/store/snp5f95xhkz89kdw9703kana3m6xfd0a-source/lib/attrsets.nix:960:11:

          959|         || pred here (elemAt values 1) (head values) then
          960|           head values
             |           ^
          961|         else

       … while evaluating the attribute 'value'

         at /nix/store/snp5f95xhkz89kdw9703kana3m6xfd0a-source/lib/modules.nix:809:9:

          808|     in warnDeprecation opt //
          809|       { value = builtins.addErrorContext "while evaluating the option `${showOption loc}':" value;
             |         ^
          810|         inherit (res.defsFinal') highestPrio;

       (stack trace truncated; use '--show-trace' to show the full trace)

       error: Module `:anon-19:anon-1' has an unsupported attribute `clipboard'. This is caused by introducing a top-level `config' or `options' attribute. Add configuration attributes immediately on the top level instead, or move all of them (namely: clipboard colorschemes enable extraConfigLua extraPlugins globals plugins) into the explicit `config' attribute.

Should be fixed now.

Should be fixed now.

It is! Thank you.

Works for me.


deps: Use patch-package to fix Xcode build failure in react-native

This gets the effect of facebook/react-native@52d8a797e but without having to upgrade to RN v0.69.
I believe this is the first time we've used patch-package. It's a band-aid, but at least I think an effective one, while we focus our time on the Flutter project.

Oops, I forgot a key part of this: updating our postinstall script so patch-package actually runs 😄

OK, pushed with that fix.

Cool, seems best — thanks for working this out. Merging.

Thanks!

By the way I tested a yarn command and patch-package did its job, adding three lines to the output:
patch-package 6.5.1
Applying patches...
<EMAIL_ADDRESS>✔


Fix broken link to Meteor Blog

Good catch!
@Urigo this looks good :)

I will add the s :)

Does that mean previous articles are gone? ;)

@ShMcK and @Urigo, I tried HTTPS first but got a privacy error in Chrome because the certificate belongs to a248.e.akamai.net, so I went with HTTP instead.


Feature/add/box shadow to bar chart rod data

https://github.com/imaNNeoFighT/fl_chart/issues/924

Our branching approach changed due to the problem you have faced. (Read more about it here #938).
Sorry about that I had to do that.
Now you need to make your branch from master.
Follow this guide to re-create your PR:

Checkout to master branch and pull it.
Create a new branch
Cherry-pick your commits from this old branch into your new branch.
Then push it and make a new PR.
Mention the old PR in your new PR.


Ability for trial curators+ to propose edits for existing curations

For example: meta fixes, adding alternates, and so on. Would be possible whether or not said curation is already present in the latest Flashpoint version - successful/approved changes would be logged accordingly to indicate what has to be added/changed in the next version.

https://github.com/Dri0m/flashpoint-submission-system/issues/46


deploy fails. waiter timeout

Environment information
System:
  OS: macOS 13.3.1
  CPU: (8) arm64 Apple M1 Pro
  Memory: 192.69 MB / 16.00 GB
  Shell: /bin/zsh
Binaries:
  Node: 20.10.0 - /usr/local/bin/node
  Yarn: 1.22.19 - /opt/homebrew/bin/yarn
  npm: 10.2.4 - /opt/homebrew/bin/npm
  pnpm: undefined - undefined
NPM Packages:
  @aws-amplify/backend: 0.13.0-beta.18
  @aws-amplify/backend-cli: 0.12.0-beta.20
  aws-amplify: 6.0.17
  aws-cdk: 2.133.0
  aws-cdk-lib: 2.133.0
  typescript: 5.3.3
AWS environment variables:
  AWS_SDK_LOAD_CONFIG = 1
  AWS_STS_REGIONAL_ENDPOINTS = regional
  AWS_NODEJS_CONNECTION_REUSE_ENABLED = 1
No CDK environment variables

Description
When attempting to deploy a build, I encounter a failure related to a nested stack within AWS CloudFormation. The error message received is:
"Embedded stack arn:aws:cloudformation:us-east-1:7XXX was not successfully created: The following resource(s) failed to create: [amplifyDataCompanyNestedStackCompanyNestedStackResource1A74F86D]."

 Iteration: a
      .model({
        companyId: a.id(),
        type: a.string(),

        company: a.belongsTo("Company", "companyId"),
      })
      .authorization([a.allow.multipleOwners()]),
  Company: a
      .model({
        companyName: a.string(),
        companyBackground: a.string(),
        iterations: a.hasMany("Iteration", "companyId"),
        members: a.string().array(),

      })
      .authorization([a.allow.multipleOwners().inField("members")]),

      ```

any suggestions on this issue

Hey @blinkdaffer, Thank you for raising this. This issue seems to be a duplicate of #2189 .

We are closing this issue in favor of #2189. Please refer to that issue for future updates.


diamond: add canonical data

Closes #556. See that issue for background information. Please contribute any new comments in this PR. Thanks!
I'm far from a property-based testing expert, so my explanation in the test data comment is likely clumsy. Please feel free to explain how to refine it!
I attempted to follow the proposed canonical data spec from https://github.com/exercism/x-common/pull/602. If you spot any deviations from the proposal, please let me know and I can correct them. cc @rbasso for his expertise and validation 😄

@rbasso thanks! 👍  @ spec!

@stkent Do you want to modify the canonical-data of this PR (e.g. due to the discussion in #614), or shall we merge it?

@ErikSchierboom sorry, I don't quite follow; what was the modification you had in mind? Thanks!

@stkent Oh sorry, I meant the bit about "print". There was some discussion if "print" was a good name, as it might imply that we were printing to the console instead of returning a string.

Ah, I'm with you now. Yes, let's change that - easy fix at this point. Incoming!

@ErikSchierboom I updated print to rows, but I'm open to other suggestions if that's not clear enough. (I'm thinking that with an updated description and the expected output as context, it should be ok?)

@stkent I think rows is a good choice. :+1:


Can't create a package for a library

I have compiler errors when I try to call a cargo package and this is because I use a build script in this library to generate rust code using tonic-build  and prost so I there a way to solve this problem.
Thank you in advance.

It is hard to figure out how to help without a reproducible example. What are you trying to do? What have you tried? What about it is not working?
Also, given that you where you posted this Why do you think this is a limitation/Bug in Cargo? You may have better luck on a more general forum like users.rust-lang.org

@Eh2406 I have a library with following structure
.
├── Cargo.toml
├── build.rs
└── src
└── lib.rs
inside build.rs I use crate to generate some rust code to be used
//build.rs
 tonic_build::configure()
        .build_client(true)
        .build_server(true)
        .compile(&["proto/cluster.proto"], &["proto/"])?;

and inside lib.rs I uses the generated code for example
pub mod my_mod{

    include!(concat!(env!("OUT_DIR"), concat!("/", "test", ".rs")));

//defined inside test.proto that used to generate test.rs
impl Color{
}
}

so when I run cargo build all thigs goes well
but when I run cargo package I have compilation error that Color not found so how to force cargo to use build script inside build.rs .

Normally the build.rs scrip is run during package, if it is not that would be odd.
Can you have the build.rs wright a file, or print something, before your call to other code to test if the build.rs is run?
If the build.rs is not being run, that is a bug and you are in the correct place.
If it is running but not outputting what you need...
I don't know anything about tonic_build. As I said before "You may have better luck on a more general forum like users.rust-lang.org".
But I would investigate if the proto files got included into your package. Maybe, they were not included, so tonic_build did not output anything.

@Eh2406 cargo build succeed but packaging not,
I read "Check that build scripts did not modify any source files."
at cargo package

cargo build succeed but packaging not

Yes you have said that several times. The question is Does the build script run as part of cargo package?

I read "Check that build scripts did not modify any source files."

The build script is not supposed to modify anything in src, but your script is putting it in env!("OUT_DIR") witch should be Ok. So I don't think that is your problem.
Can you make and example I can run to see the problem you are having?

@Eh2406 I added a simple project at  lib test project that uses raft-rs which uses proto

I did get a minute to try that and I can confirm that that is odd. @ehuss any thoughts?

thank you @Eh2406 I discovered the issue and it was because of depending on github crate so when using cargo package this crate fetched from crate.io which has different component so I had compilation error and this was misleading errors,
so I think it is better to give an error on github dependence when using cargo package.
finally is there a workaround to solve this issue ?

This is caused because publishing/packaging does not support git or path dependencies.  The git dependency on raft is converted to raft="*", which is raft 0.5.0 at this time.
We should probably change it so that is an error (on publish/package) instead of the confusing warning.


The data is cut off from screen

When we get many attribute data cant show in one screen it should have horizontal scroll view

won't fix, alternative solution, is to turn on/off those column


cannot read property 'querySelectorAll' of null at e.getDefaultTimeFromCapabilities in leaflet.timedimension.layer.wms.js

I adopted the code according to my webmap. but this error comes up with it in the Developer tools of the browser.
      ncaught TypeError: Cannot read property 'querySelectorAll' of null
      at e._getDefaultTimeFromCapabilities (leaflet.timedimension.layer.wms.js:324)

circle markers can be added bu they don't show any values of the wms layer in geoserver. error comes up with leaflet.timedimension.layer.wms.timeseries.js
        Uncaught TypeError: Cannot read property 'min' of undefined
        at e._loadData (leaflet.timedimension.layer.wms.timeseries.js:115)
        at e.addPositionMarker (leaflet.timedimension.layer.wms.timeseries.js:111)
        at e.<anonymous> (leaflet.timedimension.layer.wms.timeseries.js:32)
        at e.fireEvent (leaflet.js:6)
        at e._fireMouseEvent (leaflet.js:6)
        at HTMLDivElement.s [as _leaflet_dblclick2] (leaflet.js:8)

any idea how to make it work?

I don't have a solution but see a similar issue for WMTS tiles from NASA using the template
var nasagibs_epsg4326_template =
'//gibs-{s}.earthdata.nasa.gov/wmts/epsg4326/best/' +
'{layer}/default/{time}/{tileMatrixSet}/{z}/{y}/{x}.';
The Error Message in the Console is as below:
"leaflet.timedimension.layer.wms.js:329 Uncaught TypeError: Cannot read property 'querySelectorAll' of null
at e._getDefaultTimeFromCapabilities (leaflet.timedimension.layer.wms.js:329)
at e. (leaflet.timedimension.layer.wms.js:268)"
It would be great if someone can give some thoughts and help us understand the meaning of the error. In my case the display is working but the console is filled with these error messages for each date change. Thanks


Instanced Skinning Mesh (VRM Character)

Instanced Skinning Mesh would be an essential element of game engines.

Instanced Skinning Mesh of glTF was completed at https://github.com/actnwit/RhodoniteTS/pull/1232
Next, VRM model.

Instanced Skinning of VRM model was completed at https://github.com/actnwit/RhodoniteTS/pull/1233


NPC is not foundable as entity

If you /testfor to look for the NPC, it cannot found him.

Try to test for sponge:human

Tried. So I just find myself, not the NPC.

That is kindof impossible, because 'Human' is an entity added by sponge, that is totally seperated from the normal 'Player'. Ill look into it though.

It might just be impossible to find it using vanilla minecraft commands, but not sure.

Maybe something with the name set by ur plugin does not work if you look for the NPC?
Command should be /testfor @e[name=Jack] for NPC named Jack.

I havent been doing any crazy stuff with the NPC's, so that wouldnt really be an issue. All that i have done is change already existing tags and add some custom tags. Ive coded nothing outside of sponge.

I think it's nvm because u already find the entity because it is clickable :)

Can i close this?

Done :)


fix issue #25

This should fix issue #25 .

See https://github.com/HaJaeKyung/KittyExtension/pull/27


some MaterialUI icons have no alpha anymore

I heard there was some optimization done lately on the assets, not sure if this was by @Alcaro or someone else, but things aren't quite right now:

Before:
https://github.com/libretro/retroarch-assets-old1/blob/627d8f39a44810bb7e0923bf6dfdc5512c44b4b6/glui/help.png
After:
https://github.com/libretro/retroarch-assets-old1/blob/master/glui/help.png
Now:
https://github.com/libretro/retroarch-assets/blob/master/glui/help.png
Looks like all have transparency?

Wouldn't surprise me too much if RetroArch is somehow not implementing the complete PNG specification. (That premultiplication script creeps me out, standard PNGs don't do that.)
It would surprise me slightly more, but not too much, if my recompression script doesn't implement the complete PNG specification and somehow glitched the pics (I saw some of them use 16 bits per channel, rather than the usual 8). But on the other hand, that would've glitched the GitHub previews too.

This is a serious issue though especially in light of the 1.7.0 release that we intend to launch within a few days. If it is not realistic to have RPNG patched so that it can handle these images, I would recommend we revert the optimizations.

Reverting that commit would inflate the repo a fair bit, and I'm not sure how to revert across the flattening without losing whatever happened since then. Selectively restoring only those images would be mostly harmless, but that requires identifying them.
But more importantly, if we don't fix it in rpng, nothing's stopping this issue from reappearing a dozen times.
Poking the images with ImageMagick reveals that it changed from Indexed to Grayscale color type, and that it has a tRNS chunk. Which is conveniently marked as TODO in rpng.
tRNS on non-indexed color looks fairly simple, just 'every time you see this color, replace with transparent', but obviously someone would have to do it. I'm currently not available.

Can I also mention that when the window scale is set to 2x, the XMB icons look blurry too?

I tested this out now - not only are the images lower in quality, but they also have that unfortunate alpha issue now.
Since we don't have time right now to add that missing code support, I'm simply going to revert the icons for MaterialUI as is. We don't have the luxury or the time to inconvenience nightly users with this right now. You can return to this at a later date once you have this TnS support in RPNG and either you or somebody else finds the time to add it.

Updated the problematic images -
https://github.com/libretro/retroarch-assets/commit/9a446eb3b1ace48b745a0b783e99794e1a05cb9f
@bparker06 and/or other contributors - please let me know if there are still tray icons that exhibit this issue or whether this takes care of them all now.

Oh and it looks like the XMB Pixel theme is blurry and not pixel perfect too :(

and it looks like the XMB Pixel theme is blurry and not pixel perfect too.

Would be good to suppose HighDPI for the assets. While the approach is questionable, I made a different issue for it: https://github.com/libretro/retroarch-assets/issues/189

@Alcaro i could re-export all the images with the original optimization of optipng -o 7 that didn't cause issues...

or maybe just grab them from the last commit before the optimizations
from retroarch-assets-old1:
https://codeload.github.com/libretro/retroarch-assets-old1/zip/c81efec323a8e743909519ee892a4031c88d4d13
Should i do a pull reverting them?


Update MAC to draft 05

Closes #194

Pull Request Test Coverage Report for Build 707

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at ?%

Totals

Change from base Build 706:
0.0%

Covered Lines:

Relevant Lines:
0

💛  - Coveralls

Closing in favor of https://github.com/oauth-xx/oauth2/pull/509


inventory tweaks, single item quick hotkey (ctrl).

since this morning i noticed that out of the blue that the inventory tweaks seems to be partially blocked server side somehow?
using ctrl hotkey to grab 1 item out of a stack when you need to quickly grab 3 or 4 pieces only no longer works.
tested it single player and it works fine,and quite a few people i asked also noticed this suddenly not working.
is the server being derpy,or is it disabled deliberately? to ea prevent server spamming query's or prevent a new kind of duplication bug?

Absolutely nothing has been changed. Seeing as its a client side only mod I can promise nothing server side has been altered.


Fix new detections in rider 2018.1

Hold off one moment, I'm going to have to add ignore rules for these new bugged detections too.

Never mind, it's on the osu! side.


Add lcs-contig two show two or more contiguous spaces differently

This is useful if one doesn't want to show single spaces (around operators) so that it doesn't hamper code reading, while still want to be able to show two or more contiguous spaces to make it easier count the number of spaces in a string or something else. I can recall that some other code editors (maybe VSCode) have this feature.

Isn't that something, that you can already do using something like this:
call matchadd('Conceal', ' \@<= ', 10, -1, {'conceal':'—'})
call matchadd('Conceal', '\S\zs  \@=', 10, -1, {'conceal':'—'})

This require setting conceallevel=2 and concealcursor=nvic (maybe?) to achieve the effect similar to listchars, which is not very convenient in some cases (e.g. when editing LaTeX files).

Well yes, and in your case it needs an additional :set list. I am just wondering if the maintenance burden for adding that feature is justified, considering, that we already have a feature that allows this as well.

Everything in listchars can be toggled on and off, so it is unlikely that this will conflict with other usecases, unlike conceallevel and concealcursor which affect every that use the conceal feature.

This requires setting conceallevel=2 and concealcursor=nvic (maybe?) to achieve the effect similar to listchars, which is not very convenient in some cases (e.g. when editing LaTeX files).

Maybe "convenient" is not the right word here. I wanted to mean that it may conflict with other usecases of conceal, especially those that don't work well with concealcursor=nvic.

Instead of a single character, how about making this a string?  E.g. setting it to "---+" would show a longer sequence of spaces as "---+---+---+".  Would not be used for a single space.

Instead of a single character, how about making this a string? E.g. setting it to "---+" would show a longer sequence of spaces as "---+---+---+". Would not be used for a single space.

Should there be a length limit for the string then?

Instead of a single character, how about making this a string? E.g. setting it to "---+" would show a longer sequence of spaces as "---+---+---+". Would not be used for a single space.

Should the string be char_u * or int * in structs.h? int * seems to require fewer modifications to set_chars_option.

I also just found another problem: the third character of lcs-tab cannot be a comma, but the first and second characters can. If lcs-contig gets added as a string, should comma be also forbidden in the string? Or should there be a way escape a comma in lcs-tab and lcs-contig?

I also just found another problem: the third character of lcs-tab cannot be a comma, but the first and second characters can. If lcs-contig gets added as a string, should comma be also forbidden in the string (as it is used to separate settings and cannot be escaped)? Or should there be a way escape a comma in lcs-tab and lcs-contig?

My current solution:

For lcs-tab: Simply check if the next character after the third is also a comma (backslash escaping cannot be used because it will break the existing behavior when the third character is a backslash)
For lcs-contig: Use backslash escaping

I'm using int *.

I think this is done now.

Several continue; statements in set_chars_option always lead to return e_invarg; (as the value of pointer p is not changed). Maybe they can be changed to return e_invarg; to be more straightforward?

This is starting to look good.  A couple of notes.
The name "contig" is not at all obvious.  How about "multspace"?  or "space2"?
The help should give an example, e.g. "---.---+".

It seems "multiple" is more often abbreviated to "multi" than as "mult" in Vim. "multispace" indeed seems a more straightforward name.


fix issue that error message not shown

need to show 'tbl2', which is DT view of error message.

add this change as new commit to PR #127, since 'tbl2' will be changed to more descriptive name as well


Only Start if not Disabled #2

This is a follow up on this pull request: https://github.com/angular-ui/ui-sortable/pull/436
This new pull request is based on the 0.14 branch. Also, I made the changes in the code more obvious and you can see that I barely changed anything in the diff below.
Find the description of the original pull request below:
Unfortunately, jquery ui sortable is very slow sometimes, specially if there are hidden elements as described here: http://stackoverflow.com/questions/9440664/jquery-ui-sortable-drag-initiation-is-slow-when-container-has-hidden-items
This adds up to more than 150ms for me on every user action, which is absolutely inacceptable, because I only need to use ui-sortable in very few cases. I need to be able to disable it.
Right now, it is not possible to hold off on launching ui sortable, similar to the problem discussed here: #397
Unfortunately, disabling jquery ui sortable only prevents the dragging from working, without actually not running. It still does all the expensive calls to the refreshPositions function.
All I need is to hold off before the start if the disabled option is set. My change is only about 7 lines - I wrapped the executed code into a "main" function, and only call that function if disabled is not set. The diff below is misleading.
I really hope this, or a different solution, can make it into the main rep. Thanks!

Are the tests passing in your test environment?
The tests of the current v0.14 branch are failing on Travis when using PhatnomJS but pass 100% on Firefox.
I should first try to fix that, but this PR also has 66 failing tests on FF.

Found a workaround for the phantomJS issue.
As noted in angular/angular.js#13794 I will try using
https://github.com/tom-james-watson/phantomjs-polyfill for
Function.prototype.bind.

--
Thodoris Greasidis
Computer, Networking &
Communications Engineer

Oh - they fail for me, too. I'm sorry, I should have checked.
This is caused by calling element.sortable from within a callback function. Doing this works fine:
if(!scope.uiSortable || !scope.uiSortable.disabled)           {             element.sortable(opts);           }
But this way it can't be disabled first, and enabled after.
Even though the problem is narrowed down this much, I'm not sure what it is. Usually problems like this arise from having the wrong context inside the function that is called. I tried calling it using element.sortable.call(context, opts) with various context but it seems to already have the correct one by default.
Help very much appreciated. Thank you for taking the time!

We should have this code as a function and invoke it right before the
watcher initialization. Also, it would be great if you cancelled the
watcher after the plugin gets enabled, using the value returned by the
$watch method.
--
Thodoris Greasidis
Computer, Networking &
Communications Engineer

sure, see if this is better.

That's exactly what I meant, great!
I will merge it as soon as I manage to fix the test cases.
As a memory efficiency extra, consider using angular.noop instead of a
newly created empty function, or test if the watcher handler has an
assigned value before invoking it.
Also it would be great to use a more semantic name for the variable holding
the reference of the watcher cancel method.

--
Thodoris Greasidis
Computer, Networking &
Communications Engineer

I miss working in a team 8-)
Thanks a lot for fixing the problems.

@michaschwab Earlier today I pushed some commits to v0.14 branch and the test are now passing.
I tried doing a quick merge with your branch (locally, no conflicts occurred) and some tests failed.
It would be great if you could rebase your code and help me debug the issues.

Merged in v0.14.x-dev branch with #444.
@michaschwab :+1: a great thanks for your awesome idea & work!
Waiting for your feedback on the final code and whether it actually works for your use case.

Hi! Sorry for not getting back to you earlier.
Thanks so much, it's almost perfect! For me, calling watchOnce('uiSortable.disabled', lazyInit); in lazyInit, and watchOnce calling `scope.$watch(watchExpr, function () {

         fn.apply(this, arguments); }` caused an endless loop, because $watch is always called at least once for me.

After making a slight alteration to the watchOnce function it is perfect for me. I simply checked if the watched expression is actually different:
          var lastVal;           function watchOnce (watchExpr, fn) {             var cancelWatcher = scope.$watch(watchExpr, function (newVal) {               if(newVal !== lastVal)               {                 lastVal = newVal;                 fn.apply(this, arguments);                 cancelWatcher();               }             });           }
Please let me know what you think, and if you can manage to put that in by tomorrow. I have a user study lined up tomorrow and having this then would mean a smoother experience. But I can hack it up for the demo if needed, so no pressure.
Thanks again!

I was thinking about adding such a check in the $watch. How about using the
second argument of the $watch for the comparison instead of the newly
declared lastVal variable?
function (newVal, oldVal) {
if(newVal !== oldVal) {
--
Thodoris Greasidis
Computer, Networking &
Communications Engineer

It seems that the related tests are failing either way. I will give it a
try.
Thodoris Greasidis
Computer, Networking &
Communications Engineer

At last! I managed to reproduce the infinite digest loop problem and
created two new test cases that use $timeout to change the sortable options
object. Perhaps this should be considered the primary use case.

--
Thodoris Greasidis
Computer, Networking &
Communications Engineer

Just pushed some commits with fixes... Actually reverted the watchOnce
implementation since I couldn't make it work for the four related test
cases in the same time.
Can you test it on your use case?
Thodoris Greasidis
Computer, Networking &
Communications Engineer

Thanks so much for working so hard on this. It works!! Haven't tested extensively yet, but the delayed launch definitely works. Great work!! I'll do more testing later to see if anything else might be affected, but everything is looking perfect.

Great! Nice to hear that.

@michaschwab I just pushed some extra commits to the v0.14 branch.
If your tests were successful and have a possitive feedback, we could publish v0.14 as the new stable release.

Thanks! Everything is looking great now. It's working well, including dragging across hierarchies, and only starts if not disabled. Perfect! 0.14 as stable sounds good to me.

Ok great! Thanks for your contribution to this repo!

--
Thodoris Greasidis
Computer, Networking &
Communications Engineer


Uncaught TypeError: Cannot read property 'text' of undefined

Hi, there seems to be an error on latest beta when there are packages with native modules compiled for an earlier version of Atom. Let me know if you need me to do any tests or if any extra information may help.

Have some package with native module that is incompatible with latest beta of Atom
Open Atom
Click the red bug looking icon at the bottom right of the status bar

Atom: 1.16.0-beta0 x64
Electron: 1.3.13
OS: "CentOS Linux
Thrown From: Atom Core
Stack Trace
Uncaught TypeError: Cannot read property 'text' of undefined
At /usr/share/atom-beta/resources/app.asar/node_modules/etch/lib/render.js:6

TypeError: Cannot read property 'text' of undefined
    at render (/app.asar/node_modules/etch/lib/render.js:6:18)
    at addChildren (/app.asar/node_modules/etch/lib/render.js:39:24)
    at render (/app.asar/node_modules/etch/lib/render.js:29:21)
    at addChildren (/app.asar/node_modules/etch/lib/render.js:39:24)
    at render (/app.asar/node_modules/etch/lib/render.js:29:21)
    at addChildren (/app.asar/node_modules/etch/lib/render.js:39:24)
    at render (/app.asar/node_modules/etch/lib/render.js:29:21)
    at addChildren (/app.asar/node_modules/etch/lib/render.js:39:24)
    at render (/app.asar/node_modules/etch/lib/render.js:29:21)
    at addChildren (/app.asar/node_modules/etch/lib/render.js:39:24)
    at render (/app.asar/node_modules/etch/lib/render.js:29:21)
    at updateChildren (/app.asar/node_modules/etch/lib/patch.js:94:36)
    at patch (/app.asar/node_modules/etch/lib/patch.js:15:9)
    at updateSync (/app.asar/node_modules/etch/lib/component-helpers.js:108:20)
    at /app.asar/node_modules/etch/lib/component-helpers.js:72:7
    at DefaultScheduler.performUpdates (/app.asar/node_modules/etch/lib/default-scheduler.js:48:34)

Commands
     -0:32.5.0 settings-view:open (atom-pane.pane.active)
     -0:24.9.0 incompatible-packages:view (div.incompatible-packages-status.inline-block.text.text-error)
     -0:24.9.0 tree-view:reveal-active-file (atom-workspace.workspace.scrollbars-visible-always.theme-solarized-dark-syntax.theme-one-dark-ui)

Non-Core Packages
advanced-open-file 0.16.6
aligner 0.22.3
atom-alignment 0.12.1
atom-ctags 5.0.0
atom-formatter-jsbeautify 1.1.2
auto-detect-indentation 1.3.0
auto-reveal-in-sidebar 0.8.0
autocomplete-ctags 0.4.1
autocomplete-php 0.3.7
blame 0.10.2
build 0.67.0
busy 0.7.0
ctags-status 1.3.7
docblockr 0.9.3
gherkin-table-formatter 0.0.2
git-plus 7.3.3
highlight-selected 0.13.1
language-docker 1.1.7
language-gherkin 1.0.4
language-ini 1.19.0
language-nim 0.2.2
last-cursor-position 0.9.2
line-diff-details 1.6.0
minimap 4.26.8
minimap-cursorline 0.2.0
minimap-git-diff 4.3.1
permanent-delete 0.1.5
php-debug 0.2.4
php-integrator-tooltips 1.1.5
platformio-ide-terminal 2.5.0
pretty-json 1.6.1
run-command 0.3.2
run-command2 1.12.2
sort-lines 0.14.0
tab-control 0.6.9
toggle-quotes 1.0.1
trailing-spaces 0.4.0
tree-view-breadcrumb 0.8.1
underline-trailing-whitespace 1.4.2

Thanks for taking the time to contribute!
We noticed that this looks like a duplicate of https://github.com/atom/incompatible-packages/issues/19. You may want to subscribe there for updates (it looks like a fix is in https://github.com/atom/incompatible-packages/pull/20 I think).
Because we treat our issues list as the Atom team's backlog, we close duplicates to focus our work and not have to touch the same chunk of code for the same reason multiple times. This is also why we may mark something as duplicate that isn't an exact duplicate but is closely related.
For information on how to use GitHub's search feature to find out if something is a duplicate before filing, see the How Can I Contribute? section of the Atom CONTRIBUTING guide.


v17: sdk unfork

subtask in #5191 -- placeholder for now, but if you have items that you're sure will need to be addressed, adding them here will be super helpful!

I'm going to close this for now so we can focus on the other related issue


CustomComponent html is not getting rendered?

Thank you for the example for the CustomComponent @travist
However I am not able to render any html with a customcomponent. Can you maybe elaborate or extend the example a bit more please?
/**
 * This file demonstrates how to create a custom component in Angular Material
 */
import { Components, MaterialHtmlComponent } from "angular-material-formio";
import HtmlComponent from "formiojs/components/html/HTML.js";
import { Component, OnInit } from "@angular/core";
import { Formio } from "angular-formio";

class HeaderComponent extends HtmlComponent {
  // Custom logic goes here.
  render() {
    return super.render(`

 HALLO

    `);
  }

  // attach(element) {
  //   console.log(element);
  //   // Allow basic component functionality to attach like field logic and tooltips.
  //   return super.attach(element);
  // }
}

@Component({
  template: `

HALLO

  `
})
export class MaterialHeaderComponent extends MaterialHtmlComponent {}
(HeaderComponent as any).MaterialComponent = MaterialHeaderComponent;
Components.addComponent("html", HeaderComponent);

You do not render with the Form.io component, but with this library, you actually render using the Angular Material component within the template construct of the @Component. Like so....

}

I am also trying to render a custom component, however without success.
These are the changes I made:

CustomComponent.ts:

import { Components, MaterialHtmlComponent } from 'angular-material-formio';
import HtmlComponent from 'formiojs/components/html/HTML.js';
import { Component } from '@angular/core';        // <--- ADDED
class HeaderComponent extends HtmlComponent {
  // Custom logic goes here.
}

@Component({   // <--- ADDED
  template: '
HALLO
'
})
export class MaterialHeaderComponent extends MaterialHtmlComponent {
  // Custom Material logic goes here.
}
(HeaderComponent as any).MaterialComponent = MaterialHeaderComponent;
Components.addComponent('header', HeaderComponent);

app.component.html:

<mat-card>

  <mat-formio [form]="form"></mat-formio>
</mat-card>

File app.component.ts is unchanged (tried changing/removing label, content, tag of header but no success):
import { Component } from '@angular/core';

@Component({
  selector: 'app-root',
  templateUrl: './app.component.html',
  styleUrls: ['./app.component.scss']
})
export class AppComponent {
  form: any = {
    components: [
      {
        type: 'textfield',
        label: 'First Name',
        key: 'firstName'
      },
      {
        type: 'header',
        label: 'Header',
        content: 'This is a header',
        tag: 'h1'
      },
      {
        type: 'htmlelement',
        tag: 'strong',
        content: '{{ data.firstName }}',
        refreshOnChange: true,
        key: 'html'
      }
    ]
  };
  onSubmit(submission:any) {
    console.log(submission);
  }
}

This is what I see:

What should I do to get
HALLO
 rendered?

You do not render with the Form.io component, but with this library, you actually render using the Angular Material component within the template construct of the @component. Like so....

}

I tried this approach but the html doesn't seem to get rendered. @travist

Try with the latest version. I made a change to the HTMLComponent.

@travist I tried this with the latest version but it didn't seem to work.

import HtmlComponent from 'formiojs/components/html/HTML.js';
import { FormsHtmlComponent } from '../html/html.component';
import { Component } from '@angular/core';
const Components = require('formiojs/components/Components').default;

class HeaderComponent extends HtmlComponent {
  // Custom logic goes here.
}

@Component({
  template: '
HALLO
'
})
export class FormsCustomComponent extends FormsHtmlComponent {
  // Custom Material logic goes here.
}
(HeaderComponent as any).FormsComponent = FormsCustomComponent;
Components.addComponent('custom', HeaderComponent);

It's added to the index.ts to get rendered like :
import { FormsCustomComponent } from './custom/custom.component';

// Set the components.
const components: any = {
      ....
      custom: FormsCustomComponent
}

Results in the following error :

@travist Can you maybe take a look at this? Since with the Wizard now in place. Thank you for that btw. It's for us now useless if we can't render our own custom components which are made in FormManager.
For instance we have a custom address component which content managers can drag and drop in the FormManager to create forms.
The address component is composed of :
Panel
TextField
Column
TextField   TextField
TextField
TextField
We now want to render this custom component but since we are getting the above error for a custom component. We are stuck.

I believe it should be...
(HeaderComponent as any).MaterialComponent = FormsCustomComponent;

I believe it should be...
(HeaderComponent as any).MaterialComponent = FormsCustomComponent;

Ah yeah we renamed MaterialComponent to FormsComponent.
But I think that’s not the issue we even tried it out with a fresh checkout with the demo project and then a wizard form which contained a customcomponent without renaming anything but just use our own form in the . And we didn’t got our html being rendered. The customcomponent was detected but it didn’t show us our html we had in the template.

There is really nothing different between a custom component and a regular component. The ONLY thing different is that you need to ensure you register the component using
Formio.Components.addComponent('custom', CustomComponent);

It could be that when you are getting the Components from formiojs that you are including the wrong module that the application is not using. I have seen this before... You may try doing this...
import { Formio } from 'angular-formio';

And then
Formio.Components.addComponent(....);

If this does not work, then try importing from formiojs. If that does not work, then try importing from angular-material-formio like this.
import { Formio } from 'angular-material-formio';

It may take some trial and error since it is hard to know which Formio.js library is getting imported by your application if there are multiple instances of the library getting pulled in.

Hi @travist
Thanks for this great library. It's exactly what we're looking for!
However, I am looking for a working custom component example, as well. I have been trying to render some html by a custom a component for 2 days with no luck.
Is it possible that you can extend the CustomComponent.ts file to make a small working example for us?
We appreciate it very much .
Thanks in advance!
Sinan

Hello @JoeyHengst, @senvaitis,
this problem still occurs with the latest version. Did you find any solution or workaround to this problem?
I appreciate it a lot, if you can share your experience, solution or workaround, if you have any.
Thank you guys!
Best Regards

Using https://github.com/formio/angular-material-formio/blob/master/projects/angular-material-formio/src/lib/components/index.ts as a guide here's what I have that seems to work:
replace
(HeaderComponent as any).MaterialComponent = HeaderComponent;
with
`const CompClass = (HeaderComponent as any);
CompClass.MaterialComponent = MaterialHeaderComponent;
CompClass.prototype.render = (function () {
if (this.materialComponent) {
return this.materialComponent;
}
const viewContainer = this.parent ? this.parent.viewContainer(this) : this.viewContainer(this);
if (!viewContainer) {
return;
}
const factory = this.options.viewResolver.resolveComponentFactory(CompClass.MaterialComponent);
const componentRef = viewContainer.createComponent(factory);
(componentRef.instance as any).setInstance(this);
});
const setValue = CompClass.prototype.setValue;
CompClass.prototype.setValue = (function (...args) {
if (this.materialComponent) {
this.materialComponent.setValue(args[0]);
}
return setValue.call(this, ...args);
});`
Then follow @travist use of the Angular @Component template to add your code.  I think you can treat it as a regular Angular component from here out.
The library doesn't seem to update the renderer to the MaterialComponent automatically.  There is probably a need for a angular-material-formio addComponent wrapper that does this, and I may work towards something like this as I get more comfortable with the library (assuming this isn't moot thanks to the Angular 9 upgrades).

Hi @enigmatic,
thank you for the long explanation and sample code. I have done it as you described but with no luck.  Nothing will be rendered. I have debugged a litte bit and I have realised that a renderComponent of HeaderComponent will be called with empty body.

Here is my final code:
`/**

This file demonstrates how to create a custom component in Angular Material
*/
import { Components, MaterialHtmlComponent } from 'angular-material-formio';
import HtmlComponent from 'formiojs/components/html/HTML.js';
import {Component} from '@angular/core';

export class HeaderComponent extends HtmlComponent {
// Custom logic goes here.
}
@Component({
template: 'dropzone comes here'
})
export class MaterialHeaderComponent extends MaterialHtmlComponent {
// Custom Material logic goes here.
}
const CompClass = (HeaderComponent as any);
CompClass.MaterialComponent = MaterialHeaderComponent;
CompClass.prototype.render = (function () {
if (this.materialComponent) {
return this.materialComponent;
}
const viewContainer = this.parent ? this.parent.viewContainer(this) : this.viewContainer(this);
if (!viewContainer) {
return;
}
const factory = this.options.viewResolver.resolveComponentFactory(CompClass.MaterialComponent);
const componentRef = viewContainer.createComponent(factory);
(componentRef.instance as any).setInstance(this);
});
const setValue = CompClass.prototype.setValue;
CompClass.prototype.setValue = (function (...args) {
if (this.materialComponent) {
this.materialComponent.setValue(args[0]);
}
return setValue.call(this, ...args);
});
Components.addComponent('dropzone', HeaderComponent);
`
Do I miss here anything?
I registered MaterialHeaderComponent in entryComponents of app.module. Otherwise angular complains as follows:
ERROR Error: No component factory found for MaterialHeaderComponent. Did you add it to @NgModule.entryComponents?

Odd. It works for me.  I did get an error MaterialHeaderComponent_Host.ngfactory.js? [sm]:1 ERROR TypeError: Cannot read property 'nativeElement' of undefined when extending MaterialHtmlComponent, so you can extend the new Component from MaterialComponent:
export class MaterialHeaderComponent extends MaterialComponent {
    // Custom Material logic goes here.
}

The empty renderComponents function comes from MaterialComponent and shouldn't have any impact on the custom component.
Here's the full project: https://github.com/enigmatic/angular-material-formio-demo