xiwi quit working

Today I was unable to run anything with xiwi.  I get the black window saying Loading ... which just stays there forever.  I installed a brand new chroot with -t xiwi,keyboard,extension and tried xiwi xterm and got that window.  The console says ...
# xiwi xterm
X.Org X Server 1.15.1
Release Date: 2014-04-13
X Protocol Version 11, Revision 0
Build Operating System: Linux 2.6.42-75-generic x86_64 Ubuntu
Current Operating System: Linux localhost 3.14.0 #1 SMP Fri May 8 12:28:46 PDT 2015 x86_64
Kernel command line: cros_secure console= loglevel=7 init=/sbin/init cros_secure oops=panic panic=-1 root=/dev/dm-0 rootwait ro dm_verity.error_behavior=3 dm_verity.max_bios=-1 dm_verity.dev_wait=1 dm="1 vroot none ro 1,0 2506752 verity payload=PARTUUID=da85158b-8c1f-dd4a-952f-333067f2e680/PARTNROFF=1 hashtree=PARTUUID=da85158b-8c1f-dd4a-952f-333067f2e680/PARTNROFF=1 hashstart=2506752 alg=sha1 root_hexdigest=ebae31693bcbf75b70a7ec46cffffcb5a113515d salt=f649ace08873fb95324fe240a5704d9c3b22506cf372b02197772441ef9547dd" noinitrd vt.global_cursor_default=0 kern_guid=da85158b-8c1f-dd4a-952f-333067f2e680 add_efi_memmap boot=local noresume noswap i915.modeset=1 tpm_tis.force=1 tpm_tis.interrupts=0 nmi_watchdog=panic,lapic i915.enable_psr=1
Build Date: 12 February 2015  03:37:52PM
xorg-server 2:1.15.1-0ubuntu2~precise5 (For technical support please see http://www.ubuntu.com/support)
Current version of pixman: 0.30.2
        Before reporting problems, check http://wiki.x.org
        to make sure that you have the latest version.
Markers: (--) probed, (**) from config file, (==) default setting,
        (++) from command line, (!!) notice, (II) informational,
        (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
(++) Log file: "/tmp/Xorg.crouton.1.log", Time: Wed Jun  3 20:02:22 2015
(++) Using config file: "/etc/X11/xorg-dummy.conf"
(==) Using system config directory "/usr/share/X11/xorg.conf.d"
Initializing built-in extension Generic Event Extension
Initializing built-in extension SHAPE
Initializing built-in extension MIT-SHM
Initializing built-in extension XInputExtension
Initializing built-in extension XTEST
Initializing built-in extension BIG-REQUESTS
Initializing built-in extension SYNC
Initializing built-in extension XKEYBOARD
Initializing built-in extension XC-MISC
Initializing built-in extension SECURITY
Initializing built-in extension XINERAMA
Initializing built-in extension XFIXES
Initializing built-in extension RENDER
Initializing built-in extension RANDR
Initializing built-in extension COMPOSITE
Initializing built-in extension DAMAGE
Initializing built-in extension MIT-SCREEN-SAVER
Initializing built-in extension DOUBLE-BUFFER
Initializing built-in extension RECORD
Initializing built-in extension DPMS
Initializing built-in extension X-Resource
Initializing built-in extension XVideo
Initializing built-in extension XVideo-MotionCompensation
Initializing built-in extension XFree86-VidModeExtension
Initializing built-in extension XFree86-DGA
Initializing built-in extension XFree86-DRI
Initializing built-in extension DRI2
Loading extension GLX
setversion 1.4 failed: Permission denied
xf86: found device 0
/usr/bin/xinit: XFree86_VT property unexpectedly has 0 items instead of 1
crouton: version 1-20150519153807~master:30cf02c9
release: precise
architecture: amd64
xmethod: xiwi
targets: xiwi,keyboard,extension
host: version 6812.88.0 (Official Build) stable-channel samus
kernel: Linux localhost 3.14.0 #1 SMP Fri May 8 12:28:46 PDT 2015 x86_64 x86_64 x86_64 GNU/Linux
freon: yes
Error: not connected.
Cannot connect to extension, retrying...
Error: not connected.
Cannot connect to extension, retrying...
Error: not connected.
Cannot connect to extension, retrying...
Error: not connected.
Cannot connect to extension, retrying...
Connected to extension, launched crouton in a window.
deciding for version 4 due to this line: # i3 config file (v4)
ERROR: Could not open font pango:Sans 8 (X error 15). Trying fallback to 'fixed'.
font pango:Sans 8
06/03/15 20:02:26 - ERROR:
06/03/15 20:02:26 - ERROR: CONFIG: syntax error, unexpected $undefined
06/03/15 20:02:26 - ERROR: CONFIG: in file "/etc/crouton/xiwi.conf", line 13:
06/03/15 20:02:26 - ERROR: CONFIG:   client.focused          #8E8E8F #EAEAEB #000000 #8E8E8F
06/03/15 20:02:26 - ERROR: CONFIG:                                                   ^
06/03/15 20:02:26 - ERROR:
06/03/15 20:02:26 - ERROR:
06/03/15 20:02:26 - ERROR: CONFIG: syntax error, unexpected $undefined
06/03/15 20:02:26 - ERROR: CONFIG: in file "/etc/crouton/xiwi.conf", line 14:
06/03/15 20:02:26 - ERROR: CONFIG:   client.focused_inactive #8E8E8F #CACACB #525252 #8E8E8F
06/03/15 20:02:26 - ERROR: CONFIG:                                                   ^
06/03/15 20:02:26 - ERROR:
06/03/15 20:02:26 - ERROR:
06/03/15 20:02:26 - ERROR: CONFIG: syntax error, unexpected $undefined
06/03/15 20:02:26 - ERROR: CONFIG: in file "/etc/crouton/xiwi.conf", line 15:
06/03/15 20:02:26 - ERROR: CONFIG:   client.unfocused        #8E8E8F #CACACB #525252 #8E8E8F
06/03/15 20:02:26 - ERROR: CONFIG:                                                   ^
06/03/15 20:02:26 - ERROR:
06/03/15 20:02:26 - ERROR:
06/03/15 20:02:26 - ERROR: CONFIG: syntax error, unexpected $undefined
06/03/15 20:02:26 - ERROR: CONFIG: in file "/etc/crouton/xiwi.conf", line 16:
06/03/15 20:02:26 - ERROR: CONFIG:   client.urgent           #FF8E8E #FFCACB #520000 #FF8E8E
06/03/15 20:02:26 - ERROR: CONFIG:                                                   ^
06/03/15 20:02:26 - ERROR:
        Found keysym binding mod13 with key Escape and command kill
        Found keysym binding mod8 with key Tab and command focus right
        Found keysym binding mod9 with key Tab and command focus left
        Found keysym binding mod12 with key Tab and command focus right
        Found keysym binding mod13 with key Tab and command focus left
06/03/15 20:02:26 - ERROR:
06/03/15 20:02:26 - ERROR: CONFIG: syntax error, unexpected $undefined, expecting <number> or <word> or '+'
06/03/15 20:02:26 - ERROR: CONFIG: in file "/etc/crouton/xiwi.conf", line 27:
06/03/15 20:02:26 - ERROR: CONFIG:   bindsym --release button2 kill
06/03/15 20:02:26 - ERROR: CONFIG:           ^
06/03/15 20:02:26 - ERROR:
06/03/15 20:02:26 - ERROR: FYI: You are using i3 version 4.1.2 (2012-01-27, branch "release-4.1.2")
Starting i3-nagbar due to configuration errors
button with label *edit config* and action *i3-sensible-terminal -e sh -c "i3-sensible-editor \"/etc/crouton/xiwi.conf\" && i3-msg reload"*
now 1 buttons
button with label *show errors* and action *i3-sensible-terminal -e i3-sensible-pager "/tmp/i3-root.47SauW/errorlog.12232"*
now 2 buttons
^C/usr/bin/xinit: connection to X server lost

waiting for X server to shut down Hangup
Hangup
Hangup
Running exit commands...
xterm:  fatal IO error 11 (Resource temporarily unavailable) or KillClient on X server ":1"
(EE) Server terminated successfully (0). Closing log file.

@cribalik's patched extension caused this (https://github.com/dnschneid/crouton/issues/1558).  Going back to the standard extension fixed it.  I don't what changed.  I assume it was chrome that broke his fork.


RV_COMPLIANCE_HALT must contain SWSIG

I had some problems when porting the compliance tests to my RISC-V implementation. Finally, I understand the (in my opinion) weired interaction of macros. In this post I discribe the problems I faced and what I would change to simplify the structure and increase portability.
After porting RV_COMPLIANCE_HALT, half of the tests passed and half failed. The failing tests are the old tests that were imported from riscv-tests. The newer tests, explicitly written for riscv-compliance all passed.
The signature of the failing tests all differ only in the first word: it should be 1 but it was -1. The reason for that is that in most ports RV_COMPLIANCE_HALT maps to RVTEST_PASS which in turn uses SWSIG to write 1 to the first word of the signature. My implementation of RV_COMPLIANCE_HALT did not include RVTEST_PASS nor SWSIG and therefore did not write the 1.
However, the reference signatures of the newer tests do not start with a 1, because the correct value of the first word matters. How is that implemented? The old and the new tests differ in an include file. While the old tests include aw_test_macros.h, the newer tests include riscv_test_macros.h or
test_macros.h. The former defines SWSIG to write to the signature, while the latter define SWSIG as empty.
Consequently, including SWSIG in my definition of RV_COMPLIANCE_HALT solved the problem. However, I think that is a dirty solution because it breaks the independence between test suite, test environment and target. It adds a requirement to the implementation of RV_COMPLIANCE_HALT that should at least be documented. Even better this dependency should be removed, which can be done by the following modification:
Remove SWSIG from RVTEST_PASS and move it to TEST_PASSFAIL. That works, since the new tests are terminated by RV_COMPLIANCE_HALT (without. SWSIG), while the old test are terminated by TEST_PASSFAIL (with SWSIG), which in turn calls RV_COMPLIANCE_HALT. The empty SWSIG definitions in riscv_test_macros.h and test_macros.h can be removed.
When testing this modification, I found another (related) bug: TEST_PASSFAIL writes 1 to the first word, no matter if the test passed or failed. However, the definitions of RVTEST_PASS and RVTEST_FAIL imply that in the case of an error, the failing test number should be written. Therefore I propose to copy the code from these two macros to TEST_PASSFAIL (the labels are more important than the bne):
#define TEST_PASSFAIL               \
        bne x0, TESTNUM, pass;      \
fail:                               \
        sll TESTNUM, TESTNUM, 1;    \
        or TESTNUM, TESTNUM, 1;     \
        j 1f;                       \
pass:                               \
        li TESTNUM, 1;              \
1:                                  \
        RVTEST_SYNC;                \
        SWSIG (0, TESTNUM);         \
        RV_COMPLIANCE_HALT          \

I tested the modifications in my local repo. So, when the modifications are accepted, I can provide a pull request.

You are right that some of the older tests will fail and thus need to be deprecated. This is being discussed and should be resolved soon.
the new test-format spec has an update on the macros and the next version indeed has a cleaner implementation and usage of the macros, thereby avoiding the issues you mentioned above. I would suggest waiting for the next revision to see if the issue still persists


I had to use tricks to setup my own entry point

I had to use tricks to setup my own entry point:
public class SAMLServiceProviderConfig extends ServiceProviderConfigurerAdapter {

    private static final String LOGIN_PAGE = "/login.jsf";

    @Inject
    private Environment env;

    @Override
    public void configure(HttpSecurity http) {
        http
            .formLogin()
                .loginPage(LOGIN_PAGE)
                .permitAll()
                .failureUrl("/login.jsf?error=true")
                .defaultSuccessUrl("/index.jsf");

        // override entry point to form on developer environments
        if (env.getProperty("security.default-form-entry-point", Boolean.class, false)) {
            // Remove the existing configurer that was already setup by SAML
            // otherwise it will run before our configurer can modify it
            http.removeConfigurers(ExceptionHandlingConfigurer.class);

            // register our configurer that will modify exception handling later
            http.apply(loginFormEntryPointConfigurer());
        }
    }

    @Bean
    @Profile(AppProfiles.DEV)
    public LoginFormEntryPointConfigurer loginFormEntryPointConfigurer() {
        return new LoginFormEntryPointConfigurer();
    }

    public static class LoginFormEntryPointConfigurer
            extends AbstractHttpConfigurer<LoginFormEntryPointConfigurer, HttpSecurity> {

        @Override
        public void init(HttpSecurity http) {
        }

        @Override
        public void configure(HttpSecurity http) throws Exception {
            http.exceptionHandling().authenticationEntryPoint(new LoginUrlAuthenticationEntryPoint(LOGIN_PAGE));
        }

    }
}

I just wanted to setup my own entry point, but this library sets up SAMLEntryPoint in such a phase that you can't easily override it.
You configure it like this in SAMLConfigurerBean.java:
    @Override
    public void init(HttpSecurity http) throws Exception {
...
        http
            .exceptionHandling()
            .authenticationEntryPoint(sAMLEntryPoint);
...
    }

May be you can configure it at another phase, so it could be easily overridable.

Exerpt from AbstractAuthenticationFilterConfigurer:
private void registerDefaultAuthenticationEntryPoint(B http) {

		// ...

		RequestMatcher notXRequestedWith = new NegatedRequestMatcher(
				new RequestHeaderRequestMatcher("X-Requested-With", "XMLHttpRequest"));

		RequestMatcher preferredMatcher = new AndRequestMatcher(Arrays.asList(notXRequestedWith, mediaMatcher));

		// !!! registering an entry point with a matcher makes it overridable
		exceptionHandling.defaultAuthenticationEntryPointFor(
				postProcess(authenticationEntryPoint), preferredMatcher);
	}

you can probably use this method:
@Configuration
public static class MyServiceProviderConfig extends WebSecurityConfigurerAdapter {

    @Bean
    SAMLConfigurerBean saml() {
        return new SAMLConfigurerBean();
    }

    @Bean
    BasicConfigurerBean basic() {
        return new BasicConfigurerBean(saml().serviceProvider());
    }

    @Bean
    public AuthenticationManager authenticationManagerBean() throws Exception {
        return super.authenticationManagerBean();
    }

    @Override
    public void configure(HttpSecurity http) throws Exception {
        // @formatter:off
        http.httpBasic()
            .disable()
            .csrf()
            .disable()
            .anonymous()
        .and()
            .apply(saml())
            .serviceProvider()
                // ... sp config
        .http()
            .authorizeRequests()
            .requestMatchers(saml().endpointsMatcher())
            .permitAll()
        .and()
            .authorizeRequests()
            .anyRequest()
            .authenticated()
         .and()
             .apply(basic()); // NOTICE HERE APPLYING SECOND CONFIGURER
        // @formatter:on
    }
}

public class BasicConfigurerBean extends SecurityConfigurerAdapter<DefaultSecurityFilterChain, HttpSecurity> {
    private ServiceProviderBuilder serviceProvider;

    public BasicConfigurerBean(ServiceProviderBuilder serviceProvider) {
        this.serviceProvider = serviceProvider;
    }

    @Override
    public void init(HttpSecurity http) throws Exception {
        SAMLEntryPoint sAMLEntryPoint = serviceProvider.getSharedObject(SAMLEntryPoint.class);

        LoginUrlAuthenticationEntryPoint basicEntryPoint = new LoginUrlAuthenticationEntryPoint(LOGIN_PAGE);

        LinkedHashMap<RequestMatcher, AuthenticationEntryPoint> entryPoints = new LinkedHashMap();

        RequestMatcher notXRequestedWith = new NegatedRequestMatcher(new
        RequestHeaderRequestMatcher("X-Requested-With", "XMLHttpRequest"));
		RequestMatcher preferredMatcher = new AndRequestMatcher(Arrays.asList(notXRequestedWith, mediaMatcher));

        entryPoints.put(preferredMatcher, basicEntryPoint);
        entryPoints.put(new AnyRequestMatcher(), sAMLEntryPoint);

        http
            .exceptionHandling()
            .authenticationEntryPoint(new DelegatingEntryPoint(entryPoints));
    }
}

You can basically define a composite entry point. In this case the only trick is that you're catching the saml one, putting in inside a delegating one, and setting it back.
For the library though, one option could be simply set te samlEntryPoint as default entry point and then you'd be able to setup any other entry point in whatever stage. Or externalize a method on the serviceProvider DSL to provide a custom entryPoint (there's one but only accepts SAMLEntryPoint type).
There's a chance I don't understand what you're doing there, but if you need something to switch the login page but they don't have to co-exist together at the same time then I'd suggest loading a different security config using ConditionalOn... type classes to load one security config or the other.

I have a similar issue, but I don't want SAMLEntryPoint to be registered as AuthenticationEntryPoint at all. I want it to act only as a filter at /saml/login.


Mode selector, IAS, ATTTUDE, HDG, Value in/decrease, all can't use in Zibo 738

Just want to know how to make these work in Zibo 738, or something else can make these happen?  PLZ :(

The instructions explain exactly what to do. I think you'll need to be more specific.


ut-core: 5.0.0 - ut-core: maintenance

This milestone is tracking issues with the current setup, these will be separated later into a valid milestone

Milestone no longer required.


adding annotation for kube-aggregator automanaged in labels-md

Code from the Kubernetes project sets (or previously did set) a label, kube-aggregator.kubernetes.io/automanaged
This looks intended, but https://kubernetes.io/docs/reference/labels-annotations-taints/ doesn't document that label.
This PR document & register the label .
Page to Update:
https://kubernetes.io/docs/reference/labels-annotations-taints/
#38126

/kind bug

/sig api-machinery
I think

@sftim Made the changes as per the comments, PTAL!

Hi @sftim @bradtopol @natalisucks I hope all the nits have been resolved . please take a look at the PR

@kubernetes/sig-api-machinery-misc Howdy folks, would this change be in your realm for review? We're looking for a tech review on the above addition. Thanks in advance!

Thanks, @natalisucks
@kubernetes/sig-api-machinery-misc waiting for further instructions or suggestions.

For context:
https://github.com/kubernetes/kubernetes/pull/51921
https://github.com/kubernetes/kubernetes/issues/51912
Not sure what level of detail is necessary here.

This level of detail looks good. If we wanted to explain more, that'd happen on a different page.

What we want is a tech review to confirm that this change is not misleading to readers.

For tech review:
/assign @deads2k @liggitt

Hi @liggitt , made the changes as per suggestions, hope this is workable now. PTAL

@sftim @liggitt Hi! Updated the content with suggested changes . PTAL!

Thanks @Ritikaa96 for applying the suggestions. From a docs perspective, this looks good to me. Once we have the final tech review sign off I'd be happy to approve.

We have approvals from docs and tech sides.
/lgtm
/approve

Thanks for the approval @tengqm and @natalisucks


feat: add functionality to support custom tokens

Summary
Users can add tokens that aren't automatically included in our default token list by using the custom token functionality.

When a custom token is added, it should be displayed on all related pages, including the token selector.
The custom token should be treated like any other token from the meta-response token list.
Ensure the balance of the custom token is displayed correctly.
Implement for EVM and Solana blockchains.(The blockchain selector should be limited to these blockchains.)
Custom tokens should be stored in Zustand (local storage).
Tokens should be sorted based on the user’s insertion time, with recently added tokens shown on top.
When the API malfunctions or the token data is inaccurate, present a mo- When the API malfunctions or the token data is inaccurate, present a modal in line with the design.
Show an error message if a user tries to import a token that has already been added or exists in the meta.dal in line with the design.
Show an error message if a user tries to import a token that has already been added or exists in the meta.
Add a boolean to the widget configuration to allow hiding custom tokens from the settings.
Fixes # (issue)

How did you test this change?
By choosing custom token on the settings page, you may test it.
Sample test case:

3yoMkf3X6bDxjks6YaWwNk4SAbuaysLg1a4BjQKToQAA

Checklist:

[ ] I have performed a self-review of my code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] Implemented a user interface (UI) change, referencing our Figma design to ensure pixel-perfect precision.

Added generateExplorerLink function to get link token
Added produceErrorMessage function to get custom tokens error
Handled network error on add custom token page
Added customTokens to settings store to get available customTokens according to supported blockchains
Added getSupportedBlockchainsFromConfig function to get similar blockchains between 'from' and 'to' config


Window gap configuration

Is there a way to configure the window gap? I'd like the windows to touch each other directly. If not, any tips on how I might go about adding such an option? I'm pretty sure I could add it, but I haven't got much of a chance to dig through the code yet. Thanks!

You should actually be able to do this experimentally without touching the source of workspacer at all. if you implement the workspacer.Shared.ILayoutEngine interface, you can override the layout engine used, and you are free to implement gaps in such an implementation.
I would LOVE for this to exist, so if you feel like trying it out feel free to create a PR! This should totally exist as a builtin.

Resolved by #193.


alias links to log files appear to be wrong

The refgenie alias dir uses symlinks to point to the data dir. These links are correct on our main rivanna genomes directory:

But when I build for a new server, I see this:

The links point to the wrong level, I think they need 5 ../ levels rather than 4.

maybe this issue should be in refgenconf in the _symlink_alias function


Update packages and translations

/botio test

Reverting the Puppeteer update, to "fix" the failing tests; filed issue #15865 for tracking the update.
/botio test


Enhancement/v6 docs

Small PR enhancing control api docs. Only formState left to go before core v6 docs have full examples!

add TS and CodeSandbox examples.

TOO GOOD! thanks @pmaier983


metrics: actually return a 200 status code

For whatever reason the page is returning a 404 status code at the
moment. I haven't found exactly why, but this forces the status code on
that page to be 200 when metrics are returned.
r? @Mark-Simulacrum

Huh. Would've definitely expected 200 to be a default.

er, thought that was a merge button. Anyway, r=me with CI passing

Confirmed it works with this landed.


Float32 converted Float64 during reference creation

Kerchunk Verison: 0.2.7
I am using kerchunk to convert my netcdf files on s3 to json references. The original netcdf files are composed of variables of mixed data type of float32 and float64. After converted to json and read through xarray, all float data are converted to float64. I wonder is it an expected behaviour?

Hi @martindurant, thanks for the reply. Sorry for the confusion. The netcdf files contain several variables and they are int, float and double. In the reference created, variables with float precision in the original netcdf are converted to double somehow.
Input netcdf:
	float PM25(time, lev, nf, Ydim, Xdim) ;
		PM25:_FillValue = NaNf ;
		PM25:fmissing_value = 1.e+15f ;
		PM25:grid_mapping = "cubed_sphere" ;
		PM25:long_name = "Particulate matter with radii < 2.5 um" ;
		PM25:regrid_method = "bilinear" ;
		PM25:standard_name = "Particulate matter with radii < 2.5 um" ;
		PM25:units = "ug m-3" ;
		PM25:valid_range = -1.e+15f, 1.e+15f ;
		PM25:vmax = 1.e+15f ;
		PM25:vmin = -1.e+15f ;
		PM25:coordinates = "lats lons" ;
	double Xdim(Xdim) ;
		Xdim:_FillValue = NaN ;
		Xdim:long_name = "Fake Longitude for GrADS Compatibility" ;
		Xdim:units = "degrees_east" ;
	double Ydim(Ydim) ;
		Ydim:_FillValue = NaN ;
		Ydim:long_name = "Fake Latitude for GrADS Compatibility" ;
		Ydim:units = "degrees_north" ;
	int nf(nf) ;
		nf:axis = "e" ;
		nf:grads_dim = "e" ;
		nf:long_name = "cubed-sphere face" ;
	double lons(nf, Ydim, Xdim) ;
		lons:_FillValue = NaN ;
		lons:long_name = "longitude" ;
		lons:units = "degrees_east" ;
	double lats(nf, Ydim, Xdim) ;
		lats:_FillValue = NaN ;
		lats:long_name = "latitude" ;
		lats:units = "degrees_north" ;
	double lev(lev) ;
		lev:long_name = "vertical level" ;
		lev:_FillValue = NaN ;
		lev:standard_name = "model_layers" ;
		lev:units = "layer" ;
		lev:positive = "down" ;
		lev:coordinate = "eta" ;
	int64 time(time) ;
		time:units = "days since 2019-07-01 00:00:00" ;
		time:calendar = "proleptic_gregorian" ;
...

output json and read through xarray:
	double PM25(time, lev, nf, Ydim, Xdim) ;
		PM25:_FillValue = NaN ;
		PM25:fmissing_value =<PHONE_NUMBER>91104. ;
		PM25:grid_mapping = "cubed_sphere" ;
		PM25:long_name = "Particulate matter with radii < 2.5 um" ;
		PM25:regrid_method = "bilinear" ;
		PM25:standard_name = "Particulate matter with radii < 2.5 um" ;
		PM25:units = "ug m-3" ;
		PM25:valid_range = -999999986991104.,<PHONE_NUMBER>91104. ;
		PM25:vmax =<PHONE_NUMBER>91104. ;
		PM25:vmin = -999999986991104. ;
		PM25:coordinates = "lats lons" ;
	double Xdim(Xdim) ;
		Xdim:_FillValue = NaN ;
		Xdim:long_name = "Fake Longitude for GrADS Compatibility" ;
		Xdim:units = "degrees_east" ;
	double Ydim(Ydim) ;
		Ydim:_FillValue = NaN ;
		Ydim:long_name = "Fake Latitude for GrADS Compatibility" ;
		Ydim:units = "degrees_north" ;
	double lats(nf, Ydim, Xdim) ;
		lats:_FillValue = NaN ;
		lats:long_name = "latitude" ;
		lats:units = "degrees_north" ;
	double lev(lev) ;
		lev:long_name = "vertical level" ;
		lev:_FillValue = NaN ;
		lev:standard_name = "model_layers" ;
		lev:units = "layer" ;
		lev:positive = "down" ;
		lev:coordinate = "eta" ;
	double lons(nf, Ydim, Xdim) ;
		lons:_FillValue = NaN ;
		lons:long_name = "longitude" ;
		lons:units = "degrees_east" ;
	int nf(nf) ;
		nf:axis = "e" ;
		nf:grads_dim = "e" ;
		nf:long_name = "cubed-sphere face" ;
	int64 time(time) ;
		time:units = "days since 2019-07-01 00:00:00" ;
		time:calendar = "proleptic_gregorian" ;
...

OK, that's probably not supposed to happen. It would be worthwhile to see what h5py thinks the data type is when you get to here. I'm not sure if there is any configuration we can pass to h5py or if the upcasting is happening elsewhere.


FatFS Integration for USB and/or SDMMC

Builds off of the work done by @CorvusPrudens in #434
Made a few changes:

Unified the two separate interfaces (usbh_fatfs, and fatfs) to a single interface that can initialize either/both volumes
Added cache maintenance to usb_diskio
Fixed up WavPlayer class to be agnostic to the hardware/media since it was doing it's own FATFS init internally that wouldn't work well with the new setup. (There's still something kind of funky going on with it that seems to only be an issue with the SD Card).
Increased FATFS _VOLUMES to 2 to support multi-volume mounting of SD card and USB drive simultaneously

For a usage for SD and/or USB example:
    /** Init the SD card you want to use */
    SdmmcHandler::Config sd_cfg;
    sd_cfg.Defaults();
    sdcard.Init(sd_cfg);

    /** Init USB drive */
    MSDHandle::Config usbcfg;
    usb.Init(usbcfg);
    /** And wait until ready -- this could/should probably turn into a callback? */
    while(!usb.GetReady())
        usb.Process();

    /** Link Daisy to FatFS configured for SD card
     *  Once this is done, FatFS can be used as usual. */
    FatFSInterface::Config fsi_cfg;
    fsi_cfg.media
        = FatFSInterface::Config::MEDIA_USB | FatFSInterface::Config::MEDIA_SD;
    fs_inf.Init(fsi_cfg);

    /** Get the path to the root directory we want to use:
     *  0:/ is the first, registered path
     *  1:/ is the second registered path .
     *
     *  volume registration occurs in the order presented in the FatFSInterface::Config::Media enum
     *  i.e. 0:/ is the SD card , and 1:/ is the USB drive if both are used.
     *
     *  When only one volume is used it will always be at 0:/
     */
    const char* rootpath = fs_inf.GetUSBPath();

    FATFS& fs = fs_inf.GetUSBFileSystem();

    /** Mount the FATFS filesystem */
    f_mount(&fs, rootpath, 1);

I don't necessarily like that the user has to manage all three pieces on their own, but with the ability to configure the SDMMC hardware, I'm not sure there's a better solution.
I'd also like to avoid providing wrappers for all of fatfs since it's well documented on it's own, and very easy to work with.
Open to ideas on simplification, and improvement, but this works.

TODO:

[ ] Potentially change name of MSDHandle to USBHostHandle or similar (all host classes can be enumerated through the single host class, and we can gradually add support for the other classes over time).
[ ] Add note in documentation that FatFSInterface can't be placed in DTCMRAM (default location of the stack) since this is off-limits for SDMMC1 and not-DMA accessible for USB periph. (actually for SDMMC the only valid location is in AXI SRAM).


ConnectedRouter is undefined

Version
react-router-redux 4.0.8
Test Case

Steps to reproduce
Follow the react-router-redux example: https://github.com/reacttraining/react-router/tree/master/packages/react-router-redux
Expected Behavior
A Router component which is connected to the store
Actual Behavior
ConnectedRouter is always  undefined
Code example
index.js
import React from 'react';
import ReactDom from 'react-dom';
import { Provider } from 'react-redux';
import {
  // BrowserRouter as Router,
  Route,
} from 'react-router-dom';
import createHistory from 'history/createBrowserHistory';
import { ConnectedRouter } from 'react-router-redux';

// Styles
import 'sanitize.css/sanitize.css';
import './global-styles';

import configureStore from './store';
import rootSaga from './rootSaga';
import App from 'containers/App';

const rootElement = document.getElementById('root');
const initialState = {};
const history = createHistory();
const store = configureStore(initialState, history);

// Run rootSaga
store.runSaga(rootSaga);

ReactDom.render(
  <Provider store={store}>
    <ConnectedRouter history={history}>
      <Route path="/" component={App} />
    </ConnectedRouter>
  </Provider>,
  rootElement
);

store.js
import { createStore, combineReducers, applyMiddleware, compose } from 'redux';
import createSagaMiddleWare from 'redux-saga';
import promise from 'redux-promise';
import { routerMiddleware } from 'react-router-redux';

import rootReducer from './rootReducer';

export default function configureStore(initialState, history) {
  const sagaMiddleWare = createSagaMiddleWare();
  const routerMW = routerMiddleware(history);
  const middleWares = [
    routerMW,
    promise,
    sagaMiddleWare,
  ];

  const enhancers = [
    applyMiddleware(...middleWares)
  ];

  const composeEnhancers =
    process.env.NODE_ENV !== 'production' &&
    typeof window === 'object' &&
    window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__ ?
      window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__ : compose;

  const store = createStore(
    rootReducer,
    initialState,
    composeEnhancers(...enhancers),
  );

  store.runSaga = sagaMiddleWare.run;

  return store;
}

It's not in 4.0.8. That's a 5.0 feature, which is in alpha.

5.0.0 alpha contains just package.json and README.md?

Huh, that's weird. Perhaps a bad push? I'll get that fixed up.

5.0.0-alpha.2 is up on the next tag: npm install react-router-redux@next Sorry about that!

Yes it's working !! Thanks !!

Weird, i'm still getting following error:
Error in ./~/react-router-redux/index.js
Module not found: ./actions in /Users/username/project_folder/node_modules/react-router-redux

Started completely new app with create-react-app and the problem above still occurs. Seems like those files ./middleware.js & ./actions.js are missing from the npm package root folder if I compare it to this package https://github.com/ReactTraining/react-router/tree/master/packages/react-router-redux

Seems like the react-router-redux package.json is missing middleware.js and actions.js from the files array and won't be published to NPM?
https://github.com/ReactTraining/react-router/blob/master/packages/react-router-redux/package.json#L10-L17

@valstu have you tried importing them from react-router-redux/es?

@iwyg Yeah, then I get Uncaught SyntaxError: Unexpected token import

+1 here, fresh create-react-app application, if I import 'react-router-redux' it can't find anything, and if I import 'react-router-redux/es' browser says "Unexpected token import", because imported ES6 doesn't get transpiled.

@valstu @ekalinichev that's interesting bc that's the only way I got it to work.

Maybe you have extra babel settings in addition to what create-react-app provides?

On 13 Mar 2017, at 08:24, Thomas Appel<EMAIL_ADDRESS>wrote:
@valstu @ekalinichev that's interesting bc that's the only way I got it to work.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.

@ekalinichev Maybe. I m using a custom setup with webpack 2, so no create-react-app settings.

It works for me after node_modules reset. With no custom create-react-app settings. Just remove and reinstall node_modules. You must use the next branch of react-router-redux.
rm -rf node_modules
rm yarn.lock
yarn

But there is another issue, https://github.com/ReactTraining/react-router/pull/4709 ... so it's not usable for the moment :/

I get the same error messages as @valstu and @ekalinichev

Those files are also missing from the package. Sorry about that. An alpha 3 is coming soon.

@valstu @srosset81 I just installed version 5.0.0-alpha.3 and it worked for me, with just
import { ConnectedRouter } from 'react-router-redux';

**** Klk ***

Same thing just happened for newly installed "^5.0.0-alpha.8", i got undefined.
This helped:
import ConnectedRouter from 'react-router-redux/ConnectedRouter'

Okay, no idea what's going on. I installed @next looked like it didn't work, I installed @latest - still didn't work (all undefined) reinstalled @next and the same code is working. 🤪 Well, ignore me then :)

@remy same here. It worked when I used @next. Maybe you forgot to do: watchman watch-del-all && npm start --reset-cache


Does not have a redirect when a billing charge is declined

Part of Shopify's requirements is there needs to be clear instructions on uninstalling the aim if the billing is declined.

If your app charges merchants, then it must include a page that is displayed when an app charge is declined. The information that appears on this page will depend on your app's pricing model, but at a minimum it should explain why the charge was not accepted, how to confirm the charge, and how to remove the app.

Can you make this some sort of view instead of just having it throw an error?
https://screenshot.click/04-02-5sqg5-cmzk0.mp4

I said this here: https://github.com/ohmybrew/laravel-shopify/issues/89#issuecomment-417249924
And I passed with Shopify QA, but nobody trust me and forget me haha.
http://prntscr.com/kqp8wi

I think this is a good lightweight solution

I have now enabled a view for the next release. Its a standard blade template which can be overwritten via standard laravel methods (commit 82b0778)

Solved in v4.0.0.
Actual view is now used and can be overwritten via standard Laravel methods.


"chart metadata (Chart.yaml) missing" when deploying custom resource

Hi,
I deployed OLM to my cluster and Tomcat Operator from 'examples' (https://github.com/operator-framework/helm-app-operator-kit/tree/master/examples/tomcat-operator) . They are both up & running and Tomcat Operator is starting with following logs
time="2018-09-18T10:23:09Z" level=info msg="Go Version: go1.10.4"
time="2018-09-18T10:23:09Z" level=info msg="Go OS/Arch: linux/amd64"
time="2018-09-18T10:23:09Z" level=info msg="operator-sdk Version: 0.0.5+git"
time="2018-09-18T10:23:09Z" level=info msg="Watching apache.org/v1alpha1, Tomcat, default, 5"

When I try to create new Tomcat resource with kubectl create -f cr.yaml , where cr.yaml is :
apiVersion: apache.org/v1alpha1
kind: Tomcat
metadata:
  name: example-app
spec:
  replicaCount: 2

then I get following error in Tomcat Operator logs :
time="2018-09-18T10:24:00Z" level=info msg="processing default/example-app"
time="2018-09-18T10:24:00Z" level=info msg="using values: replicaCount: 2\n"
time="2018-09-18T10:24:00Z" level=error msg="chart metadata (Chart.yaml) missing"
time="2018-09-18T10:24:00Z" level=error msg="error syncing key (default/example-app): chart metadata (Chart.yaml) missing"

I SSH'ed to Tomcat Operator Pod and I see tomcat helm chart under /chart directory and it contains Chart.yaml

Ok, I've found where the issue is .
I'm creating operator image with using .tgz packaged helm chart :
docker build --build-arg HELM_CHART=tomcat-0.1.0.tgz --build-arg API_VERSION=apache.org/v1alpha1 --build-arg KIND=Tomcat -t <our_dtr_url>/tomcat-operator .
Docker image build with this command has helm chart under /charts/tomcat , but in Dockerfile we are setting : ENV HELM_CHART /chart which is causing error. When I overridden this value with ENV HELM_CHART /chart/tomcat operator worked !

Hi @marekcbj,
It sounds like you've got this figured out, but I wanted to point out that we updated the tomcat-operator example and README, and things may work a little bit differently now.
See #58 for details.
I'm going to close this for now, but if you're still having problems, feel free to reach back out.


Make a release and some installation instructions

Seems like we need a v0.1.1 binary built, with some matching lines in the README.md afterwards.
$ curl -L https://github.com/machine-drivers/docker-machine-driver-qemu/releases/download/v0.1.0/default.docker-machine-driver-qemu-$(uname -s)-$(uname -m) > docker-machine-driver-qemu
$ sudo cp docker-machine-driver-qemu /usr/local/bin/docker-machine-driver-qemu
$ sudo chmod 755 /usr/local/bin/docker-machine-driver-qemu

Not sure where that "default" came from last time, but we should probably try to get rid of it if we can ?
Will also fix #2

We will not make releases for the moment. Not until CI and tests exists and
people other than us take this responsibility. We only consume this as a
library for now...
On Sun, Sep 9, 2018, 16:32 Anders Björklund<EMAIL_ADDRESS>wrote:

Seems like we need a v0.1.1 binary built, with some matching lines in the
README.md afterwards.
$ curl -L https://github.com/machine-drivers/docker-machine-driver-qemu/releases/download/v0.1.0/default.docker-machine-driver-qemu-$(uname -s)-$(uname -m) > docker-machine-driver-qemu
$ sudo cp docker-machine-driver-qemu /usr/local/bin/docker-machine-driver-qemu
$ sudo chmod 755 /usr/local/bin/docker-machine-driver-qemu
Not sure where that "default" came from last time, but we should probably
try to get rid of it if we can ?
Will also fix #2
https://github.com/machine-drivers/docker-machine-driver-qemu/issues/2
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/machine-drivers/docker-machine-driver-qemu/issues/8,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAAHZvXQxkpU1gN605_4zH4-tzPZ_LsLks5uZNIggaJpZM4WgMmw
.

@gbraad: sure you mean qemu too, and not only kvm (libvirt) ? Maybe same applies to all drivers...
Anyway, I still have to look up what build system @SvenDowideit used for making the v0.1.0.
https://github.com/machine-drivers/docker-machine-driver-qemu/releases/tag/v0.1.0
I just built the binaries on the host, which worked fine since there is are libvirt dependencies here.

This was the previous build I made: docker-machine-driver-qemu-bab75de.linux-amd64.tar.gz
However it is missing the bugfix  1d6b42f for the newer qemu-img, for instance on Ubuntu 18.04


poetry: command not found fix

Attempting a fix for poetry: command not found. https://github.com/snok/install-poetry/issues/89
My logs were:
$GITHUB_ACTION_PATH/main.sh
  shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0}
  env:
    pythonLocation: /opt/hostedtoolcache/Python/3.6.15/x64
    LD_LIBRARY_PATH: /opt/hostedtoolcache/Python/3.6.15/x64/lib
    VERSION: 1.2.0
    VIRTUALENVS_CREATE: true
    VIRTUALENVS_IN_PROJECT: true
    VIRTUALENVS_PATH: {cache-dir}/virtualenvs
    INSTALLER_PARALLEL: true
    INSTALLATION_ARGUMENTS:

Setting Poetry installation path as /home/runner/.local/

Installing Poetry 👷

Retrieving Poetry metadata

# Welcome to Poetry!

This will download and install the latest version of Poetry,
a dependency and package manager for Python.

It will add the `poetry` command to Poetry's bin directory, located at:

/home/runner/.local/bin

You can uninstall at any time by executing this script with the --uninstall option,
and these changes will be reverted.

Installing Poetry (1.2.0)
Installing Poetry (1.2.0): Creating environment
Installing Poetry (1.2.0): Installing Poetry
Installing Poetry (1.2.0): Creating script
Installing Poetry (1.2.0): Done

Poetry (1.2.0) is installed now. Great!

You can test that everything is set up by executing:

`poetry --version`

/home/runner/work/_actions/snok/install-poetry/v1.3.1/main.sh: line 33: poetry: command not found
/home/runner/work/_actions/snok/install-poetry/v1.3.1/main.sh: line 34: poetry: command not found
/home/runner/work/_actions/snok/install-poetry/v1.3.1/main.sh: line 35: poetry: command not found
/home/runner/work/_actions/snok/install-poetry/v1.3.1/main.sh: line 37: poetry: command not found

Installation completed. Configuring settings 🛠

Done ✅

If you are creating a venv in your project, you can activate it by running 'source .venv/bin/activate'. If you're running this in an OS matrix, you can use 'source $VENV' instead, as an OS agnostic option

In this workflow run v1.2.0 seems to install fine: https://github.com/snok/flake8-type-checking/runs/8122396279?check_suite_focus=true
So I understand, what's the difference between this run and yours?

Same in https://github.com/snok/flake8-type-checking/actions/runs/2966891911

my original project (which was failing)
note: I ran this for Python 3.7, 3.9, and 3.10
    pythonLocation: /opt/hostedtoolcache/Python/3.9.13/x64
    LD_LIBRARY_PATH: /opt/hostedtoolcache/Python/3.9.13/x64/lib
    VERSION: 1.2.0
    VIRTUALENVS_CREATE: true   <--- this seems to be the main difference that would make sense
    VIRTUALENVS_IN_PROJECT: true  <--- this seems to be the main difference that would make sense
    VIRTUALENVS_PATH: {cache-dir}/virtualenvs
    INSTALLER_PARALLEL: true
    INSTALLATION_ARGUMENTS:

snok/flake8-type-checking
    pythonLocation: /opt/hostedtoolcache/Python/3.8.12/x64
    PKG_CONFIG_PATH: /opt/hostedtoolcache/Python/3.8.12/x64/lib/pkgconfig
    Python_ROOT_DIR: /opt/hostedtoolcache/Python/3.8.12/x64
    Python2_ROOT_DIR: /opt/hostedtoolcache/Python/3.8.12/x64
    Python3_ROOT_DIR: /opt/hostedtoolcache/Python/3.8.12/x64
    LD_LIBRARY_PATH: /opt/hostedtoolcache/Python/3.8.12/x64/lib
    VERSION: latest
    VIRTUALENVS_CREATE: false
    VIRTUALENVS_IN_PROJECT: false
    VIRTUALENVS_PATH: {cache-dir}/virtualenvs
    INSTALLER_PARALLEL: true
    INSTALLATION_ARGUMENTS:

snok/asgi-correlation-id
    pythonLocation: /opt/hostedtoolcache/Python/3.8.13/x64
    PKG_CONFIG_PATH: /opt/hostedtoolcache/Python/3.8.13/x64/lib/pkgconfig
    Python_ROOT_DIR: /opt/hostedtoolcache/Python/3.8.13/x64
    Python2_ROOT_DIR: /opt/hostedtoolcache/Python/3.8.13/x64
    Python3_ROOT_DIR: /opt/hostedtoolcache/Python/3.8.13/x64
    LD_LIBRARY_PATH: /opt/hostedtoolcache/Python/3.8.13/x64/lib
    VERSION: latest
    VIRTUALENVS_CREATE: false
    VIRTUALENVS_IN_PROJECT: false
    VIRTUALENVS_PATH: {cache-dir}/virtualenvs
    INSTALLER_PARALLEL: true
    INSTALLATION_ARGUMENTS:

@sondrelg I totally understand - and also even though my fix works, I didn't grok it enough to say EXACTLY why specifying the path to poetry worked as it did. It's even possible that some other combination of fiddling fixed it.
I do have a public repo that you can observe the issues I was having today -
Here's a failing run (one of a few): https://github.com/astronomer/telescope/runs/8116128321?check_suite_focus=true
Here's a succeeding run: https://github.com/astronomer/telescope/runs/8120225658?check_suite_focus=true
At some point in my fiddling - I also upgraded to Poetry 1.2.0, and dropped the Python 3.6 runner (no longer supported in Poetry 1.2.0). Prior to that I had been using latest in CICD, but the poetry lock file was from Poetry 1.1.14

We know that there are breaking changes between v1.1 and v1.2 wrt. lockfile parsing. Is it possible that rebuilding the lockfile with a local version of v1.2.0 fixed your issue? Have you seen any issues since?

Is it possible that rebuilding the lockfile with a local version of v1.2.0
Certainly possible
Also removing Python 3.6
It is at the very least odd that it sometimes installed and sometimes didn't, and sometimes had an issue with Python 3.6 and sometimes didn't

I just ran into this same issue with Python 3.10, so it doesn't seem exclusive to 3.6 after all. Will report back after testing a little.

Good insights - thank you @miigotu


Extract: overflow chip erroneously centered

Description
Before

After

Risk
N/A
Deploy Plan
N/A

PMRR


Spring MVC Interceptors didn't works in the snapshot version

All modules which used Spring MVC InterceptorRegistry did not works.
I tried the newest OAuth modules. When I access to http://localhost:8080/oauth2.0/authorize..., there is a 404 Error responsed.

This ticket lacks any substantial detailed information to be useful for developers in order to help figure out what the problem is. Please try to described in greater detail what you are trying to achieve, how you do it and what exact problems you are facing with any detailed log data from CAS server.

I just create a new maven project. Copy all the codes from oauth-server-webapp module into the new project. Add required dependencies include oauth-server-support-oauth. Then run mvn clean spring-boot:run.
After the server finished startup. I can access http://localhost:8080/login to login. But http://localhost:8080/oauth2.0/authorize?client_id=xxx&redirect_uri=xxx&response_type=code get a 404 Error.

You are affected by https://github.com/Jasig/cas/pull/1731


Incorrect values for "shot out of the world/off a high place" distance

....

This still seems to be an issue.

Fixed in<PHONE_NUMBER>299e9f011f321e1d99ef7e45d84e78


update templates/templates/debian.seed.j2

remove/disable tasksel standard
add net-tools package
add full-upgrade

I don't need to merge this code, I can work with a local copy to speed up my tests. That's fine. Case closed.


Create README.md

Kindly check the ReadMe file which I have created, review it and accept it. If any changes are required please convey.

Yes, verified.


Document how to get sensor info for new locations

Documentation to get key Purple Air API params to expand analysis to different locations.

This looks great, Rahul. Thanks for putting it together.


Missing CO2 sensor reading from Dyson Purifier Big+Quiet

Currently only the following climate/filter sensors are retrieved from the machine:

HCHO
Humidity
NO2 (Nitrogen Dioxide)
PM 10
PM 2.5
Temperature
TVOC
Carbon Filter (%)
HEPA Filter (%)

From the Dyson app, I can read the CO2 real-time readings as well, but not in HA.

Your's does CO2? I don't see that in mine. (Do you have the Big+Quiet or the Big+Quiet Formaldehyde (please double check, they look very similar))
I have the Formaldehyde and I don't see CO2 listed

@lifehome Interesting! I wasn't aware the Big+Quiet line has a CO₂ sensor, thanks for bringing it to my attention. A quick scan of resource files in the Android app seems to confirm it's expected to be there. As I don't have the device myself, I'll need a little bit of help to identify which field in the MQTT messages we want to pull. There seem to be two CO₂ related fields in the MQTT dump provided by another user, which is similar to the Formaldehyde messages. In order to help with this, would you be willing to share screenshots of your CO₂ values and graphs?
@thibaultmol your screenshots are interesting too. I wonder if there's a regional difference. We can scan your MQTT messages and see if your device is reporting CO₂ or not (instructions below). @Paul-McNeice, do you know of any reason why the Carbon Dioxide sensor readings wouldn't be visible in the app?
For scanning the MQTT messages: Run dyson-mqtt-listen to get mqtt messages from the device. You'll want to look for co2a and/or co2r in the messages.

You can download the executable binary for your platform of choice on the release page.
When running it, you'll need to use the flags for devices without wifi stickers.
Feel free to copy-paste the output here with your serial number redacted for privacy, if you want to.

@dotvezz sorry no clue - could be different versions of the hardware, firmware or app version?

Hi,
Apologies for the delay, it is indeed a Dyson Purifier Big+Quiet, without Formaldehyde.
You can see some pictures below.

Quick words ahead for MQTT on Dyson devices without Wi-Fi label:

git clone libdyson-neon
Get a proper shell with dependencies installed: poetry init; poetry add paho_mqtt cryptography requests zeroconf attrs; poetry shell
Login your Dyson account with Email OTP (TOTP delay around 1 mintue): python3 get_devices.py
Now get your MQTT stream: /path/to/dyson-mqtt-listen -address "<IP_ADDRESS>" -serial "XXX-YY-ZZZZZZZZ" -password "<the very looooooooooong base64-ish string obtained in step (3)>"

The MQTT topic should be in this format: <Device ID>/<Device Serial>/status/current
For example, mine is: 664/XXX-YY-ZZZZZZZZ/status/current

Getting you the MQTT dump here as well:
15:35:11|664/XXX-YY-ZZZZZZZZ/status/current: {"msg":"CURRENT-STATE","time":"2023-10-25T07:35:12.000Z","mode-reason":"NONE","state-reason":"MODE","rssi":"-43","channel":"11","fqhp":"0","fghp":"33376","product-state":{"fpwr":"ON","auto":"OFF","nmod":"OFF","rhtm":"ON","fnst":"FAN","ercd":"NONE","wacd":"NONE","nmdv":"0002","fnsp":"0010","bril":"0002","corf":"ON","cflr":"0084","hflr":"0094","cflt":"CARF","hflt":"GHEP","sflr":"INV","sflt":"SCOH","sltm":"OFF","fdir":"OFF","oton":"OFF","otcs":"OFF","anct":"CUST","otal":"0050","otau":"0050"},"scheduler":{"srsc":"0000000000000000","dstv":"0001","tzid":"0001"}}
15:35:11|664/XXX-YY-ZZZZZZZZ/status/current: {"msg":"ENVIRONMENTAL-CURRENT-SENSOR-DATA","time":"2023-10-25T07:35:12.000Z","data":{"tact":"2997","hact":"0046","pm25":"0001","pm10":"0000","va10":"0005","noxl":"0002","p25r":"0002","p10r":"0002","hcho":"0002","hchr":"0006","co2a":"0090","co2r":"2282","sltm":"OFF"}}
15:35:18|664/XXX-YY-ZZZZZZZZ/status/current: {"msg":"ENVIRONMENTAL-CURRENT-SENSOR-DATA","time":"2023-10-25T07:35:18.000Z","data":{"tact":"2997","hact":"0046","pm25":"0001","pm10":"0000","va10":"0005","noxl":"0002","p25r":"0002","p10r":"0002","hcho":"0002","hchr":"0006","co2a":"0090","co2r":"2282","sltm":"OFF"}}

Pretty JSON on Environmental readings:
{
    "msg": "ENVIRONMENTAL-CURRENT-SENSOR-DATA",
    "time": "2023-10-25T07:35:42.000Z",
    "data":
    {
        "tact": "2997",
        "hact": "0046",
        "pm25": "0001",
        "pm10": "0000",
        "va10": "0005",
        "noxl": "0002",
        "p25r": "0002",
        "p10r": "0002",
        "hcho": "0002",
        "hchr": "0006",
        "co2a": "0090",
        "co2r": "2282",
        "sltm": "OFF"
    }
}

@lifehome thanks! That's super helpful, but also kinda frustrating because it seems like there's some conversion factor at play here. These are the two values I mentioned before:
        "co2a": "0090",
        "co2r": "2282",

You'll notice they're both very far from your screenshot's displayed value of 408(ppm). By any chance, do you happen to know if the screenshot was taken at the same time that message was received?

@dotvezz Hey there, sorry the screenshot and readings are NOT captured at the same/near moment, so it is normal if two readings does not align.

No worries, I got you lol
Sending you here the latest screenshot and JSON captured within a 5-minute window period.
10:27:37|664/XXX-YY-ZZZZZZZZ/status/current: {"msg":"CURRENT-STATE","time":"2023-10-26T02:27:37.000Z","mode-reason":"NONE","state-reason":"MODE","rssi":"-48","channel":"11","fqhp":"0","fghp":"33376","product-state":{"fpwr":"ON","auto":"OFF","nmod":"OFF","rhtm":"ON","fnst":"FAN","ercd":"NONE","wacd":"NONE","nmdv":"0002","fnsp":"0010","bril":"0002","corf":"ON","cflr":"0084","hflr":"0094","cflt":"CARF","hflt":"GHEP","sflr":"INV","sflt":"SCOH","sltm":"OFF","fdir":"OFF","oton":"OFF","otcs":"OFF","anct":"CUST","otal":"0050","otau":"0050"},"scheduler":{"srsc":"0000000000000000","dstv":"0001","tzid":"0001"}}
10:27:37|664/XXX-YY-ZZZZZZZZ/status/current: {"msg":"ENVIRONMENTAL-CURRENT-SENSOR-DATA","time":"2023-10-26T02:27:37.000Z","data":{"tact":"2983","hact":"0048","pm25":"0001","pm10":"0000","va10":"0005","noxl":"0002","p25r":"0001","p10r":"0001","hcho":"0004","hchr":"0011","co2a":"0077","co2r":"1370","sltm":"OFF"}}

{
    "msg": "ENVIRONMENTAL-CURRENT-SENSOR-DATA",
    "time": "2023-10-26T02:27:37.000Z",
    "data":
    {
        "tact": "2983",
        "hact": "0048",
        "pm25": "0001",
        "pm10": "0000",
        "va10": "0005",
        "noxl": "0002",
        "p25r": "0001",
        "p10r": "0001",
        "hcho": "0004",
        "hchr": "0011",
        "co2a": "0077",
        "co2r": "1370",
        "sltm": "OFF"
    }
}

Okay nice, it lines up perfectly, that makes it much easier!
I'll get an update soon that adds this sensor.

@lifehome v1.3.0 adds a Carbon Dioxide sensor entity. Let me know if it works!
@thibaultmol I'm especially interested in learning if it works for you as well. I've set up to create a Carbon Dioxide entity only if the MQTT messages have the co2r field. So if it gives you a value, let me know!

i’ve Big+Quiet 644 model.
do not have co2 sensor.

can not read no2, pm2.5, pm10

@psk7007 wow, that's extra strange. What version of ha-dyson are you running, and do you have any logs?

Just wanted to chime in , my Big and Quiet is also not showing all of the sensors.  I cant be sure but i think this was after the last Dyson update via HACS
Please see me know if i can help in any way.. i know you are a busy man!

@kilrgt and @psk7007 thanks both of you for reporting the issue - it was an error on my part when adding the Carbon Dioxide sensor.
I've released v1.3.2 which should resolve your missing sensors and also add Carbon Dioxide (if the sensor is available on your device).

thank, 1.3.2 working well

Thanks for the quick fix, You are always on top of things. All working now..

( @lifehome : I had to use poetry run python3 get_devices.py instead of regular python3)
Sorry for the delay, I want to help verify that the big + quiet formaldehyde indeed doesn't have a co2 sensor.
If I run the dyson-mqtt-listen executable with the right parameters as you mentioned, It runs and I get this: but I don't see actual messages (the machine is on and working, working in HA as well. I've also tried changing settings on the device to trigger a message but nothing happens. (i've waited for an hour now)
11:56:36: Connected to device...
11:56:36: Subscribed to /T7A-EU-SFA0086A/status/current
11:56:36: Subscribed to /T7A-EU-SFA0086A/command
11:56:36: Press Ctrl+C to exit.

@thibaultmol I think you may have omitted the -device flag when running the tool. Honestly I should have it throw an error message when that happens, sorry!
That explains why you didn't see any MQTT messages, but it doesn't explain why your device apparently doesn't have CO2. Maybe a second try with that -device "644" flag will let you see the messages.

tbf, it's not advertised for the formaldahyde model to have co2. it's just a different model for a different market (where Dyson can't be bothered to put a 5 euro co2 sensor on their 1000$ fan for some reason)
Am now running the command with the -device flag but still nothing.
dyson-mqtt-listen -address "<IP_ADDRESS>" -serial "T7A-EU-[REDACTED]" -password "[REDACTED]" -device "644"
11:16:50: Connected to device...
11:16:50: Subscribed to 644/T7A-EU-SFA0086A/status/current
11:16:50: Subscribed to 644/T7A-EU-SFA0086A/command
11:16:50: Press Ctrl+C to exit.

@lifehome I think your issue should be resolved. It's been a few weeks since you last posted, so I'll assume it's all set. But please feel free to reopen this issue if you're still missing the CO2 sensor.

The CO2 sensor seems to be available only on the BP04 model. This model is not available in all markets. Currently USA only?
The BP03 model seems to be the standard generally available model. (Dyson Purifier Big + Quiet Formaldehyde BP03)
Here it describes both models: https://www.dyson.com/air-treatment


WebSQL error when creating table with name "Group".

Copied from https://github.com/google/lovefield/issues/111 and reported by codeBelt:
I get a [object SQLError] error if I create a table with the name 'Group'. Renaming it fixes the issues.
Check it out:
Website: http://codebelt.github.io/lovefield/
Repo: https://github.com/codeBelt/lovefield
schemaBuilder.createTable('Group').
                    addColumn('id',                         lf.Type.INTEGER).
                    addColumn('qty',                        lf.Type.INTEGER).
                    addColumn('fk_productId',               lf.Type.INTEGER).
                    addPrimaryKey(['id'], true);

On Chrome this results to the following error,
Uncaught #<SQLError>

Managed to extract some more information from this error,
SQLError {}code: 5message: "could not prepare statement (1 near "Group": syntax error)"__proto__: SQLError
It seems that the problem lies at https://github.com/google/lovefield/blob/master/lib/backstore/web_sql.js#L273. I am guessing that "Group" is a reserved name in WebSQL which causes the syntax error.

This should be fixed by https://github.com/google/lovefield/commit/e1bc4a70f80140015757cc7b5afa045334809217. Please re-open if that is not the case.


fromListWith is confusing

This is rather surprising:
> fromListWith (++) [(False,"x"),(False,"y")]
fromList [(False,"yx")]

"Intuitively", the value in the result should be "xy".
Note that the versions of fromListWith[Key] in Data.Map and Data.IntMap from containers have the same issue.

@treeowl suggested less ambiguous types in https://github.com/haskell-unordered-containers/unordered-containers/pull/246#issuecomment-637828151:
flwk
  :: (Hashable k, Eq k)
  => (k -> Maybe b -> a -> Box b) -> [(k,a)] -> HashMap k b

(where data Box a = Box a)
flwkm
  :: (Hashable k, Eq k)
  => (k -> Maybe b -> a -> Maybe b) -> [(k,a)] -> HashMap k b

FWIW, there's another issue about fromListWith, but that one seems to be primarily concerned with  performance: https://github.com/haskell-unordered-containers/unordered-containers/issues/162


Fixes Round 1

The -t option will run before it checks if the are any pptx files

Check that pptx files have been provided with -t is not used


Error when rewinding special accounts.

Add a check to the AccountAtRound function to avoid rewinding special accounts.

@brianolson
This introduces a bug with the dev mode accounts bulk-rewind endpoint. These special accounts may be included in the /v2/accounts search endpoint, which makes it very easy to accidentally rewind a special account.
I'm thinking it would be good to filter special accounts from /v2/accounts somewhere.

Not listing the Fee and Rewards accounts in a /v2/accounts listing could make sense. Might be best to have them filtered out by default with a ?include-special=1 option. Or maybe only filter them out of the list when ?round=N is set?


Resize timeouts for 64 VMs at H-series

Waiting time for >32 VMs at H-series is very slow. Can we speed-up things?

Hi @JonShelley, are there any news concerning this issue?
Thank you in advance.

any updates on this?

None at this time. I asked our capacity planner and he indicated that we
had plenty of resources. Are you still seeing this problem? If so, which
region are you seeing this issue in?  Also, I’ll bring this up on Thursday
when I talk to the batch team.
Jon
On Mon, Feb 24, 2020 at 11:14 PM Fabio Luporini<EMAIL_ADDRESS>wrote:

any updates on this?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/devitocodes/devito/issues/1104?email_source=notifications&email_token=ABGELIF557FEIED4JDXI3U3RETAOHA5CNFSM4KNGCOKKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEM22SJI#issuecomment-590719269,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABGELIBZOK5YRQS6CG35RVLRETAOHANCNFSM4KNGCOKA
.

Hi Jon,
thanks for taking care on that.
The last 2 weeks we did not really scale up to 64 VMs, as our efforts were focused on compilation and runtime requirements for a POC that could use less VMs (4 or 8). As soon as we ensure that our requirements are satisfied and our POC is robust we will update again for scaling up to a larger number of VMs.


Error [E01001] while building on devnet

Steps to Reproduce Issue

Update Sui binaries to the latest version.
Delete previous deps in ~/.move
Create a new package sui move new test
Use sui-framework on devnet
Build the package sui move build

Expected Result
Should build successfully.
Actual Result
error[Sui E01001]: invalid object construction
    ┌─ /home/user/.move/https___github_com_MystenLabs_sui_git_framework__devnet/crates/sui-framework/packages/sui-framework/sources/deny_list.move:138:32
    │
138 │           let deny_list_object = DenyList {
    │ ╭────────────────────────────────^
139 │ │             id: object::sui_deny_list_object_id(),
    │ │             --  --------------------------------- Non fresh UID from this position
    │ │             │
    │ │             The UID must come directly from sui::object::new. Or for tests, it can come from sui::test_scenario::new_object
140 │ │             lists,
141 │ │         };
    │ ╰─────────^ Invalid object creation without a newly created UID.

Failed to build Move modules: Compilation error.

System Information

OS: Fedora 39
Compiler: sui 1.16.1-13a30578e

Update: using the same network within the Sui binaries and the Move.toml should work.


types: allow using ref with unknown generic types

Allow handling the case where the type of the generic is unknown:
function useState<State = string>(initial: State) {
  const state = ref(initial)
  const set = (v: State) => void (state.value = v) // before: error `Type 'State' is not assignable to type 'UnwrapRef<State>'`
  return {}
}

There's a few caveats:

When using Ref<TGeneric> and TGeneric doesn't extend, the ref.value will be any, this behaviour might be fine, but strict checking might cause some problems(tsd) example
When using Ref<TGeneric> and TGeneric extends something, the ref.value will be extends type, example

Hmm, I realized this is tougher than I thought. Making ref.value type to be the base type of generics wouldn't solve the issue completely as it mismatches if we want to assign it to another generics typed value.
function useState<State extends string>(initial: State) {
  const state = ref(initial) // state.value -> string
  const set = (v: State) => void (state.value = v) // pass
  const another: State = state.value // error
  return {}
}

Ideally state.value should also be State to allow both usage of input and output of the value. But I'm still not sure how we can infer the original generics type to ref value. 🤔
Rethinking about another option, We might want to just leave this type since assigning generics type into potentially unwrapped type is dangerous. If the users are very sure the generics type and unwrapped type are identical, they can just cast it.
function useState<State extends string>(initial: State) {
  const state = ref(initial)
  const set = (v: State) => {
    state.value = v as UnwrapRef<State>
  }
  return {}
}

What do you think?

I would like to avoid exposing UnwrapRef<> to the user.
If you cast the value to State it works
function useState<State extends string>(initial: State) {
  const state = ref(initial) // state.value -> string
  const set = (v: State) => void (state.value = v) // pass
  const another = state.value as State // pass
  return {}
}

Ideally state.value should also be State to allow both usage of input and output of the value. But I'm still not sure how we can infer the original generics type to ref value. 🤔

For me ideally UnwrapRef<T> would be basically the same as T, but that is not possible. We might be able to do it, using different types for set and get (which is not supported currently on typescript, nor is planed AFAIK)

If the users are very sure the generics type and unwrapped type are identical

Thought about that and the cleanest way to do it would be other overload
export function ref<T, noRef extends  true>(value: T): Ref<T>

//

function useState<State extends string>(initial: State) {
  const state = ref<State, true>(initial) // state.value -> State extends string
  const set = (v: State) => void (state.value = v) // pass
  const another: State = state.value // pass
  return {}
}

This way we can ignore the unwrap ref
What are your thoughts?

I think having noRef type parameter is as same as cast. I would say we don't have to introduce dedicated api for that. We can just do below if we don't want to encourage users to use UnwrapRef:
function useState<State extends string>(initial: State) {
  const state = ref(initial) as Ref<State> // state.value -> State extends string
  const set = (v: State) => void (state.value = v) // pass
  const another: State = state.value // pass
  return {}
}

We need to add that to the docs I can see some people having problems

so how did it end? I'm having this problem...


 U: .

Console output
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5640/1/console

versions
git=2.34.1 maven=3.8.6

Powered by
Apache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

:confetti_ball: +1 overall

Vote
Subsystem
Runtime
Comment

+0 :ok:
reexec
0m 25s
Docker mode activated.

_ Prechecks _

+1 :green_heart:
dupname
0m  0s
No case conflicting files found.

+0 :ok:
shelldocs
0m  0s
Shelldocs was not available.

+1 :green_heart:
@author
0m  0s
The patch does not contain any @author tags.

_ master Compile Tests _

+1 :green_heart:
spotless
0m 45s
branch has no errors when running spotless:check.

_ Patch Compile Tests _

+1 :green_heart:
shellcheck
0m  0s
There were no new shellcheck issues.

+1 :green_heart:
whitespace
0m  0s
The patch has no whitespace issues.

+1 :green_heart:
spotless
0m 36s
patch has no errors when running spotless:check.

_ Other Tests _

+1 :green_heart:
asflicense
0m 11s
The patch does not generate ASF License warnings.

3m 10s

Subsystem
Report/Notes

Docker
ClientAPI=1.43 ServerAPI=1.43 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5640/1/artifact/yetus-general-check/output/Dockerfile

GITHUB PR
https://github.com/apache/hbase/pull/5640

Optional Tests
dupname asflicense spotless shellcheck shelldocs

uname
Linux 9ea665de75f9 5.4.0-1103-aws #111~18.04.1-Ubuntu SMP Tue May 23 20:04:10 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/hbase-personality.sh

git revision
master / fdde227300

Max. process+thread count
46 (vs. ulimit of 30000)

modules
C: . U: .

Console output
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5640/1/console

versions
git=2.34.1 maven=3.8.6 shellcheck=0.8.0

Powered by
Apache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.


sleek: Add version 1.2.1

Closes #8766

Uses Setup.exe rather than zip due to larger download and lack of automatic hash extraction

Preferences stored in user-preferences.json

[x] I have read the Contributing Guide.

They provide portable ZIP version, is there any specific reason to use the installer?

The app supports command-line args.
wiki/Hidden preferences, custom variables and command line parameters

They provide portable ZIP version, is there any specific reason to use the installer?

The zip is a larger download and there is no automatic hash extraction available in latest.yml for the zip. I thought it might be better for saving bandwidth, what do you think?

The app supports command-line args. wiki/Hidden preferences, custom variables and command line parameters

Oops looks like we did it at the same time! I'll copy the bin section from your manifest

The zip is a larger download and there is no automatic hash extraction available in latest.yml for the zip. I thought it might be better for saving bandwidth, what do you think?

I am fine with that.


Update Hungarian translation

Best Regards

@blackPantherOS can you kindly help to rebase your patch?
it seems to have conflict to latest release.

@blackPantherOS
sorry, "Empty windows workaround" is not translation related patch.
so maybe you can create another pull request for that?

@blackPantherOS please provide a new pr only for the translation.


Reconstruct lgb using lightgbm.LGBMRegressor

Description
I'm building a main classifier model (lightgbm), together with an adversary model. I tried to use lightgbm.LGBMRegressor to build tree by tree, so that I can update my main classifier model with gradient from adversary each round.
Is lightgbm.LGBMRegressor comparable to sklearn.tree.DecisionTreeRegressor in the sense that I can reconstruct the whole boosting process manually?
Reproducible example
tree = lgb.LGBMRegressor()
tree.set_params(**self.params)
self.trees.append(tree)
Environment info
Jupyter notebook
Additional Comments
I got worse model performance on a hold out set, compared with building lgb.train directly (even if I mute adversary model). Is there anything I did wrong using LGBMRegressor to reconstruct lgb? Thanks!

Hi @jmoralez, I get same values from tree.predict(X, raw_score=False), no matter I set 'raw_score' to either True or False. The output is always raw scores. May I know why is that? I look forward to your reply.

Hi @jameslamb, could you please help me with this quesiton? I appreciate your time :)

here is an example code for testing:

import lightgbm as lgb
from sklearn.datasets import make_regression
from scipy.special import expit
X, y = make_regression()
ds = lgb.Dataset(X, y)
params = {'num_leaves': 8}
bst = lgb.Booster(params, ds)
bst.update(fobj=None)
preds_prob = bst.predict(X, raw_score=False)
preds_raw = bst.predict(X, raw_score=True)

The raw score argument is used when a transformation is normally applied to the raw predictions before returning the model scores, e.g. sigmoid or softmax in classification. For regression, however, the model raw score is directly used as the prediction, so if you're doing regression it's expected for these to be the same.

Hi @jmoralez, sorry I forgot to include the definition of gradient, here it is: gradient = y - 1/(1+np.exp(-logit))

I'm putting together the whole block of code for you to review, I hope it's easier for you to read:
params ={…, 'objective': 'regression',  'n_estimators':1}
logit = np.log(np.sum(y)/np.sum(1-y))
for i in range(max_iter):
gradient = y - 1/(1+np.exp(-logit))
ds = lightgbm.Dataset(X, gradient)
tree = lightgbm.Booster(self.params, ds)
tree.update(fobj=None)
update = tree.predict(X)  # predictions (at log odds scale) after a single iteration
logit += np.multiply(self.learning_rate, update)
y_fin = 1/(1+np.exp(-logit)) # sigmoid of logit. Probabiltity of an event. Not involved in tree updating.

Hi @jmoralez, I put together the whole block of code for you to review, I hope it's easier for you to read:
params ={…, 'objective': 'regression', 'n_estimators':1}
logit = np.log(np.sum(y)/np.sum(1-y))
for i in range(max_iter):
gradient = y - 1/(1+np.exp(-logit))
ds = lightgbm.Dataset(X, gradient)
tree = lightgbm.Booster(self.params, ds)
tree.update(fobj=None)
update = tree.predict(X) # predictions (at log odds scale) after a single iteration
logit += np.multiply(self.learning_rate, update)
y_fin = 1/(1+np.exp(-logit)) # sigmoid of logit. Probabiltity of an event. Not involved in tree updating.

Hi @jmoralez, I put together the whole block of code for you to review, I hope it's easier for you to read:
params ={…, 'objective': 'regression', 'n_estimators':1}
logit = np.log(np.sum(y)/np.sum(1-y))
for i in range(max_iter):
gradient = y - 1/(1+np.exp(-logit))
ds = lightgbm.Dataset(X, gradient)
tree = lightgbm.Booster(self.params, ds)
tree.update(fobj=None)
update = tree.predict(X) # predictions (at log odds scale) after a single iteration
logit += np.multiply(self.learning_rate, update)
y_fin = 1/(1+np.exp(-logit)) # sigmoid of logit. Probabiltity of an event. Not involved in tree updating.

Hi. Seems like you may be better off using fobj instead (see the note at the bottom here for reference), since that allows you to manually compute the gradients and hessians used in the boosting process.

Hi @jmoralez, thanks a lot for your valuable suggestions, I really appreciate it! I will give them a try 👍

Hi @jmoralez,
Thank you so much for your helpful suggestions on manually building LGBM tree by tree! Your advice truly made a big difference in improving our methodology and achieving better results. However, we've run into a bit of a snag and we were hoping you might be able to help us out.
To clarify, we attempted to reproduce the model using two different approaches: first by calling lgb.train, and secondly by using lgb.Booster/update to build the LGBM tree by tree.
Our standing is that the model built by calling lgb.train should be the same as the model built by calling lgb.Booster/update as long as we use the same parameters. Unfortunately we weren't successful.
Would you mind taking a quick look at our code? If you have any suggestions or if you see anything that doesn't look quite right, we would really appreciate your feedback. Thank you again for all of your help so far!
(1) Method A: build LGBM  tree by tree with  lgb.Booster/update
max_iter = 252
model_A = []

logit = np.full(np.shape(y), 0)
for i in range(max_iter):
gradient = y - 1/(1+np.exp(-logit))
ds = lgb.Dataset(X, gradient)
tree = lgb.Booster(params, ds)
tree.update(fobj=None)
update = tree.predict(X)
logit += np.multiply(self.learning_rate, update)
model_A.append(tree)

(2) Method B: build LGBM  with lgb.train
model_B = lgb.train(params,
train_data,
valid_sets=valid_data,
num_boost_round=252,
keep_training_booster = True
)

Hi. Would you mind us taking a step back to be clear on the objective? I don't fully understand what you're trying to achieve. If you want to reproduce the behavior of lightgbm.train you need to keep the dataset fixed, e.g.
import lightgbm as lgb
from sklearn.datasets import make_regression

X, y = make_regression(n_samples=1_000, n_features=2, n_informative=2, random_state=0)
params = {'num_leaves': 5, 'verbosity': -1}
num_rounds = 5
ds = lgb.Dataset(X, y)
# regular train
bst_train = lgb.train(params, ds, num_boost_round=num_rounds)
preds_train = bst_train.predict(X)
# manual train
bst_manual = lgb.Booster(params, ds)
for _ in range(num_rounds):
    bst_manual.update(fobj=None)
preds_manual = bst_manual.predict(X)
# compare equal predictions
np.testing.assert_allclose(preds_train, preds_manual)

If you want to optimize a different objective you can use fobj either in Booster.update (with the manual training) or passing it through lightgbm.train.
By redefining the dataset you're essentially boosting only for one iteration and the initial score is different each time (each time is the mean of the current target) and it has a higher weight than the single boosting iteration.
I think you may want to use fobj to set the gradients and use a constant hessian as with the L2 objective, but I can't really tell.

Hello Jose,
thank you for your response, it helped us a lot in our problem solving.
We have a couple more questions.

If we want to build a lightgbm Booster from scratch (without custom loss function), do we have to specify the first leaf's formula or does .update() initialize it for us?
When we specify customized loss function and use .predict(), it only outputs raw_score. Is this true? Does .update() also always output raw_score when using custom loss func?

Hi.

The boosting starts from the init_score, which is set by the objective. If you use a custom objective it's set to 0 but you can override it by passing the argument to the Dataset.
I think this is related to 1., when you use a custom objective the init_score is 0 and the prediction is always the raw score, so if you use a different init_score you have to add it back to your predictions.

Hope this helps.


Update fastlane download link in README

Let's wait a few hours before merging this so the DNS changes are available world-wide

https://www.whatsmydns.net/#A/download.fastlane.tools

In case someone wants to check


grt: Call updateDbCongestion before exiting global routing

The global routing congestion heat map stopped working recently
because we no longer call updateDbCongestion().

I wasn't sure if the heat map is meant to be updated during global routing, but this at least gets things going so I can debug issues with a design

Please fix the missing DCO - see the details link

A test case here. The design is failing global routing (I wanted the heat map to work out what I need to work on), perhaps that has something to do with it:
[ERROR GRT-0118] Routing congestion too high.
[WARNING GUI-0066] Heat map "Routing Congestion" has not been populated with data.

After PR https://github.com/The-OpenROAD-Project/OpenROAD/pull/1500, the error doesn't happen anymore. @antonblanchard could you try the latest OpenROAD version?


Fixed resource deletion

Moved the logic adding the finalizer so it is only added if the resource was successfully created.

Thanks again for your contributions @matthieugusmini ! 🦭 🚀


Need update to subdependencies bootstrap and jquery

Hi visjs team,
I have gotten to this page from being referred to by Alexander Wunschik who I found through your github page. I am filing an issue to update some of vis-network’s subdependencies.  The ones in particular are bootstrap and jquery.  Our risk team here at paypal has deemed these versions of the libraries you guys are utilizing to be potentially vulnerable and are not allowing them to pass the ECI check scripts.  Please advise on how I can raise the version of bootstrap to 3.4.1 or higher and having at least the latest version of jquery 1.x.x or 2.x.x.  Please and thank you for your time.  Please see the attached screenshot for reference.  Thanks again!
browser: chrome(not a frontend issue to not relevant in my opinion)
This screenshot reveals visjs(4.21.0) but when I tried it with vis-network(5.0.0) it was utilizing the same versions of these libraries.

Best Regards,
Joseph Kwon

I looked into it. Bootstrap and jQuery are no dependencies, but are used in the docs.
We should replace them with CDN links.

sorry, if possible may you clarify what exactly I would need to do on my end to achieve this? please and thank you

@kwonjoseph I'll provide a fix shortly.

@kwonjoseph Until this is "fixed" You can maybe just manually delete the folder:

"node_modules/vis-network/docs/"
"node_modules/hammerjs/tests/unit/"

The problem is that we have static assets (e.g. jquery.min.js) that are used by the docs.
I see two ways to approach this:

update boostrap, jquery and other possible assets to up-to-date versions.
remove static assets in favor of cdn links.

I prefer removing these static assets from vis-network (option 2). But this has the problem that the docs can not be viewed anymore if the CDN has problems or the user has no access to the CDN (China?).
What do you guys think? 1 or 2 ?

There is another problem: hammer.js has removed jquery as a test dependency but has not released a new version (since 2016). If we want to fix this problem too we would need to fork hammer.js and provide our own custom build (e.g. vis-hammer) or depend on an unreleased version via a direct github-dependency.

so the ECI does its own npm install before running these tests I don't think the temporary solution you have suggested would resolve my issue.  Thank you for working on this issue!

@kwonjoseph Have you talked to the ECI people. All this dependencies are in docs or tests. These libraries do not get bundled or delivered in any way. This is clearly a problem with there tools!
We easily could fix the "problems" in vis-network but not in hammerjs.

propagating-hammerjs also should use<EMAIL_ADDRESS>https://github.com/josdejong/propagating-hammerjs/pull/11

@kwonjoseph your issues should be fixed. Keep you eyes up for the upcoming major release!

@kwonjoseph Thanks for opening this issue. We are happy that it could be resolved! Working on these issues takes a lot of time. Please consider supporting further maintenance and development!

no problem thank you for helping me with this issue.  I appreciated the support.


bug(angularfire2): add/update displays duplicate entries

See: https://github.com/angular/angularfire2/pull/140
Should be resolved in alpha.17

Resolved by #54


Update api.d.ts to properly define input

Explanation
Because api.d.ts incorrectly defines input as a data property instead of an accessor property (as it's defined in code), then TypeScript will throw compilation errors if you try to override the parser's input accessor.
If you attempt to augment the Chevrotain types (with declare module 'chevrotain' and altering the interface), TypeScript will still fail, because the name exists, it's just incorrectly defined. The only workaround is to add a @ts-ignore. (Even @ts-expect-error will cause problems, because extensions like Volar cannot correctly determine that tsc will error in this case.)

Thanks @matthew-dean 👍


fix(uplink): Show all items in debug uplink

About the PR

Made it so the debug uplink has access to all listings.
Why / Balance

Fixes #28499
Technical details

Media

[x] I have added screenshots/videos to this PR showcasing its changes ingame, or this PR does not require an ingame showcase

Breaking changes

Changelog

Probably a better way to do this?

Closed until I finish my PHD. Thesis


Documentation: Model Coupling

How to use the BMI framework to couple pyDeltaRCM with another model; can provide an example as well?

Transfering this issue to BMI_pyDeltaRCM, as it relates more to documentation needed there.


[netzkino] Only use video id to find metadata (fixes #9226)

Before submitting a pull request make sure you have:

[x] At least skimmed through adding new extractor tutorial and youtube-dl coding conventions sections
[x] Searched the bugtracker for similar pull requests
[x] Checked the code with flake8

In order to be accepted and merged into youtube-dl each piece of code must be in public domain or released under Unlicense. Check one of the following options:

[x] I am the original author of this code and I am willing to release it under Unlicense
[ ] I am not the original author of this code but it is in public domain or released under Unlicense (provide reliable evidence)

What is the purpose of your pull request?

[x] Bug fix
[ ] Improvement
[ ] New extractor
[ ] New feature

Description of your pull request and other information
This fixes the Netzkino extractor. While this gets rid of comments (they seem to have been dropped from the API) and categories (they are not available in the API endpoint I'm using), this feels a lot more robust, since it only needs the video id and not the correct category (in its place, only filme is present in the URL) to download metadata. As an added benefit, that API gives smaller responses ;)
Probably also closes #5251.

@dstftw Can you take a look? This should be pretty straightforward (I think)

Meh, site structure changed in the meantime. Will submit a new fix later.


:warning: Breaking Change: make components required by default

Currently, all zarf components default to being optional due to the required key being optional in the yaml. This leads to behaviors where a package author must ensure they are careful to annotate this key for each component--though the validation doesn't require them to so assumes a sort of "all things are optional" default state.
When Zarf was first created, we didn't really know how it would evolve and this key was introduced in those very early days. I think at this point it would be better to require all components by default--especially with the introduction of composability and the OCI skeleton work, there is plenty of flexibility in the API to compose bespoke packages assembled from other packages.
I see a few ways we could handle this:

Simply force the required key to be a non-optional, so that package authors would be forced to specify it for each component, thereby removing any ambiguity--but also force one more key for every single component every created 🫠

Deprecate required and introduce an optional optional key, which would default to false.  I do think this still feels strange if you did something like optional: false.

Do something more significant like combine various condition-based things such as only, optional (instead of required), default, I would have said group, but... 😆

I personally think 2 would be the most clean and while a biggish change is something we could handle with the deprecated version-handling code that we have (at least for previously built packages/skeletons).  For future to-be-built packages we would probably want to return an error if we saw required (rather than just a warning) to make it very clear that action needed to be taken by the package creator to make sure that their package worked correctly going forward...

During this issue we should also reinvestigate default

Kicking this to past our community meetup.


[Bug] The expected type comes from property 'pineconeIndex' which is declared here on type 'PineconeStoreParams'

pineconeIndex type error. The issue does not occur with v3.0.3
Error information
Type 'import("/Users/kirandash/workspace/bgwebagency/ai-web-apps/node_modules/@pinecone-database/pinecone/dist/data/index").Index<import("/Users/kirandash/workspace/bgwebagency/ai-web-apps/node_modules/@pinecone-database/pinecone/dist/data/vectors/types").RecordMetadata>' is not assignable to type 'import("/Users/kirandash/workspace/bgwebagency/ai-web-apps/node_modules/@langchain/pinecone/node_modules/@pinecone-database/pinecone/dist/data/index").Index<import("/Users/kirandash/workspace/bgwebagency/ai-web-apps/node_modules/@langchain/pinecone/node_modules/@pinecone-database/pinecone/dist/data/types").RecordMet...'.
  Types have separate declarations of a private property 'config'.

Steps to reproduce the issue locally

install the following packages

    "@langchain/community": "^0.3.6",
    "@langchain/openai": "^0.3.11",
    "@langchain/pinecone": "^0.1.1",
    "@langchain/redis": "^0.1.0",
    "@pinecone-database/pinecone": "^4.0.0",

My code:
    const vectorStore = await PineconeStore.fromExistingIndex(embeddings, {
      pineconeIndex,
      maxConcurrency: 5,
    });

Hey @kirandash , could you share your fromExistingIndex function and how you're instantiating PineconeStore as well, please? Thank you!
Without having investigated this issue quite yet, there is a high likelihood this issue stems from Langchain's Pinecone integration, rather than the Pinecone native TS client.

Hey @aulorbe,
Certainly! Here’s how I’m using the fromExistingIndex function and instantiating PineconeStore:
// src/app/api/document-query/route.ts

import { pineconeIndex } from "@/lib/pinecone";
import { OpenAI, OpenAIEmbeddings } from "@langchain/openai";
import { PineconeStore } from "@langchain/pinecone";
import { createStuffDocumentsChain } from "langchain/chains/combine_documents";
import { createRetrievalChain } from "langchain/chains/retrieval";
import { NextResponse } from "next/server";

export async function POST(req: Request) {
  const { prompt } = await req.json();

  if (!prompt) {
    return NextResponse.json({ error: "Prompt is required" }, { status: 400 });
  }

  try {
    const model = new OpenAI();

    if (!model) {
      throw new Error("Failed to initialize OpenAI model");
    }

    const embeddings = new OpenAIEmbeddings({
      model: "text-embedding-3-small",
    });

    const vectorStore = await PineconeStore.fromExistingIndex(embeddings, {
      pineconeIndex,
      maxConcurrency: 5,
    });

    const combineDocsChain = await createStuffDocumentsChain({
      llm: model,
      prompt: prompt,
    });

    const chain = await createRetrievalChain({
      retriever: vectorStore.asRetriever(),
      combineDocsChain,
    });

    const response = await chain.invoke({
      input: prompt,
    });

    return NextResponse.json({ result: response });
  } catch (error) {
    console.error(error);
    return NextResponse.json({ error: "An error occurred. Please try again" });
  }
}

And here’s the client setup:
// src/lib/pinecone.ts:

import { Pinecone as PineconeClient } from "@pinecone-database/pinecone";

export const pinecone = new PineconeClient();
export const pineconeIndex = pinecone.Index(process.env.PINECONE_INDEX!);

Ah okay so fromExistingIndex is a Langchain method?

Ah okay so fromExistingIndex is a Langchain method?

Yes, that’s correct! fromExistingIndex is indeed a Langchain method. I’ve noticed that the error does not occur when using @pinecone-database/pinecone version ^3.0.3. However, if I update to the latest release (4.0.0 from last week), the error appears, as shown in the previous screenshot.

Ahhh okay, thanks for confirming! It is likely that they just haven't updated their integration since our latest major release (4.0.0), but I will confirm shortly!

Ahhh okay, thanks for confirming! It is likely that they just haven't updated their integration since our latest major release (4.0.0), but I will confirm shortly!

Thanks for looking into this! That makes sense. It’s likely an integration update issue with the latest release. I'll stick with version ^3.0.3 for now, but please keep me posted on any updates or fixes. Appreciate the help! 😊🙏

Absolutely, will do! Thanks for bearing with both us and Langchain while we get this sorted :)


User can't choose to talk to insecure registry

sudo /opt/bin/calicoctl node --node-image=kube-scale-master:5000/calico-node
No IP provided. Using detected IP: <IP_ADDRESS>
Pulling Docker image kube-scale-master:5000/calico-node

DockerException: HTTPS endpoint unresponsive and insecure mode isn't enabled.

Traceback (most recent call last):
  File "<string>", line 118, in <module>
  File "/code/build/calicoctl/out00-PYZ.pyz/calico_ctl.node", line 225, in node
  File "/code/build/calicoctl/out00-PYZ.pyz/calico_ctl.node", line 367, in node_start
  File "/code/build/calicoctl/out00-PYZ.pyz/calico_ctl.node", line 397, in _start_node_container
  File "/code/build/calicoctl/out00-PYZ.pyz/calico_ctl.node", line 725, in _find_or_pull_node_image
  File "/code/build/calicoctl/out00-PYZ.pyz/docker.client", line 879, in pull
  File "/code/build/calicoctl/out00-PYZ.pyz/docker.auth.auth", line 59, in resolve_repository_name
  File "/code/build/calicoctl/out00-PYZ.pyz/docker.auth.auth", line 38, in expand_registry_url
DockerException: HTTPS endpoint unresponsive and insecure mode isn't enabled.

A workaround would be to use docker to pull the image e.g. docker pull kube-scale-master:5000/calico-node does work.

Docker pull has a load of options
Params:

repository (str): The repository to pull
tag (str): The tag to pull
stream (bool): Stream the output as a generator
insecure_registry (bool): Use an insecure registry
auth_config (dict): Override the credentials that Client.login has set for this request  auth_config should contain the username and password keys to be valid.

We shouldn't try to duplicate them - instead we should just provide a --no-pull option.

Discussed with @caseydavenport and agreed on the --no-pull type option


feat: new isolated test 934170-3 (934170 PL1) (Christian Folini)

Status page test. See https://github.com/coreruleset/coreruleset/issues/3351

Test works as expected.
Merging now.


Text fields retaining value (only visually) on kernel restart

When restarting the Jupyter Kernel, text fields remain filled in but python cannot detect the value.
E.g. in this instance, Python says it cannot find a value for 'User' unless I click on the field, edit a character and then re-run the python script with a button.

Yup, this should be an easy fix. I'll schedule that for the next release.

Great, happy to help. Looks like this could become a unique and incredibly useful tool

I really hope so :). We have already found it quite useful at work. As it becomes more polished that should only increase.

Fixed in https://github.com/SimonBiggs/scriptedforms/commit/0d2fdc931e423b5285bb8c9f3acc1f2c261491e3


fix: support new input validation

Issue #, if available:
Description of changes:
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

I don't know Rust well. Is ? a nullable indication?

No.
let x = foo()?;
means
let maybeX = foo();
if maybeX.is_failure() then return maybeX
let x = maybeX.value


Introduce Terminal type

Also add additional escape sequences (may fix #71).

@gwenn sorry, I have been away.  LGTM, Can you merge from master?


Fix import paths in readme

Noticed when migrating to this package that the import paths in the readme are incorrect - this is a small patch to correct them. Cheers!

Thanks heaps @solarissmoke 👍


Remote storage

sorry for the title but I do not know how to name this issue
Hello,
I deployed a Nuxt application using the GUI from the NuxtHub Admin. Everything was fine. In order to migrate my database, https://github.com/nuxt-hub/core/issues/100, I run nuxt dev --remote locally. I got this issue:
[nuxt:hub 10:21:26 PM]  ERROR  No project URL found, make sure to deploy the project using nuxthub deploy or link your project with nuxthub link or add the deployed URL as NUXT_HUB_PROJECT_URL environment variable (if self-hosted).

<EMAIL_ADDRESS>So I run npx nuxthub link and I successfully linked my project. A new env variable have been added.
I try again nuxt dev --remote but I got a new error:
 have been replaced but was correct and set by the previous command
ℹ Linked to https://admin.hub.nuxt.com/barbapapazes/<project> nuxt:hub 10:24:20 PM
ℹ Using production environment                             nuxt:hub 10:24:20 PM
ℹ Using remote storage from https://<project>.nuxt.dev         nuxt:hub 10:24:20 PM

 ERROR  Failed to fetch remote storage: Project not found.  nuxt:hub 10:24:20 PM
Make sure to deploy the project using nuxthub deploy or add the deployed URL as NUXT_HUB_PROJECT_URL environment variable.

So I follow the error and set NUXT_HUB_PROJECT_URL. I rerun nuxt dev --remote, and a new error:
[nuxt:hub 10:26:23 PM]  ERROR  You cannot use both NUXT_HUB_PROJECT_KEY and NUXT_HUB_PROJECT_URL at the same time. Please use only one of them.

So I remove NUXT_HUB_PROJECT_KEY and now nuxt dev --remote works fine.
I do not know why it was not working as intended after the npx nuxthub link 🤷♀

Sorry about this, shall be good now with<EMAIL_ADDRESS>


Add support for installing helm charts using helm 3 as a library during “bootkube start”

Closes #1063
CC @ipochi @andrewrynhard

Thanks @invidian . As we discussed on slack, we need to figure out how to integrate this with the new plugin model. Give me a bit to work on that interface, and then we will circle back to this once we are ready.

/remove-lifecycle stale

/remove-lifecycle stale
I need to rebase...

Not stale

Not stale

/remove-lifecycle rotten

/remove-lifecycle stale

This project is being archived, for more information see this issue:
https://github.com/kubernetes/org/issues/2824
/close