v3.2.1 created_at, and updated_at stored as 0.

Hi,
After the recent update, the created_at and updated_at values are stored as shown below:
[updated_at] => MongoDate Object (
[sec] => 0
[usec] => 0
)
[created_at] => MongoDate Object (
[sec] => 0
[usec] => 0
)

@jenssegers downgrading to v3.2.0 fixed the datetime issue, I am using laravel 5.3.

Damn that is weird, I'll check it out.

I'm not seeing this behaviour in my unit tests though

Can confirm this is happening for us as well in several of our projects after upgrading to 3.2.1

@staf are you running php 7 or php 5?

I'm running 7. A coworker on 5.6 had the same issue. But a driver upgrade from 1.1 to 1.2 solved it in either case.

Hi, I am having a similar issue, dates (created_at, updated_at) of all models are saving like  ISODate("1970-01-01T00:00:00Z"), always this same date
I had to downgrade to 3.2.0 and all works fine again, I have this problem only in server (Ubuntu 14 and PHP 7.0) but not in my machine (win10, php7.0)

confirmed, php7, both of my setups, laravel 5.4 and lumen 5.2, all 6 of my models

Issue exists with PHP 7.0 and MongoDB 1.2.5 driver. Had to downgrade to 3.2.0 and its working.

@jenssegers this is happening now with version 3.2.0 on win10 also

Could someone do a PR to revert the previous change to fix this issue?

I also had the same problem. Updated mongodb driver and problem was fixed. I'm using PHP 7. Those who experience this issue, try updating mongodb driver.

@Endijs to what version? i always keep mine up to date

@acidjazz
`
$ php -v
PHP 7.0.13-0ubuntu<IP_ADDRESS> (cli) ( NTS )
Copyright (c) 1997-2016 The PHP Group
Zend Engine v3.0.0, Copyright (c) 1998-2016 Zend Technologies
with Zend OPcache v7.0.13-0ubuntu<IP_ADDRESS>, Copyright (c) 1999-2016, by Zend Technologies
$ php --ri mongodb
mongodb
MongoDB support => enabled
MongoDB extension version => 1.2.5
MongoDB extension stability => stable
libbson bundled version => 1.5.4
libmongoc bundled version => 1.5.4
libmongoc SSL => enabled
libmongoc SSL library => OpenSSL
libmongoc crypto => enabled
libmongoc crypto library => libcrypto
libmongoc crypto system profile => disabled
libmongoc SASL => disabled
`

@Endijs you sure your dates are being stored correctly now?
if this is the solution then @jenssegers can we somehow put a stipulation on this version to require that version of the php driver to help avoid this severe issue?

@acidjazz Well - for me it worked out (just like for @staf ). At least i can't spot any new records with 0 anymore.  However @domagala is also using 1.2.5 and is reporting that issue still persists. Thus it looks like sometimes that fixes the problem, but not always. Maybe something else is at play here.
But it's good place to start for those who are having this issue. Try updating mongodb driver and report if that helps or not.

Closing, merged in #1148.


Feature: timeline datastore

This PR introduces a concept known as the Timeline Datastore. The datastore is a key value store that can be referenced from the content of a timeline object. When the timeline is resolved the references are replaced by the current value of the reference. If the timeline object started after the last update to the Timeline Datastore it may use a default value instead.
Proposed API for timeline objects:
const mixEffect0: TSRTimelineObj = {
    id: 'me0',
    enable: {
        start: Date.now(),
    },
    layer: 'me0',
    content: {
        deviceType: DeviceType.ATEM,
        type: TimelineContentTypeAtem.MixEffect,

        $references: {
            input: { // the datastore key
                path: 'me.input', // property to override
                overwrite: false, // whether the default should override if the object is newer than the datastore value
            }
        },

        me: {
            input: 1,
            transition: AtemTransitionStyle.Cut
        }
    },
}

Proposed format of the datastore:
const ds = {
    'input': {
        value: 2, // the value to place into the timeline object
        modified: Date.now(), // when the datastore value was last updated
    }
}

This is a relatively small change to the TSR API but it allows systems using the TSR to control devices using very small database updates instead of updating the entire timeline. It's usage is entirely optional.

Codecov Report

Merging #219 (130b6c3) into release46 (efce5e2) will increase coverage by 69.83%.
The diff coverage is n/a.

@@               Coverage Diff               @@
##           release46      #219       +/-   ##
===============================================
+ Coverage      30.16%   100.00%   +69.83%
===============================================
  Files             52        19       -33
  Lines           8039       526     -7513
  Branches        2026        55     -1971
===============================================
- Hits            2425       526     -1899
+ Misses          5114         0     -5114
+ Partials         500         0      -500

Impacted Files
Coverage Δ

...ackages/timeline-state-resolver-types/src/index.ts
100.00% <ø> (ø)

...ges/timeline-state-resolver-types/src/hyperdeck.ts
100.00% <0.00%> (ø)

packages/timeline-state-resolver/src/conductor.ts

...ckages/timeline-state-resolver/src/devices/vmix.ts

...ackages/timeline-state-resolver/src/devices/obs.ts

...ges/timeline-state-resolver/src/devices/quantel.ts

packages/timeline-state-resolver/src/doOnTime.ts

...line-state-resolver/src/devices/panasonicPTZAPI.ts

...s/timeline-state-resolver/src/devices/hyperdeck.ts

...imeline-state-resolver/src/devices/singularLive.ts

... and 25 more

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

The issues mentioned in the review were fixed during a collaborative VS code session.


Issue unpickling a wrapped keras model into a Shiny app

I am building a Shiny app to host a pretrained model so that the user can run and view the outputs of the model without dealing with the code. The model itself is a keras model built in a function named model(), then wrapped in a scikeras KerasClassifier wrapper that is further wrapped in a hiclass LocalClassifierPerParentNode wrapper, then trained and pickled. Code mockup of how the model is built:
import tensorflow as tf
from scikeras.wrappers import KerasClassifier
from hiclass import LocalClassifierPerParentNode
import pickle

def model():
.............
return model

scikeras_model = KerasClassifier(model=model, args)
scikeras_model_lcppn = LocalClassifierPerParentNode(scikeras_model)

scikeras_model_lcppn_res = scikeras_model_lcppn.fit(x_train, y_train)

pickle.dump(scikeras_model_lcppn_res, open('filename.sav', 'wb'))

Outside of a Shiny app, the model can be successfully pickled and unpickled as long as the model() function is imported where it is unpickled. I have created a model.py file that contains the model() function definition and import it from this file. I have built a Shiny app and attempted to load the model into the app, but I get the following error:
AttributeError: Can't get attribute 'model' on <module '__main__' (built-in)>
This suggests that the script is not reading the model() import correctly, even though it is explicitly imported (i.e. from model import model) in the preceding line. I have tried defining the model() function explicitly within the app code instead of importing it and I receive the same error.
I have also tried pickling just the keras model, unpickling the keras model in the app, then wrapping it and training it there. This avoids the AttributeError above because model() no longer has to be called, but it requires training the model in the app, which is against the point of the app.
I have tested this in both Shiny Express and Shiny Core and experience the same issue in both. Since I only experience this error within a Shiny app and the model unpickles successfully outside of a Shiny app, I believe this is a Shiny-specific issue.

Hi @sarahxj and thanks for the question. Do you think your issue could be generalized to a problem with importing the module module or is it specifically about the pickled model? I ask because it's much easier to provide help when we have a complete, runnable example.
It would probably be easiest for both of us if you can create a reproducible example that doesn't require scikeras or a pickled model. Or you if you could create a small model example, that could work too. You can use https://shinylive.io/py as a place to develop and share the example if the example is small enough.


fix: sns topic creation should not be idempotent

This is a re-roll of #3235.
See this comment for why we are re-rolling this.
closes #3288
Co-authored-by: VenelinMartinov<EMAIL_ADDRESS>

@t0yv0 I recreated this because I totally botched trying to rebase from master after the upgrade.

When merging please update the merge commit with the original description - we build release notes from the commit messages and it's great to have a good summary there of what the users are getting. Much appreciated.


Remove unused types in css-types.ts

This PR removes unused CSS property types. Unused types are problematic because they cause type-checking to fail if you have the noUnusedLocals flag enabled in your tsconfig.json.
I also looked at https://github.com/frenic/csstype for reference and these types don't seem to be present there anymore either.

Thanks! /cc @hadihallak


plotting causing core dump when using profiler

Both @MarshallYan  and I have encountered instances where training crashes due to issue with tkinter library (which is the python interface to tcl/tk).  This library is used under the hood by things like matplotlib, called during the plot generation.
One of the errors is below:
`Exception ignored in: <function Variable.del at 0x7fb362735300>
Traceback (most recent call last):
File "/home/shuaiy/miniforge3/envs/modelforge/lib/python3.11/tkinter/init.py", line 410, in del
if self._tk.getboolean(self._tk.call("info", "exists", self._name)):
RuntimeError: main thread is not in main loop
Exception ignored in: <function Variable.del at 0x7fb362735300>
Traceback (most recent call last):
File "/home/shuaiy/miniforge3/envs/modelforge/lib/python3.11/tkinter/init.py", line 410, in del
if self._tk.getboolean(self._tk.call("info", "exists", self._name)):
`
This only occurs when we have profilers set.  This seems to happen at different "times" (i.e., epochs).  E.g., crashing on epoch 18 one time 48 the next, 97 a third time (when using the simple profiler)
Since this only happens during profiling, which typically will only typically run a few steps (and it seems to happen randomly), I'm not sure how much effort we should put into trying to better diagnose this.  If it crashes too early to get data, one can reduce number of training steps or simple try running again.

Additional note, this occurs when using tensor board locally on my machine (which takes in the matplotlib figures and handles things after that...it might not happen in wandb).  @MarshallYan tried setting the matplotlib backend to agg and that solves the issue.  Will push a quick PR for this.

import matplotlib matplotlib.use("Agg")
Added to the top of training.py


Increase Load Balancing Max Current

You cant set the Load Balancing Max Current higher than 32A in the plugin. I've set mine to 40A in the MyEve app.
I think the max should be set to something like 80A since thats the max for small companies (in The Netherlands atleast). Larger companies can have more but I don't think thats needed.

i'll put this in todo list

@sweebee  can you take a look at this beta version?
https://github.com/leeyuentuen/alfen_wallbox/releases/tag/2.7.22


Fix S1/S2 correction and gas gain when simulating S1/S2PE

This pull request proposes two changes:

