[BUG] relative binning - correctly set last bin index

If the last bin index is already chosen to be the last point in the frequency array, we shouldn't increment by 1, else we have an invalid index.
I observed this with very long injections that have power even at the maximum frequency, and thus, the bin selection will already include the last frequency point in the bin indices.

Thanks @noahewolfe; I thought I had taken care of these issues in https://git.ligo.org/lscsoft/bilby/-/merge_requests/1310, but clearly not. As Colm said, an example and unit test would be very helpful.

Can do! I wrote up something, copying in large part the existing relative binning unit test (this one) to construct a unit test, which should also provide an example.
I'll leave the exact code example at the very bottom, as it's a bit long right now. This isn't exactly what I was working with when I first reported this bug, but, it reproduces the same error, namely:
======================================================================
ERROR: test_matches_non_binned_many (__main__.TestLongDurationRelativeBinningLikelihood.test_matches_non_binned_many)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/noah.wolfe/ligo-ptas/scripts/long_relative_binning_unittest.py", line 90, in setUp
    self.binned = RelativeBinningGravitationalWaveTransient(
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/noah.wolfe/.conda/envs/ligo-ptas/lib/python3.11/site-packages/bilby/gw/likelihood/relative.py", line 148, in __init__
    self.compute_summary_data()
  File "/home/noah.wolfe/.conda/envs/ligo-ptas/lib/python3.11/site-packages/bilby/gw/likelihood/relative.py", line 336, in compute_summary_data
    stop = masked_frequency_array[end_idx]
           ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^
IndexError: index 32449 is out of bounds for axis 0 with size 32449

When I include the fix in this pull request, the tests both pass.
Here's my go at a unit test; if this kind of thing looks good, I can update the pull request with this as a new file under test/gw/likelihood directory!
import unittest
from copy import deepcopy

import bilby
from bilby.gw.source import (
    lal_binary_black_hole,
    lal_binary_black_hole_relative_binning
)
from bilby.gw.likelihood import (
    GravitationalWaveTransient,
    RelativeBinningGravitationalWaveTransient
)
import numpy as np

class TestRelativeBinningLikelihoodSubSolarMassBBH(unittest.TestCase):
    def setUp(self):
        duration = 16
        fmin = 20
        sampling_frequency = 8192
        self.test_parameters = dict(
            chirp_mass=0.435,
            mass_ratio=1.0,
            a_1=0.3,
            a_2=0.4,
            tilt_1=1.0,
            tilt_2=0.2,
            phi_12=1.0,
            phi_jl=2.0,
            luminosity_distance=40,
            theta_jn=0.4,
            psi=0.659,
            phase=1.3,
            geocent_time=1187008882,
            ra=1.3,
            dec=-1.2,
        )
        self.fiducial_parameters = self.test_parameters.copy()

        ifos = bilby.gw.detector.InterferometerList(["H1", "L1", "V1"])
        ifos.set_strain_data_from_power_spectral_densities(
            sampling_frequency=sampling_frequency,
            duration=duration,
            start_time=self.test_parameters['geocent_time'] - duration + 2.
        )
        for ifo in ifos:
            ifo.minimum_frequency = fmin

        priors = bilby.gw.prior.BBHPriorDict()
        priors["chirp_mass"] = bilby.core.prior.Uniform(0.434, 0.436)
        priors["mass_ratio"] = bilby.core.prior.Uniform(0.125, 1)
        priors["geocent_time"] = self.test_parameters["geocent_time"]
        priors["fiducial"] = 0
        self.priors = priors

        approximant = "IMRPhenomXP"
        non_bin_wfg = bilby.gw.WaveformGenerator(
            duration=duration, sampling_frequency=sampling_frequency,
            frequency_domain_source_model=lal_binary_black_hole,
            waveform_arguments=dict(
                reference_frequency=fmin,
                minimum_frequency=fmin,
                waveform_approximant=approximant
            )
        )
        bin_wfg = bilby.gw.waveform_generator.WaveformGenerator(
            duration=duration,
            sampling_frequency=sampling_frequency,
            frequency_domain_source_model=lal_binary_black_hole_relative_binning,
            waveform_arguments=dict(
                reference_frequency=fmin,
                waveform_approximant=approximant,
                minimum_frequency=fmin
            )
        )
        ifos.inject_signal(
            parameters=self.test_parameters,
            waveform_generator=non_bin_wfg,
            raise_error=False,
        )
        self.ifos = ifos

        self.non_bin = GravitationalWaveTransient(
            interferometers=ifos,
            waveform_generator=deepcopy(non_bin_wfg),
            priors=priors.copy()
        )
        self.binned = RelativeBinningGravitationalWaveTransient(
            interferometers=ifos,
            waveform_generator=deepcopy(bin_wfg),
            fiducial_parameters=self.fiducial_parameters,
            priors=priors.copy(),
            epsilon=0.05,
        )
        self.non_bin.parameters.update(self.test_parameters)
        self.reference_ln_l = self.non_bin.log_likelihood_ratio()
        self.bin_wfg = bin_wfg
        self.priors = priors

    def tearDown(self):
        del (
            self.non_bin,
            self.binned,
        )

    def test_matches_non_binned_many(self):
        for _ in range(100):
            parameters = self.priors.sample()
            self.non_bin.parameters.update(parameters)
            self.binned.parameters.update(parameters)
            regular_ln_l = self.non_bin.log_likelihood_ratio()
            binned_ln_l = self.binned.log_likelihood_ratio()
            self.assertLess(
                abs(regular_ln_l - binned_ln_l)
                / abs(self.reference_ln_l - regular_ln_l),
                0.1
            )

    def test_very_small_epsilon_returns_good_value(self):
        """
        If the frequency bins cover less than one bin, the likeilhood is nan,
        test that we avoid this.
        """
        binned = RelativeBinningGravitationalWaveTransient(
            interferometers=self.ifos,
            waveform_generator=deepcopy(self.bin_wfg),
            fiducial_parameters=self.fiducial_parameters,
            priors=self.priors.copy(),
            epsilon=0.001,
        )
        binned.parameters.update(self.test_parameters)
        self.assertFalse(np.isnan(binned.log_likelihood_ratio()))

if __name__ == "__main__":
    unittest.main()

Thanks @noahewolfe! I think I misunderstood the problem earlier. I think this fix is great. For the unit test, I don't think we need an extra test class---I'd just simply replace the test parameters here with one for a subsolar mass system.

Also, I think the prior width you have in your example is okay, since at those masses SSM candidate would have a chirp mass posterior that fits within that prior (and hence log-likelihood would vary quite a bit). In fact, my fear was the prior was too wide, but that doesn't seem to be the case at least with the tests you ran.

I kinda thought if the parameters are changed to be consistent with subsolar mass, it would be a superset of things we were testing for currently. But maybe I am missing something.


Resolve the compilation error of conv3x3.s

fixes #1374
Please refer to #1374  for details of this pr.

This fix make sense since otherwise the macro syntax was error.
cc @DrizztDoUrden for confirm. I guess this branch never go in before?

@Slimakanzer @Kirpich30000 Please review this, thanks.


Cypress Not Starting in Gitlab Pipeline Env

I'm using the cypress/browsers:node16.13.2-chrome100-ff98 base image and can't seem to figure out why cypress won't start in my GitLab CI environment. Console output below:

For some additional context, im using Nx to run cypress (npx nx e2e ) as i have a nrwl workspace for this project. App compiles just fine. I seem to be able to successfully build a docker image using this particular parent image locally and run cypress without issue. I'm starting to wonder if the problem could be related to the VM the docker container is running on (ubuntu 20.04, has 4vCPU and 16GiB memory). Also worth noting im not using root user. I've set npm and cypress cache to custom directories - not sure if this is advisable / could be related to the problem, but any advice greatly appreciated!

Hello, we are using a Docker image based on Cypress Factory, and we've encountered the same issue with our GitLab CI runs since this morning.
Console output:
[STARTED] Task without title.
[FAILED] Cypress failed to start.
[FAILED]
[FAILED] This may be due to a missing library or dependency. https://on.cypress.io/required-dependencies
[FAILED]
[FAILED] Please refer to the error below for more details.
[FAILED]
[FAILED] ----------
[FAILED]
[FAILED] Command was killed with SIGTRAP (Debugger breakpoint): /builds/livesport/flashscore/qa/fsweb-automation/cache/12.4.0/Cypress/Cypress --no-sandbox --smoke-test --ping=396
[FAILED]
[FAILED] ----------
[FAILED]
[FAILED] Platform: linux-x64 (Debian - 11.6)
[FAILED] Cypress Version: 12.4.0
Cypress failed to start.
This may be due to a missing library or dependency. https://on.cypress.io/required-dependencies
Please refer to the error below for more details.
----------
Command was killed with SIGTRAP (Debugger breakpoint): /builds/livesport/flashscore/qa/fsweb-automation/cache/12.4.0/Cypress/Cypress --no-sandbox --smoke-test --ping=396

Similar issue to:

https://github.com/cypress-io/cypress/issues/26145
https://github.com/cypress-io/cypress/issues/27564
https://github.com/cypress-io/cypress/issues/27209

Closing in favor of https://github.com/cypress-io/cypress/issues/27564


Upgrade websocket-client dependency

We use a very old version (0.47.0 was released on Feb 22, 2018). This project is actively developed so it would be great to upgrade. Changelog: https://github.com/websocket-client/websocket-client/blob/master/ChangeLog
I tested every version from 0.48.0 to 0.59.0.
Only versions 0.52.0, 0.58.0 and 0.59.0 worked correctly. All others raised exceptions. Thus, I suggest to use 0.59.0 for now.

Furthermore, I tested version 1.0.0 to 1.4.3. Captures worked but in the end, all raised the following exception:
[2024-07-28 10:51:06,819: ERROR/ForkPoolWorker-2] error from callback <bound method WebsockReceiverThread._on_close of <WebsockReceiverThread(WebsockThread:47001, started daemon<PHONE_NUMBER>29824)>>: _on_close() takes 2 positional arguments but 4 were given
[2024-07-28 10:51:06,819: ERROR/ForkPoolWorker-2] exception from websocket receiver thread
Traceback (most recent call last):
  File "/opt/spn/lib/python3.8/site-packages/websocket/_app.py", line 407, in _callback
    callback(self, *args)
TypeError: _on_close() takes 2 positional arguments but 4 were given

We need to change Brozzler code to use version 1+.
So, I recommend to upgrade to 0.59.0 as a first step and then later make the necessary code changes to upgrade even more.
Thank you.

Also, the new websocket client will be needed to use the latest Chrome.

Already done at https://github.com/internetarchive/brozzler/commit/b41393fac5353fe01154c90fc54ee532e149ec59


__ATOMIC_RELAXED vs. __ATOMIC_ACQUIRE

Hi Wenzel,
I was told that that the __atomic_compare_exchange call in queue.cpp should use __ATOMIC_ACQUIRE on failure, instead of the current __ATOMIC_RELAXED. I (still) don't quite understand how those fences work, but was told that this currently looks to be a bug.
Modifying this fixed some of the TSAN errors we have been seeing for us. I didn't notice a performance difference when running the MItsuba test suite, but also didn't benchmark thoroughly

Thank you for the report, I changed this on the master and nanobind branches of this repository. In most cases, a failure is followed by a load-acquire, which IIRC would do the same thing. But looking through the code, it's not done consistently everywhere, so your unnamed colleague likely has a point.
There is no harm in increasing the strength of the memory ordering requirement. It will not change code generation on x86, which lacks weakly ordered memory operation. But on M1 macs and other aarch64 machines, there may be an impact (and ditto for TSAN that is probably analyzing very carefully with what memory order parameters these operations are invoked.)


Initial BFF API docs

Scope of changes
Briefly add notes if applicable and include the story ID
Type of change

[ ] bug fix
[ ] new feature
[ ] documentation
[ ] other (describe)

Acceptance criteria
Describe how reviewers can test this change to be sure that it works correctly. Add a checklist if possible
Author checklist

[ ] I have manually tested the change and/or added automation in the form of unit tests or integration tests
[ ]  I have updated the dependencies list
[ ]  I have recompiled and included new protocol buffers to reflect changes I made
[ ]  I have added new test fixtures as needed to support added tests
[ ]   Check this box if a reviewer can merge this pull request after approval (leave it unchecked if you want to do it yourself)
[ ]  I have moved the associated Shortcut story to "Ready for Review"

Reviewer(s) checklist

[ ] Any new user-facing content that has been added for this PR has been QA'ed to ensure correct grammar, spelling, and understandability.

Codecov Report
Base: 44.59% // Head: 37.96% // Decreases project coverage by -6.62% :warning:

Coverage data is based on head (2658781) compared to base (297446e).
Patch has no changes to coverable lines.

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #909      +/-   ##
==========================================
- Coverage   44.59%   37.96%   -6.63%
==========================================
  Files         670      168     -502
  Lines       24314     2568   -21746
  Branches     1517      667     -850
==========================================
- Hits        10842      975    -9867
+ Misses      12087     1409   -10678
+ Partials     1385      184    -1201

Flag
Coverage Δ

unittests
37.96% <ø> (-6.63%)
:arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

...risacrypto/directory/pkg/gds/client/credentials.go

web/gds-user-ui/src/hooks/useCreateCollaborator.ts

web/gds-user-ui/src/components/ui/Card.tsx

...onents/ChooseAnAccount/ChooseAnAccount.stories.tsx

...b.com/trisacrypto/directory/pkg/store/trtl/trtl.go

...ithub.com/trisacrypto/directory/pkg/trtl/backup.go

...trisacrypto/directory/pkg/utils/whisper/whisper.go

...github.com/trisacrypto/directory/pkg/bff/domain.go

...com/trisacrypto/directory/pkg/bff/emails/emails.go

web/gds-user-ui/src/utils/test-utils.tsx

... and 492 more

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


Black frame appears to the main ComfyUI interface when the latest ComfyUI-3D-Pack is installed.

I updated yesterday ComfyUI nodes in my local install (Windows) using ComfyUI Manager "Update all" option.
After the update and restart, everything in the boot-up process went seemingly OK, no crashes or or such. However, I noticed that I had a black extra frame in the view which I did not have earlier. See the screenshot below. There are also a few buttons and UI elements in the bottom-left corner, but the buttons are not functioning.
I didn't have time yesterday to look at this issue, but today I started to check what might be causing it, so I just disabled custom nodes in chunks by moving them out of the folder and reloading, to quickly isolate and see what might cause it.
So, I managed to isolate this to to ComfyUI-3D-Pack. It might not be necessarily the reason for this, but at least when the latest version is active, this happens. It could be possibly some kind of conflict with the other numerous custom nodes I have installed?
It did not seem to matter either if I had the new menu system enabled by selecting the top menu in settings (Menu/Use new menu and workflow management.)

Anyway, if someone knows what might be the cause, that would be appreciated.

check this: https://github.com/MrForExample/ComfyUI-3D-Pack/issues/291#issuecomment-2329839635

I'm having the same issue after I updated ComfyUI. I have the most recent version of ComfyUI-3D-Pack.

Hi all, I identified the root cause and now issue is solved, https://github.com/MrForExample/ComfyUI-3D-Pack/pull/325#issuecomment-2420847505

I am afraid it still not working properly for the mesh and 3dgs preview.

And even more. The preview nodes went red and the UI stopped refreshing when I returned to the --front-end-version Comfy-Org/ComfyUI_legacy_frontend@latest workaround.

I found that the mesh and 3DGS previews pop up in the menu when first loaded but go back into place after you move your canvas to where the preview nodes exit.

When I returned to the --front-end-version Comfy-Org/ComfyUI_legacy_frontend@latest workaround, the preview nodes went red and the UI stopped refreshing,  never need it again.

The issue is still relevant - 04 dec 2024

I still have this issue with updated ComfyUI ( https://github.com/comfyanonymous/ComfyUI/commit/57f330caf91af37dda67c4202bb27cdebb7161d8 ) and updated ComfyUI-3D-Pack ( a35a737676cf3cbb23360d98032870e242dae199 ).
If I try the --front-end-version Comfy-Org/ComfyUI_legacy_frontend@latest the interface is stuck and broken (as showed in https://github.com/MrForExample/ComfyUI-3D-Pack/issues/343#issuecomment-2423478831 )


remove memory leak in TypecheckerUnit

A reference to the ModuleSourceMapper was recently added to
TypecheckerUnit, but ModuleSourceMappers hold references to all Modules
used while compiling the unit, including Modules that are not
dependencies of the unit.
Having this reference in TypecheckerUnit causes a memory leak for
applications that retain Modules (which have references to
TypecheckerUnits).
@FroMage or @gavinking, is it safe to hold references to JdkProviders, or will that leak memory too?

Can one of the admins verify this patch? (see README)

@davidfestal?

What is going on here. Why hasn't this been merged? @davidfestal this was a fix to something you did, as far as I know.

@gavinking : this was introduced by @FroMage in commit 1acc676c6beb90f72f8cfc8606df36df85298c0f afaik. But it's not impossible that after I started using the moduleSourceMapper attribute in some code.

OK, so I'm reassigning this to @FroMage.

I'll try to have a look though, as soon as I'm back to master.

@FroMage @davidfestal would one of you please decide what to do with this patch.

FWIW:

This is a huge memory leak that needs to be fixed (although, I doubt it affects Eclipse or IntelliJ, or we'd know)
For VS Code, I implemented a workaround using reflection, so it's not an urgent issue for me.
It's probably safe, but if no-one want's to take responsibility for it breaking stuff, let's just merge it the day after the 1.3.1 release.

Damnit GitHub, this was hidden since PRs are no longer issues!

Thanks.


fix(formatting): drop PHP CodeSniffer

BREAKING CHANGE: removes formatting support
closes #501
closes #474
closes #473
closes #468
closes #450
closes #445
closes #443
closes #423
closes #343
closes #296
closes #293
@damieng @kaloyan-raev @mniewrzal @roblourens

Has this made it into the VS Code extension as of yet?

No, it hasn't @ptasker


Use a default retry strategy and remove time.sleep

This implements a default retry strategy which will retry 429 (too many requests) up to five times before giving up. This seems like a sensible default, and it is similar to the behavior of the official Airtable.js library. The brief testing I've done suggests that removing time.sleep and replacing with retries does speed up large batch operations.
Given this code...
import os
import time
from threading import Thread
from pyairtable import Api

def main():
    for case in [(1, 500), (5, 100), (25, 20)]:
        timer(*case)

def timer(threads, records):
    start_time = time.time()
    started = []
    for thread_number in range(threads):
        t = Thread(target=bulk_create, args=[thread_number, records])
        t.start()
        started.append(t)

    all(t.join() for t in started)
    duration = time.time() - start_time
    print(threads, "thread(s),", records, "records:", f"{duration:.2f}s")

def bulk_create(prefix, count):
    api = Api(os.environ["AIRTABLE_API_KEY"])
    table = api.table("appaPqizdsNHDvlEm", "TEST_TABLE")
    records = [{"text": f"bulk {prefix} #{n}"} for n in range(1, count)]
    created = table.batch_create(records)
    table.batch_delete([record["id"] for record in created])

if __name__ == "__main__":
    main()

...I got this output:
% git checkout main
% python3 tmp/bulk.py
1 thread(s), 500 records: 53.67s
5 thread(s), 100 records: 12.96s
Exception in thread Thread-14:
...
requests.exceptions.HTTPError: 429 Client Error: Too Many Requests

% git checkout default_retry
% python3 tmp/bulk.py
1 thread(s), 500 records: 32.18s
5 thread(s), 100 records: 10.19s
25 thread(s), 20 records: 10.02s

I'd considered retrying 500s by default, but I think that is probably inadvisable given a 500 might indicate a request was partially fulfilled. It should be left to the implementer to decide whether to retry an operation in that situation or not.
This does not add any new tests. I considered adding something like the above as an integration test, but it would add several seconds to each test run and I'm not clear on what sort of regressions we'd actually be guarding against.

It seems this code only works with urllib3 >= 1.26, when they changed the signature of the Retry class, whereas the minimum version we test against is 1.25.11. Given that 1.26.0 was released in 2020, I'm going to suggest we bump up the urllib3 dependency for this package instead of trying to remain backwards-compatible.

I added an integration test that does (more or less) what the batch above does; it spawns 25 threads and makes multiple calls to batch_create from each of them. Without the default retry strategy, the test fails. With it, the test passes in ~14 seconds. Better to be confident we won't regress this in the future.


Spread Arg Support

From #7, this adds support for parsing spread/variadic args in type annotations. Any Flow variadic becomes a BS named array. If it's optional, my tests are also expecting an extra unit arg, which as far as I can tell was already built into the code and therefore must be correct :).
Any Ocaml idioms I missed? Extra/dangerous test cases you can think of?

Thanks so much for PR! I really appreciate you taking a shot at this! All the code looks good! The only problem is I don't think the bindings produced compile to the correct code 😕
Using this Flow code:
declare module 'spread-args' {
  declare export function foo(...bars: number[]): void
}

I get this binding:
external foo : bars::array float => unit = "" [@@bs.module "spread-args"];

But when I call it BuckleScript produces the following output:
var SpreadArgs = require("spread-args");

SpreadArgs.foo(/* float array */[
      1,
      2
    ]);

The call is should look like:
var SpreadArgs = require("spread-args");

SpreadArgs.foo(
      1,
      2
    );

I think the right place to look in the manual is @@bs.splice
Thanks again for this awesome work though 😄

Oh, duh. Inexperienced with BS usage, sorry. Will check out splice, update
tests and code shortly!
On Sat, Jul 8, 2017 at 19:16 Ryan Delaney<EMAIL_ADDRESS>wrote:

Thanks so much for PR! I really appreciate you taking a shot at this! All
the code looks good! The only problem is I don't think the bindings
produced compile to the correct code 😕
Using this Flow code:
declare module 'spread-args' {
declare export function foo(...bars: number[]): void
}
I get this binding:
external foo : bars::array float => unit = "" [@@bs.module "spread-args"];
But when I call it BuckleScript produces the following output:
var SpreadArgs = require("spread-args");
SpreadArgs.foo(/* float array */[
1,
2
]);
The call is should look like:
var SpreadArgs = require("spread-args");
SpreadArgs.foo(
1,
2
);
I think the right place to look in the manual is @@bs.splice
https://bucklescript.github.io/bucklescript/Manual.html#_splice_calling_convention_bs_splice
Thanks again for this awesome work though 😄
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/rrdelaney/ReasonablyTyped/pull/9#issuecomment-313886590,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AGxb_ejt2hsrJb6hGCUawWTfxNn_RM9Oks5sMA3pgaJpZM4OQ6ad
.

Yea, I didn't know anything about BS either before starting this! I'm still learning stuff 🙂
The Reason playground is a really good place to test the output too

Okay, so, back with many improvements.

expanded BsType.Function to explicitly record its rest param, if any, since AFAICT BS does not have any way to record that any individual arg type is variadic.
repositioned the printed unit for optional args to lie between the formal and rest params, since you can only bs.splice the last argument
since said last argument can't be optional or defaulted, also suppressed optionality for rest params. I kept the Flow-side test cases that had optional variadics, to ensure that the resulting BS still behaved right.

Ah; conflicts. Resolving soon.

The conflicts should be from adding type params to functions - let me know if you need help 😄

Sweet:

Concat converted
Renamed some vars to snake_case
Merges resolved. Pretty sure I understood what was being done, which made it reasonably clear


Invoking profiles from command line even if profile is hidden.

Hi all
i would like to propose a feature/ability to invoke profiles from command using wt --profile HIDDEN_PROFILE even if profile is hidden by parameter hidden": true.
For now, when profile is hidden, Windows Terminal starts with default profile when using wt --profile HIDDEN_PROFILE
Do you think it is possible?
Thank you.

Thanks! This is a /dupe of #4139


fix #410 SimpleConsumer cannot seek to an absolute offset.

ping @mumrah Please help me review this, thx.

generally lgtm; can you take a stab at a test for this? test/test_consumer.py

sure

I add to test/test_consumer_integration.py

thanks!

Hi, @dpkp when would you merge this to release? I still could not see it in 0.9.4


Metadata caching fails on PHP7 phpredis

Ubunti 14.04
Symfony 3.0.4
PHP 7.0.6RC
Config:
snc_redis:
    clients:
        doctrine_cache:
            type: phpredis
            alias: doctrine_cache
            dsn: '%redis_dsn.doctrine_cache%'
    doctrine:
        metadata_cache:
            client: doctrine_cache
            entity_manager: default
        result_cache:
            client: doctrine_cache
            entity_manager: default
        query_cache:
            client: doctrine_cache
            entity_manager: default

Running command:

sudo -u www-data -H php bin/console doctrine:schema:validate --env=prod

I'm getting an error result:
root@server:/var/www/dev# sudo -u www-data -H php bin/console doctrine:schema:validate --env=prod
[Mapping]  FAIL - The entity-class 'AppBundle\Entity\Subscription' mapping is invalid:
* The association AppBundle\Entity\Subscription#order refers to the inverse side field AppBundle\Entity\Order#subscription which does not exist.
* The referenced column name 'id' has to be a primary key column on the target entity class 'AppBundle\Entity\Order'.
* The join columns of the association 'order' have to match to ALL identifier columns of the target entity 'AppBundle\Entity\Order', however '' are missing.
* The referenced column name 'id' has to be a primary key column on the target entity class 'AppBundle\Entity\Room'.
* The join columns of the association 'room' have to match to ALL identifier columns of the target entity 'AppBundle\Entity\Room', however '' are missing.
* The referenced column name 'id' has to be a primary key column on the target entity class 'AppBundle\Entity\Price'.
* The join columns of the association 'subscribedPrice' have to match to ALL identifier columns of the target entity 'AppBundle\Entity\Price', however '' are missing.

  [Doctrine\ORM\ORMException]
  Column name `id` referenced for relation from AppBundle\Entity\Subscription towards AppBundle\Entity\Order does not exist.

Which is strange, because everything works with PHP 5.6.*, and the mapping looks valid (I use yml). It also works when I turn off the caching.
Mapping:
AppBundle\Entity\Subscription:
    type:  entity
    table: subscription
    repositoryClass: AppBundle\Repository\SubscriptionRepository
    id:
        id:
            type: integer
            generator:
                strategy: AUTO
    oneToOne:
        order:
            inversedBy: subscription
            targetEntity: Order

AppBundle\Entity\Order:
    type: entity
    table: orders
    id:
        id:
            type: integer
            id: true
            generator:
                strategy: AUTO
    oneToOne:
        subscription:
            mappedBy: order
            targetEntity: Subscription

Update: everything works if I use predis driver instead of phpredis.
@snc it looks critical, can you look into this? I think it could be php7-redis extension issue. Unfortunately, I can not test it with earlier PHP 7.0.* version right now.

@Hast In your current build of PhpRedis, did you enable the igbinary library?

@Pouix yes, I did. It kinda works for sessions and second-level cache. But for some reason metadata cache becomes broken after it is stored to the redis via phpredis adapter.

@Hast Then try without igbinary (./configure without --enable-redis-igbinary).

@Pouix I'm using compiled package from repository.

@Hast i found a way to use php serializer instead of igbinary serializer.
What's your Doctrine/Cache version?

@Pouix v1.6.0
So is there some problem with igbinary library for php7?

@Hast igbinary library is still in development for php7 and doesn't pass every tests.
https://github.com/igbinary/igbinary7/issues/6

@Pouix Got it. So is there a chance you can fix the issue for php7 with enabled igbinary?

@Hast I can see 3 solutions:
The best way:

Find / compile a phpredis extension without igbinary in it.

The tricky way:

Use a custom RedisCache and set phpredis Redis::OPT_SERIALIZER to Redis::SERIALIZER_PHP.
Make something similar for the redis session handler (see #250).
Add / modify some configuration in php.ini and config.yml.

or, as a last resort: simply use Predis and wait for an update for igbinary and phpredis.

Thank you for the explanation!
I'm just going to use Predis until igbinary is fixed.


Run JAX unit tests on on-demand A100 runners provisioned via SLURM

This is pretty neat!
Should we ssh ... scancel the runner job once the unit tests are done? Seems like if the unit tests fail early, we can return the hr back to other jobs

This is pretty neat!
Should we ssh ... scancel the runner job once the unit tests are done? Seems like if the unit tests fail early, we can return the hr back to other jobs

Good point. Since the runners are launched as ephemeral, they should de-register and exit as soon as they have processed a single job. Let me double-check if this is the actual behavior and we should be good if so.


add missing library for darwin build

This PR fixes #36 ;
Use print(flush=True) to show streaming effect;
Add missing n_keep param.

Thanks a lot @nuance1979.


(ref #933) fix/Unable to download large file

I think we should be avoided that an exception ( separate issue from that gitbucket managing a large file with git ).
The cause of this exception is that FileUtil.isLarge has not compatibility with ObjectLoader.isLarge.
and I Think that

JGitUtil.getContentFromId(git: Git, id: ObjectId, fetchLargeFile: Boolean) to deprecated
getContentFromId split to 2 methods. getObjectLoaderFromId for large binary, and getContentTextFromId for small text contents.

This patch added only getObjectLoaderFromId.

@nazoking Looks good! But I added only one comment. Could you check it?

sorry. I fixed it.


CoreDNS override clobbered by reboot

Environmental Info:
K3s Version:
k3s version v1.28.2+k3s1 (6330a5b4)
go version go1.20.8

Node(s) CPU architecture, OS, and Version:
Linux core-k8s-1 5.15.0-91-generic #101-Ubuntu SMP Tue Nov 14 13:30:08 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux
Cluster Configuration:
3 servers, 1 master, 2 agents
Describe the bug:
Our workload requires a custom DNS zone to function. To implement this I do 6 things:

mv /var/lib/rancher/k3s/server/manifests/coredns.yaml /var/lib/rancher/k3s/server/manifests/coredns.yaml.backup
mv coredns.override.yaml /var/lib/rancher/k3s/server/manifests/
mv coredns.custom.yaml /var/lib/rancher/k3s/server/manifests/
k3s kubectl apply -f /var/lib/rancher/k3s/server/manifests/mv coredns.override.yaml
k3s kubectl apply -f /var/lib/rancher/k3s/server/manifests/mv coredns.custom.yaml
delete the coredns pod so that the new one picks up the custom.yaml

Steps To Reproduce:

curl -sfL https://get.k3s.io | sh -
mv /var/lib/rancher/k3s/server/manifests/coredns.yaml /var/lib/rancher/k3s/server/manifests/coredns.override.yaml
sed -i 's/cache 30/cache 10/' /var/lib/rancher/k3s/server/manifests/coredns.override.yaml
reboot

Installed K3s:

Expected behavior:
I expected the contents of the kube-system/coredns ConfigMap to match /var/lib/rancher/k3s/server/manifests/coredns.override.yaml
Actual behavior:

/var/lib/rancher/k3s/server/manifests/coredns.yaml was created despite being removed earlier
the contents of kube-system/coredns ConfigMap do not match /var/lib/rancher/k3s/server/manifests/coredns.override.yaml

Additional context / logs:
I just want a way to serve a custom CoreDNS zone in a way that persists across reboots.

mv /var/lib/rancher/k3s/server/manifests/coredns.yaml /var/lib/rancher/k3s/server/manifests/coredns.override.yaml sed -i 's/cache 30/cache 10/' /var/lib/rancher/k3s/server/manifests/coredns.override.yaml`

Putting .override in the filename does nothing. K3s will restore the original coredns.yaml when you restart it, and you will then have two copies of the coredns deployment.
You should name the file custom-coredns.yaml or something along those lines (so that it has a unique basename), and start k3s with --disable=coredns to prevent it from deploying the default manifest.
See https://docs.k3s.io/installation/packaged-components#packaged-components for more information.


Adapt warning message from run-gtk-tests to WebKit Container SDK

Currently when we run run-gtk-tests we get:
WKDEV pgorszkowski@~/WebKit:[main] $ Tools/Scripts/run-gtk-tests WebKitBuild/GTK/Release/bin/TestWebKitAPI/WebKitGTK/TestLoaderClient
***
*** Warning: jhbuild environment not present and not running in flatpak.
*** Run update-webkitgtk-libs or update-webkit-flatpak before build-webkit to ensure proper testing..
***

This change of course has to be done in WebKit not in WebKit Container SDK:)

@pgorszkowski-igalia is this still the case?

@pgorszkowski-igalia is this still the case?

For sure not here, but I don't know if it is fixed on WebKit part:( But I will close this one.


[VS Code] Starting collaboration session: connect ENOENT \.\pipe\vscode.11b6806adcedb0972ab135a4153ac264

Error:
Starting collaboration session: connect ENOENT \.\pipe\vscode.11b6806adcedb0972ab135a4153ac264
Steps to Reproduce:
1.
2.

Version Data

extensionName
VSLS

extensionVersion
1.0.657

protocolVersion
2.2

applicationName
VSCode

applicationVersion
1.37.0

platformName
Windows

platformVersion
10.0.18362

@kimhankyu : Thanks for reporting this issue!  I'm going to close this as a duplicate of issue #1962 to consolidate the investigation.
It would also be helpful for our investigation if you uploaded your logs. You can access them via the Live Share: Export Logs command from the command palette (ctrl + shift + p) and attach them to that issue.


Invalid enum values for list workflow runs

endpoint scope: Actions
endpoint name: List workflow runs
route: /repos/:owner/:repo/actions/workflows/:workflow_id/runs
documentation URL: https://developer.github.com/v3/actions/workflow_runs/#list-workflow-runs

Current specification
https://github.com/octokit/routes/blob/250db518150bc12a19155ed7dcfcccb82d35396e/openapi/api.github.com/operations/actions/list-workflow-runs.json#L62-L71
I expected

"status" param can be one of the check run "status" or "conclusion"
    {
      "name": "status",
      "description": "Returns workflow runs associated with the check run `status` or `conclusion` you specify. For example, a conclusion can be `success` or a status can be `completed`. For more information, see the `status` and `conclusion` options available in \"[Create a check run](https://developer.github.com/v3/checks/runs/#create-a-check-run).\"",
      "in": "query",
      "required": false,
      "schema": {
        "type": "string",
        "enum": [
          "queued",
          "in_progress",
          "completed",
          "success",
          "failure",
          "neutral",
          "cancelled",
          "timed_out",
          "action_required"
        ]
      }
    },

Did you by chance test if the status supports enum values from both check run status & conclusion?

Yes, I tested. When I specified "completed", list workflow runs returned both successful and failed runs. And when I specified "success", it returned only successful runs. It seems the status parameter supports enum values from both check run status & conclusion.

Thanks Miyata, I've shortly talked to the docs team. They are on a week-long summit right now so it might take a moment to be addressed, but I'm sure it will be resolved soon. I'll keep you posted

Thank you for your quick response😆

@gr2m Any update on this issue?

Sorry I dropped the ball on this one. Is this a blocker for you in some way?

This is not blocker for me because I execute the API with a way other than octokit now. But I don't like this workaround, so please fix it.🙇♂


create a new endpoint for review address update

Jira ticket
Summary
Is there anything you would like reviewers to give additional scrutiny?
this article explains more about the approach used.
Verification Steps for the Author
These are to be checked by the author.

[ ] Tested in the Experimental environment (for changes to containers, app startup, or connection to data stores)
[ ] Have the Jira acceptance criteria been met for this change?

Verification Steps for Reviewers
These are to be checked by a reviewer.
Setup to Run the Code

Instructions for starting storybook
Instructions for starting the MilMove application
Instructions for running tests

How to test

Access the
Login as a

Frontend

[ ] There are no aXe warnings for UI.
[ ] This works in Supported Browsers and their phone views (Chrome, Firefox, Edge).
[ ] There are no new console errors in the browser devtools.
[ ] There are no new console errors in the test output.
[ ] If this PR adds a new component to Storybook, it ensures the component is fully responsive, OR if it is intentionally not, a wrapping div using the officeApp class or custom min-width styling is used to hide any states the would not be visible to the user.

Backend

[ ] Code follows the guidelines for Logging.
[ ] The requirements listed in Querying the Database Safely have been satisfied.

Database
Any new migrations/schema changes:

[ ] Follows our guidelines for Zero-Downtime Deploys.
[ ] Have been communicated to #g-database.
[ ] Secure migrations have been tested following the instructions in our docs.

Screenshots

Warnings

:warning:
Please add the JIRA issue key to the PR title (e.g. MB-123)

  Generated by :no_entry_sign: dangerJS against 321294bd7ac422e7e004fa4f904f6bf087d2d3b3

I did a diff of the spectral output for ghc.yaml on this branch vs main and I found these two new warnings:
warning  operation-tag-defined        Operation tags must be defined in global tags.                          paths./shipments/{shipmentID}/review-shipment-address-update.patch.tags[0]
warning  endpoint-description-length  The endpoint description should be at least 128 characters.             paths./shipments/{shipmentID}/review-shipment-address-update.patch.description

a lot of other endpoints in ghc.yaml use tags : - shipment
But it isn't defined in the list of tags at the top of the file.
Those endpoints must have been written before we started checking the errors.
We can either add shipment as a tag at the top of the file, or we can use the tag mtoShipment for this endpoint.
Not sure which is preferable.


After clicking on "What is this ?", user is not able to participate in the survey.

OS : Mac 10.9.5
Chrome Version : 44.0.2363.0 canary
Steps to reproduce the issue:

Add the CUES extension
Navigate to SSL warning/malware warning/phishing warning
Survey notification window shows up
Click on the What's is this ?
CUES survey details page opens up.

Actual Result:
User can not participate in the Survey for that session./Page.
Expected Result:
User should have option in the page if he wants participate in the survey.

Issue is observed on Win 7 using M 44.0.2363.0 as well.

@moduloprime @egmorant What do you think? I see a few options:
A) Clicking on 'what is this' will bring up both the survey window and the consent page, with the consent page on top.
B) Add a link from the consent page to the survey window. This might be a little messy to implement.
C) Something else?

I guess I like (B), which seems to involve implementing a new consent page
customized for the "What is this?" scenario. If we do that, we could add a
little explanation on the new consent page saying something along the lines
of, "you previously installed the CUES extension and consented to receive
occasional surveys. To proceed to the survey, click here. To uninstall the
extension, click here. See the consent form for the extension below."
On Fri, Apr 10, 2015 at 2:34 PM, felt<EMAIL_ADDRESS>wrote:

@moduloprime https://github.com/moduloprime @egmorant
https://github.com/egmorant What do you think? I see a few options:
A) Clicking on 'what is this' will bring up both the survey window and
the consent page, with the consent page on top.
B) Add a link from the consent page to the survey window. This might be a
little messy to implement.
C) Something else?
—
Reply to this email directly or view it on GitHub
https://github.com/GoogleChrome/experience-sampling/issues/193#issuecomment-91646662
.

Could you explain a little more about what A would entail? I don't understand what it would mean to have the consent page "on top" of the survey window.

(A) means I would open two tabs in the same window. The consent tab would be the one in the foreground.


Keys in different environment doesn't conform the same protocol for Debug and Release

Hi
We got this .arkana.yml file:
environments:
  - Debug
  - Release
  environment_secrets:
  - HeapIOKey

The .env file has something like this:
HeapIOKeyDebug="1234567890"
HeapIOKeyRelease="4444400102"
But when we run arkana the swift files generated won't compile because heapIOKeyis a different type depending of the environment:
heapIOKey in Debug is an Int
public extension Keys {
    struct Debug: KeysEnvironmentProtocol {
        public init() {}

        @inline(__always)
        public let heapIOKey: Int = {

heapIOKey in Release is a String
public extension Keys {
    struct Release: KeysEnvironmentProtocol {
        public init() {}

        @inline(__always)
        public let heapIOKey: String =

This won't compile because:
public protocol KeysEnvironmentProtocol {
    var heapIOKey: Int { get }
}

Is there a way to force arkana to have a particular type? Because I think the type should be a String in this case

Hi @CarlosNano 👋

Is there a way to force arkana to have a particular type?

Not currently, no.

Because I think the type should be a String in this case

I agree!  Like:
HeapIOKeyDebug="99999999999999"
HeapIOKeyRelease="AAAAAAAA99999"

Because that would explain the behavior observed. If not, idk what's causing this from the top of my mind (yet).
Just for a little bit of context for you: Arkana infers the type based on what the string looks like. Those .env values (as well as env vars) are all strings for the system, so we check "are all characters numbers? then this must be an integer, or a double if it has floating point" or "is the string true or false? then it must be a bool", etc. So if one looks like an integer and the other like a string, then this behavior would happen, unfortunately.
Regardless, I think this problem is an important one and it shouldn't be a limitation and shouldn't require you to change your env var values. I'm not sure if adding a way to force the type of a variable would be really desired (or good DX), so I'd imagine that ideally a solution would be to identify these scenarios and always fallback to both of them being the most common denominator (i.e. a String type).
Let me know the answer to my question above regarding the values of the env vars and I'll think about a solution for this 🙏

Hi @rogerluan, thanks for the response.
Unfortunately both values in the .env contains only numbers.
The strange thing is for Debug it convert it to Int and for Release it convert it to String. When both are only numbers.
I just double checked that it has to do with the numbers because if I switch around keys then Debug converts to String and Release to Int.
Interestingly Release never conforms KeysEnvironmentProtocol because it's always expecting the same type than Debug
I wonder if the type inference is a solution a bit complex. Maybe an easy solution would be, an option in the arkana.yml file to not infer types and leave them always as a String?

an option in the arkana.yml file to not infer types and leave them always as a String?

That would be viable, yup! A lot easier than suppressing the type of each individual variable 😅
The reason one ends up being String and the other Int is because of this edge case that I had to add to prevent crashes:
https://github.com/rogerluan/arkana/blob/34826d6ae943980c79a3226947753312b731c7ef/lib/arkana/models/type.rb#L13-L18
I think your solution will end up being the chosen solution for this problem 😅
I'm in a hectic week this week and the next, would you like to take a stab at implementing this change and open a PR? Otherwise I'm afraid it might take some time before I can make this change 🙇

Sure, I can try to give a go this weekend. Any advise where to start looking (in general terms) ?

Sorry @CarlosNano only seeing this now! Looks like this was already addressed here https://github.com/rogerluan/arkana/pull/72 — is that an alternate account of yours? 😁


RSS Memory Leak

I believe to have found another memory leak. I will try to get a test project to reproduce. This is a more difficult one for me to find however because it is RSS memory and not the nodejs heap.
This leads me to assume it is in the C++ native library - would that be the correct assumption?
Bad graph below (Purple is RSS others are heap used/total):
Screenshot 2019-08-21 at 16 02 09
This is a node which is constantly having WebRTC endpoints and transports created/torn down.
I have another benchmark which just keeps connection online broadcasting which does not leak so its presumably an issue with things not being cleaned up on destruction.

seems so. Is it linear to the number of created/destroyed  endpoints/transports?

Yeah I don't think its affecting the actual use of the service it's just filling up my log files! :)
I can get a network capture going to reproduce it but it might have to be next week. Few things to do!

Try this:
https://github.com/dt-atkinson/medooze-memory-leak

could it be related to this?
https://github.com/medooze/media-server-node/issues/69
it shouldn't be much memory per run, but didn't knew you were doing so intensive tests.

Not sure - how do I disable this?
I am just trying to recreate memory leaks that happen on my production instances. They heavy reuse endpoints and transports so the memory grows over the days.

I will try to fix #69 and see if this also is closed

Okay great, I'll be here to re-run the tests and try to trace down any other areas I can find issues!

It was indeed a duplicate of #69
After  the fix and including a gc() on each interval:

Retesting this and under stress testing and this looks to be well resolved. Great!


RFC: Use Typescript on the API

If accepted, this RFC will trigger the merge of https://github.com/opencollective/opencollective-api/pull/2183.

I'm planning on merging this next week if no one is opposed to it.


feat: install scripts without a database

Description

Supports the installation of scripts that are not included in the database.
List of things to do before merging

Create and publish an HTML file containing a link to the script
Consider a better name for the button.

Related Issue

closes #141
Motivation and Context

How Has This Been Tested?

You can install scripts that are not listed.
You can uninstall installed scripts
You can update from an existing version of APM without problems

Screenshots (if appropriate):
Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

[x] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[ ] I have added tests to cover my changes.
[x] All new and existing tests passed.

More buttons will be added to the UI. Any ideas on how to make them more compact?
This feature requires a set of links to the script.
I would like to create an html folder in apm-data and publish it on github pages. Is this possible?

More buttons will be added to the UI. Any ideas on how to make them more compact?

I think so too.
I have an idea using the dropdown but it may make the buttons difficult to use.

This feature requires a set of links to the script.
I would like to create an html folder in apm-data and publish it on github pages. Is this possible?

Nice page.
Yes, you can.
If you want to use GitHub Pages, the directory name should be docs.

I fixed it.


High CPU usage when typing a comment (~15%)

VSCode Version: 1.42.1
OS Version: Linux Mint 19.3

Steps to Reproduce:

Start typing any comment like this: // asdf asdf asd fasd asdf
CPU goes from 0-1% usage up to 15% and never falling back to 1% while you are still typing a comment

Looks like it didn't work like this in the previous version of VS Code. Right just after update.
There is no such big CPU usage when I type just a text near a code. Issue is only with the comments.
My project is big but it's just a comment. I don't want that my comments will be analyzed by VS Code. Why does it work like this?

What language are you coding in? And does the problem also happen if you launch with all extensions disabled?


Feature Request: Limit size of the package for browser usage

I would like to use this package as part of a client side library. This should (not tested it) right now, but its in some ways suboptimal.
The points I would address in this feature request:

Make the usage of dependencies optional (only require that libs during use of that cases) so that web bundlers could skip bundling them

bottleneck is around 59k of code size
get-ssl-certificate is around 83k of code size
node-mbed-dtls-client is a native dependency
dgram is node specific and should be skipped for a browser bundle

Think on how to support tree-shaking to limit library size to only used parts

I could help to implement these and discuss solutions if this is accepted as target.

dgram functionality is not possible from client as noted and is only part of the older upnp lookups, if you don’t use discovery, it does not feature.
Node-mbed-dtls-client was only in play when I was evaluating supporting the entertainment api, it is not part of the dependencies, so not sure where this is coming from... is it in a old lock file?
Get-ssl-certificate is required to retrieving the cert from the bridge and validating the client on a local network, I guess you are looking at using the remote api functionality, so these are valid external ssl certificates?
Bottleneck was the smallest bandwidth limiting library I could find, but if you are using the remote api, thing will change a bit with respect to usage, although the overall limits are still valid to stay within the bridge limits for performance.
I prefer to not use a dependency when I can implement the same in a smaller way with low or no dependencies, but the last two give a reasonable amount of functionality that I really don’t want to have to build/maintain myself.
Can you clarify that your use case is a browser based client, using the remote api functionality? If so then I understand the desire to exclude dependencies that are not useful.
I have kept in mind that minification will be useful for browser users, so avoid doing dynamic requires etc... to ensure things will able to be minimised correctly.
I need to think on this a little, based off your answers, but we should be able to achieve some improvements for you.

I have taken a look at the get-ssl-certificate and it is really only a single file that provides the ability to read the certificate, it does use https, but it should not be coming in at a size of 83k if it is being minified (as all the other files in the package would be discarded).
How are you minifiying the code? As others in the distant past have minified this code base for the browser usage and we worked through those issues successfully in the past (one of the reasons that pushed me over to using axios over request at the time).

Currently I use webpack which bundles all requiredd sources. I could inspect this in more depth and comment my findings.
What I had in mind is either tree shaking (that would require using es imports instead of requires) which I guess you don't favor, or split the API into multiple entry points instead of just the main package import.
That way code splitting will have a chance to (for example) get around the ssl validation and the node https module at all.

Hi @peter-murray,
thanks for you comment. I'll try to answer as good as possible.

dgram functionality is not possible from client as noted and is only part of the older upnp lookups, if you don’t use discovery, it does not feature.

Since discovery is part of the exported api, dgram is as well and need a workaround for webpack.

Node-mbed-dtls-client was only in play when I was evaluating supporting the entertainment api, it is not part of the dependencies, so not sure where this is coming from... is it in a old lock file?

Good point. We can skip this. The main entry into this - the EntertainmentApi is commented out.

Get-ssl-certificate is required to retrieving the cert from the bridge and validating the client on a local network, I guess you are looking at using the remote api functionality, so these are valid external ssl certificates?

This is a server-side only think I guess. In the browser the browser itself is checking the ssl certificate.

Bottleneck was the smallest bandwidth limiting library I could find, but if you are using the remote api, thing will change a bit with respect to usage, although the overall limits are still valid to stay within the bridge limits for performance.

Thats a nice one, but I guess (at least for my usecase) this will be sufficient on server side only.
Because I'm creating a PWA which requires a valid ssl domain, I need kind of a proxy to my hue-bridge. Therefore I use the remote api and have no way around it. And to be secure with the app-credentials I deployed a server side proxy between the remove-api and my PWA. There all this makes sense, but not directly in the client I guess.

I prefer to not use a dependency when I can implement the same in a smaller way with low or no dependencies, but the last two give a reasonable amount of functionality that I really don’t want to have to build/maintain myself.

Sure, thats what I prefer also normally.

Can you clarify that your use case is a browser based client, using the remote api functionality? If so then I understand the desire to exclude dependencies that are not useful.

Does the above is enough explaination? I would like to have a PWA which requires a valid ssl domain. Therefore I cannot directly speak to the bridge, and the remote api directly does not support CORS and cannot secure the app credentials. Therefore I have a server-side part which will talk to the remote api, the client will use the server side 'mirror' (or proxy) of the api.

I have kept in mind that minification will be useful for browser users, so avoid doing dynamic requires etc... to ensure things will able to be minimised correctly.

That sounds reasonable and good. Its hard to require from variables when you want to bundle something.
But to split code and only load parts in the client when required there is the need to import/require in a promise like way.
It's not that easy to do that with plain node and if you are willing to do so, we need to spike a few ideas (inspired by webpacks require.ensure).

Thanks, that provides me with some good context.
This has been used in the browser before, I had a user utilizing it there, but that was under the 2.x versions.
I think the change to have discovery as a part of the v3 API is the change that might be now pulling in the dgram stuff from webpack. I need to take a look at this, but that would make a breaking change if it was to come out, so we would be looking at a major version number bump in that case.
If we look at the browser only uses case then you cannot access the Remote API directly, as CORS will prevent that from happening, hence your proxy service. In this case though you are not going to be instantiating a bridge, so the ssl certificate stuff would be dropped when you package your code, as it will not be used.
The project is built to support Node.js as the primary use case and others as a nice to have, so things are driven from the Node.js language support first. Unfortunately Node.js is really dragging out the migration to ES6 modules and I would be extremely cautious of creating a dual CommonJS/ES Module Package as there can be some very difficult issues you can introduce to downstream users.
I am also not a massive fan of compiling/transpiling JavaScript, but the community and browser based projects generally are. The whole point of JavaScript from me was avoiding the compilation (and verbosity) as I came from a Java background.
It may be possible to provide a stripped down API separate to v3 that is more browser friendly, but I don't want a nightmare of maintaining different sets of documentation for such a thing (along with split test suites).
I will take a bit of time to look at what a stripped down browser client might look like and set up some tests with webpack and see what starts to fall out. I am happy to continue to work on this to find something that works and makes sense.

So some quick findings:
With a modified v3 api entry point excluding the discovery features, webpack will generate a 521kb module.
I applied a patch to remove bottleneck and that got it down to 462kb, not the level of change I was expecting, considering that is the largest dependency (outside of axios). Where did you get your numbers from that you reported in the opening of this? It is still ballpark range, but not matching up with what I expected.
I need to look at what is cuasing the library to be so large with packed, as I would have thought it would have come in a little lighter and I need to plan to spend time in the right areas where we can get the best return.

In your use case, you have a proxy server. In the browser client side, you are not going to be creating a bridge instance, as you are talking to your proxy, not a bridge.
Are you emulating the actual API endpoints of a Hue bridge in your proxy and instantiating a bridge instance in the client browser code? If not how are you doing this interaction, do you have your own custom endpoints and just passing the JSON payloads from the library?
The addition of the ability to serialize to JSON and then reconstitute back to a model based object that was added in 4.x for your use case would only require the model based part of the code base in the client, not all the API components which of course are tied in to the more low level Node.js stuff.
I think a lot of the size (just reading through the webpacked file) appears to be coming from various security and crypto components, and axios will be dragging in a lot of this too.

Are you emulating the actual API endpoints of a Hue bridge in your proxy and instantiating a bridge instance in the client browser code? If not how are you doing this interaction, do you have your own custom endpoints and just passing the JSON payloads from the library?
The addition of the ability to serialize to JSON and then reconstitute back to a model based object that was added in 4.x for your use case would only require the model based part of the code base in the client, not all the API components which of course are tied in to the more low level Node.js stuff.

I do exactly this. My server side does use the whole remove api while the client side will require only the deserialized model. The server serializes the json.

I think a lot of the size (just reading through the webpacked file) appears to be coming from various security and crypto components, and axios will be dragging in a lot of this too.

It would be great to have a 'lite' api, or just a model api. This should trim down the package size a lot.

This is the output of the webpack-bundle-analyzer of a production build of my app.

Here are additional outputs of the whole node_modules folder:
When adding node-hue-api to the client:

Without node-hue-api:

So I am on the fence with the model either becoming another module altogether (i.e. node-hue-api-model) or just being able to require it as a top level object from the index.js of the node-hue-api module as it is.
If extracted to completely standalone it complicates the build/dependencies and development to a degree, if included, you will still have the dependencies showing up, but when webpacked, they should all be discarded.
I just ran a quick test of webpack on the model itself and it comes in at 83kb if targeted directly for packing into a minimized module.
What is your personal preference to this? Would having something like ;
const model = require('node-hue-api').model.v3;

work if I pulled that up from the existing v3 object in index.js or do you need something cleaner with respect to breaking it up.
Is having this webpacked in a dist directory and referenced as a module from the library (i.e. it would be native node.js module by default Common JS main, but you could import the model using new ES module references) required, or would you be happy to pack it on your side?

Breaking up the model sound very good. I would say for ease of api handling keep it in the same package but the require statement need to be a bit different. This should work for webpack:
const model = require('node-hue-api/model').v3;

If you have it directly on the main, webpack will still bundle all the api, because commonjs is by its nature of dynamic not tree shakeable.
To not break the current api and have it still in the v3 version, you could reexport it still from the main module. That way there is only a new 'more client' friendly version to require the model.
I'm also more than happy to bundle/pack it on my side, webpack will do nonetheless. No need to prebundle it.

I cannot find something I am happy with here that works across the mix of things we have in play here:

TypeScript definitions
Node.js CommonJS modules
ESM for the browser, that really only targets the Model

I have toyed with pulling out the model, types and placeholders in to a separate node module, but event then I am faced with having to invert all the code and rewrite it to use ESM and then compile back down to CJS. Due to the number of files involved here, that is a fairly heavy amount of work and something that does not really feeel worth the effort until Node.js properly catches up with ESM modules and I can cut support for the older LTS versions.
The reason I lean this way is that browser usage of the library is significantly smaller than Node.js usage.
Trying to tie in the TypeScript definitions is also tricky as the modules for Node.js and Browser end up being different, and I cannot find any easy way to support the generated TypeScript definitions across different modules (unless you write everything in TypeScript, which is a massive undertaking in itself, and not something I would enjoy doing).
That leaves me with a possibility of generating bundled files in a dist directory that would be contained in the tarball that published to npm. I can generate the model module at dist/model.js that you could consume, but not sure how easy that would be in your development process. I have seen some examples of older node libraries doing this type of thing, but I am not sure it standard practice these days.
Attached is an example of webpacked code that would be in the dist directory of a published npm package:
dist.zip
Would that work for you?
I really need to wait until we get an LTS version of Node.js that supports ESM before I want to invest a large amount of time in converting to ESM in the code base, or there is a larger pool of users requiring browser compatible code (which would require the library to be split up across the parts that are compatible with the browser and the rest).
If on the other hand you want to do an example branch of the code with the changes then I am happy to review that and kick the tyres in how it would work in practice.

Hi @peter-murray,
I also guessed thats it not that easy to get all the thing to work in a clean and reasonable way.
I know you prefer node.js as primary use case for this lib and thats totally fine (my case is in some way special).
Also the typescript (jsdoc) thing is quite hard and will get harder if these are multiple modules.
I also could understand that converting to typescript is not what you want and in the end you should have joy building and maintaining this lib. Otherwise we all would suffer 😉
I'm totaly fine with a model.js in a dist folder. Thats right now the right way to do it I think.
Whenever node (problably 12.x or 13) will have decent support for ESM we could reevaluate this - with ESM this would be quite easy because of proper tree shaking.
If you could provide a build with a separate module.js I'll give it a shot and see how far I can go with this. That would be a big improvment for me.
Thanks for all the effort you invested here.

There is a version of 4.0.2-alpha.1 or @next available with a dist/model.js webpacked file to try.

Great! I'll give it a try.
By the way: Are you willing to push that to a branch so I could fork and play around with that? I would propose to use rollup for bundling libraries (webpack is more for applications).
In addition I would love to see the model.js in the package root, so the import would be more like node-hue-api/model.js instead of node-hue-api/dist/model.js. That could be created with package.json files and a bit of copy at prepublish step.

The problem is that the index.js is kind of locked in CJS and will be in CJS format until Node.js supports ESM natively, which is part of the problem you have with tree shaking.
Lifting the model up is not too much of an issue, but, it would be in a CJS module, which exposes you to the same problem you are facing.
I tried rollup, but unless you are writing in ESM module syntax, the results do not look like what you are after. This also results is a mess with TypeScript definitions not matching up unless you identically have the rollup modules exposed under modules in the package.json generating off the same code, which leads us back to the problems of you not being able to treeshake the Node.js parts you do not want.

The existing webpack stuff is on the master branch currently, just not the webpack and webpack cli as dependencies. there is a script entry for generating the model.js file once tlhose two dev dependencies are installed (or globally available)

First commit in 5.0.0 alpha release to move the discovery out of the v3 API to remove some references that are not needed in the web app use case, https://github.com/peter-murray/node-hue-api/commit/f0855991ffc2c1dfed4117a409fd0f6d7c3ab553
It will take until release 6.x before I can complete the removal of all of this, but it is deprecated now.

Thank you. Thats great news :smiley:

@KnisterPeter 👋 , I have just completed the extraction of the model to a pure TypeScript library that is used to provide CommonJS and ESM module systems (https://github.com/peter-murray/hue-bridge-model).
I am preparing some changes to the way that this library will build, but other than the extraction of the library for the model, was there anything else here that was problematic to you?


Current price same for before_market_start and handle_data (daily data)

Hello, when running zipline with daily data, price (plus open/close/high/low/last transaction/volume) is the same for:
before_market_start
handle_data
and any function I schedule using time/date rules. I would expect at least to get the previous day's price in before_market_start. It would be nice to get that day's open if calling a schedule function at market open and price close with a schedule function at market close.
Use case would be select security base on previous day's price in before_market_start. Order security at open and check price at close.

In daily mode, any function run with schedule_function is essentially equivalent to just running the same code in handle_data.  This is part of the reason that we've actually droppped support for daily mode entirely on Quantopian: too many users found the behavior of schedule_function confusing in daily mode.  The right fix for this is probably to just raise a DeprecationWarning if schedule function is used in daily mode.  cc @llllllllll @jbredeche for thoughts on this.
As for getting the same data in before_trading_start and handle_data, that sounds like a bug to me.  before_trading_start should conceptually run before the first bar of the day, while handle_data should run conceptually on the last bar of the day in daily mode, so I'd expect to see the previous day's OHLCV in before_trading_start.

Thanks for the reply. I am intending to use zipline for development and
then load code into quantopian, so it would be good for zipline code to
match quantopian as much as possible.
Using schedule_function and explicitly stating an open or close price is
easy enough. A note about the limitations of using daily mode in the
zipline docs would be helpful.
Agree that before_trading_start conceptually should return prior days
prices. Current price could be 'Nan'.

Can I work on this issue?


Support availability topic

Publish the reachability of the inverter on an MQTT topic so that stale values are visible to be stale for consumers.
Also, probably publish online/offline state of dye-inverter-mqtt so that it is visible to decide whether the inverter is just unreachable (because there's no sun) or deye-inverter-mqtt is actually not running.

(Will work on that and forked for the purpose.)

@ConsoleCriminal How do you plan to implement it? I can think of at least two separate statuses:

daemon status - online/offline
logger connectivity status - connected/disconnected
What is your approach?

I used to think - piece of cake, set last will topic for the one and update
the status on success talking to the inverter or socket exception when
unreachable. After reviewing the code, I feel both is a larger venture,
though. :(
Krzysztof Białek @.***> schrieb am Mi. 15. Feb. 2023 um
20:01:

@ConsoleCriminal https://github.com/ConsoleCriminal How do you plan to
implement it? I can think of at least two separate statuses:

daemon status - online/offline
logger connectivity status - connected/disconnected
What is your approach?

—
Reply to this email directly, view it on GitHub
https://github.com/kbialek/deye-inverter-mqtt/issues/28#issuecomment-1431863864,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAE4PSAKKCA5JK7VRS4F4Y3WXURY7ANCNFSM6AAAAAAU4PY4EM
.
You are receiving this because you were mentioned.Message ID:
@.***>

--
Sent from my mobile phone. Please excuse errors and brevity.

Imho, adding a "classic" availability topic with retained last will would be a good start.
The current implementation is over simplified. It connects to the mqtt broker only when metrics are published.
This would have to be changed. The connection must be created once, with appropriate keep-alive setting and then the paho loop must be started. I'm not sure if paho will automatically recover after losing connection to the broker. That would have to be tested too. So yes, a longer trip that it seems to be at the first sight :slightly_smiling_face:

paho does that quite well. However, time is an issue this time of year as my inverter powers down when there's not enough sunlight. Which at present opens a time window during lunch break only. Might be moving this to summer. :(

fyi, I've implemented the status topics :slightly_smiling_face: See https://github.com/kbialek/deye-inverter-mqtt/releases/tag/2023.03.1


Update eng_wales_pre_process.py

scripts fails if the the folder is not present already, therefore this will help create the folder if it does not exist
Pull Request submission
the folder is expected to be present but if its not the scripts fails, hence this patch will take care of the folder

Not required


Displayed alerts not refreshing when a filter is edited

When manually editing a filter in the top search bar, the alerts displayed aren't updated until the refresh triggered by the refresh interval happens.
Example, showing images for:

The default filters on the demo site
Editing one of the filters
The spinning that occurs when the user presses enter after editing. This appears to last until the refresh interval, so it's more noticeable when a longer refresh interval (like 70s) is set.

This affects Karma v0.64.  On the last Karma release, v0.63, editing a filter like this immediately refreshes the displayed alerts when the user presses enter.
This was tested locally and on the demo site (https://karma-demo.herokuapp.com/).
Tested on Chrome (83.0.4103.97) and Firefox (77.0.1)
Thank you!!!

#1872 should fix that, thanks!


#36 Conversion to MPP with Kotlin-JS implementation

Tests are green, deployment routines are commented for now. Let's see how TC reacts to this build.

Fingers crossed.
Publishing is changed to multiplatform structure.
Not working:

CommonMark runne, due to gradle update and subsequent conversion to kts
Publication date, need to understand how to get Date in kts w/o access to jvm :S


Only year supports in time column

Seems like only year number supports. I was trying to plot with Date values in YYYY-MM-DD format, it shows error:
   for year in range(self.df[self.time_column].min(), self.df[self.time_column].max()+1):                               TypeError: can only concatenate str (not "int") to str
Please check

Hello @tapos12 and thanks for pointing that out. I will be working on this tomorrow, do you have a reprex or a dataset I could test this on?

I was trying the covid dataset from python bar_chart_race library:
https://pypi.org/project/bar-chart-race/

I've updated the code to work with date format as well as a sequence of numbers, find an example with the bar_chart_race dataset in example/COVID-DateFormat.py. I've added a date_format argument so that you can use a date format (using strftime) of your choice for whatever date/time sequence you have available. Thanks for the feedback and let me know if you have any further issue.

For your convenience @tapos12: example in colab


Error working with private and presence channels

Hello heywhy,
please i have issues connecting to my laravel broadcast with the private and presence channels, only the public channels seem to be working fine, i have investigated and found out that headers need to be attached to PusherOptions, i have added the headers but still keep having issues, here is the codebase.
String _authUrl = "http://$url:$port/broadcasting/auth";
      Map headers = await _headers;

      log("the authrlksdlfsdf ${headers['Authorization']}");

      PusherAuth _pusherAuth = PusherAuth(
        _authUrl,
        headers: headers,
      );
      log("${_pusherAuth.toJson()}");

      PusherOptions _pusherOptions = PusherOptions(
        host: url,
        port: port,
        encrypted: false,
        auth: _pusherAuth,
      );

      _pusher = FlutterPusher(
        appKey,
        _pusherOptions,
        lazyConnect: true,
        enableLogging: true,
        onConnectionStateChange: (ConnectionStateChange events) =>
            log("${events.currentState}"),
        onError: (ConnectionError e) =>
            log("Error occurred logging you in with auth tokens ${e.toJson()}"),
      );

      _pusher.connect();
      _echo = new Echo({
        "broadcaster": "pusher",
        "client": _pusher,
      });

      try {
        _echo
            .private('heartbeat')
            .listen('Heartbeat', (e) => log("Private channel result: $e"));
      } on PlatformException catch (e) {
        print("Error occurred trying to login with your key, $e");
      }

Please confirm that the installed version is 0.2.1. The authorizer is being set on the pusher client instance.

yes i am.

Here is a screenshot of the error i am seeing

Is the echo server on your local machine?

Is the echo server on your local machine?

I'm not facing this issue. The problem you facing seem to be that the emulator can't communicate with the server u specified.

okay i will try another emulator,

Is the echo server on your local machine?

no its not on my local machine

Can access the auth route from an HTTP client like Postman?

are you suggesting i try sending a get request to the server to see if it responds?

hi i was trying to connect to presence channel and got same problem im using laravel websockets on mylocal server and echo package on flutter app on emulator

I want to believe that you've been able to resolve this issue

Not at all. I have just given up. As the issue still persists.
Thanks.
Peterson N. Umoke.
Sent from Mailhttps://go.microsoft.com/fwlink/?LinkId=550986 for Windows 10
From: atanda<EMAIL_ADDRESS>Sent: Friday, 17 July 2020 12:54 PM
To<EMAIL_ADDRESS>Cc: Peterson<EMAIL_ADDRESS><EMAIL_ADDRESS>Subject: Re: [heywhy/flutter-pusher-client] Error working with private and presence channels (#7)
I want to believe that you've been able to resolve this issue
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://github.com/heywhy/flutter-pusher-client/issues/7#issuecomment-660067029, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AC2LKRXZNXCAPB3RQWVWWF3R4A3YTANCNFSM4MX3VTRQ.

I have decided to rewrite the app in pure java.
Thanks.
Peterson N. Umoke.
Sent from Mailhttps://go.microsoft.com/fwlink/?LinkId=550986 for Windows 10
From: Peterson .N<EMAIL_ADDRESS>Sent: Friday, 17 July 2020 12:55 PM
To<EMAIL_ADDRESS><EMAIL_ADDRESS>Cc<EMAIL_ADDRESS>Subject: RE: [heywhy/flutter-pusher-client] Error working with private and presence channels (#7)
Not at all. I have just given up. As the issue still persists.
Thanks.
Peterson N. Umoke.
Sent from Mailhttps://go.microsoft.com/fwlink/?LinkId=550986 for Windows 10
From: atanda<EMAIL_ADDRESS>Sent: Friday, 17 July 2020 12:54 PM
To<EMAIL_ADDRESS>Cc: Peterson<EMAIL_ADDRESS><EMAIL_ADDRESS>Subject: Re: [heywhy/flutter-pusher-client] Error working with private and presence channels (#7)
I want to believe that you've been able to resolve this issue
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://github.com/heywhy/flutter-pusher-client/issues/7#issuecomment-660067029, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AC2LKRXZNXCAPB3RQWVWWF3R4A3YTANCNFSM4MX3VTRQ.

I'm very sorry about that, can you create a snippet and send to my personal mail. I have a hunch that the authentication URL is the problem because the FileNotFoundException tells that the endpoint is not found which is as it is in your case.
You can reference this issue: #12


Adding the CMAKE_GENERATOR  line to all external cmake files.

The failure looks related. Could you take a  look?

I grepped the logs and there are some suspicious architecture-related warnings:
$ grep "library machine type" 5ea42dd3-build.log  | head
    41>zlib\install\lib\zlibstatic.lib : warning LNK4272: library machine type 'X86' conflicts with target machine type 'x64' [T:\src\github\tensorflow\cmake_build\proto_text.vcxproj]
    41>gif\install\lib\giflib.lib : warning LNK4272: library machine type 'X86' conflicts with target machine type 'x64' [T:\src\github\tensorflow\cmake_build\proto_text.vcxproj]
    41>png\install\lib\libpng12_static.lib : warning LNK4272: library machine type 'X86' conflicts with target machine type 'x64' [T:\src\github\tensorflow\cmake_build\proto_text.vcxproj]
    41>jpeg\install\lib\libjpeg.lib : warning LNK4272: library machine type 'X86' conflicts with target machine type 'x64' [T:\src\github\tensorflow\cmake_build\proto_text.vcxproj]
    41>lmdb\install\lib\lmdb.lib : warning LNK4272: library machine type 'X86' conflicts with target machine type 'x64' [T:\src\github\tensorflow\cmake_build\proto_text.vcxproj]
    41>jsoncpp\src\jsoncpp\src\lib_json\Release\jsoncpp.lib : warning LNK4272: library machine type 'X86' conflicts with target machine type 'x64' [T:\src\github\tensorflow\cmake_build\proto_text.vcxproj]
    41>farmhash\install\lib\farmhash.lib : warning LNK4272: library machine type 'X86' conflicts with target machine type 'x64' [T:\src\github\tensorflow\cmake_build\proto_text.vcxproj]
    41>fft2d\\src\lib\fft2d.lib : warning LNK4272: library machine type 'X86' conflicts with target machine type 'x64' [T:\src\github\tensorflow\cmake_build\proto_text.vcxproj]
    41>highwayhash\install\lib\highwayhash.lib : warning LNK4272: library machine type 'X86' conflicts with target machine type 'x64' [T:\src\github\tensorflow\cmake_build\proto_text.vcxproj]
    41>nsync\install\lib\nsync.lib : warning LNK4272: library machine type 'X86' conflicts with target machine type 'x64' [T:\src\github\tensorflow\cmake_build\proto_text.vcxproj]

...so for some reason it looks like the build is defaulting to making 32-bit builds for some of the external projects. I guess the spirit of the 90s is alive in CMake.
Notably protobuf.cmake doesn't display these errors, as it has an explicit directive to set the build platform to ${CMAKE_GENERATOR_PLATFORM} inprotobuf.cmake:
https://github.com/tensorflow/tensorflow/blob/926fc13f7378d14fa7980963c4fe774e5922e336/tensorflow/contrib/cmake/external/protobuf.cmake#L38-L49
...so perhaps what's needed is to replicate that structure (effectively setting the -A, -G, and -T flags to match the parent) in each of the externals. Perhaps setting one but not the others leads to it using bad defaults?

@av8ramit Are we really merging this into 1.5? Is this still current?

@gunan feel free to reopen if you plan on using this.


npm install

Trying to do this
npm install<EMAIL_ADDRESS>
Its always returning me this
+--<EMAIL_ADDRESS>`--<EMAIL_ADDRESS>invalid
  `--<EMAIL_ADDRESS>
Why is is : 'invalid'

Also, when i look for versions
manueldupont@manu-macbook-pro avid-sibelius-publishing-viewer (master) $ npm view react-slick versions

[ '0.0.1',
  '0.1.0',
  '0.2.0',
  '0.2.1',
  '0.2.2',
  '0.3.0',
  '0.3.1',
  '0.3.2',
  '0.3.3',
  '0.3.4',
  '0.3.5',
  '0.3.6',
  '0.3.7',
  '0.3.8',
  '0.3.9',
  '0.4.0',
  '0.4.1',
  '0.5.0',
  '0.6.0',
  '0.6.1',
  '0.6.2',
  '0.6.3',
  '0.6.4',
  '0.6.5',
  '0.6.6',
  '0.6.7',
  '0.6.8',
  '0.6.9',
  '0.7.0',
  '0.7.1',
  '0.7.2',
  '0.8.0',
  '0.8.1',
  '0.8.2',
  '0.8.3',
  '0.9.0-rc1',
  '0.9.0-rc2',
  '0.9.0',
  '0.9.1',
  '0.9.2',
  '0.9.3',
  '0.10.0',
  '0.11.0',
  '0.11.1',
  '0.12.0',
  '0.12.1',
  '0.12.2',
  '0.12.3',
  '0.12.4',
  '0.12.5',
  '0.13.0',
  '0.13.1',
  '0.13.2',
  '0.13.3',
  '0.13.4',
  '0.13.5',
  '0.13.6' ]

0.13.6 is really there, so why can't I install ?
Thanks.

I just installed and it worked fine for me


Create rooms in redis on run Fixes #30

Create/update the rooms in redis on run so that the rooms can be persisted. I had to strip the muc_domain from the room name since it appears that lita is persisting just based on the room name and the room list contains the muc_domain.

Thanks for the PR! I will review it as soon as I can.

Released in lita-hipchat 3.0.1. Thank you very much and I apologize for the delay.

@sadfuzzy Setting rooms in the config is deprecated. This was a fix so that the rooms were properly stored in redis.


How to save pretrained weights

load_state_dict vs. checkpoint vs. huggingface model
idea: 1. Step: state_dict 2.Step: Upload to huggingface
state_dicts auf hf

project internally: via wandb (and state_dicts?)
finished models on huggingface


Detail on Resource Instances Feature

Resource Instances Feature when updating Storage account networking:
Resource instances
Specify resource instances that will have access to your storage account based on their system-assigned managed identity. Rules created by other tenants can only be modified by the creator.
There is no documentation on the above in this page.

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

ID: 2632af75-7664-b79b-ac5b-c7c17e6a609a
Version Independent ID: 6ecf71b6-77c4-3ab6-8ec9-353ea407d70f
Content: Configure Azure Storage firewalls and virtual networks
Content Source: articles/storage/common/storage-network-security.md
Service: storage
Sub-service: common
GitHub Login: @santoshc
Microsoft Alias: tamram

@haymansfield Thanks for reporting this. I have assigned the issue to the content author to investigate further and update the document as appropriate.

@haymansfield Thanks for reporting this. I have assigned the issue to the content author to investigate further and update the document as appropriate.

Thanks @haymansfield. We've updated the content with details around resource instances. The section of content is here - https://docs.microsoft.com/azure/storage/common/storage-network-security#grant-access-from-azure-resource-instances-preview Thanks again!
#please-close

Thanks for the prompt update. If I could ask one question, it is whether
the cognitive services storage account access can be used by the speech
services batch transcription.
On Mon, 1 Feb 2021, 18:48 Norm Estabrook<EMAIL_ADDRESS>wrote:

Thanks @haymansfield https://github.com/haymansfield. We've updated the
content with details around resource instances. The section of content is
here -
https://docs.microsoft.com/azure/storage/common/storage-network-security#grant-access-from-azure-resource-instances-preview
Thanks again!
#please-close
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/MicrosoftDocs/azure-docs/issues/69507#issuecomment-771074847,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AEWLRSSBBBGSD2IATSSQCALS43ZOXANCNFSM4WTTMQ7A
.


Error adding BANR from NASDAQ

When I tried to add BANR from NASDAQ I got this error:
{"@timestamp":"2018-09-09T20:42:45Z","level":"error","message":"An error happen while updating all stock dividend symbol [BANR] -\u003e error [INSERT INTO stock_dividend VALUE (1a82dc78-2e20-473d-af4e-052304a924e6, 2018-07-09 00:00:00 +0000 UTC, 2018-07-19 00:00:00 +0000 UTC, 2018-07-10 00:00:00 +0000 UTC, payed, 0.500000, 0.000000, 0.000000, 0.000000): pq: duplicate key value violates unique constraint \"stock_dividend_pkey\"]"}

The historical dividend looks like:

Ex Date | Record Date | Pay Date | Special | Amount | Note | % ChangeFrom Prev | % ChangeFromPrev Year | Prior12 MonthsYield
9-Jul-2018 | 10-Jul-2018 | 19-Jul-2018 |   | 0.3500 |   |   | +40.0% | 1.93%
9-Jul-2018 | 10-Jul-2018 | 19-Jul-2018 | Y | 0.5000 | Board of Directors declared a regular quarterly cash dividend of $0.35 per share and a special cash dividend in the amount of $0.50 per share. The dividends will be payable July 19, 2018 |   |   |
9-Apr-2018 | 10-Apr-2018 | 19-Apr-2018 |   | 0.3500 | Increased | +40.0% | +40.0% | 2.00%

Another error related
{"@timestamp":"2018-10-01T19:42:23Z","level":"error","message":"An error happen while updating all stock dividend symbol [WRB] -\u003e error [INSERT INTO stock_dividend VALUE (cb8a0906-33e8-412f-9bba-1d6eca191138, 2018-09-18 00:00:00 +0000 UTC, 2018-10-03 00:00:00 +0000 UTC, 2018-09-19 00:00:00 +0000 UTC, announced, 0.150000, 0.000000, 7.100000, 0.730000): pq: duplicate key value violates unique constraint \"stock_dividend_pkey\"]"}


The Battle for Wesnoth

Description
Egg for The Battle of Wesnoth server. Needs some specific packages to build/run the server binary so a custom yolk has been created. This egg is written assuming this PR will be merged.
Since it currently cannot be run until the yolk is merged and built I will keep this a draft.
Checklist for all submissions

[x] Have you followed the guidelines in our Contributing document?
[x] Have you checked to ensure there aren't other open Pull Requests for the same update/change?
[x] Have you tested and reviewed your changes with confidence that everything works?
[x] Did you branch your changes and PR from that branch and not from your master branch?

If not, why?:

New egg Submissions

[x] Does your submission pass tests (server is connectable)?
[x] Does your egg use a custom docker image?

[x] Have you tried to use a generic image?
[ ] Did you PR the necessary changes to make it work?

[x] Have you added the egg to the main README.md and any other README files in subdirectories of the egg (e.g /game_eggs) according to the alphabetical order?
[x] Have you added a unique README.md for the egg you are adding according to the alphabetical order?
[x] You verify that the start command applied does not use a shell script

[ ] If some script is needed then it is part of a current yolk or a PR to add one

[x] The egg was exported from the panel

@mattman107 Please update your fork branch as it is missing to many commits to review / work on this


Added the interactive list

To-do List

Use webpack to bundle JavaScript.
Use proper ES6 syntax.
Use ES6 modules to write modular JavaScript.
Add a new JavaScript file and import it as a module,
Add event listener to the checkbox (change).
Update items object's value for completed key upon user actions.
Implement a function for the "Clear all completed" button (use filter() method).
Store the updated array of items in local storage, so the user gets the correct list values after the page reloads

Hi @sidiksam,
You have been doing a tremendous job so far 👌 There are some issues that you still need to work on to go to the next project but you are almost there!
To Highlight 🎉
PR has a title and summary. ✔ No linter errors ✔
Required Changes ♻

[ ]  Please kindly make sure that when you click all the checkboxes they update the individual list item. At the moment, the change event only works for the first list item.
[x]  Please kindly ensure that when the site is reloaded the checkbox remains checked if it was previously checked.
[ ]  Please kindly ensure the Clear all completed actually clears all completed.

Optional suggestions
Comments with the [OPTIONAL] prefix are not a must to implement however, It's strongly recommended to work on them as they can make your code better.
Happy coding!👏👏👏
Please leave any questions or comments in the PR if you have any doubts or unclarity! You can tag me using @AnselemOdims for a quicker response
Note: Please, do not open a new Pull Request for re-reviews. You should use the same Pull Request submitted for the first review, either valid or invalid unless it is requested otherwise.
As described in the Code reviews limits policy you have a limited number of reviews per project (check the exact number in your Dashboard). If you think that the code review was not fair, you can request a second opinion using this form.

can u go through the code again,
the reload is not part of the requirement,


Contributing to: NewSource.json

Adding/Updating NewSource.json

Thanks for the submission! I see two different datasources here, however.

One points to the French national address database. We do want to import French data, but this project is under ODbL and so not usable for us.
The other is for Buenos Aires, which has already been collected https://github.com/openaddresses/openaddresses/blob/master/sources/ar-ba-buenos_aires.json (if this is an update, please let me know!)


changed meta-a link so it goes to the old version w/figures

Actually, I take it back.  The original link is fine.  It just takes more work to find the Analysis 1.6 graphic in Table 1 but you can click to it.  I was just scrolling through looking for the forest plots.

My local copy now reflects changes in the master but I think you might need to rebase the development branch with the master - http://stackoverflow.com/questions/8965781/update-an-outdated-branch-against-master-in-a-git-repo


Slow performance on Ubuntu 19.04

A user has reported that file downloads are very slow on Ubuntu 19.04.

Verified as an issue on Ubuntu 19.04, not on 18.04 LTS.

Need to test with a build from the latest Xojo 2019r2 platform, once available.

Not fixed after rebuilding with Xojo 2019 r1.1, defer to Xojo 2019 r2.1.


Cant run Gitea Actions from private Repo

Description
I have a private Repo with an example action.
Its totaly clear to me, that the runner can not clone this private repo without authentication.
So i use the checkout action with a personal access token and clone the action repo to the runner.
After that i try to run the action as follwing:
  - name: Check out repository code
    uses: actions/checkout@v3
    with:
      token: ${{ secrets.token }}
  - name: Hello world action step
    id: hello
    uses: ./

But this does not work.
I have seen, that the Github docs show exactly this tooling for private repos.
https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#example-using-an-action-inside-a-different-private-repository-than-the-workflow
Also i cant find any clear instructions or documentation, how to deal with private repos in actions on gitea.
Gitea Version
1.20.0
Operating System
Debian Linux
How are you running Gitea?
Running via docker in an debian Linux hosted inside a VPS (LXC)

Have you set a right secret with token as the name?
Actually, you don't need to do this. The runner will get a temporary token to  checkout the repo even it's private. Please try again without with
  - name: Check out repository code
    uses: actions/checkout@v3

secret is set and it can clone successful - without it cant.
The runner maybe can checkout the "repo under test". But what happens if i want to use a action, that is hosted in another private repo?
This is the job from the github hello world action, hosted on my own gitea server.
The folowing code will fail:

jobs:
  hello_world_job:
    runs-on: ubuntu-latest
    name: A job to say hello
    steps:
      - name: Check out repository code
        uses: actions/checkout@v3
      - name: Hello world action step
        id: hello
        uses: https://gitea..####/actions/hello-world-docker-action@main
        with:
          who-to-greet: 'test action'
      - name: Get the output time
        run: echo "The time was ${{ steps.hello.outputs.time }}"

So the point is that your runner failed with uses: https://gitea..####/actions/hello-world-docker-action@main.
Now it's duplicated with #25929

Clone via Personal Access Token is working.
So my main question is, why running a action from local cloned content is not possible on the runner?
Github can reference the local dir in the uses: directive.
This seems not to work in Gitea - is this correct?

So my main question is, why running a action from local cloned content is not possible on the runner?

It is not supported yet.


Show other mutation attributes as separate colours in 3D datashade?

Datashader supports shading multiple attributes of each pixel in different colours. I wonder if we could shade num_inheritors as another dimension? Might take some fiddling, but the examples here look like it might work:
https://datashader.org/getting_started/Pipeline.html#colormapping
https://datashader.org/getting_started/Pipeline.html#colormapping-3d-categorical-data
These are categorial though, so maybe num_inheritors wouldn't work. We could imagine having intron/exon or something as a categorial to shade by. Worth playing with a bit anyway I think.

Yes, this would be really cool with genome annotations! I'll have a go at this once we have the genome tracks in place.


added all missing languages

Hello,
I have attached to this PR all the languages that are missing in your actual code.
All these languages have been tested and are working.

Oops, didn't think it would delete the PR too.
The full list is available here https://github.com/UnBonWhisky/googletrans/blob/main/googletrans/constants.py#L83