Use S1/S2 correction calculated from TRUE positions rather than RECONSTRUCTED ones when we simulate PEs;
Add gas gain (x, y) dependence.

Should resolve #121.
Maybe someone should update the notebooks as well. Since the notebooks contain benchmark runs, I can't update them directly.

Thanks @mhliu0001 Only one suggestion. I think it's better to define the gas gain map as the relative map to parameter['gas_gain']. Then the placeholder map should be all identities. Then it won't have any conflicts with previous usage.


[FEATURE REQ] Update mgmt automation for pom with maven profile

mgmt automation will create/modify the sdk/<group>/pom.xml when adding new module.
There is a pending update on maven profile https://github.com/Azure/azure-sdk-for-java/pull/35810, that affect the content of this pom.xml
script need to be updated to reflect the pom after above PR merged.

This item may also log a list of new modules that been added by mgmt, before said PR get merged. We need to check it afterwards to make sure they had a correct profile.

Keep a track of new group that needs update after maven profile PR merged.
iotfirmwaredefense


Support for { and }

Would love to see this plugins support smooth scrolling for curly braces navigation (which seems to be a popular navigation method for some users).

This plugin aims to add smooth scrolling support for all window scrolling commands (:h scrolling). I don't think it's worth going down the rabbit hole of supporting every motion command that may indirectly move the window. Maybe it's more adequate to cover these use cases in the wiki instead so that people can share their own wrapper functions for different motions. Some useful once that come to mind are n/N and #/*.

Fair enough haha. In that case, what should the number of lines be for this motion, or would I need Treesitter to determine that?

You would need a function that dynamically looks for the next start/end of a paragraph (: h paragraph) and calculates the number of lines that you would need to scroll to get there and pass them to require('neoscroll').scroll(). No need for Treesitter. I may add some functions for the motions I care about in the wiki when I have time.

Ahh I see. Is there a way to define a dynamic function for this use case?

Anyone made any headway on this? I would love to have this feature. I've been looking through
:h paragraph
:h lines
:h nvim_buf_get_lines
and playing around with things like
/^$
but can't quite put it together to get the number of lines. I'll post here if I find a way and I'll be super grateful if someone else does as well!

Thanks for the plugin @karb94!
I packaged paragraph support as a separate plugin, hope it helps! https://github.com/roobert/neoscroll-paragraph.nvim

Thanks so much @roobert!
I'm working out how to emulate the '}' motion by ignoring sequential blank lines.
Your solutions is awesome! Thanks for sharing. Here's what I've come up with so far based on yours:
--> heavily inspired by roobert/neoscroll-paragraph.vim
--> thanks roobert!
function next_paragraph_line_count(search_direction)
   local current_line = vim.api.nvim_win_get_cursor(0)[1]
   local next_paragraph = vim.fn.search("\\(^$\\)\\(\\n^$\\)\\@!", search_direction)
   local distance_to_scroll = next_paragraph - current_line
   return distance_to_scroll
end

require('neoscroll.config').set_mappings({
   ['J'] = {'scroll', { 'next_paragraph_line_count("n")', 'false', '50'}},
   ['K'] = {'scroll', { 'next_paragraph_line_count("b")', 'false', '50'}},
})

The regex argument in vim.fn.search() will ignore segments of blank lines together. It looks for the next blank line that is not followed by another blank line. It's still a little buggy, but I'm still reading about all the settings available within this plugin so hopefully I can get it smoothed out.


NTR: platelet rolling

Please provide as much information as you can:

Suggested term label:

platelet rolling

Definition (free text)

Platelet rolling involves transient adhesive interactions between platelets and endothelial cells lining blood vessels. Carbohydrates on circulating platelets bind selectins or other molecules on the vessel wall causing the platelets to slow down and roll along the inner surface of the vessel wall. During this rolling motion, transitory bonds are formed and broken between surface molecules of platelets and endothelium.

Reference, in format PMID:#######

PMID: 29018081

Gene product name and ID to be annotated to this term

SELP (P-selectin)

Parent term(s)

heterotypic cell-cell adhesion (GO:0034113)

Children terms (if applicable) Should any existing terms that should be moved underneath this new proposed term?

regulation of platelet rolling
positive regulation of platelet rolling
negative regulation of platelet rolling

Synonyms (please specify, EXACT, BROAD, NARROW or RELATED)

Cross-references

For enzymes, please provide RHEA and/or EC numbers.

Can also provide MetaCyc, KEGG, Wikipedia, and other links.

Any other information

Attribution should go to ORCID:0000-0002-8037-076X.

We should make sure that the definitions of this, and the sibling term GO:0050901 leukocyte tethering or rolling, are aligned.

We still do attributions to GOC initials - so this term should be attributed to GOC:sl in the definition xref.
@slaulederkind do you have examples for the regulation of this process? P-selectin mediates the process, according to UniProt (https://www.uniprot.org/uniprot/P98106)

Thanks, Pascale

Have not created regulation terms.

A positive regulation term would be appreciated, thanks.


fix(types): enforce schema requirements during model create

Currently, calls to create do not enforce that required parameters are present. EntityParameters<T> is wrapped in Partial, meaning all required parameters become optional.
So, for instance, with this config
import {Entity, Table} from 'dynamodb-onetable';

const Schema = {
  version: '1.0.0',
  indexes: {
    primary: {hash: 'pk', sort: 'sk'},
    gs1: {hash: 'gs1pk', sort: 'gs1sk'},
    gs2: {hash: 'gs2pk', sort: 'gs2sk'},
  },
  models: {
    User: {
      pk: {type: String, value: 'USER#${name}'},
      sk: {type: String, value: 'USER#${name}'},
      name: {type: String, required: true, unique: true},
    },
  } as const,
  params: {
    timestamps: true,
    isoDates: true,
    createdField: 'createdAt',
    updatedField: 'updatedAt',
  },
};

type UserType = Entity<typeof Schema.models.User>;

const table = new Table({
  name: 'user',
  schema: Schema,
});

const User = table.getModel<UserType>('User');
User.create({
  // name should be passed here because it's required
});

TypeScript will not complain about this missing name property, but a runtime validation error will be thrown:
OneTableError: Validation Error in "User" for "pk, sk, name"
    at Model.validateProperties (/Users/blimmer/code/dreamteam/dreamteam-backend/node_modules/dynamodb-onetable/dist/cjs/Model.js:1402:25)
    at Model.collectProperties (/Users/blimmer/code/dreamteam/dreamteam-backend/node_modules/dynamodb-onetable/dist/cjs/Model.js:1089:14)
    at Model.prepareProperties (/Users/blimmer/code/dreamteam/dreamteam-backend/node_modules/dynamodb-onetable/dist/cjs/Model.js:1009:24)
    at Model.<anonymous> (/Users/blimmer/code/dreamteam/dreamteam-backend/node_modules/dynamodb-onetable/dist/cjs/Model.js:521:49)
    at Generator.next (<anonymous>)
    at /Users/blimmer/code/dreamteam/dreamteam-backend/node_modules/dynamodb-onetable/dist/cjs/Model.js:8:71
    at new Promise (<anonymous>)
    at __awaiter (/Users/blimmer/code/dreamteam/dreamteam-backend/node_modules/dynamodb-onetable/dist/cjs/Model.js:4:12)
    at Model.createUnique (/Users/blimmer/code/dreamteam/dreamteam-backend/node_modules/dynamodb-onetable/dist/cjs/Model.js:509:16)
    at Model.<anonymous> (/Users/blimmer/code/dreamteam/dreamteam-backend/node_modules/dynamodb-onetable/dist/cjs/Model.js:497:37) {
  context: {
    validation: {
      pk: 'Value not defined for required field "pk"',
      sk: 'Value not defined for required field "sk"',
      name: 'Value not defined for required field "name"'
    }
  },
  code: 'ValidationError',
  date: 2022-05-23T15:45:30.251Z
}

However, UserType has enough information to detect this issue before runtime:
type UserType = {
    name: string;
    pk?: string | undefined;
    sk?: string | undefined;
}

By changing the create parameter as suggested in this PR, TypeScript can warn us that we're not passing a required parameter:

This helps alert developers of application code that needs to be updated with schema mutations sooner.

Cool!


Adding ability to --limit by ipnetwork

Addresses #13
This diff reworks the inventory filtering to add a Filter base class that will  provide additional filter types beyond regex.
IPFilter
Using this new class, an IPFilter filter provides the ability to limit inventory using ip addresses or prefixes:
$ ./bin/netcfgbu inventory list -C ~/netcfgbu/netcfgbu.toml -i ~/netcfgbu/inventory.csv --limit ipaddr=<IP_ADDRESS>/24
# ------------------------------------------------------------------------------

SUMMARY: TOTAL=1

    os_name      count
    ---------  -------
    ios              1

host    os_name    ipaddr       username    password
------  ---------  -----------  ----------  ----------
sw1     ios        <IP_ADDRESS>  admin       cisco123

$ ./bin/netcfgbu inventory list -C ~/netcfgbu/netcfgbu.toml -i ~/netcfgbu/inventory.csv --limit ipaddr=<IP_ADDRESS>
# ------------------------------------------------------------------------------

SUMMARY: TOTAL=1

    os_name      count
    ---------  -------
    ios              1

host    os_name    ipaddr       username    password
------  ---------  -----------  ----------  ----------
sw1     ios        <IP_ADDRESS>  admin       cisco123

$ ./bin/netcfgbu inventory list -C ~/netcfgbu/netcfgbu.toml -i ~/netcfgbu/inventory.csv --limit ipaddr=3001:10::3
# ------------------------------------------------------------------------------

SUMMARY: TOTAL=1

    os_name      count
    ---------  -------
    ios              1

host    os_name    ipaddr      username    password
------  ---------  ----------  ----------  ----------
sw2     ios        3001:10::3  admin       cisco123

$ ./bin/netcfgbu inventory list -C ~/netcfgbu/netcfgbu.toml -i ~/netcfgbu/inventory.csv --limit ipaddr=3001:10::/64
# ------------------------------------------------------------------------------

SUMMARY: TOTAL=1

    os_name      count
    ---------  -------
    ios              1

host    os_name    ipaddr      username    password
------  ---------  ----------  ----------  ----------
sw2     ios        3001:10::3  admin       cisco123

RegexFilter
Any fieldname that isn't "ipaddr" will remain a RegexFilter to preserve compatibility:
$ ./bin/netcfgbu inventory list -C ~/netcfgbu/netcfgbu.toml -i ~/netcfgbu/inventory.csv --limit host="sw\d"
# ------------------------------------------------------------------------------

SUMMARY: TOTAL=1

    os_name      count
    ---------  -------
    ios              1

host    os_name    ipaddr       username    password
------  ---------  -----------  ----------  ----------
sw1     ios        <IP_ADDRESS>  admin       cisco123

TODO:
This is currently a draft PR as an RFC to make sure this path forward with different filter types is good

Add unittests
Add docs for using the new IPFilter in CLI
Add docstrings to help others create new filter types

@thepacketgeek - thank you very much!
merging.

@jeremyschulman awesome! One thing I'm curious about is whether moving away from ipaddr regex is a bad thing. For example, the prefix filter is currently available like:
$ netcfgbu inventory list -C ~/netcfgbu/netcfgbu.toml -i ~/netcfgbu/inventory.csv --limit ipaddr="172.16.20.+"

# ------------------------------------------------------------------------------

SUMMARY: TOTAL=1

    os_name      count
    ---------  -------
    ios              1

host    os_name    ipaddr       username    password
------  ---------  -----------  ----------  ----------
sw1     ios        <IP_ADDRESS>  admin       cisco123

I feel like the prefix match that this PR provides is more natural to most network engineers, but also removes some capability like --limit ipaddr="172.(20|30).*". I wonder if falling back to RegexFilter  if an ipaddress can't be parsed is a good alternative?
Food for thought, curious of your opinion

@thepacketgeek - I did consider whether or not to implement regex for filtering initially.  My initial implementation was to use file-globbing style first since that is "intuitive" for anyone that is familiar with file globbing.  I was then going to add a command line option --regex/-R to indicate that the User is using regex style.  Not everyone is familiar with using the intricacies of regex; so by adding a specific option the User is indicating that they are comfortable with this mechanism.   I am not a fan of "do one thing, and then default fallback to another" in these types of scenarios; I would rather be more explicity.
All that said, I was also thinking of going into a completely new direction of using a parser to allow for the use of complex expressions.  I did this for another package (https://github.com/jeremyschulman/aio-ipfabric); but I it's just something to consider and not sure if the "juice is worth the squeeze" here.  Just my 0.02.

Ah! I've seen the pattern of filter operators like "==", "=~", (like what you have in aio-ipfabric), and do like the explicitness there. The hard part with the option of multiple filters and an -r option is that it can be all or nothing.
I've updated the PR with ipaddress prefix matching and a fallback to regex, but let me know if you think just the IpFilter is good for ipaddr

Thank you again, as well for adding the tests!


Adds support for Google Developer Shell session credentials

LGTM. regarding CLA, have you registered as a github googler?

have you registered as a github googler?

I think I have now.

Coverage increased (+0.76%) to 64.72% when pulling 701abfd2cc96f2a6073269447e2f95de78bb5d90 on aalexand:support-devshell-credentials into 07da0fecacff1dd06e643774c9487e3beda90b50 on google:master.

Coverage increased (+0.76%) to 64.72% when pulling 0627984df483a45f735ce9ec8fbae7e6f9c8221c on aalexand:support-devshell-credentials into 07da0fecacff1dd06e643774c9487e3beda90b50 on google:master.

(I'll be taking a look at this at some point.)

Please squash your commits.

Coverage increased (+0.73%) to 64.68% when pulling c8eaffae9edc82044956ea995a0ecea3061c81fa on aalexand:support-devshell-credentials into 07da0fecacff1dd06e643774c9487e3beda90b50 on google:master.

I'm satisfied (thank you for the changes). Will anyone else be reviewing this before it goes in?

changes LGTM as well. let me know if you consider this ready to merge.

I consider this ready to merge.
Last call for obstacles, blockers, and objections?

I think it should be merged now.


neovim: un-deprecate the configure option (backport)

This is a back-porting of #971
Closes https://github.com/kalbasit/shabka/issues/286
Mentioning participants:
@rycee
@Gerschtli
@kalbasit

@rissson the cherry-picked commit does not refer to the original commit. Running the cherry-pick with the -x option adds the original commit sha to the description of the cherry-picked commit. This is how it's done nixpkgs side, unsure if @rycee would like to enforce it though.

Definitely use -x 🙂
On 8 January 2020 07:22:58 CET, Wael Nasreddine<EMAIL_ADDRESS>wrote:

@rissson the cherry-picked commit does not refer to the original
commit. Running the cherry-pick with the -x option adds the original
commit sha to the description of the cherry-picked commit. This is how
it's done nixpkgs side, unsure if @rycee would like to enforce it
though.
--
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub:
https://github.com/rycee/home-manager/pull/978#issuecomment-571908693

--
Sent from my Android device with K-9 Mail. Please excuse my brevity.


FR: Support inserts

Allow for static HTML inserts at certain points site-wide.

I don't think we need these after all. User can write their own HTML for the top of the page and we have inserts for the bottom. What more could you ask for that couldn't just be added directly to the page content in .md.


Not able to receive token from firebase server using cloud messaging test app using c++ sdk

[READ] For Firebase Unity SDK question, please report to Firebase Unity Sample
Once you've read this section and determined that your issue is appropriate for this repository, please delete this section.
[REQUIRED] Please fill in the following fields:

Pre-built SDK from the website or open-source from this repo: _____
Firebase C++ SDK version: 8.8.0
Main Firebase Components in concern: cloud messaging
Other Firebase Components in use: _____ (Auth, Database, etc.)
Platform you are using the C++ SDK on: Windows
Platform you are targeting: desktop

[REQUIRED] Please describe the question here:
Hello,
I am using firebase C++ SDK for desktop, trying to connect to firebase cloud.  I am using the cloud messaging sample app compiled using the cmake. As from log app is able to initialize the firebase object but while getting token using listener.PollRegistrationToken app stuck to this location. PollRegistrationToken does not return any error.
WARNING: Database URL not set in the Firebase config.
Initialized Firebase App.
Initialize the Messaging library
Try to initialize Firebase Messaging
Initialized Firebase Cloud Messaging.
Display permission prompt if necessary.
Finished checking for permission.
::firebase::messaging::Subscribe("TestTopic")...
::firebase::messaging::Subscribe("TestTopic") completed as expected
::firebase::messaging::Subscribe("!@#$%^&()")...
ERROR: ::firebase::messaging::Subscribe("!@#$%^&()") completed with error: 0, Successfully completed as a stub.

Hi @ravishelke536,
The Firebase C++ SDK supports Cloud Messaging on Android and iOS only, and will not operate on a Desktop.  I'm sorry for any confusion!


unify how we create the readme

@Georgehe4 , unify how we create the readme; move it to it's own method so that we don't have the logic spread out in two places (which is more important now that the logic is a bit more complex).

@Georgehe4, ping

lgtm!


Add missing support for event 'targetNavigated' in TypeScript definitions and API reference

Adds 'targetNavigated' to list of BrowserEvents in TS type definitions
Adds 'targetNavigated' to TS type tests for page actions
Adds 'targetNavigated' to 'waitForEvents' event list in API reference

Fixes #1797

Thanks for the contribution 👍

Thanks for the contribution 👍


conda package for kafka-python-ng

In addition to the PyPi kafka-python package, there is also a kafka-python conda package. We have an internal Python package that depends on kafka-python that I'm trying to push to move to kafka-python-ng for Python 3.12 support, but they also require conda packages.
Would it be possible to push up a kafka-python-ng package to conda-forge?

Sure, I'd be willing to help. I'm a bit absorbed by some other things at the moment but I'll read up on the process in the background in https://github.com/conda-forge/staged-recipes.

Well, that was easy: https://github.com/conda-forge/staged-recipes/pull/25736

@wbarnha thanks for setting that up, looks like it's getting close. Do you think you'll be able to get the package published by the end of the week?

Admittedly my schedule is a bit wonky. If you would like to assist, please feel free and I will make sure it gets released ASAP!

I can take a look to see if I can figure out what's going on. I admit I don't have any experience with conda myself (I'm just forwarding the requirements of the team that manages this internal package that's blocked on updating), but I may be able to catch something you've missed. I'll add any comments related to that on the PR for the new recipe.


Question : onSegment

Hi, I just wanted to know how one could run code for every segment (I'm trying to store the segments individually).
I think it would be possible to build something on top of onFrame, but I'm not sure whether the frame is actually the segment or really a frame of the video feed.
Thank you for your time

Hello, what do you mean by segment?

Hi !
By segment, i meant the result of the segment muxer, as defined by ffmpeg. I wish to cut my stream in many small video files, and store them on the server machine.

While waiting for your answer, i have started to experiment with the onFrame method of main.go, in such a manner :
A stack of bytes does, at every call of onFrame, append the current payload. When the stack gets too big (meaning that there are too many payload bytes in it, or alternatively that there are too many payloads),  we "dump" it into memory.
My explanation isn't the easiest to understand, so there's a graph to potentially make it easier to understand.
I fear however, that once i start fetching the payloads from memory they won't be readable by ffmpeg and/or gstreamer (especially since they are limited in size to 1472 bytes as per my senders limitations). If you have insight, or ideas to upgrade this, then it would be strongly appreciated !
Graph
                _____________
               | rtsp server |__________________________________________________
               |_____________|                                                  |
incoming stream|    __________      _______                                     |
==============>|==>| on frame |===>| stack |                                    |
               |   |__________|    |_______|                                    |
               |                       ||if stack is too large                  |
               |_______________________||_______________________________________|
                                       \/
                                     memory

For the  question in the edit, a colleague and I found a solution. By shifting the import path to a local copy, you can then add a getter method in serversession.go. It's clunky, but it'll do.
func (self *ServerSession) StreamName() *string {
    return self.setuppedPath
}

Hello, in order to save the path name, it's enough to hook into OnSetup and store the path name:
func (sh *serverHandler) OnSetup(ctx *gortsplib.ServerHandlerOnSetupCtx) (*base.Response, *gortsplib.ServerStream, error) {
	pathName = ctx.Path

	return &base.Response{
		StatusCode: base.StatusOK,
	}, sh.stream, nil
}

Regarding the segments, first of all i'm assuming you're talking about a H264 video track.

OnFrame allows you to access RTP/H264 packets.
Segments are defined as sequences of NALUs (atomic units of H264) that start with a key frame. They can't be sequences of NALUs splitted arbitrarily

Therefore, you have to do some work:

you need to convert from RTP/H264 packets (which are limited to 1472 bytes) into NALUs (which don't have a size limit and can be splitted into multiple RTP/H264 packets)
you need to analyze the NALUs to find and wait for a IDR frame (which is a key frame which doesn't need any previous frame to be decoded)
after you have found an IDR, you can start filling the buffer
after a certain timeout has expired, and after you have found another IDR, you can flush the buffer and start again

start with the client-read-h264 example and edit it to analyze the NALUs:
package main

import (
	"fmt"

	"github.com/aler9/gortsplib"
	"github.com/aler9/gortsplib/pkg/rtph264"
)

func main() {
	// connect to the server and start reading all tracks
	conn, err := gortsplib.DialRead("rtsp://localhost:8554/mystream")
	if err != nil {
		panic(err)
	}
	defer conn.Close()

	// find the H264 track
	h264Track := func() int {
		for i, track := range conn.Tracks() {
			if track.IsH264() {
				return i
			}
		}
		return -1
	}()
	if h264Track < 0 {
		panic(fmt.Errorf("H264 track not found"))
	}
	fmt.Printf("H264 track is number %d\n", h264Track+1)

	// instantiate a RTP/H264 decoder
	dec := rtph264.NewDecoder()

	// read RTP frames
	err = conn.ReadFrames(func(trackID int, typ gortsplib.StreamType, buf []byte) {
		if trackID == h264Track {
			// convert RTP frames into H264 NALUs
			nalus, _, err := dec.Decode(buf)
			if err != nil {
				return
			}

			for _, nalu := range nalus {
				typ := nalu[0] & 0x1F

				// we have an IDR frame and there isn't any existing buffer, or the current buffer is already of the desired duration
				if typ == 5 && thereIsNoBuffer || time.Since(lastBufferCreation) => period {
					// if there's an existing buffer, send it out and flush it
					// allocate a new buffer and start filling it
				} else {
					// if there's an existing buffer, insert the non-IDR frame into it
				}
			}
		}
	})
	panic(err)
}

A very similar approach is used to convert from RTSP to HLS into rtsp-simple-server:
https://github.com/aler9/rtsp-simple-server/blob/main/internal/hlsconverter/converter.go

I actually want to use h265, which is why i did not use the rtsp-simple-server, since they are more complex than h264. I will look into converting them. Do you have any good documentation for h265 i can read? I found none that were very indicative of how to handle this video format...

No sorry but work on H265 has to start yet. Only transceiving without decoding is supported.

Thanks. I feared it was the case, so i'll rely on ffmpeg + libx265 for now


Modbus Error: [Input/Output] [Errno 104] Connection reset by peer

Error as described in the title. The plugin cannot connect to the inverter/read its values. Example debug log below.
Pymodbus version: 3.0.0-7
Domoticz version: 2024.7
2024-07-28 09:19:11.009 Solax: Pushing 'onHeartbeatCallback' on to queue
2024-07-28 09:19:11.060 Solax: Processing 'onHeartbeatCallback' message
2024-07-28 09:19:11.060 Solax: Acquiring GIL for 'onHeartbeatCallback'
2024-07-28 09:19:11.060 Solax: Calling message handler 'onHeartbeat' on 'module' type object.
2024-07-28 09:19:11.060 Solax: onHeartbeat
2024-07-28 09:19:11.060 Solax: Connecting to: <IP_ADDRESS>:502
2024-07-28 09:19:11.504 Solax: Modbus Error: [Input/Output] [Errno 104] Connection reset by peer
2024-07-28 09:19:11.504 Solax: Connecting to: <IP_ADDRESS>:502
2024-07-28 09:19:12.604 Solax: Modbus Error: [Input/Output] [Errno 104] Connection reset by peer
2024-07-28 09:19:12.604 Solax: Connecting to: <IP_ADDRESS>:502
2024-07-28 09:19:12.703 Solax: Modbus Error: [Input/Output] [Errno 104] Connection reset by peer
2024-07-28 09:19:12.703 Solax: Connection has not been established.
2024-07-28 09:19:12.704 Solax: Acquiring GIL for 'onHeartbeatCallback'
2024-07-28 09:19:16.007 Solax: Pushing 'onHeartbeatCallback' on to queue
2024-07-28 09:19:16.057 Solax: Processing 'onHeartbeatCallback' message
2024-07-28 09:19:16.058 Solax: Acquiring GIL for 'onHeartbeatCallback'
2024-07-28 09:19:16.058 Solax: Calling message handler 'onHeartbeat' on 'module' type object.
2024-07-28 09:19:16.058 Solax: onHeartbeat
2024-07-28 09:19:16.058 Solax: Connecting to: <IP_ADDRESS>:502
2024-07-28 09:19:16.104 Solax: Modbus Error: [Input/Output] [Errno 104] Connection reset by peer
2024-07-28 09:19:16.104 Solax: Connecting to: <IP_ADDRESS>:502
2024-07-28 09:19:16.212 Solax: Modbus Error: [Input/Output] [Errno 104] Connection reset by peer

Seems to be a common/general issue related to pymodbus. Any advice?
https://github.com/home-assistant/core/issues/52734
https://github.com/pymodbus-dev/pymodbus/issues/420
https://github.com/thingsboard/thingsboard-gateway/issues/412

After reading a bit here and there it seems that the issue occurs when the server (inverter?) is overloaded with requests. It happens frequently enough, perhaps 4-5 times per day, during a sufficiently long time (approximately 30 minutes) to be annoying or even dangerous. It can be seen in the figure below (the occasional straight line segments).
I'm saying that this can be dangerous because I intend to use a smart EV charger, which relies on the data from the inverter to adjust the loading (it could increase it without control if the values become frozen in time).

@saidlm I believe that this issue is because I am using the pocket wifi dongle from solax which tends to be quite unreliable with modprobe. Would this plugin work with waveshare products? Also, my serial baudrate is currently set at 115200, should it be instead 19200?

For anyone having connectivity issues with the wifi dongle, I suggest to use a waveshare RS485 to RJ45 Ethernet Module. I've followed these instructions for the assembly, although I have used the device webinterface rather than the vircom software. My configuration is shown below. Hope this helps.


Import in Ionic 2 / Angular 2 project

I'm having a very difficult time trying to figure out how to import this plugin with Ionic 2 / Angular 2. Most plugins seem to provide this information in the readme, and many use Ionic Native like this:
import { AdMob } from 'ionic-native';

+1 same issue in ionic 2

please provide information as soon as possible.

@djengle91 you don't import startApp just you want to use  (window as any).startApp.set({
//   /* params */
//   "action": "ACTION_VIEW",
//   "uri": "skype:+79109999999"
// }).start();

@hardslk

(window as any).startApp.set

it does work to solve the problem
sincerely thanks

Hi team,
Kindly reply any solution for this I am facing an issue for calling app inside another app.


Parallelize gcc lto

gcc allows passing the number of threads for parallelization to use at link time with LTO. Since gcc 10.x this can be set automatically with -flto=auto which will use either GNU Make's job server or fallback to detecting the number of available CPU threads (see the gcc documentation)
An additional ifeq check can be added to makefile  around line 74.  This will silence the lto-wrapper warning that currently pops up about serial compilation of LTRANS jobs when compiling with gcc and STAN_CPP_OPTIMS enabled and hopefully decrease the linking time.

Thanks, @jsks.  I'm not an expert in make, but this looks like a good idea.


Peer review

Great looking app! I loved the tooltips on the bar chat to include the number of each outcome for the Queens! In addition, I thought that the explanation of how the "dusted or busted" score is calculated so that the user does not have to refer elsewhere to find that information.
Minor thing, the headers for the data table are inconsistent between capitalization of the whole word or all lowercase. I believe that is because those are the column headers in the original data frame. Perhaps you could update those to be title case so it looks cleaner?
I think the layout could have a minor improvement by having the graph and data table on top of each other. This way there isn't so much white space at the bottom of the dashboard, and you aren't limited to horizontal space.
These are super minor changes that I think could help your app. But overall, the app looks great and runs well!

Excellent looking app! I love the neat layout of the app where you can see the information in one screen.
Love how the tooltip is also coloured with the bars - Although a legend telling what the colour shows would be more helpful instead of reading the tooltip.
The titles in the data table are cut off making it slightly harder to read the column names in the table, maybe try to adjust the formatting?
When we select more than 4 seasons to look at the bar graph becomes hard to read and appears cluttered, maybe increasing the height  or making it dynamic or relative to the number of seasons will help it format better.
The toggle button to show the dashboard details is very cool, adds interactivity!
Overall Great dashboard :)

Great dashboard!

The app is really well thought-out and easy for an oncoming user to understand, even if they are not an expert in how the show works. The "Show Info" button is really informative for understanding the plot. The plot is really creative and makes it easy to visualize how the queens' overall performances compared to each other.

Maybe the plot and table could be in separate rows, or their widths could be adjusted, so that they appear less squished on the page.

Nice job!


TraceLog: Allow custom user parsers

It would be nice to add custom parsers to TraceLog.
There is already a TODO for it:
https://github.com/microsoft/perfview/blob/084c4de35943d511c844f40bcbdcaa0dd2c709c3/src/TraceEvent/TraceLog.cs#L912

@dorian-apanel-intel, can you share some details about what you're hoping to do with this functionality?

@dorian-apanel-intel, can you share some details about what you're hoping to do with this functionality?

I have custom hand-written manifest and use it for logging in a native library and haven't found any popular C/C++ lib to parse ETL files.
After some adjustments, both to manifest and TraceParserGen, I was able to generate CustomTraceEventParser.
There are nice features of TraceLog/etlx mentioned in manual (going back/forth, iterating over one type of event, callstacks), but I cannot use it AFAIK without modifying TraceLog.cs)
PS: I also found this question: https://github.com/microsoft/perfview/issues/970 but second post does not look promising :)

Thanks @dorian-apanel-intel.  If I understand correctly, you're trying to parse your own events that don't come from an EventSource, where the manifest is written into the event stream.  If I have that right, you should not need to add the parser when the TraceLog is produced.  All events, regardless of whether or not TraceEvent knows how to consume them, will be copied.  Then, when you access the event stream, you can use a parser that knows how to parse the events to consume them.  You can create this parser using TraceParserGen, or you can register the manifest on the machine, and then use the RegisteredTraceEventParser, which will pick this up.
Do let me know if I've misunderstood.

Sorry, I should be more verbose in previous post.
Once I generated my parser using TraceParserGen, I have no problems with accessing my events in event stream (etl grabbed by xperf). Events are strong typed, so changing schema is less error prone - good.
What I would like to do next, is to try Higher Level Processing using TraceLog class.
From reading this manual, I guess I cannot do:
using (var traceLog = TraceLog.OpenOrConvert("MyFile.etl")) {
    // For a particular process
    var p = traceLog.Processes.FirstProcessWithName("MyProc");
    foreach (var e in p.EventsInProcess.ByEventType<MyCustomEventTraceData>()) { ... }

because there is no way to pass my generated parser to TraceLog. Am I right?

Yes, you can consume events from a TraceLog with any parser, including a custom one.  To do this, you just need to get the underlying TraceEventSource from the TraceLog.
Something like this:
var source = traceLog.Events.GetSource();
var parser = new MyCustomParser(source);

parser.MyCustomEvent += delegate(MyCustomEventTraceData data)
{
  // Handle your event here.
};

I've not personally tried the code snippet from above, but if necessary, I can investigate and see if it would work.

// Process the trace, calling parser.MyCustomEvent each time an event of this type is encountered.
source.Process();

Your snippet works, but let me quote manual to explain what I'm trying to do:

... Solving these problems is what the Microsoft.Diagnostics.Tracing.TraceLog class is all about. Unlike ETWTraceEventSource (which only supports the 'push' (callback) model) and supports real time streams. TraceLog ONLY deals with files, and can provide both a push (callback) model as well as a 'pull' (foreach) model. It also contains a rich object model that allows you to...

I would like to use this pull model.
Processing by callbacks works fine (push model).
I don't know how to iterate back/forth through events by type/process (using TraceLog, without creating arrays on the side - pull model).
// pull model attempts are marked as "Never fired" in below snippet:
using (var traceLog = TraceLog.OpenOrConvert(etlFilePath)) // Cannot pass my parser to constructor+parse method
	{
		foreach (TraceEvent data in traceLog.Events)
		{
			Debug.WriteLine("Got Event {0}", data); // I see my events are raw here
		}

		// I would like this to work:
		foreach (var e in traceLog.Events.ByEventType<MyCustomTraceData>())
		{
			Debug.WriteLine("Got my event by iterating, first attempt");  // Never fired
		}

		// Create parser with source extracted from TraceLog:
		var source = traceLog.Events.GetSource();
		MyCustomTraceEventParser parser = new MyCustomTraceEventParser(source);

		// Lower level parsing by callbacks on stream
		parser.myCustomEvent += delegate (MyCustomTraceData data)
		{
			Debug.WriteLine($"Got my event by callbacks:{data.myCustomField}"); // Fired
		};

		source.Process(); // Invoke callbacks for events in the source

		// Higher level parsing by iterating of filtered events by type:
		foreach (var e in traceLog.Events.ByEventType<MyCustomTraceData>())
		{
			Debug.WriteLine("Got my event by iterating, second attempt");  // Never fired
		}
	}

I have a fix that seems to work. It allows me to inject my parser and iterate over my events. (Custom action passed to TraceLog constructor)
I will create PR one other with whitespaces in merged.

For my personal use, this https://github.com/dorian-apanel-intel/perfview/commit/a0a9679a937f08757d5d627d9a19106fdc897a00 helps, but using TraceLog class and iterating back/forth is much less performant then creating own slimmed event arrays and iterating them. Therefore I've stopped using it for my use case.
@brianrob
Do you want to merge it or shall we just close this issue?


Function to write dataframe to CSV like readr write_csv()

Hi @pwwang,
Happy New Year!, I hope you had a great holiday break.
I want to save the output/dataframe of a pipe into a csv file the way write_csv()  does in readr dplyr but I did not find a function in the documentation.
Is there a write_csv()  function in datar?
This is the way it works in R notebook
```{r}
library(tidyverse)
```

```{r}
mtcars |> group_by(mpg) |> count(cyl) |> write_csv('mpg.csv')
```

This is what I tried with datar and did not work
from datar import *
from datar.datasets import mtcars
mtcars >> group_by(f.mpg) >> count(f.cyl) >> write_csv('mpg.csv')

There is no such verb write_csv(). The result is a pandas data frame most of the time so that you can do whatever is available with a pandas data frame:
from datar import *
from datar.datasets import mtcars
df = mtcars >> group_by(f.mpg) >> count(f.cyl)
df.to_csv('mpg.csv')

If you want that piping syntax, you can define your own write_csv() verb:
from pipda import register_verb
from datar import *
from datar.datasets import mtcars
@register_verb
def write_csv(df, *args, **kwargs):
  df.to_csv(*args, **kwargs)

mtcars >> group_by(f.mpg) >> count(f.cyl) >> write_csv('mpg.csv')

Thanks @pwwang !


Signin Risk Module

Evaluate the risk of the users signin activity, considering risk status, named locations, MFA, Conditional Access, etc

Breaking it out into a separate module may make sense, not everyone will have MCAS configured/licensed anyways


chore: release 1.3.2

[v1.3.2] (Mar 12 2024)
Feat:

Added support for simple markdown formats in bot messages

Supports bold format (**bold**)
Supports link format ([text](url))

Fix:

Addressed issues related to rendering bot messages

/bot create ticket

[Creating Ticket] 🔖 Done https://sendbird.atlassian.net/browse/SDKRLSD-1167


Migration to sdk >= 3.0.0, gradle 8, flutter 3.24.3

Hi,
i noticed that the current state of the library,  didnt work with the latest flutter version.
Therefore i

updated all dependencies,
migrated build scripts to gradle 8
applied latest linter recommendations
bumped android version of vosk

Works now for me in a vanilla project, using the latest flutter version (3.24.3)
Hope its mergeable
Regards

Thanks a lot, we merged #31 instead, but very helpful anyway


Thread safety issue with CsvPreference

Affected version: 2.1.0
Using CsvPreference's predefined static preference instances across multiple writers in different threads will cause unexpected write issues due to the DefaultCsvEncoder reusing its StringBuilder instance while encoding the output.
Workaround: Create a unique CSVPreference for each writer instance

Hi, @victori
What's your problem in using super-csv? Is it the problem that super-csv supports multi-threaded reading and writing?

@victori static and multi thread may lead to problems when you have mutability. Feel free to make an instance version and leave the static as an option for backward compatibility

Hey guys,
Yes, that is exactly what I have done, create a new CSVPreference for each instance of the CSV parser.
I was hoping that the report might nudge for the removal of the static instance since it can lead to subtle ingestion bugs depending how it is used.


feature request: include & exclude function paths

Thanks for the plugin.
Would be great if you could add include and exclude also for function names / paths and not just for env vars.
My problem is that in a nextjs, @netlify/plugin-nextjs generates a huge amount of lambdas and their requires (121 to be precise in my case). Some of these functions, are also pretty massive 500Kb to mbs  depending how heavy a given "api" route is.
In my simple use case, I want to pass only one env bar netlify's process.env.BRANCH to just one single function, but the plugin is processing all the hundredths of .js files via babel which takes a huge amount of time killing my build minutes.
Anyway,  thought I'd throw in here since nextjs is becoming pretty popular within netlify.
thanks again.
JP

Just wanted to bump this feature request! We're also looking for a way to workaround the underlying platform limitation that this plugin solves with Next.js and hit a wall with the latest version of the Netlify build plugin:
https://github.com/netlify/netlify-plugin-nextjs/issues/751


1.12.2 Compatibility with Serene Seasons? Please!

Could we potentially get a Compat option with Serene Seasons 1.12.2? Other crops and things are affected by the seasons, but not Dynamic Trees. Any chance that we could allow players to config whether trees can grow during the winter?
Ideas

No tree growth during Winter seasons (or allow customization)

No Fruit growth (for fruit trees) during Winter seasons (or customized season choices).

We already provide compatibility with Serene Seasons. See this spreadsheet for details on which rates are affected and the magnitude of each across the seasons.


built mobile-ready framework

Once you add in your meta tag and fix your typo, go ahead and merge in your PR. You may resubmit for full credit


Consider using Renovate instead of Dependabot

Proposal
Dependabot opens a PR for each dependency, it would be better to have all deps grouped and opened as one PR. Seems like Dependabot doesn't have this feature, but Renovate does:
https://github.com/dependabot/dependabot-core/issues/1190
https://github.com/renovatebot/renovate
https://dev.to/omaiboroda/try-to-update-your-dependencies-once-a-month-5dm5
Use-Case
No response
Anything else?
No response

Renovate is great, I use it myself 🙊

https://github.com/kedacore/keda/pull/1824


Type cursor doesn't follow where clicked within editor

Challenge Name

https://www.freecodecamp.com/challenges/call-out-optional-actions-with-button-info
Many challenges before and after.
Issue Description

The type cursor doesn't always end up where clicked by the mouse cursor. In some areas of text, you can't click anywhere within it. When it is possible to place the type cursor, it will automatically move to a random area within the text browser once provided with input from the keyboard.
Browser Information

Browser Name, Version: Version 52.0.2743.82 m
Operating System: Windows 10 Pro x64
Mobile, Desktop, or Tablet: Desktop

Your Code

Screenshot

Not applicable.

Please search open issues before reporting, closing as a duplicate of #7847


X509_STORE_CTX_set_default(): improve error handling and reporting, also in its use

So far, error result of X509_STORE_CTX_set_default() was not checked in pk7_smime.c and the error code was misleading in in x509_vfy.c.
This PR also adds error information which purpose name could not be found.
As the bugs fixed are minor and ERR_raise_data() is not available in 1.1.1., I do not suggest backporting to 1.1.1.

Ping @openssl/committers for 2nd approval.

We do not need because the error stack entry is already added by the function being called: X509_STORE_CTX_set_default()
I generally prefer this style because the called function knows much better what went wrong and why.

I would have a lot more sympathy for this if X509_STORE_CTX_set_default() actually did consistently add an entry to the error stack.  (It seems that it does ... for some error paths but not all.)
As an exercise, I traced through the potential error returns from X509_STORE_CTX_set_default(), indicating (at corresponding indentation level) the called function whose failure might trickle up to a zero return from X509_STORE_CTX_set_default() itself.  The following is incomplete, as I did not descend into all the stack and OBJ routines.  It also appears that, while custom mallocs are passed file and line information so as to be able to provide some useful error information, the default CRYPTO_malloc() does not actually add to the error stack.
X509_STORE_CTX_set_default:
  X509_VERIFY_PARAM_lookup:
    sk_X509_VERIFY_PARAM_value:
    OBJ_bsearch_table:
  X509_VERIFY_PARAM_inherit:
    X509_VERIFY_PARAM_set1_policies:
      [arg is NULL, does not add error]
      sk_ASN1_OBJECT_new_null():
      OBJ_dup:
      sk_ASN1_OBJECT_push:
    sk_OPENSSL_STRING_deep_copy:
      [calls ERR_raise(., ERR_R_MALLOC_FAILURE) on error]
    X509_VERIFY_PARAM_set1_email:
      int_x509_param_set1:
        OPENSSL_malloc:
    X509_VERIFY_PARAM_set1_ip:
      [iplen not in (0, 4, 16), does not add error]
      int_x509_param_set1:
        OPENSSL_malloc:

As noted, X509_VERIFY_PARAM_set1_policies() and X509_VERIFY_PARAM_set1_ip() both have sites that return an error directly based on processing their input arguments (not due to calling a subroutine) and do not add to the error stack.  So I conclude that X509_STORE_CTX_set_default() cannot be relied upon to do this.  If you believe that in the platonic ideal state, we should be able to rely upon it to do so, then please open a separate issue (or add more commits to this PR fixing it, I suppose), and I will be willing to approve (though see below).

And ERR_R_MALLOC_FAILURE, which was given here before, may be even wrong/misleading at this point.
If there is actually an malloc failure, this should be flagged by the respective allocation function itself.

Note that ERR_raise() includes the file/line information from where it was called.  Whether the file/line information from higher or lower in the call stack will be most useful in debugging will depend on the specific failure scenario, so I don't think we can make a uniform statement about one always being better or worse than the other.  That said, even if we assume for sake of argument that we will consistently add to the error stack directly above the OPENSSL_malloc() failure, the implementation of X509_STORE_CTX_set_default() does not currently do so.

Thanks @kaduk for having a closer look and for your further comments.

We do not need because the error stack entry is already added by the function being called: X509_STORE_CTX_set_default()
I generally prefer this style because the called function knows much better what went wrong and why.

I would have a lot more sympathy for this if X509_STORE_CTX_set_default() actually did consistently add an entry to the error stack. (It seems that it does ... for some error paths but not all.)

Yeah, though this is not the fault of X509_STORE_CTX_set_default() but of some VPM and stack functions it uses.

As an exercise, I traced through the potential error returns from X509_STORE_CTX_set_default(), indicating (at corresponding indentation level) the called function whose failure might trickle up to a zero return from X509_STORE_CTX_set_default() itself. The following is incomplete, as I did not descend into all the stack and OBJ routines. It also appears that, while custom mallocs are passed file and line information so as to be able to provide some useful error information, the default CRYPTO_malloc() does not actually add to the error stack.
X509_STORE_CTX_set_default:
  X509_VERIFY_PARAM_lookup:
    sk_X509_VERIFY_PARAM_value:
    OBJ_bsearch_table:
  X509_VERIFY_PARAM_inherit:
    X509_VERIFY_PARAM_set1_policies:
      [arg is NULL, does not add error]
      sk_ASN1_OBJECT_new_null():
      OBJ_dup:
      sk_ASN1_OBJECT_push:
    sk_OPENSSL_STRING_deep_copy:
      [calls ERR_raise(., ERR_R_MALLOC_FAILURE) on error]
    X509_VERIFY_PARAM_set1_email:
      int_x509_param_set1:
        OPENSSL_malloc:
    X509_VERIFY_PARAM_set1_ip:
      [iplen not in (0, 4, 16), does not add error]
      int_x509_param_set1:
        OPENSSL_malloc:

As noted, X509_VERIFY_PARAM_set1_policies() and X509_VERIFY_PARAM_set1_ip() both have sites that return an error directly based on processing their input arguments (not due to calling a subroutine) and do not add to the error stack. So I conclude that X509_STORE_CTX_set_default() cannot be relied upon to do this. If you believe that in the platonic ideal state, we should be able to rely upon it to do so, then please open a separate issue (or add more commits to this PR fixing it, I suppose), and I will be willing to approve (though see below).

I fixed these and related issues in x509_vpm.c in a separate commit.

And ERR_R_MALLOC_FAILURE, which was given here before, may be even wrong/misleading at this point.
If there is actually an malloc failure, this should be flagged by the respective allocation function itself.

Note that ERR_raise() includes the file/line information from where it was called. Whether the file/line information from higher or lower in the call stack will be most useful in debugging will depend on the specific failure scenario, so I don't think we can make a uniform statement about one always being better or worse than the other. That said, even if we assume for sake of argument that we will consistently add to the error stack directly above the OPENSSL_malloc() failure, the implementation of X509_STORE_CTX_set_default() does not currently do so.

This is an instance of the general malloc error reporting problem I tried to tackle in https://github.com/openssl/openssl/pull/14833 but that got stuck.
So as a more direct solution I fixed the malloc reportin and related issues at the levelo of stack.c in a separate commit.
Doing so, I made use of CRYPTO_R_TOO_MANY_RECORDS at some places, which confirmed my suspicion that ERR_R_MALLOC_FAILURE is occasionally misleading.
Adding ERR_R_PASSED_INVALID_ARGUMENT where it made sense to me made some tests fail, which revealed some sloppiness in using the stack API in crypto/conf/conf_def.c, ssl/ssl_ciph.c, ssl/statem/statem_srvr.c, and mostly in test/helpers/ssltestlib.c. So I fixed that as well.

For some reason, a couple of CI tests fail when build with -no-tls1_3,
which I can reproduce locally like this:
make  test TESTS=test_ssl_new SSL_TESTS=12-ct.cnf

but when I try to reproduce this in a shell or Eclipse (such that I can use gdb) with the current directory being test-runs/test_ssl_new via
../../test/ssl_test 12-ct.cnf.none none

I get a different type of failure:
# ERROR: (int) 'NCONF_load(conf, test_get_argument(0), NULL) > 0' failed @ test/ssl_test.c:575
# [0] compared to [0]
# ERROR:  @ test/ssl_test.c:578
# usage: ssl_test conf_file module_name [module_conf_file]

which for some weird reason is avoided by the above make test invocation by
TOP=../.. ../../util/wrap.pl /usr/bin/perl -I ../../util/perl ../../test/generate_ssl_tests.pl ../../test/ssl-tests/12-ct.cnf.in none > 12-ct.cnf.none

Can anyone tell me how to get
../../test/ssl_test 12-ct.cnf.none none

started properly, without the ERROR given above?

IIRC the test suite has also set a few environment variables at this point, though I would have to look up which ones.

IIRC the test suite has also set a few environment variables at this point, though I would have to look up which ones.

in test-runs/test_ssl_new, running ../../util/wrap.pl ../../test/ssl_test 12-ct.cnf.default default produces the same "NCONF_load" error you see.  Running CTLOG_FILE=../../test/ct/log_list.cnf TEST_CERTS_DIR=<path to repo_root>/test/certs SRCTOP=<path to repo root> BLDTOP=<path to repo root> ../../util/wrap.pl ../../test/ssl_test 12-ct.cnf.default default succeeds.  It seems that CTLOG_FILE is implicitly documented in test/README.ssltest.md in the examples, but not why it is specifically needed.

The unexpected implicit dependencies on CTLOG_FILE and TEST_CERTS_DIR should be documented
at least in test/recipes/80-test_ssl_new.t - I'll do this here (in a separate commit, of course).

@kaduk I've just returned from vacation and with the help of your above response I've been able to reproduce and fix the remaining CI failure.
So your above review comments are now addressed in full.

This PR is in a state where it requires action by @openssl/committers but the last update was 30 days ago

Ping for 2nd review

@t8m thanks for your swift original approval.
Can you please re-approve?

24 hours has passed since 'approval: done' was set, but as this PR has been updated in that time the label 'approval: ready to merge' is not being automatically set.  Please review the updates and set the label manually.

Merged to master and 3.0 - thanks @t8m and @slontis


VM: issue in monitor action

Traceback (most recent call last):
  File "/opt/code/github/threefoldtech/0-robot/zerorobot/task/task.py", line 78, in execute
    self._result = self._func()
  File "/opt/code/github/threefoldtech/0-templates/templates/vm/vm.py", line 64, in _monitor
    vm_sal.deploy()
  File "/opt/code/github/threefoldtech/jumpscale_lib/JumpscaleLib/sal_zos/vm/ZOS_VM.py", line 553, in deploy
    self.start()
  File "/opt/code/github/threefoldtech/jumpscale_lib/JumpscaleLib/sal_zos/vm/ZOS_VM.py", line 427, in start
    share_cache=share_cache_enabled(self._flist))
  File "/opt/code/github/threefoldtech/jumpscale_lib/JumpscaleLib/clients/zero_os_protocol/KvmManager.py", line 230, in create
    return self._client.json('kvm.create', args, tags=tags)
  File "/opt/code/github/threefoldtech/jumpscale_lib/JumpscaleLib/clients/zero_os_protocol/BaseClient.py", line 125, in json
    result = self.sync(command, arguments, tags=tags, id=id)
  File "/opt/code/github/threefoldtech/jumpscale_lib/JumpscaleLib/clients/zero_os_protocol/BaseClient.py", line 115, in sync
    raise ResultError(msg='%s' % result.data, code=result.code)
JumpscaleLib.clients.zero_os_protocol.Response.ResultError: "port already in use"

So it seems this bug is cause by the logic behind port forwarding in the vm template.
Specifically this function:
https://github.com/threefoldtech/0-templates/blob/9ddeeeca500f893ee0e582d2fb6bde12bff30878/templates/vm/vm.py#L230-L245
We see that it only ask zero-os for port to use if there is not source provided in the list of port forward. But this function is called like this : https://github.com/threefoldtech/0-templates/blob/9ddeeeca500f893ee0e582d2fb6bde12bff30878/templates/vm/vm.py#L30-L32
Which mean we save the ports in the service data the first time, then all the next call will never ask zero-os for which port to use. We need to change this logic to always ask zero-os for free port when starting the VM. So we make sure that we don't have conflicts in port forward

In order to solve the problem of conflicting port forwards one and for all we could introduce a port manager template that will be responsible of giving out free port for any service deployed on a node. This template will then be the only source of truth about reserved port for a node.
I've tried to formalized a bit the API of such a port manager:
Schema:
struct Schema {
    ports @0 :List(Port);

    struct Port {
        port @0 :Integer;
        service_guid @1 :Text;
    }
}

API:
def __init__(self):
    def f():
        while True():
            yield self.node_sal.freeports(1)
    self.port_iter = f()

def reserve(self, service_guid, n=1):
    used_ports = [x['port'] for x in self.data['ports']]
    selected_ports = []

    for _ in range(n):
        port = self._reserve(excluse=used_ports)
        used_ports.append(port)
        selected_ports.append(port)
        self.ports.append({'port':port, 'service_guid': service_guid})

    return selected_ports

def release(self, service_guid, ports):
    for item in list(self.data['ports']):
        if item['port'] in ports:
            if item['service_guid'] != service_guid:
                raise # only the service that reserve the part can release it
            self.data['ports'].remove(item)

def _reserve(self, exclude):
    port = next(self.port_iter)
    while port in exclude:
        # this will eventually raised if no port is found
        port = next(self.port_iter)

    #  if we reached here, we found a free port
    return port


Implicit account creation mechanism

https://hackmd.io/@IF/Sy1ZPiJ2n

Counter-proposal: https://hackmd.io/XnDRu-j5SPm-Ly7SJbp_iw?view

Couple of notes from recent discussion.

The reason we wanted the implicit account mechanism work on the address level is that we didn't want to introduce a special output with special rules for implicit account creation, because exchanges would have to handle that specially. The current requirement that we need stored mana in a newly created implicit account means that is not actually the case. Exchanges can send funds to a regular address without needing to add Mana, while they have to add it for implicit accounts.
The reason we wanted to have implicit accounts pre-funded with Mana was that users could immediately transition the implicit to an "explicit" or "full" account. We should not hide the required Mana for issuing blocks in the network, so it does not make sense to require stored mana on implicit account creation. It is still useful to recommend it and set it as the default in client libraries. To improve usability, we want to lower the RMC Min value so a default block in an uncongested network does not mean a long waiting time.
An important thing to note here is that once there are Mana Marketplaces and/or more sophisticated Block Issuance Service Providers in place, we can enable better UX with service providers that can be paid with based tokens. A user would be able to immediately pay base tokens to issue a transaction in a block if they do not have enough Mana. Then users have the choice to wait without paying in base tokens or immediately pay with base tokens to issue a block.
While it is technically also a "special rule", the storage deposit of Implicit Account Creation Addresses should be the minimum storage deposit of a default block issuer account (computed value based on protocol parameters) to ensure users can make the transition to explicit accounts for one, but more importantly, to protect the accounts ledger. Since accounts are tracked in the accounts ledger, we need a minimum amount of base tokens to prevent dust. Compared to having Stored Mana in the implicit account for a better onboarding experience, this is a mandatory requirement.
One can reduce the waiting time for implicit account creation by receiving more funds on a regular, non-implicit-account-creation address, to speed up the potential mana accumulation or even receive stored mana there, the latter of which kind of implies Mana marketplaces.
Throughput in the scheduler is based on the potential mana and stored mana in an implicit/explicit account. Storage Deposit does not generate potential mana, so it also does not generate throughput. If one has the minimum storage deposit on an implicit account and no stored mana, the throughput would be 0. However we can change the scheduler to still schedule a block with 0 potential/stored mana during uncongested times. That means the implicit account can be used to issue blocks, but the mana to allot to the account in order for it to not go negative must come from elsewhere, e.g. another basic output consumed in the transaction.
Account Creation in Firefly

Input seed phrase. If user does not have an account...

...and user has funds:

Use Block Issuance Service Provider.

...and user does not have funds:

Use Implicit Account Creation Flow.

Technicalities

One can use the implicit account to issue any kind of block as it is a full block issuer account, so it is possible to issue blocks containing transactions other than the account-creating transaction, however we should not encourage using it that way.
On the input side of any transaction there must be exactly 0 or 1 implicit account creation addresses. One must not be able to add multiple implicit accounts on the input side of a transaction, from the same or different implicit account creation addresses.

One can however use any other non-implicit-account-output, for instance, to get additional funds or Mana into the account-creating TX.

One can create an AccountAddress from the implicit account, but one cannot unlock outputs on that address until the full account is created, so it should never be used until that time.
If Burned Mana on Block and Alloted Mana in TX match, the account never goes negative, therefore we don't need a protocol built-in mechanism for accounts with negative BIC to unlock themselves automatically.


Error running filter pandoc-annotate-codeblocks: Exception: unknown tag: Figure

Hello,
I am back to my literate hardware description experiments. It seems to be broken (trying on a commit I am sure was okay).
Might be related to a panflute update? Here is the dump:
pandoc --filter=pandoc-annotate-codeblocks figures/.cat.md -o **********************.pdf -s -N --template **** --citeproc
Traceback (most recent call last):
  File "/home/****/.local/bin/pandoc-annotate-codeblocks", line 8, in <module>
    sys.exit(main())
  File "/home/****/.local/lib/python3.10/site-packages/entangled/annotate.py", line 24, in main
    return run_filter(action, prepare=prepare)
  File "/home/****/.local/lib/python3.10/site-packages/panflute/io.py", line 260, in run_filter
    return run_filters([action], *args, **kwargs)
  File "/home/****/.local/lib/python3.10/site-packages/panflute/io.py", line 233, in run_filters
    doc = load(input_stream=input_stream)
  File "/home/****/.local/lib/python3.10/site-packages/panflute/io.py", line 56, in load
    doc = json.load(input_stream, object_pairs_hook=from_json)
  File "/usr/lib/python3.10/json/__init__.py", line 293, in load
    return loads(fp.read(),
  File "/usr/lib/python3.10/json/__init__.py", line 359, in loads
    return cls(**kw).decode(s)
  File "/usr/lib/python3.10/json/decoder.py", line 337, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
  File "/usr/lib/python3.10/json/decoder.py", line 353, in raw_decode
    obj, end = self.scan_once(s, idx)
  File "/home/****/.local/lib/python3.10/site-packages/panflute/elements.py", line 1478, in from_json
    raise Exception('unknown tag: ' + tag)
Exception: unknown tag: Figure
Error running filter pandoc-annotate-codeblocks:
Filter returned error status 1
make: *** [Makefile:61: **********************.pdf] Error 83

Edit: grep tells me that there is no Figure in the markdown source file :thinking:

Closing as a duplicate of https://github.com/entangled/filters/issues/13


DOCU-3061 Custom OIDC Scope Requests

Description
Changelog update
Checklist

[x] Review label added
[x] PR pointed to correct branch (main for immediate publishing, or a release branch: e.g. release/gateway-3.2, release/deck-1.17)

lgtm can merge once last check passes

The broken link is not related to this PR; looks like the academy team didn't set up a redirect when they changed their URL, so education.konghq.com is breaking.

Passing to @haydenlam for release

Closing this PR, this didn't release in March. See docs ticket for more details.


🤔 [QUESTION] 请问L7editor示例的源码在哪里？

🐛 Question description [Please make everyone to understand it]
请问L7editor示例的源码在哪里？是否开源，谢谢！
https://l7editor.antv.antgroup.com/
💻 Link to minimal reproduction
Please provide a link by forking these links L7 Draw or GitHub repo. What is a minimal reproduction, and why is it required?
🏞 Expected result
🚑 Any additional [like screenshots]

L7Draw Version:
Platform:

目前暂不开源，有需求的话可以进钉钉群里提。


fix: Mutex waiting not clear bug

rt.
Add test case.

👍

Codecov Report

Merging #210 into master will increase coverage by 0.08%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master     #210      +/-   ##
==========================================
+ Coverage   80.44%   80.52%   +0.08%
==========================================
  Files         190      190
  Lines        6321     6322       +1
  Branches      847      848       +1
==========================================
+ Hits         5085     5091       +6
+ Misses        856      851       -5
  Partials      380      380

Impacted Files
Coverage Δ

packages/metrics/src/util/Mutex.ts
68% <100%> (+5.5%)
:arrow_up:

packages/metrics/src/collect/MetricsCollector.ts
85.29% <0%> (+11.76%)
:arrow_up:

Continue to review full report at Codecov.

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


Expose whether a regex_automata error was a size overflow or another error

I'm building an DFA from user provided expressions for a fast-path optimization, which I can skip when the DFA would be too large. Currently, there is no way to tell whether building the DFA failed because there was a syntax error (which I want to raise to the user), or because there was a size overflow (which is non-fatal). It would be great if regex_automata::dfa::dense::BuildError would allow inspecting whether it's a size error.
Motivating example:
let dfa_builder = dfa::dense::Builder::new()
    .configure(
        dfa::dense::Config::new()
            // DFA can grow exponentially, in which case we bail out
            .dfa_size_limit(Some(DFA_SIZE_LIMIT))
            .determinize_size_limit(Some(DFA_SIZE_LIMIT)),
    )
    .build_many(&regexes);
let dfa = match dfa_builder {
    Ok(dfa) => Some(dfa),
    Err(_) => {
        // TODO(konsti): `regex_automata::dfa::dense::BuildError` should allow asking whether
        // is a size error
        warn!(
            "Glob expressions regex is larger than {DFA_SIZE_LIMIT} bytes, \
            falling back to full directory traversal!"
        );
        None
    }
};

Yeah, I think adding a simple predicate like, is_exceeded_size_limit or something like that would be appropriate here. There are multiple different ways to blow the size limit. There are the configured size limits of course, but there are also built-in size limits due to states and patterns using u32 as their identifier type. (i.e., If you try to build a DFA with more than 2^32 - 1 states.) So even if all configured size limits are disabled, you can still get a size limit error.
The other two classes of errors are "NFA failed to build" and "regex feature unsupported." The latter, I believe, can never happen if Unicode mode is disabled. The former is only relevant if you're using the convenience APIs that build a DFA from a pattern string (which you are here). But even that can be avoided by using Builder::build_from_nfa.
So if you use Builder::build_from_nfa and disable Unicode mode, then the only possible error remaining in BuildError is a size limit related error. This means you can work-around this today, but I agree that adding a predicate here would make use cases like yours a little smoother.
@konstin Do you have ideas for what the predicate should be named?

is_size_limit_exceeded sounds good


Should workloadSelector take effect in SE with resolution DNS?

Is this the right place to submit this?

[X] This is not a security vulnerability or a crashing bug
[X] This is not a question about how to use Istio

Bug Description
According to #49429, workloadSelector doesn't take effect in the SE with resolution DNS. However, I try setting workloadSelector in the SE below, I receive warning but the workloadSelector takes effect actually. So should workloadSelector be disabled in the SE with resolution DNS?
apiVersion: networking.istio.io/v1alpha3
kind: ServiceEntry
metadata:
  name: se-1
spec:
  hosts:
  - www.example.com
  ports:
  - number: 9080
    protocol: HTTP
    name: port-2
    targetPort: 9080
  resolution: DNS
  workloadSelector:
    labels:
      app: httpbin

Version
client version: 1.21.0
control plane version: 1.22-alpha.da54969573378cea11e528e0197e5c5ca0afe5e7
data plane version: 1.22-alpha.da54969573378cea11e528e0197e5c5ca0afe5e7 (6 proxies)

Client Version: v1.28.2
Kustomize Version: v5.0.4-0.20230601165947-6ce0bf390ce3
Server Version: v1.27.3

Additional Information
No response

@hzxuzhonghu

The answer is yes, but we will miss warning like https://github.com/istio/istio/pull/42185/files
and i am not clear what happens when we have a workload, whose address is not a domain, maybe we have filtered out. Need to have a test.

and i am not clear what happens when we have a workload, whose address is not a domain, maybe we have filtered out


Upgrade bastion and operator modules to their final major version

Community Note

Please vote on this issue by adding a 👍 reaction to the original issue to help the community and maintainers prioritize this request
Please do not leave "+1" or "me too" comments, they generate extra noise for issue followers and do not help prioritize the request
If you are interested in working on this issue or have submitted a pull request, please leave a comment

Description
The underlying bastion and operator modules still use the RC-X. We propose to upgrade the underlying modules when these are ready.

New or Affected Resource(s)

Potential Terraform Configuration

# Copy-paste any Terraform configurations for how the requested feature may be used.

References

Closed in #384


How to broadcast

Dear all:
I want to broadcast Thr from a single float value to (batchsize, 128,128, 1), I don't know how to do that, when I use the code below, the error occurred that shape do not match. I am using the newest version of tensorflow. Many thanks.
Thr  = tf.multiply(Thr, tf.ones([shape[1], shape[2]], tf.float32))

Please send usage questions to StackOverflow


Deprecate legacy classes and interfaces

Deprecate instrument adapters
Deprecate measurement interfaces
Deprecate post-processing code using qilib dataset

Why are all these instrument adapters and post_processing deprecated, what do we use instead?

The adapters and post processing have not been used. We have always used the post processing in qtt.measurements.scans.


Allow changing pulse counter configuration after creation

Is your feature request related to a problem? Please describe.
If someone connects a new pulse counter to their GEM after setting it up in Home Assistant, the only way to set unit and device class for the pulse counter today is via the YAML.
Describe the solution you'd like
There should be a way in the UI somewhere to re-configure the pulse counter.

This would be a useful feature - especially right now!
In the interim, can you give a pointer to how to add the pulse counter in YAML?  It's showing up in the diagnostic data as updating but the entity isn't becoming available in HA.

I did get the YAML working so, while I think the enhancement would be great, I am set for now and all is working great.

Did you get this resolved?  I need to change a pulse counter config after creation, but cannot figure out any way to do that.  I have looked through home assistant files and I do not see any YAML files that contain this.  I am using HACS GreenEye Monitor integration.


"C-o" / better-jumper-jump-backward cycles between the last two jumps

What did you expect to happen?
better-jumper-jump-backward to navigate backward in the jump list
What actually happened?
Jumps to the previous jump (as intended) but the when called again, returns to the first location. (And then cycles again)
Steps to reproduce:

Open a project
Open 3 files
Call "better-jumper-jump-backward" twice -> Should return to the first buffer

System information:

((system
  (type . darwin)
  (config . "x86_64-apple-darwin19.5.0")
  (shell . "/bin/zsh")
  (uname . "Darwin 19.6.0 Darwin Kernel Version 19.6.0: Mon Aug 31 22:12:52 PDT 2020; root:xnu-6153.141.2~1/RELEASE_X86_64 x86_64")
  (path "/usr/local/opt/coreutils/libexec/gnubin" "/snap/bin" "~/Scripts" "~/snap" "~/bin" "/usr/local/bin" "~/.local/bin" "~/opt/miniconda3/envs/torch/bin" "~/opt/miniconda3/condabin" "/usr/local/Cellar/emacs/27.1/libexec/emacs/27.1/x86_64-apple-darwin19.5.0"))
 (emacs
  (dir . "~/.emacs.d/")
  (version . "27.1")
  (build . "Sep 04, 2020")
  (buildopts . "--disable-silent-rules --enable-locallisppath=/usr/local/share/emacs/site-lisp --infodir=/usr/local/Cellar/emacs/27.1/share/info/emacs --prefix=/usr/local/Cellar/emacs/27.1 --with-gnutls --without-x --with-xml2 --without-dbus --with-modules --without-ns --without-imagemagick")
  (features . "NOTIFY KQUEUE ACL GNUTLS LIBXML2 ZLIB MODULES THREADS JSON PDUMPER GMP")
  (traits batch server-running envvar-file))
 (doom
  (dir . "~/my-config/doom.d/")
  (version . "2.0.9")
  (build . "HEAD -> develop, origin/develop, origin/HEAD 1456108d 2020-09-10 18:03:32 -0400")
  (elc-files . 0)
  (modules :completion company ivy :ui doom doom-dashboard doom-quit hl-todo indent-guides modeline nav-flash ophints (popup +all +defaults) vc-gutter vi-tilde-fringe window-select workspaces :editor (evil +everywhere) file-templates fold (format +onsave) multiple-cursors rotate-text snippets word-wrap :emacs dired electric ibuffer undo vc :term eshell :checkers syntax spell :tools debugger docker ein (eval +overlay) lookup (lsp +peek) magit make :os macos :lang cc data emacs-lisp (go +lsp) (java +meghanada) latex markdown (org +dragndrop +jupyter +pomodoro +present) (python +conda +lsp) sh yaml :email (mu4e +gmail) :app calendar :config (default +bindings +smartparens))
  (packages (org-noter) (clang-format) (spotify) (org-super-agenda) (walkman) (evil-replace-with-register) (company-lsp) (fill-column-indicator) (jupyter) (ob-async) (ob-ipython))
  (unpin "n/a")
  (elpa "zmq" "websocket" "simple-httpd" "jupyter")))

This is fixed in the most up to date version of better-jumper. It was caused by an update to evil which modified it's jumping behavior. If you update your packages the problem should go away.

Great thanks ! I should have upgraded doom before raising an issue. I'll think about that next time !


GenEpi SDS documentation

Closing until there is more clarity for how the new owner will move forward with FE development


fix the do not create k8s cluster option

changed the directory structure to copy files from the $HOME/akb-main/ansible/roles/calico/templates/{{ item }}

I do not seem to see anywhere in the code a way to then download this from the UI ?
Am I missing it or is not there?
If that is missing please add that feature and then we can do a single PR as like this I think (but maybe I am just blind) that is an incomplete feature.

Gonna Merge it for now, we can add the download of the files later on


frontend: apiProxy: Pass in namespace to testAuth

This fix allows testAuth to take in a namespace parameter if given and fall back to using the default namespace if not given. Added changes to the testAuth tests in apiProxy.test.ts to account for this.
related: #754
Testing

[x] Run cd frontend && npm test -- --coverage
[x] Ensure that testAuth tests in apiProxy.test.ts are successful

This PR doesn't fix the #754 issue. It allows that function to be used now with a namespace, but it's not including the allowed namespace in it.


[Gssoc '23] Adding Connect 4 Game

Connect Four is a competitive game where players strategize and try to out manoeuvre their opponent by strategically placing their coloured discs in a grid. The game requires critical thinking and planning ahead to block the opponent's moves while setting up opportunities for their own victories. The player who successfully connects four discs of their colour first wins the game. ☺💿
Features : 🚚🤺

Disc Colours: Players choose their preferred colour, often represented by red and yellow discs.
Turn-Based Gameplay: Players take turns dropping one disc at a time into the grid.
Win Conditions: The game detects and declares a winner if a player successfully connects four of their discs in a row,
horizontally, vertically, or diagonally.
Simple User Interface: The game features an intuitive and user-friendly interface for easy interaction.

Tech Stacks : [Html, Css And Javascript]

Connect Four is a competitive game where players strategize and try to out manoeuvre their opponent by strategically placing their coloured discs in a grid. The game requires critical thinking and planning ahead to block the opponent's moves while setting up opportunities for their own victories. The player who successfully connects four discs of their colour first wins the game. ☺💿
Features : 🚚🤺

Disc Colours: Players choose their preferred colour, often represented by red and yellow discs.
Turn-Based Gameplay: Players take turns dropping one disc at a time into the grid.
Win Conditions: The game detects and declares a winner if a player successfully connects four of their discs in a row,
horizontally, vertically, or diagonally.
Simple User Interface: The game features an intuitive and user-friendly interface for easy interaction.

Tech Stacks : [Html, Css And Javascript]

Fixes: #270

@panwar8279 Could You Look Into This And Merge The Pr😊 >>And Point Out Issues If Any!

@panwar8279 Could You Look Into This!!??


Missing Singapore

Hello, We would need to have the coordenates marked for Singapore, which is currently being integrated within Malaysia.

Thank you!

same here. kindly update the geo for Singapore.

Any update on this issue? @holtzy @juanitodur @genesisthomas


It need to save the wallet when the first sync process is running... before the dashboard.

Sometimes the app is in the first screen before the dashboard for a log time syncing... We need to save the wallet every N batches because we don't want to loose the progress if the user close the App.

I did that, when the App is in the loading screen I save the wallet file every 5 batches.


[dv,usbdev] usbdev Sequence PR

This PR contains usbdev_nak_trans seq

@jdonjdon Why are CI checks failing?

@Saad22386 #21296 has been filed.

@Saad22386 #21296 has been filed.

Please rebase with master.

@Saad22386 #21296 has been filed.

Please rebase with master.

cc: @jdonjdon

cc: @jdonjdon


Response text overflow

I have forked and run this repo and prompted the chatbot with questions about the dataset. But the chat response text appears to be overflowing the container

Fixed on #3


Add react course by techbase

Add "Full React Course 2021" by Techbase to free courses.

Hello @MitchelSt!
Unfortunately the courses section in the community part of is no longer maintained nor present in react.dev docs.
Let me close this PR as outdated.
Thank you!


Bullet points in quick start/installing HPX section in documentation incorrectly rendered

Going to https://hpx-docs.stellar-group.org/branches/master/html/quickstart.html#installing-hpx at the moment, the different options for installing HPX are rendered as

I'm guessing the #. * * ... * * isn't intentional?

@dimitraka could you have a look, please?