How to save / load the limiter objects' status?

Hi All,
Imagine I wanted to write a command line script in Node that needs to be rate-limited across multiple executions, e.g. a Twitter API client. I call it once, the limiter takes note of it, the script terminates. Then I call it again, the limiter is aware of the previous call, checks the limiting etc.
How do I manage this need with this library? E.g. can I "serialize" in some way the status of the library's objects, so that I can save them and re-load them back every time I run the script? I wouldn't want to use any backend component, as in the choice of Redis for classdojo/rolling-rate-limiter, but would be happy with something simpler and slower, such as file system or environment variables.
Thanks.

Hi, something you could do is keep the node process alive and your calls would spawn child processes.
However, I like the idea of being able to serialize the state and restore it at a later time. Stay tuned, I'll implement it soon.

Hi @giacecco, I've started looking into this and designing what the feature would look like. I would appreciate your input and opinion.
The first thing to realize is that the only things that can be serialized (and re-loaded) are the timings (how long until the next job can be launched?) and the "reservoir". Everything else, including how many jobs are currently running cannot be serialized, because they need information about functions and jobs that are running. For example, it's impossible to serialize number of jobs running: 3 because the instance that loads that serialized state will never know when those 3 jobs terminate and so it'll forever think there are -at least- 3 jobs running.
Is it still useful if only those 2 features are serializable/loadable? It feels to me that simply explaining all the limitations of the feature would be confusing. If you think there's value to this feature, and that it can be well explained in the docs, then I would be open to implementing it.

Probably I've used the "serialize" term inappropriately, trying to give you a solution instead of describing the problem.
Describing the problem is simple, and it is to be able to throttle the same resource between different processes. In addition to that, I would like not to force the user to install anything but the Nodejs application itself (differently than - for example - what happens for classdojo/rolling-rate-limiter that requires Redis).
Intuitively, some communication between the processes needs to take place, and I imagined that serialisation could be used to save the status of bottleneck to disk for other processes to read and behave accordingly. This is clearly a bad solution, because then you may have processes competing in writing the thing :-( What then?
Perhaps each process could run like a "small server" locally, attempting to detect other processes running as peer and sharing the same resource, and then negotiating what happens?

@SGrondin any updates on this?

Not really, @giacecco 's suggestion would introduce all sorts of complexity due to concurrent write accesses and Bottleneck also has to work in the browser. @TheGame2500 I've kept this issue open because I'm still open to adding something similar to what has been suggested so far, but I'd need a solid example of a realistic use case.

@SGrondin @giacecco I'll tell you how I've done it. Kind of hacky since I'm not used to forking packages and I just edited bottleneck/lib/Bottleneck.js and  bottleneck/lib/Cluster.js but let's not focus on that aspect for now. Essentially I changed Bottleneck.js to take another two params, a name and a redisURL, and Cluster to pass key as name to the Bottleneck instance.
If Bottlenecks gets a redisURL it connects to redis runs GET ${name} and if it finds a value it assigns it to self._nbRunning, it also assigns itself an ID, which is just a UUID. It then opens another connection to redis and subscribes to the name channel, where it expects to gets messages in the form of
{
            from: QUEUE_ID,
            val: 1 or -1,
}

JSON serialised objects. After parsing them, if the from property is not equal to it's own ID, it adds val to self._nbRunning.
Finally, whenever _nbRunning is incremented or decremented, the Bottleneck instance sends SET ${self.name} ${self._nbRunning} to redis, and then sets a ttl of 10 minutes on the key to avoid leaking Redis memory, and also publishes a message on channel ${self.name} in the form of
{
            from: ${self._id},
            val: 1 or -1,
}

to update other potential queues listening to the channel that _nbRunning increased/decreased.
@SGrondin regarding running in the browser, not sure how to handle that, since this would make the package depend on some redis driver.

@TheGame2500 what you did is perfect for your use case. I think what I'll do is add events for incrementNbRunning, decrementNbRunning and all the other state changes you need to track to support all of Bottleneck's features (like reservoir, blocking, etc). Then you'll be able to put your Redis calls in those event listeners. It keeps Bottleneck generic, so someone could implement state saving using a datastore other than Redis if they want, and it'll keep working in the browser.
So by default it'd keep track of its state by itself as it currently does, but you'd be able to do it yourself by providing handlers for all those events.

@SGrondin great! Sounds good, and better then my datastore gnostic version! Happy to have helped you with defining the use case. You might want to hint people in the docs to what the increment/decrement events could be used for as it doesn't feel quite obvious. @giacecco hope my use case helps you figure it out if you still need this.

I've come to the conclusion that the idea I suggested on October 3rd is simply not going to work. Individual clients need to be able to pass multiple arguments to a datastore, use them to mutate multiple values and then return other values, all in a single atomic transaction or else race conditions occur.
This work is not trivial to get right, so I don't want to rely on the end users to figure it out on their own. That work is also platform-specific, and I don't want to implement it for Redis, then again for Postgresql, and so on. I'll be implementing it once and I've decided on Redis.
In v2, creating a limiter is done by calling new Bottleneck(obj), where obj is an object of arguments. One of those arguments will be the datastore to use, either local or redis.
Another argument will be an object of {name:  function}. That allows users to then submit/schedule jobs by their name instead of passing a function. When Redis is chosen as datastore, the limiter will only accept jobs by name, because the only way to get all of Bottleneck's functionalities to work in a distributed cluster, is by making it possible for a job to be completed on a different client than the one it was submitted from. This is why job all arguments, when using Redis, need to be serializable.
I'm almost done with v2.0, except for this fairly large feature. Any help with updating the documentation and the Typescript type definitions would be very appreciated and would speed it up.

@SGrondin can we please have the possibility to select Redis db number (aka an argument to be passed to the SELECT redis command) ? Shouldn’t be hard to implement and would be a neat feature for keeping it neat and prevent potential conflicts with other clients over namespaces (although they should be fairly avoidable)

@SGrondin my schedule doesn’t allow active coding on this, but if you have any hurdles you feel you need help with, I have some experience with building atomic transactions for queuing purposes in node (I accidentally built that for another microservice than the one above since I didn’t think to check whether a thing like bottleneck exists or not) and would be happy to offer my advice

Yes, selecting the DB number is a must. I'll let you know if I need help, but I've done this before :)

@TheGame2500 @weeco
Version 2 is currently available for testing! 😄
https://github.com/SGrondin/bottleneck/tree/version-2
Please give it a try, it includes Clustering, job weights and more. Your feedback is essential before I can confidently publish it to NPM.

@SGrondin I'll be giving this a spin somewhere between Christmas and New Year's Eve. Really excited about it.


Unable to set header on graphQL for Retrieving Storefront API translations

Unable to set header on graphQL for Retrieving Storefront API translations
We can query the supported resources using the Accept-Language HTTP header, to return translated content to the Storefront API.
Reference:
https://shopify.dev/api/examples/i18n-app-translations#retrieving-storefront-api-translations
Issue:
I was unable to set the header. My attempt was the following:
      $opt = $options->getGuzzleOptions();
      $opt = array_merge_multi($opt, ['headers' => ['Accept-Language' => 'fr']]);
      $options->setGuzzleOptions($opt);

I can see the header is put into _conditional but it does not seem to be passed further.
the output is also not showing the header:
[headerNames:GuzzleHttp\Psr7\Response:private] => Array
  | (
  | [date] => Date
  | [content-type] => Content-Type
  | [transfer-encoding] => Transfer-Encoding
  | [connection] => Connection
  | [x-sorting-hat-podid] => X-Sorting-Hat-PodId
  | [x-sorting-hat-shopid] => X-Sorting-Hat-ShopId
  | [vary] => Vary
  | [referrer-policy] => Referrer-Policy
  | [x-frame-options] => X-Frame-Options
  | [x-shopid] => X-ShopId
  | [x-shardid] => X-ShardId
  | [x-stats-userid] => X-Stats-UserId
  | [x-stats-apiclientid] => X-Stats-ApiClientId
  | [x-stats-apipermissionid] => X-Stats-ApiPermissionId
  | [x-shopify-api-version] => X-Shopify-API-Version
  | [content-language] => Content-Language
  | [strict-transport-security] => Strict-Transport-Security
  | [x-shopify-stage] => X-Shopify-Stage
  | [content-security-policy] => Content-Security-Policy
  | [x-content-type-options] => X-Content-Type-Options
  | [x-download-options] => X-Download-Options
  | [x-permitted-cross-domain-policies] => X-Permitted-Cross-Domain-Policies
  | [x-xss-protection] => X-XSS-Protection
  | [x-dc] => X-Dc
  | [nel] => NEL
  | [report-to] => Report-To
  | [x-request-id] => X-Request-ID
  | [cf-cache-status] => CF-Cache-Status
  | [expect-ct] => Expect-CT
  | [server] => Server
  | [cf-ray] => CF-RAY
  | [alt-svc] => alt-svc
  | )

Hi, any solution for this? Thanks.


Update DG to reflect libTask

Update hyperlinks to redirect to team's remote repo.
Update terms such as addressbook to libtask, person to patron.
Update instructions for manual testing for delete book command.

Codecov Report

Merging #75 (30ca6ea) into master (0bde36c) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master      #75   +/-   ##
=========================================
  Coverage     71.69%   71.69%
  Complexity      555      555
=========================================
  Files            91       91
  Lines          1749     1749
  Branches        211      211
=========================================
  Hits           1254     1254
  Misses          433      433
  Partials         62       62

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 0bde36c...30ca6ea. Read the comment docs.


Updated generations to dotNet5.4

@upendras I'm actually confused - do you know whether we need to use netstandard moniker now instead of dotnet? See https://github.com/dotnet/corefx/blob/master/Documentation/project-docs/standard-platform.md
@kartang for asp.net 5 we are still using PCL binaries. Do you know how hard will it be to start compiling code with the proper target?

@SergeyKanzhelev For this pull request, I just got the 5.4 working. Once we have a complete end-to-end set up ready, I will work on compiling the code with the respective target.

@kartang , makes sense.


Redesign a brand identity

We will redesign a new brand identity.

I guess this can be closed @israelperezglez ?

@dialelo Yes ;)


Drag–and–Drop improvements

Motivation
The goal is to have a better user experience and performance.

UX: It's in general preferable to have as less as possible unnecessary movements of the UI elements
Performance: Fewer elements will change their positions, the faster will be the processing

Principles

Do not change the composition before the user undersend where he wants to locate the object he is moving
Move only the reflection of the dragged object
Display the indicator that shows the exact place where the dragged object can be placed
Only after the new place is found initiate the changes in the composition
Be able to reset the workspace (will be added to the bar on top of the table #2075)

Apply these principles to following

[ ] Table's header  https://github.com/iterative/vscode-dvc/issues/2262#issuecomment-1228670872
[ ] Table's body - EXPs (if we will like to have D&D for the EXPs)
[ ] Plots sections
[ ] Plots sections content
[ ] Other? - where the Drag–and–Drop is used

Let's simplify and make a single checkbox with other improvements. The whole ticket can one checkbox please with performance as motivation.
There are also some bugs in DnD that we can do small tickets about or one with checkboxes - feedback is pretty bad still, no way to cancel DnD, almost no way to get back to the initial state while doing DnD - let's focus on these things first please.

For the "Table's header sections"

We do not want to change the table content before the user undersend where he wants to locate the section. Only after the user is sure where he like to place the section we can initiate the changes in the table.
We move only the reflection of the dragged cell (just a cell not the column!) + display the indicator that shows the exact place where the cell can be located. After the place is found we initiate the changes in the table including the column relocation.
This also will help to have a better performance, while dragging the object, as we will be dealing just with a cell instead of an entire column without changing the layout of the view all the time the object changes its position. and moving just one object instead of changing the column's positions.
The style of the indicator can be the same one as we are planning to use when resizing the header cell (the new style is in Figma)

For plots, isn't this already how it works? The only thing happening is that we hide the dragged plot and we have a drop section that moves. It is the exact same performance wise as an indicator that would be only one line it simply is more visible. The re-ordering is only applied once an item is dropped.

For plots, isn't this already how it works? The only thing happening is that we hide the dragged plot and we have a drop section that moves... The re-ordering is only applied once an item is dropped.

Do not think so. Maybe I am missing something.
Motivation: UX. It's in general preferable to have as less as possible unnecessary movements of the UI elements.
To achieve: Do not change the composition before the user undersend where he wants to locate the object he is moving. Only after the new place is found initiate the changes in the composition
Also, when testing D&D I got this:

Start D&D of the Large plot from below Classic plots to on top
Without dropping it put it back, the result below

For plots, isn't this already how it works? The only thing happening is that we hide the dragged plot and we have a drop section that moves... The re-ordering is only applied once an item is dropped.

Do not think so. Maybe I am missing something. Motivation: UX. It's in general preferable to have as less as possible unnecessary movements of the UI elements. To achieve: Do not change the composition before the user undersend where he wants to locate the object he is moving. Only after the new place is found initiate the changes in the composition

Nothing moves but the indicator that shows you where the item can be dropped.

Also, when testing D&D I got this:

Start D&D of the Large plot from below Classic plots to on top
Without dropping it put it back, the result below

Seems like the inverse of a bug recently fixed. Can you create another issue just for that please? It's a real bug and not an improvement.

Nothing moves but the indicator that shows you where the item can be dropped.

Not sure we are talking about the same thing. Please check the video below.
By saying "Do not change the composition before the user undersend where he wants to locate the object he is moving" I mean we won't move anything before the drop target is found.
https://user-images.githubusercontent.com/98249521/187959395-a5b270c3-8175-495e-ad6b-21a64cd5d3cd.mov

Folks, this is assigned to me with p2. Let's not for now do anything here (except obvious bugs / improvements).

Nothing moves but the indicator that shows you where the item can be dropped.

Not sure we are talking about the same thing. Please check the video below. By saying "Do not change the composition before the user undersend where he wants to locate the object he is moving" I mean we won't move anything before the drop target is found.
Screen.Recording.2022-09-01.at.11.54.30.AM.mov

This is a bug, this is not how the drag and drop works. Try moving inside the same section, you'll see

Related: D&D interaction patterns study

I think we can close this and review plots DnD separately, I don't think we need to change there most of the things mentioned here, but there are quite a few other problems there that could be fixed one by one.


Fail gracefully when auto_adjust or back_adjust fails. Fixes #252

Fixes #252

"merged" using slightly shorter code


Highlight any message prefixed with @

Working on @mentions and #tags. This allows for simple recoloring of text by recognizing @ (easily changed to include #) in a word. Simple change with no functionality (for visual/logic purposes).
To be added:

@[user] only works with users, not any text
Datastore/User change to make a username field (so @mentions won't have spaces in them)
@[user] should link to a user's page
#[tag] should link to a feed with that tag (to be implemented outside of mentions but should be easily added once a tag and its feed is easily accessible by URL)

This looks great!!


Question on "Viewing a finding, Interesting things are highlighted"

Hey there and thank you for using the issue tracker!
Checklist before filing an issue:

[ ] Is this something you can debug and fix? Send a pull request! Bug fixes and documentation fixes are welcome.
[ ] Have a usage question? Ask your question on StackOverflow, StackExchange Security or similar platform.
[ ] Have an idea for a feature? Make sure that it hasn't been suggested before and describe your idea in detail.

None of the above? create a bug report
Make sure to add all the information needed to understand the bug so that someone can help. If information is missing, the issue will be labeled with 'Needs more information' and closed until there is enough information.
Expected Behavior
Highlight user credentials inside a flagged file.
Actual Behavior
Just highlights abcxyz.com "Viewing a finding. Interesting things are highlighted"
Steps to Reproduce the Problem

Go to a flagged :finding file
see the highlighted content

Specifications

Gitrob version: 1.1.2
Operating system: Kali linux
Go version:

This is the old ruby version of Gitrob which I no longer support. Check out the latest version!

Hi,
So, does the new Go version supports file content inspection for secrets and passwords?
Thanks
Mishra


Initial commit of a bare-bones Level Control Cluster.

Tested as an intensity adjustment cluster with Google Home and Alexa. Work still needs to be done to support more commands and to potentially interact with onOff clusters on the same endpoint.

@Apollon77 - Thanks for the comprehensive review. I think you could go blind reading through those specs ;-) Who knew that adjusting the intensity of of a light bulb could take 12 pages of descriptions and explanations!
I'll start in on your comments today.

Updates pushed

@mfucci - Thanks for the detailed review. Maybe, just maybe, I'll eventually learn Typescript :-) I did take the advice from you and @Apollon77 to start using VS instead of vi. Big step up, but I do miss vi's navigation and search/replace commands :-)
I think I've addressed all of your comments. I left the LevelControlCluysterServer in becuase neither Google Home or Alexa call any of the unimplemented functions, but I did add the recommended "Error" throw if they were to be called.

@JimBuzbee if you like , join discord https://discord.gg/EJysjRsx and we can answer questions maybe more direct then via comments here ...

Tried to log into discord, but it insisted on me having an .edu address - no go :-)

@JimBuzbee Look at https://github.com/mfucci/node-matter/pull/255/commits/1b40bae16cc4f7fe5e2ebc8531f88af8444c96e0 ... I did some changes how I meaned it ... I would do it that way.

@Apollon77 - Funny - when you recommended "....commands," I thought you were just using shorthand, not literal "..." Something new for me!

;-) Added even another commit ... so it is even more to the specs. Will look over all again tomorrow. Too tired

Ok, should I merge it then or do you have stuff still open?

@Apollon77 - Go head and merge. I have an implementation of the PulseWidthModulationLevelControlClusterHandler that is pretty close, but I have no good way to test since nothing uses that cluster.

Ok, I think we will have that for other clusters too ... so best effort and then we see when someone use it


themes use inconsistent param field names and data/

Initially I was very excited by hugo's simple configuration and large variety of themes. I was hopeful that switching between themes would be as simple as modifying the theme name in the config and rebuilding.
However, it has become clear that most themes use different parameter fields to represent the same concept. Some themes use tagline, others use description or title. Some themes use top level params for github username, facebook username, etc, some use a nested params.social category for setting these. Some themes pay attention to menu, some don't. Some themes require manually copying images into static/ and avatarurl ... the list goes on.
The end result is that themes are not compatible with one another in the way one may grow used to with systems such as Ghost or Wordpress.

I think this is a very good point. There have been prior discussions here about vetting themes. There is a guideline for theme development, but I don't think it covers such things as common patterns. Also, because Hugo is ~0.5 there has been quite a bit of change over the last couple of years, so a theme created some time ago might not be using patterns present now.

I suspect having some patterns documented, even a nice skel dir that theme developers could start from, would be helpful. Maybe themes that follow those patterns to the T could be given a special tag in the theme directory for extra visibility.

i believe this issue is still relevant

i believe this issue is still relevant

People buy cars. Then they put air fresheners in. Those hangers on the mirrors, you know. I don't get why some people use pine, I like strawberry. I think it should be standardised to strawberry. Nobody should be allowed to switch their air freshener to pine.
cars = hugo
air fresheners = themes
scents = variables
Same same.
I believe this issue is not relevant, but personal preference. :(

People buy cars. Then they put air fresheners in. Those hangers on the mirrors, you know. I don't get why some people use pine, I like strawberry. I think it should be standardised to strawberry. Nobody should be allowed to switch their air freshener to pine.
cars = hugo
air fresheners = themes
scents = variables
Same same.
I believe this issue is not relevant, but personal preference. :(

i think it creates a significant usability hurdle, as learning the specific incantations of each theme takes time. it would be helpful for hugo to define a common taxonomy for configuration values which theme developers could standardize on.

i think it creates a significant usability hurdle, as learning the specific incantations of each theme takes time. it would be helpful for hugo to define a common taxonomy for configuration values which theme developers could standardize on.

Please rethink that. A theme is an individualisation of the output of Hugo. The moment where Hugo restricts variables to a naming structure is the moment, the developers of Hugo have to be responsible of what happens in a theme, not the theme developers. Then "external" theme developers will not be able to create themes anymore. It's kind of a Microsoft Sharepoint situation where you can change the header image and the background color and the font.
Everything in [params] is parameter-work for theme developers and "unregulated". Just try searching for the famous [author] config section. That is a sample of pseudo-regulated variable names. They are ruled, but not really. Some themes use them, others don't.
If you want a website that looks like any other website and has just some individualised colors and images - then it makes sense. For for the broad use of Hugo it's not something you will ever see coming into live. Hugo creates a site. Theme developers make them look nice. If you have a problem with the way theme devs do things then take it up with them, don't try to limit possibilities.

Please rethink that. A theme is an individualisation of the output of Hugo. The moment where Hugo restricts variables to a naming structure is the moment, the developers of Hugo have to be responsible of what happens in a theme, not the theme developers. Then "external" theme developers will not be able to create themes anymore. It's kind of a Microsoft Sharepoint situation where you can change the header image and the background color and the font.
Everything in [params] is parameter-work for theme developers and "unregulated". Just try searching for the famous [author] config section. That is a sample of pseudo-regulated variable names. They are ruled, but not really. Some themes use them, others don't.
If you want a website that looks like any other website and has just some individualised colors and images - then it makes sense. For for the broad use of Hugo it's not something you will ever see coming into live. Hugo creates a site. Theme developers make them look nice. If you have a problem with the way theme devs do things then take it up with them, don't try to limit possibilities.

i didn't intend to advocate for restricting variables or limiting possibilities. i'm suggesting a well lit path for theme devs. there are many common patterns used across themes, but each theme implements them in a different way.
i understand that this is a hard problem to solve. i also believe there are ways to improve usability while remaining flexible.
the simplest solution to this problem is theme dev documentation. provide a list of best practices, config parameters which are used by many themes for a particular purpose.
another, more complex, solution is to show theme features in the theme index by their use of well-known config params. this would provide an incentive but not limit flexibility.

i didn't intend to advocate for restricting variables or limiting possibilities. i'm suggesting a well lit path for theme devs. there are many common patterns used across themes, but each theme implements them in a different way.
i understand that this is a hard problem to solve. i also believe there are ways to improve usability while remaining flexible.
the simplest solution to this problem is theme dev documentation. provide a list of best practices, config parameters which are used by many themes for a particular purpose.
another, more complex, solution is to show theme features in the theme index by their use of well-known config params. this would provide an incentive but not limit flexibility.

as i think about this more, i prefer the latter solution, as it provides the right incentives for theme developers without forcing their hand. it could also improve discoverability.
to put my money where my mouth is, i've done some early exploration.
start with a local checkout of hugoThemes:
$ git clone --recurse-submodules https://github.com/gohugoio/hugoThemes

$ cd hugoThemes

count distinct parameters across all themes, ignoring duplicates within a single theme:
$ egrep -or '\.Param "[^"]+"' . | sed -r 's/^[^\/]+\/([^\/]+)\/[^\:]+/\1/g' | sort | uniq -u | wc -l
253

count of parameters used only once in any theme (note, this under represents the problem, as this would exclude parameters which are used twice in the same theme):
$ egrep -or '\.Param "[^"]+"' . | sed -r 's/^[^\/]+\/([^\/]+)\/[^\:]+/\1/g' | sort | uniq -u | cut -d: -f2- | awk '{ print $2 }' | sort | uniq -u | wc -l
155

key finding: approx 40% of all parameters are only used in only one theme.
top 30 most commonly used params and the number of themes they are used in:
$ egrep -or '\.Param "[^"]+"' . | sed -r 's/^[^\/]+\/([^\/]+)\/[^\:]+/\1/g' | sort -u | cut -d: -f2- | awk '{ print $2 }' | sort | uniq -c | sort -rn -k 1 | head -n 30
      9 "description"
      9 "author"
      6 "tags"
      5 "toc"
      4 "image"
      4 "contact"
      3 "youtube"
      3 "twitter"
      3 "title"
      3 "share"
      3 "medium"
      3 "logo"
      3 "linkedin"
      3 "instagram"
      3 "icon"
      3 "gitlab"
      3 "github"
      3 "facebook"
      3 "email"
      3 "authorbox"
      2 "valine.enable"
      2 "utterances.owner"
      2 "tocLevels"
      2 "themecolor"
      2 "socialShare"
      2 "socialOptions"
      2 "showPoweredBy"
      2 "seo.site_name"
      2 "related"
      2 "recent_posts_number"

key finding: the above are candidates for "best practice" documentation)
a list of all params used in only one theme can be made with:
$ egrep -or '\.Param "[^"]+"' . | sed -r 's/^[^\/]+\/([^\/]+)\/[^\:]+/\1/g' | sort | uniq -u
academia-hugo:.Param "slides.highlight_style"
academia-hugo:.Param "slides.theme"
autophugo:.Param "description"
autophugo:.Param "full_quality"
autophugo:.Param "full_width"
axiom:.Param "maxWidthFooter"
axiom:.Param "maxWidthHeader"
axiom:.Param "maxWidthTitle"
base16:.Param "author"
base16:.Param "keywords"
basicwebtheme:.Param "previewfullcontent"
basicwebtheme:.Param "randomorder"
basicwebtheme:.Param "skipTitle"
beautifulhugo:.Param "socialShare"
[...]

as i think about this more, i prefer the latter solution, as it provides the right incentives for theme developers without forcing their hand. it could also improve discoverability.
to put my money where my mouth is, i've done some early exploration.
start with a local checkout of hugoThemes:
$ git clone --recurse-submodules https://github.com/gohugoio/hugoThemes

$ cd hugoThemes

count distinct parameters across all themes, ignoring duplicates within a single theme:
$ egrep -or '\.Param "[^"]+"' . | sed -r 's/^[^\/]+\/([^\/]+)\/[^\:]+/\1/g' | sort | uniq -u | wc -l
253

count of parameters used only once in any theme (note, this under represents the problem, as this would exclude parameters which are used twice in the same theme):
$ egrep -or '\.Param "[^"]+"' . | sed -r 's/^[^\/]+\/([^\/]+)\/[^\:]+/\1/g' | sort | uniq -u | cut -d: -f2- | awk '{ print $2 }' | sort | uniq -u | wc -l
155

key finding: approx 40% of all parameters are only used in only one theme.
top 30 most commonly used params and the number of themes they are used in:
$ egrep -or '\.Param "[^"]+"' . | sed -r 's/^[^\/]+\/([^\/]+)\/[^\:]+/\1/g' | sort -u | cut -d: -f2- | awk '{ print $2 }' | sort | uniq -c | sort -rn -k 1 | head -n 30
      9 "description"
      9 "author"
      6 "tags"
      5 "toc"
      4 "image"
      4 "contact"
      3 "youtube"
      3 "twitter"
      3 "title"
      3 "share"
      3 "medium"
      3 "logo"
      3 "linkedin"
      3 "instagram"
      3 "icon"
      3 "gitlab"
      3 "github"
      3 "facebook"
      3 "email"
      3 "authorbox"
      2 "valine.enable"
      2 "utterances.owner"
      2 "tocLevels"
      2 "themecolor"
      2 "socialShare"
      2 "socialOptions"
      2 "showPoweredBy"
      2 "seo.site_name"
      2 "related"
      2 "recent_posts_number"

key finding: the above are candidates for "best practice" documentation)
a list of all params used in only one theme can be made with:
$ egrep -or '\.Param "[^"]+"' . | sed -r 's/^[^\/]+\/([^\/]+)\/[^\:]+/\1/g' | sort | uniq -u
academia-hugo:.Param "slides.highlight_style"
academia-hugo:.Param "slides.theme"
autophugo:.Param "description"
autophugo:.Param "full_quality"
autophugo:.Param "full_width"
axiom:.Param "maxWidthFooter"
axiom:.Param "maxWidthHeader"
axiom:.Param "maxWidthTitle"
base16:.Param "author"
base16:.Param "keywords"
basicwebtheme:.Param "previewfullcontent"
basicwebtheme:.Param "randomorder"
basicwebtheme:.Param "skipTitle"
beautifulhugo:.Param "socialShare"
[...]

i took a pass at extracting recommendations to consolidate using Levenshtein distance:
"author"
"Author"
"authors"

"commento"
"comments"

"featured_image"
"feature_image"
"featureImage"

"title"
"Title"
"bigtitle"

"showtoc"
"ShowToc"
"hideToc"

"subtitle"
"SubTitle"

"algolia.params"
"algolia.vars"

"AuthorDesc"
"authorDesc"

"blogHeaderType"
"homeHeaderType"

"enableBlogBreadcrumb"
"enableBreadcrumb"

"enableHomeSidebarTitles"
"enableListSidebarTitles"

i can provide more if that would be helpful.

i took a pass at extracting recommendations to consolidate using Levenshtein distance:
"author"
"Author"
"authors"

"commento"
"comments"

"featured_image"
"feature_image"
"featureImage"

"title"
"Title"
"bigtitle"

"showtoc"
"ShowToc"
"hideToc"

"subtitle"
"SubTitle"

"algolia.params"
"algolia.vars"

"AuthorDesc"
"authorDesc"

"blogHeaderType"
"homeHeaderType"

"enableBlogBreadcrumb"
"enableBreadcrumb"

"enableHomeSidebarTitles"
"enableListSidebarTitles"

i can provide more if that would be helpful.


Request for example pygmy Traefik 2.x integration

Background
Followup to #23 for modernization - there have historically been reasons that tie me to v1.x ongoing and/or on occasion, and this aims to fix that permanently.
Implementation
Docker
n/a

Variables
n/a

Volumes
n/a

# todo: add example that doesn't inherit defaults


Updating of a layer

Hi there,
How can I get the system to deploy a new version of the layer?
It seems like I have to destroy the old one first to get it to redeploy.
maybe I am doing something wrong?
I have been playing with a python layer, if I can get permission to publish it, will share.
thanks!

I think it was because the zip file was empty.

I am going to keep this open, even after I updated the zip file for sure, it did not republish it.

So the check if image exists should also check if the checksum matches the zip file I think.
 name: Check if the image already exists


Function getElementsByName()

I've created a working function for getElementsByName that can be added and implemented but I'm not sure how to suggest, contact and get the code to be available for others. I work at a large company and I am maintaining internal code that 100% must implement CDP and i'd like to engage this project to work on new features and help resolve existing. Please let me know how I can do this.

YES! getElementsByName would be amazing!

Hi rocketlaw, are you aware that you can use getElementsByXpath for the same purpose? getElementsByName is a bit old as not many HTML designs now favor adding the name attribute to its elements.


Refactor github actions

Get secrets out of actions running on PRs. Actions with secrets can only be run from maintainers, as it seems.
As alternative, run actions that require secrets on pushes to main.

@Mergifyio rebase


Change amount of whitespace between lines?

My main complaint about file explorer is that there is too much whitespace, wasting valuable real estate.  I'm looking for function, not beauty.  Can Files be customized to change the line spacing?  Right now, screenshots appear to show even more whitespace than MS file explorer.

Merging with #1940


How to load shape file from SDCard?

How to load shape file from SDCard? l cannot find any api

This capability is coming in our next major release, just 2 weeks away. 100.2. Stay tuned!

Hi @klower
This has been added to our 100.2 release of the ArcGIS Runtime SDK for Android.
Here's our first sample using shapefiles: https://github.com/Esri/arcgis-runtime-samples-android/tree/master/java/symbolize-shapefile
Let us know if you have any more questions either here or on the GeoNet community.


/opt/X11/lib/pkgconfig freetype2.pc fontconfig.pc

Describe the bug
It was impossible for me to install Manim. Using Apple MacBook Air M3.  Following every step (brew and pip3 installations) always got me to the same absurd error with fontconfig version.  Mine was quite more higher but the installer said it was lower than needed
Code:
I run
cd /opt/X11/lib/pkgconfig
mv freetype2.pc -freetype2.pc
mv fontconfig.pc -fontconfig.pc

pip3 install manim

and it worked!

main issue might not always be with the dependencies like fontconfig, but with how pip or pip3 is configured on your system. This can lead to confusion about which version of Python is being used during the installation, especially when multiple versions of Python are installed on your Mac.


[filter rules]: @now doesn't seem to work correctly

I have a collection that have a published field type Date.
I would like to limit data by filter rules to just able list all the data which have published < @now.
I set the collection rules to @collection.posts.published < @now, the problem comes right away.

If the collection contains any documents that have published in the future (> @now), query will always return an empty result
If the collection contains all documents that have published in the past (< @now), query return data as expected.

I wonder this is an issue or am I miss something?
I having PocketBase version 0.11.3

PocketBase v0.11.0+ comes with multi-match/match-all support.
When you apply the filter @collection.posts.published < @now it will require every record from the posts collection to satisfy the condition. If you want "any/at least one of" type of constraint you can prefix the operator with ? (_this will be documented better in the near future):
@collection.posts.published ?< @now

Also please note that the @collection filter is a "join" filter allowing you to filter unrelated collection records. If in your case published is a direct field in your collection then you can just use:
published < @now

More info about the filters you can find in https://pocketbase.io/docs/api-rules-and-filters/#filters-syntax.

@ganigeorgiev Amazing.
Thank you so much for your support.


fixed #214 removed height property from cards to make responsive

fixed #214
i have fixed the responsive issues in cards.
Now cards content is not overflowing.

Thanks for submitting this fix! Would you be interested in addressing some other responsive issues I mentioned below?

i have fixed the issue,
i'm sharing the image please review once

i'm not able to reproduce this issue other than that i have fixed all issue as you mentions.

@love-sonkar The second image you shared is not a problem so ignore that
The sort and language buttons look fine but the header feels too cluttered

we can do one thing, we can remove the contributers button from header when we go 768px

i have given hidden property to the contributers button and added text wrap to sign in text.

@love-sonkar How about having a hamburger menu instead for mobile?
We can use drawer component by DaisyUI
https://daisyui.com/components/drawer/

Hey i would like to suggest somthing. so our website is all about finding repository for hacktoberfest and i think most of the users visit this site in laptop desktop, so i don't think it's good idea to add an drawer component because our our visitors are all from laptop and desktop.

@love-sonkar Even though most visitors use laptop/desktop, there is still a large number of users on phones, and it will increase.
Not forcing you but if you're not comfortable then maybe create a new issue so someone else will take this up

okay i will create new Issue because i'm little bit busy so i can't implement this

can you merge and close this PR

As of now something on the homepage looks messed up

@love-sonkar Any updates?


Update swagger-parser to 2.0.32

Updates io.swagger.parser.v3:swagger-parser from 2.0.28 to 2.0.32.
GitHub Release Notes - Version Diff
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

Ignore future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "io.swagger.parser.v3", artifactId = "swagger-parser" } ]

labels: library-update, early-semver-patch, semver-spec-patch, commit-count:1

Superseded by #164.


Error: secrets "argocd-vault-plugin-credentials" not found

Describe the bug
A clear and concise description of what the bug is.
To Reproduce
Steps to reproduce the behavior:
secret/argocd-vault-plugin/vault-configuration-in-cmdline.yaml
kubectl apply -f vault-configuration-in-cmdline.yaml -n argocd
apiVersion: v1
stringData:
  ARGOCD_ENV_VAULT_ADDR: http://<IP_ADDRESS>:31758
  ARGOCD_ENV_AVP_AUTH_TYPE: k8s
  ARGOCD_ENV_AVP_MOUNT_PATH: auth/kubernetes
  ARGOCD_ENV_AVP_K8S_ROLE: myapp
  ARGOCD_ENV_AVP_TYPE: vault
  ARGOCD_ENV_AVP_K8S_TOKEN_PATH: /var/run/secrets/kubernetes.io/serviceaccount/token
kind: Secret
metadata:
  name: argocd-vault-plugin-credentials
  namespace: argocd
type: Opaque

secret/argocd-vault-plugin/cmp-plugin-with-cmdline.yaml
kubectl apply -f cmp-plugin-with-cmdline.yaml -n argocd
apiVersion: v1
kind: ConfigMap
metadata:
  name: cmp-plugin
data:
  avp-kustomize.yaml: |
    ---
    apiVersion: argoproj.io/v1alpha1
    kind: ConfigManagementPlugin
    metadata:
      name: argocd-vault-plugin-kustomize
    spec:
      allowConcurrency: true
      discover:
        find:
          command:
            - find
            - "."
            - -name
            - kustomization.yaml
      generate:
        command:
          - sh
          - "-c"
          - "kustomize build . | argocd-vault-plugin generate  -s argocd:argocd-vault-plugin-credentials -"
      lockRepo: false
  avp-helm.yaml: |
    ---
    apiVersion: argoproj.io/v1alpha1
    kind: ConfigManagementPlugin
    metadata:
      name: argocd-vault-plugin-helm
    spec:
      allowConcurrency: true
      discover:
        find:
          command:
            - sh
            - "-c"
            - "find . -name 'Chart.yaml' && find . -name 'values.yaml'"
      generate:
        command:
          - sh
          - "-c"
          - |
            helm template $ARGOCD_APP_NAME -n $ARGOCD_APP_NAMESPACE ${ARGOCD_ENV_HELM_ARGS} . |
            argocd-vault-plugin generate  -s argocd:argocd-vault-plugin-credentials -
      lockRepo: false
  avp.yaml: |
    apiVersion: argoproj.io/v1alpha1
    kind: ConfigManagementPlugin
    metadata:
      name: argocd-vault-plugin
    spec:
      allowConcurrency: true
      discover:
        fileName: "./argocd-vault-plugin"
      generate:
        command:
          - argocd-vault-plugin
          - generate
          -  -s argocd:argocd-vault-plugin-credentials
          - "."
      lockRepo: false
---

rbac.yaml
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
  name: argocd-repo-server-secret-read
rules:
- apiGroups:
  - ""
  resources:
  - secrets
  verbs:
  - get
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
  name: argocd-repo-server-secret-read
roleRef:
  apiGroup: rbac.authorization.k8s.io
  kind: ClusterRole
  name: argocd-repo-server-secret-read
subjects:
- kind: ServiceAccount
  name: argocd-repo-server
  namespace: argocd

secret/argocd-vault-plugin/ap-clusterResourceWhitelist.yaml
kubectl apply -f ap-clusterResourceWhitelist.yaml -n argocd
apiVersion: argoproj.io/v1alpha1
kind: AppProject
metadata:
  name: project
spec:
  clusterResourceWhitelist:
  - group: ""
    kind: Namespace
  sourceRepos:
    - https://gitee.com/hxpgit/argocd.git
  destinations:
    - server: https://<IP_ADDRESS>:6443
      namespace: demo
      name: cluster1
    - server: https://<IP_ADDRESS>:6443
      namespace: demo

secret/app-argocd-vault-plugin-without-env.yaml
kubectl apply -f app-argocd-vault-plugin-without-env.yaml -n argocd
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
  name: app
spec:
  destination:
    namespace: demo
    name: cluster1
  source:
    repoURL: https://gitee.com/hxpgit/argocd.git
    path: demo1/secretManager/argocd-vault-plugin
    targetRevision: HEAD
    plugin: {}
  project: project
  syncPolicy:
    automated:
      prune: true
      selfHeal: true

Duration:           0s
Message:            ComparisonError: rpc error: code = Unknown desc = Manifest generation error (cached): plugin sidecar failed. error generating manifests in cmp: rpc error: code = Unknown desc = error generating manifests: argocd-vault-plugin generate -s argocd:argocd-vault-plugin-credentials . failed exit status 1: Error: secrets "argocd-vault-plugin-credentials" not found
Usage:
Expected behavior
A clear and concise description of what you expected to happen.
Screenshots/Verbose output
If applicable, add screenshots to help explain your problem.
If you've tried running argocd-vault-plugin generate with --verbose-sensitive-output to help debug, please include that output here after redacting any secrets.
Additional context
Add any other context about the problem here.

I would make sure that the service account does actually have the role binding and that is being applied to your sidecar containers.

it has role binding ,or it will through out you have no permission to read secrets.

放到repo容器里执行没问题，sync有问题Error: secrets " argocd-vault-plugin-credentials" not found

rgocd@argocd-repo-server-6c48d8bd6-cv45q:~/cmp-server/plugins/repo$ argocd-vault-plugin generate  -s argocd-vault-plugin-credentials .
apiVersion: v1
kind: Secret
metadata:
  annotations:
    avp.kubernetes.io/path: kv/data/cred
  name: example-annotation
stringData:
  password: "123"
  username: mark
type: Opaque
---
argocd@argocd-repo-server-6c48d8bd6-cv45q:~/cmp-server/plugins/repo$ cat a.yaml
kind: Secret
apiVersion: v1
metadata:
  name: example-annotation
  annotations:
    avp.kubernetes.io/path: "kv/data/cred"
type: Opaque
stringData:
  username: <username>
  password: <password>

@werne2j

空格问题

How was this resolved?

Is their a fix for this error? I am stuck


[Feature]: Hide Alarm keypad when not armed

Requirements

[X] I have updated Mushroom to the latest available version
[X] I did a search to see if there is a similar issue or if a pull request is open.

Is your feature request related to a problem?
I would like to be able to hide the alarm keypad when the alarm is not armed. I have an option set to only require the key when disarming the alarm. No reason to display it when not armed.
Describe the solution you'd like
probably just check boxes to show keypad when in that particular state.
Describe alternatives you've considered
I tried
{% if is_state('alarm_control_panel.home_alarm', 'armed_away') %}
  show_keypad: true
{% endif %}

but it just gave errors
Additional context
this is the option I set on the manual alarm to not require a code for arming
code_arm_required boolean (Optional, default: true)
If true, the code is required to arm the alarm.

I just found out about conditional cards and was able to accomplish this that way.


有没有点击弹窗外部关闭弹窗的功能呢

Describe the Feature request
Please tell us the problem you are running into that led to you wanting
a new feature.

@haoxuhong
暂时还没，下个版本考虑加上


Create a help panel

Add a panel that contains the list of keybindings with an explanation on what they do.
The panel would occupy on the whole screen, and its visibility would be toggled using a key (such as h).

Hey, I have set up this project on my local machine as required.
Screenshot:

Can I be assigned this issue?

Yes! You are now assigned this issue.
Do let us know when you are blocked and need assistance on this one!

@panglesd I have read and got an understanding of the code in the /bin and /lib  directory. I am a bit unclear about what the help panel should include. Should it just have the explanation of the keyboard key functions like n, p or should it also contain the information about the diffcessible command its arguments?
Can you please elaborate on that?

Sure!
The help panel will only contain a small explanation of the layout of what you can find on the screen, and a list of key-bindings.
Currently, the keybindings are only n, p, q and soon h, so it might feel a little bit empty. However, we plan to have  UpArrow/DownArrow and j, k to scroll, some key to alternate between "side-by-side" diff and normal diff, maybe a way to navigate hunks (instead of operations...).
Having the help panel already implemented will simplify the addition of help for those new key-bindings!

I have tried implementing a logic for a toggle help panel which goes like:

After testing it, I found the toggling function was not working. Can you suggest me why that may be happening?

It's a good start! But there are some small issues.
Let me explain again some of concepts of Lwd:

Lwd.var is a variable: it contains some data (that you can see with Lwd.peek and modify with Lwd.set)
The 'a Lwd.t type is the type of a 'a that might change over time
The Lwd.get function allows you to turn an lwd variable into a value that might change over time! (It changes when the value of the variable change)
The Lwd.bind allows to take values that changes over time, and create a new value that changes time, with a regular function. This is mostly used through the let$ syntax.
A UI element that changes over time will have the changes reflected in the terminal. So the idea is to have a few Lwd variables, and build the UI from them. Whenever they change, the changes in the UI will be reflected in the terminal.

Some additional (arguably not easy to read) documentation for lwd is available in its homepage.
Hope this helps! Let me know if you need more assistance. But since you already have some code written, it would be better to open a PR, even unfinished: that's much better to read and comment the code than a screenshot or copy-pasted unsyntaxhighlighted code...

@panglesd Thanks for explaining these concepts. I understood why even after pressing h key, the help panel isn't being displayed and now I am working on implementing how to use Lwd.get to check if the help panel should be visible.
I am currently reading the documentation for Lwd and also watching some video tutorials for getting a better understanding of the code.


[Trampoline] Dont change the load path just for postit

@homu r+

:pushpin: Commit b7086cc has been approved by segiddins

:hourglass: Testing commit b7086cc with merge bacb0e7...

:sunny: Test successful - status


perf(routes/docs): defer non-critical css

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

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

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
499

Relevant Lines:
499

💛  - Coveralls


New table for Equipment Attribute Key choices

columns

[ ] id

[ ] teamId (nullable means global system)

[ ] Key

[ ] Key Description

[ ] Dept Admin can add values for their team

[ ] Equipment attributes key type ahead only allows global and team keys

[ ] Import ignores these and can import Anything?

[ ] Import warns if key doesn't match?

[ ] Info icon that will list all key choices?

[ ] UI for team and or system to maintain keys

[ ] Populate global data with DbInit

Sounds good.  I think key description could be a cool thing to put in the typeahead and maybe even on a mouseover later.  Possibly we want to let equipment admins be able to setup attributes, but if that's hard then leave it for later.  Info icon listing all types or opening in a new window a types report could be a useful later feature


make pledge-related notifications more specific and helpful

@BerkeleyTrue @atjonathan I've updated the PR please QA and merge.

LGTM :+1:
Thanks @QuincyLarson


Fix jumpy projection using WEB_MERCATOR_AUTO_OFFSET with CARTESIAN coordinates

geospatialOrigin is frounded in lnglat space while shaderCoordinateOrigin is frounded in common space.
Change List

Match geospatialOrigin and shaderCoordinateOrigin
Tests

Coverage increased (+0.001%) to 82.948% when pulling 9affba3042859dfc4a056b8135f3aa546db6f6f9 on x/projection-bug into b1901b11cbdcb82b317e1579ff236d1ca1d03ea7 on master.


complete coverage for command start

run npm test
edit test test/commands/start.test.js
get test to 100% across the board

Hi, I had a go at this for the fest 🎉  PR is up. Please let me know if I need to add more test cases.


Get Chinese characters ghost in display when use TUI program

Windows Terminal version
1.11.3471.0
Windows build number
10.0.22000.0
Other Software
lf r26
fzf 0.29.0
lazygit 0.32.2
powershell 7
Steps to reproduce
install these console TUI software in windows terminal，and just use them interacting with some files in Chinese characters.
Expected Behavior
display characters normally
Actual Behavior
https://user-images.githubusercontent.com/52651594/153695246-fe916770-2e6c-4730-84b2-d425bc157e31.mp4

To reproduce this:

Install lf (I can give you a prebuilt binary)
Clone https://github.com/forthespada/InterviewGuide
Navigate through the various .md files in that project

This issue occurs in cmd.exe, but doesn't occur in WSL.
This makes me suspect that this is an issue in lf and not in Windows Terminal.

Hey @lfishRhungry can you help clarify? Which part is unexpected? the glyph size, or the fact that the glyphs remain on the screen at all?
These two frames follow one another:

The wrongly sized glyphs in the second image are present in the first image. That makes us think they were supposed to be replaced with whitespace, but instead the buffer got corrupted.
https://github.com/gokcehan/lf/issues/451 seems to imply this should have been fixed in r17?
https://github.com/gokcehan/lf/issues/644 was filed in 2021, which sounds like the same thing. That issue was closed by the OP without giving an answer. I'd recommend following up there.
/dup https://github.com/gokcehan/lf/issues/644

Hi @zadjii-msft I think this issue should be reconsidered
gokcehan/lf#644 is not solved yet.
Enable legacy console does make some effect to eliminate some ghost CJK characters. However there are still some ghost characters on display.
Before:

After:

Simular problems occured in

lf (tcell)
fzf (tcell)
lazygit(gocui->termbox)
lazydocker(gocui->termbox)
These repos use different TUI dependencies, so maybe this problem is not caused by repos listed below.

This makes me suspect that this is an issue occurred when running TUI program coded in Golang in Console_Prompt/PowerShell/Windows_Terminal.

You can open a new issue.
I had change my operation system to linux.😅😅😅Hope to learn more.

May I ask, what is the progress of solving this problem? I have the same problem.

We haven't really investigated more.  We'll make sure to update this thread when there are updates to share. In the meantime, might I recommend the Subscribe button?

That way you'll be notified of any updates to this thread, without needlessly pinging everyone on this thread ☺

I have the same problem, too.

pre-emptively putting into 1.19 to see if Atlas v9000 solved this. I don't think so. I'm still under the impression that this is fundamentally an issue down in tcell. The glyph rendering looks a LOT better in the latest 1.18 builds, but something is absolutely choking on the wide chars.

Looks like the new renderer in 1.18 did end up fixing this after all:


pkg/transport: tests always listen on <IP_ADDRESS>

This avoids firewall prompts when running tests on OSX.

lgtm


Mean Point Estimate Information Content Entity parent missing

The term Mean Point Estimate Information Content Entity is defined as

A Ratio Measurement Information Content Entity that is a measurement of a set of values and is equal to the sum of all the values in the set divided by the total number of values in the set.

There is a class Ratio Measurement Information Content Entity however this class is neither the asserted parent or an inferred parent.
Ratio Measurement Information Content Entity is equivalent to ('is a ratio measurement of' some entity) so that axiom could be added to Mean Point Estimate Information Content Entity so that the reasoner classifies it properly. Or, if it's a cut and paste error then the superclass could be corrected.

I think you meant "A Mean Point Estimate Information Content Entity is defined as"
The current definition does incorrectly mention Ratio Measurement Information Content Entity as the parent class. This will be changed to mention Point Estimate Information Content Entity instead.

This is an opportunity to address definitions of the siblings of Mean Point Estimate Information Content Entity, which are also problematic:

Mode Point Estimate Information Content Entity says its parent is Nominal Measurement Information Content Entity.
The definition of Median Point Estimate Information Content Entity doesn't follow the "A parent that ..." paradigm.

These are fixed on a branch and shall be part of the next release.
Median = A Point Estimate Information Content Entity that is a measurement of a set of values and is equal to either the middle value or the average of the two values which separate the set into two equally populated upper and lower sets.
Mode = A Point Estimate Information Content Entity that is a measurement of a set of values and is equal to the  values(s) that occur most often in the set.
Mean = A Point Estimate Information Content Entity that is a measurement of a set of values and is equal to the sum of all the values in the set divided by the total number of values in the set.


WIP By default only create master VM when using vagrant

Verification pending
One or more nodes can be created by setting the environment variable
VAGRANT_NUM_NODES. They will all register automatically at the apiserver
on master.
Change-Id: I97be438be4f77fa7a8cc6de926e6f0fd8a2ff50c

cc @fabiand @stu-gott


Authentication question

[Redacted question]

Hi @tamburo, thank you for the question. Please send an email to<EMAIL_ADDRESS>with any security related questions. There are further details in this documentation: https://superset.apache.org/docs/security/#reporting-security-vulnerabilities


[Windows][PointerEvent] Stylus input recognized as touch on windows.

Bug details
Inputs which are using a stylus recognize as "touch" not "stylus" on windows.
I checked this issue would not  happen on Android and WebApp(DartPad).
I tried XP-Pen stylus and Wacom stylus, but this issue occured on both devices.
https://user-images.githubusercontent.com/29007466/161700735-2f0d12b7-6654-406c-8685-b0ec95a7a724.mp4
Environment
OS: Windows11 Version 10.0.22000.556
Flutter: 2.10.2
Tablet:

XP-Pen Artist12
Wacom Intuos CTL-4100

Steps to Reproduce

Execute flutter run on the code sample
Touch and move  a stylus.
PointerEvent.kind.toString() return "PointerDeviceKind.touch"

Expected results:
Stylus inputs will recognize as "stylus".
Actual results:
Stylus inputs recognized as "touch".

Code sample

import 'package:flutter/material.dart';

void main() {
  runApp(const MyApp());
}

class MyApp extends StatelessWidget {
  const MyApp({Key? key}) : super(key: key);
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'StylusInputBug',
      theme: ThemeData(
        primarySwatch: Colors.blue,
      ),
      home: const MyHomePage(title: 'StylusInputBug'),
    );
  }
}

class MyHomePage extends StatefulWidget {
  const MyHomePage({Key? key, required this.title}) : super(key: key);
  final String title;
  @override
  State<MyHomePage> createState() => _MyHomePageState();
}

class _MyHomePageState extends State<MyHomePage> {
  double posX = 0;
  double posY = 0;
  double pressure = 0;
  bool isStylus = false;
  String inputType = "None";

  void _penStatus(PointerEvent input) {
    // if (input.kind == ){
    setState(() {
      posX = input.position.dx;
      posY = input.position.dy;
      pressure = input.pressure;
    });
    // }
    inputType = input.kind.toString();
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text(widget.title),
      ),
      body: Listener(
        onPointerMove: _penStatus,
        child: SafeArea(
          child: Container(
            width: 500,
            height: 500,
            color: Colors.lightGreen,
            child: Column(children: [
              Text('StylusPosition:($posX,$posY)'),
              Text('StylusPressure:$pressure'),
              Text(inputType),
            ]),
          ),
        ),
      ),
    );
  }
}

I'm sorry for my bad English.
If you wouldn't understand my English, please ask me.

@igameta
I believe you are seeing the reported behavior due to https://github.com/flutter/flutter/issues/65248.
So I suggest you to follow-up in it for further updates.
Closing this as a duplicate. If you disagree, write in comments and I'll reopen it.

@darshankawar
Oh, I missed it.
Thank you.


DocsArchive-<IP_ADDRESS>Auto archive content

Please don't merge this PR until target archive repo PR https://github.com/OPS-E2E-PPE/docs-archive-test-target-new/pull/4 is merged into live branch.
Auto archive content to https://github.com/OPS-E2E-PPE/docs-archive-test-target-new.git

Docs Build status updates of commit b413121:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

.openpublishing.redirection.json
:white_check_mark:Succeeded

archvieSourceFolder/TOC.yml
:white_check_mark:Succeeded

archvieSourceFolder/content/someContent.md
:white_check_mark:Succeeded

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


Nextjs13 serverside components

Describe the bug
When using  in a Nextjs13 server component I get the error "Error [TypeError]: Super expression must either be null or a function". When I turn the component into a client-side component everything works fine. The dilemma is for me to have syntax highlighting I can't have a more performant serverside blog page but need to make it client-side. It would be awesome if this lib worked on server-side components.
To Reproduce
Steps to reproduce the behavior:

Create a NextJS 13 app.
Keep page.tsx a serverside component and try and use

TEST

Expected behavior
"Error [TypeError]: Super expression must either be null or a function" error should be displayed.
Screenshots
I don't think screenshots would be helpful here.
Desktop (please complete the following information):

desktop/firefox

Additional context
This works great non-the-less. I know everyone is catching up to serverside stuff so understandable. This is a great product.

Even I came across the same error: Error [TypeError]: Super expression must either be null or a function. @nickgrato thanks for sharing the resolution as well.
`null

wait compiling...
event compiled successfully in 224 ms (1738 modules)
error<EMAIL_ADDRESS>(4:10) @ _inherits
error Error [TypeError]: Super expression must either be null or a function
at _inherits (webpack-internal:///(rsc)/./node_modules/@babel/runtime/helpers/inherits.js:5:15)
at eval (webpack-internal:///(rsc)/./node_modules/react-syntax-highlighter/dist/cjs/async-syntax-highlighter.js:45:35)
at _default (webpack-internal:///(rsc)/./node_modules/react-syntax-highlighter/dist/cjs/async-syntax-highlighter.js:164:6)
at eval (webpack-internal:///(rsc)/./node_modules/react-syntax-highlighter/dist/cjs/light-async.js:50:55)
at (rsc)/./node_modules/react-syntax-highlighter/dist/cjs/light-async.js (/.next/server/app/blog/page.js:14194:1)
at webpack_require (/.next/server/webpack-runtime.js:33:42)
at eval (webpack-internal:///(rsc)/./node_modules/react-syntax-highlighter/dist/cjs/index.js:55:42)
at (rsc)/./node_modules/react-syntax-highlighter/dist/cjs/index.js (/.next/server/app/blog/page.js:14161:1)
at webpack_require (/.next/server/webpack-runtime.js:33:42)
at eval (webpack-internal:///(rsc)/./src/app/blog/page.tsx:8:82) {
digest: undefined
}`

I bumped into this issue again.
The best round about so far is some React Composition to not transform the entire page into client if you are working with a server component.
Something like this should do the work if you import it in your server component. Only this small piece of code will be client side, minimizing the impact
"use client"

import { Prism } from 'react-syntax-highlighter';
import { dark } from 'react-syntax-highlighter/dist/esm/styles/prism';

export function SyntaxHighlighter(children: React.ReactNode) {
  return (
    <Prism language="javascript" style={dark}>
      {children}
    </Prism>
  );

I ended up going with another library for now but will stay tuned here.

I ended up going with another library for now but will stay tuned here.

Which library are you using? I was regarding this feature for my portfolio.

I ended up going with another library for now but will stay tuned here.

Which library are you using? I was regarding this feature for my portfolio.

Sorry for the late reply - I ended up using shiki - I did have to hack a little of that even to get that to work right though.... my blog's code should be public if you want to see how I did it.  @barrett-ruth
https://github.com/nickgrato/grato_codes

I ended up going with another library for now but will stay tuned here.

Which library are you using? I was regarding this feature for my portfolio.

Sorry for the late reply - I ended up using shiki - I did have to hack a little of that even to get that to work right though.... my blog's code should be public if you want to see how I did it. @barrett-ruth
https://github.com/nickgrato/grato_codes/blob/main/app/blog/[slug]/page.tsx

Your blog looks cool!
Can you explain why was it so tricky to implement?

thank you!
so in that link I sent you if you look at the function getHighlighter(); it shows the "ticky-ness" but even with shiki I had to tell nextjs about the library so on the serverside it has those files "return pathJoin(process.cwd(), 'libs/shiki');" and doesn't wait till the client side to access that library.

I ended up going with another library for now but will stay tuned here.

Which library are you using? I was regarding this feature for my portfolio.

Sorry for the late reply - I ended up using shiki - I did have to hack a little of that even to get that to work right though.... my blog's code should be public if you want to see how I did it. @barrett-ruth
https://github.com/nickgrato/grato_codes/blob/main/app/blog/[slug]/page.tsx

Your blog looks cool!
Can you explain why was it so tricky to implement?

thank you!
so in that link I sent you if you look at the function getHighlighter(); it shows the "ticky-ness" but even with shiki I had to tell nextjs about the library so on the serverside it has those files "return pathJoin(process.cwd(), 'libs/shiki');" and doesn't wait till the client side to access that library.

I think there is a similar issue with the react-player library: it does not work in serverside, we have to use client components to render it.
So, you handled it to be rendered in serverside, right?


Panel tab improvement - "rewind" to first page

From Daniele Nicolucci:
'After scrolling to the other pages of the Panel tab, the only way to go back to the first one (the one with the temperatures) is to either scroll back or scroll beyond the last one. A nicer way would be to simply tap the Panel button in the tab bar itself to "rewind" to the first page, much like Instagram does if you scroll the stories view and tap the home button.'

Thanks!

Maybe the delegate issue could be worked around by keeping a reference to the current delegate before assigning to self, and then "forwarding" the event to it when we receive it? Sort of like calling the current method on super for extended classes. (Just throwing this here, haven't programmed for iOS in ages)


CODEOWNERS: update owners

Update posix, usb and power subsystem owners.
Signed-off-by: Anas Nashif<EMAIL_ADDRESS>

Codecov Report

Merging #7056 into master will decrease coverage by <.01%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master    #7056      +/-   ##
==========================================
- Coverage   58.62%   58.61%   -0.01%
==========================================
  Files         464      464
  Lines       47440    47440
  Branches     8790     8790
==========================================
- Hits        27811    27808       -3
- Misses      15796    15798       +2
- Partials     3833     3834       +1

Impacted Files
Coverage Δ

boards/posix/native_posix/timer_model.c
98.21% <0%> (-1.79%)
:arrow_down:

samples/philosophers/src/main.c
96.87% <0%> (-1.57%)
:arrow_down:

lib/posix/pthread.c
69.34% <0%> (-0.51%)
:arrow_down:

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 2563c37...846ddf1. Read the comment docs.


Format.Sanitize should escape mentions

Currently Format.Sanitize does not escape mentions; this means that code like
var untrustedInput = MentionUtils.MentionUser(Context.Message.Author.Id);
var shouldBeSafe = Format.Sanitize(untrustedInput);
await ReplyAsync(shouldBeSafe);

will successfully ping the user. In my opinion Sanitize should also escape mentions (by adding < and > to Format.SensitiveCharacters). This would also escape channel mentions, role mentions and external emojis.
With this fix the above message would show up as <@!181451590533928934> in Discord, which isn't pretty but it doesn't ping random people.

There is a bit of functionality overlap here. MentionUtils.Resolve(userHandling: TagHandling.Sanitize) inserts a nbsp to sanitize mentions

@foxbot @FiniteReality should Format.Sanitize maybe also call MentionUtils.Resolve with all sanitize params set?

I don't think it's a great idea, personally. The Format class should be used for Markdown formatting specifically IMO.

Yeah, I have to agree with that. I'm going to close this.


Input failed after updating comfyui

Downloading anime face detector...
Failed to download lbpcascade_animeface.xml so please download it yourself.
Searge-SDXL v4.1 in D:\ComfyUI_windows_portable_nvidia_cu118_or_cpu\ComfyUI_windows_portable\ComfyUI\custom_nodes\SeargeSDXL
Traceback (most recent call last):
File "D:\ComfyUI_windows_portable_nvidia_cu118_or_cpu\ComfyUI_windows_portable\ComfyUI\nodes.py", line 1725, in load_custom_node
module_spec.loader.exec_module(module)
File "", line 883, in exec_module
File "", line 241, in call_with_frames_removed
File "D:\ComfyUI_windows_portable_nvidia_cu118_or_cpu\ComfyUI_windows_portable\ComfyUI\custom_nodes\was-node-suite-comfyui_init.py", line 1, in
from .WAS_Node_Suite import NODE_CLASS_MAPPINGS
File "D:\ComfyUI_windows_portable_nvidia_cu118_or_cpu\ComfyUI_windows_portable\ComfyUI\custom_nodes\was-node-suite-comfyui\WAS_Node_Suite.py", line 37, in
from numba import jit
File "D:\ComfyUI_windows_portable_nvidia_cu118_or_cpu\ComfyUI_windows_portable\python_embeded\lib\site-packages\numba_init.py", line 55, in
ensure_critical_deps()
File "D:\ComfyUI_windows_portable_nvidia_cu118_or_cpu\ComfyUI_windows_portable\python_embeded\lib\site-packages\numba_init.py", line 42, in _ensure_critical_deps
raise ImportError("Numba needs NumPy 1.24 or less")
ImportError: Numba needs NumPy 1.24 or less
Cannot import D:\ComfyUI_windows_portable_nvidia_cu118_or_cpu\ComfyUI_windows_portable\ComfyUI\custom_nodes\was-node-suite-comfyui module for custom nodes: Numba needs NumPy 1.24 or less
0.0 seconds (IMPORT FAILED): D:\ComfyUI_windows_portable_nvidia_cu118_or_cpu\ComfyUI_windows_portable\ComfyUI\custom_nodes\was-node-suite-comfyui

Reinstall WAS-NS requirements.

Reinstall WAS-NS requirements.

I've actually tried multiple ways to reinstall the requirements. But it still reports an error, but I've fixed it now.
I downloaded the old version of the UI and pasted the python_embedded folder into the new version
Thank you very much for your reply!


Add head method to hdfilesystem

:+1: LGTM. This is working as expected.

Oops, commented on wrong PR, I get this error with head or tail, am I using them correctly?:
hdfs.head('/tmp/enron/edrm-enron-v2_white-s_xml.zip/merged.txt')
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-15-fa4011b07f26> in <module>()
      1 with hdfs.open(filenames[0]) as f:
----> 2     hdfs.head(f)

/home/ubuntu/hdfs3/hdfs3/core.py in head(self, path, size)
    416     def head(self, path, size=None):
    417         """ Return last bytes of file """
--> 418         size = int(size) or 1024
    419         with self.open(path, 'r') as f:
    420             return f.read(size)

TypeError: int() argument must be a string, a bytes-like object or a number, not 'NoneType'

My mistake, seems to be working when I pay attention to the arguments (e.g., size).
>>> hdfs.head('/tmp/enron/edrm-enron-v2_allen-p_xml.zip/merged.txt', 400)
Out[29]:
b'Date: Tue, 26 Sep 2000 09:26:00 -0700 (PDT)\r\nFrom: Phillip K Allen\r\nTo<EMAIL_ADDRESS>Investment Structure\r\nX-SDOC: 948896\r\nX-ZLID: zl-edrm-enron-v2-allen-p-1713.eml\r\n\r\n---------------------- Forwarded by Phillip K Allen/HOU/ECT on 09/26/2000 \r\n04:26 PM ---------------------------\r\n\r\n\r\n"George Richards"<EMAIL_ADDRESS>on 09/26/2000 01:18:45 PM\r\nPlease respond to <cbpres@au'

This doesn't seem like your mistake.  We're calling int(None).  This looks like a bug?  It would be good to have more extensive tests on these functions.

I propose we rip out all the CLI from the library, as I think we already more or less agreed. This I think is a remnant of handling that.

+1 on ripping out the CLI.  This experience is also a sign that we need to more exhaustively verify correctness of the standard API.


Defining default theme in Shards?

Hi guys! Thanks for the awesome project!
I was wondering how to change my default theme's primary and secondary colours. Do I just define a theme object and render it with my main App component?
Thanks!

Hello,
Yes I would also like a quick guide to global theming or some reference to look into.
Thanks

Any help here ? Is it possible to did it without building from scratch shards-ui ?

Any of you could solve it?

Just going to close this :skull:


Only lines in Mindmap, no words

Hello RisingOrange,
I have been working with Anki for about two months and came across your very interesting extension. Especially when structuring the index cards, I find your extension for visualisation very promising. Unfortunately, when I create the file, I can only see the lines. Unfortunately, the terms cannot be displayed.
My first question is: what programme do you use to view your mind maps? Is there a special programme? I currently use Windows Explorer or Edge. Unfortunately, the image could not be viewed with Firefox.
Note:
If I use the note view, I cannot create a file. I realise that this option is still experimental.
I hope you can help me.
P. S.: In case of errors I can send you the text (error code) as a text file. I didn't want to inflate the request unnecessarily.
Regards evil headache
Translated with www.DeepL.com/Translator (free version)

Hello evil headache,
I am opening the mind map using a regular image viewer program and I am also able to open them using Firefox. Don't know why it does not work for you. If you send me the resulting image file and the error messages I can try to solve the problem.


Supported Nested groups

Hi!
In my use case I have a sortable set nested inside another array of objects. Something like:
model() {
  return {
    groups: [
      {
        id: 0,
        items: [
          { name: 'Uno' },
          { name: 'Dos' },
          { name: 'Tres' },
          { name: 'Cuatro' },
          { name: 'Cinco' }
        ]
      },{
        id: 1,
        items: [
          { name: 'Eins' },
          { name: 'Zwei' },
          { name: 'Drei' },
          { name: 'Vier' },
          { name: 'Fünf' }
        ]
      }
    ]
  };
}

In the current code, I cannot specify which group the reorderItems action handler should target, since only the newOrder array is given.
Could we modify the sortable-group component to accept an additional source variable, so that the reorderItems know which group it is suppose to modify?
I've created a branch here.

+1
I also have such a use case

I’ve been considering adding a model attr to sortable-group as proposed in #22. Would that suit your needs?

I think so

@rsaccon cool. I’m hoping to put a bit of time into this soon but if anyone would like to give it a try first, I would welcome a pull request :smile:

Sure. I've opened a pull request #28.

Closed by #28


Integration with Magic plug-in

The https://www.spigotmc.org/resources/magic.1056/ seems quite promising for integration. I should look into the possibilities.

That would be awesome for my magic installation


Style fix: remove argument names in function prototypes, declared in headers; fix '*' alignment in headers

Good to me

@galpeter, @egavrin, the patch was updated.

lgtm

LGTM

@galpeter, @egavrin, thank you for review.


Rtmp in av

Summary
Allow to use RTMP inputs in the standard AV module (ie ffmpeg)
Because historical module was used with intel quicksync but people without HW/Feature should be able to use it.
Review
Not much
Test coverage

[ ] code already covered by the following tests:
[ ] a new unit test is provided with this change set
[ ] a new command line test is provided with this change set
[ ] a new squish test is provided with this change set
[X] no test needed: manual

That means that the rtmp reader goes completely unused though, even on Nvidia/Intel system that could use it? The libavreader presumably comes (alphabetically) first in the plugin list, and it handles the rtmp input now, so the rtmp plugin is never asked, and is not used.

I didn't try to re-enable the historical rtmp plugin but I will have a look.
I need to check if they were an UI for it (but when creating the project you should be able to choose between two in the input list).
But when reloading the ptv, you're right I think, first check, first served...
Ok let's block this the time to figure out.

Best fix for that issue I could come up with is to have each plugin return something like a specialization score. Then sort all I/O plugins from most specialized to generalized, and call on the most specialized plugin first.

RTMP inputs needed


Client sends a SMS message twice

Hi all,
I'm having this issue that when I'm trying to send a SMS message, I receive it twice in my device.
The project is running with .net8, using the nuget v3.0.1. I also tried it with v3.0.0 with the same results.
The code to reproduce it is given below (redacted sensitive data with asterisks):
var smsApiConfiguration = new Configuration() {
    ApiKey = "****",
    BasePath = "****"
};
var smsApi = new SmsApi(smsApiConfiguration);
var smsRequest = new SmsAdvancedTextualRequest(
    bulkId: "bulkid:123",
    messages: [
        new SmsTextualMessage(
            destinations: [
                new SmsDestination(to: "+3069********", messageId: "msgid:123")
            ],
            campaignReferenceId: "campaign:123",
            from: "***",
            text: "Test message"
        )
    ]);
 var smsResponse = await smsApi.SendSmsMessageAsync(req, cancellationToken);

No exception was thrown (ApiException etc), and the response was of status pending (id: 26, groupid: 1)
I tried to reproduce it by directly calling Infobip's endpoints (both v2 and v3) using postman and the messages were delivered just once as expected.
Is there something that I'm missing with the configuration object or the construction of the message?

This only occur in our testing environment and works as expected in development and production environments, so it seems to be some weird configuration that we still haven't figured out. Since this doesn't seem to be something specific with the Infobip client,  I'm closing this issue and append any possible findings in the future.


⚠ Hartman Foundation has degraded performance

In 80da803, Hartman Foundation (https://gordonhartman.com/) experienced degraded performance:

HTTP code: 200
Response time: 2552 ms

Resolved: Hartman Foundation performance has improved in d23bef3.

Resolved: Hartman Foundation performance has improved in d23bef3.


Package request: reorder_python_imports

Project description
Tool for automatically reordering python imports. Similar to isort but uses static analysis more.
Metadata

homepage URL: https://github.com/asottile/reorder_python_imports
source URL: https://github.com/asottile/reorder_python_imports
license: mit
platforms: anywhere Python runs (unix, linux, darwin, ...)

This is already packaged https://github.com/NixOS/nixpkgs/blob/master/pkgs/development/python-modules/reorder-python-imports/default.nix

Sorry I missed that! I searched for "reorder_python_imports" (which is the name of the corresponding Python module) before opening this, for which there are currently no results. Do you happen to know if there is a separate ticket more generally tracking improving the search results for situations like this?
Closing this ticket in any case. Thanks for the pointer!

No worries! I also missed it until I did some grepping. It’s an unfortunate side effect of how the package was named. This search yields results but it is not intuitive. I don’t think there’s a corresponding ticket to track these kinds of issues

Thanks! Just filed https://github.com/NixOS/nixpkgs/issues/224734 to track improving the search quality for queries like this.


Many projects report the same exception.

Which version and edition of Flyway are you using?
5.2.3
If this is not the latest version, can you reproduce the issue with the latest one as well? (Many bugs are fixed in newer releases and upgrading will often resolve the issue)
I have userd the latest version to instead.
Which client are you using? (Command-line, Java API, Maven plugin, Gradle plugin)
Maven plugin.
Which database are you using? (Type & version)
MySQL,5.7.2.
Which operating system are you using?
Develop is Windows 10, and servers are Linux CentOS 7.5.
What did you do? (Please include the content causing the issue, any relevant configuration settings, the SQL statement(s) that failed (if any), and the command you ran)
I did nothing.It's happened on the AM of yesterday.
What did you expect to see?
Of course,the projects are running successfully.
What did you see instead?
The flywaydb of many projects report the same exception,but the sql file is not exsits.
The error message:
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'flywayInitializer' defined in class path resource [org/springframework/boot/autoconfigure/flyway/FlywayAutoConfiguration$FlywayConfiguration.class]: Invocation of init method failed; nested exception is org.flywaydb.core.api.FlywayException: Validate failed: Detected applied migration not resolved locally: 1.0.202105311400
Caused by: org.flywaydb.core.api.FlywayException: Validate failed: Detected applied migration not resolved locally: 1.0.202105311400

This was an intentional change for version 7.
Please see documentation on ignoreMissingMigrations to correct this issue.
Closing for now.


enable Bitcoin services only after setup

Currently, all services are enabled and as soon as the BitBoxBase has power and network it will start syncing over Tor.
As we give the user different options during the Setup Wizard, services should not start before that.
This pull-request...

adds the build option BASE_ENABLE_BITCOIN_SERVICES (default: false)
does not enable bitcoind, lightningd and electrs systemd units during the build process
introduces the Redis key base:bitcoind-services:enabled
adds the command 'bbb-config.sh enable/disable bitcoin-services' to configure systemd and set the Redis key
script 'systemd-update-check.sh' checks the Redis key on boot and enables the services if -eq 1 (the are not disabled otherwise)

Works as expected. On regular update, services are enabled and then started as part of the system checks. On initial flash, services are disabled and must be enabled with bbb-config.sh enable bitcoin_services.
After completing the Setup Wizard, the Middleware must call this script. But then it must also start the services by calling systemd start for each of them. Is that ok, or should this also be encapsulated into a script call? @0xB10C

I think it would be cleaner to have one script that is called from the middleware's FinalizeSetupWizard RPC call (https://github.com/shiftdevices/bitbox-base-internal/issues/312).
Procedure for the FinalizeSetupWizard would then be:

set redis key base:setup
bbb-config.sh enable bitcoin-services
bbb-config.sh start bitcoin-services (or similar)

correct?

As there currently is no start command in bbb-config.sh and we already have a helper script for systemd services, I'll add the functionality to start the bitcoin-related services here:
bbb-systemctl.sh start-bitcoin-services

bbb-systemctl.sh start-bitcoin-services

The script does not / can not return an error, when the services can not be started, correct?

The script does not / can not return an error, when the services can not be started, correct?

If systemctl itself fails, the script aborts with exit code 1 (or whatever systemctl returns), but no custom error code.

Is it possible to add an error code?

Is it possible to add an error code?

I could add custom error handling, e.g. like this. Would likely also enhance the script with MockMode.
start-bitcoin-services)
    checkMockMode

    # use custom error handling
    set +e

    if ! systemctl is-active -q bitcoind.service; then
        systemctl start bitcoind.service
        if [[ ${?} -ne 0 ]]; then
            errorExit SYSTEMD_SERVICESTART_FAILED
        fi
        echo "OK: bitcoind.service started"

    else
        echo "INFO: bitcoind.service already running"
    fi

Will integrate the SYSTEMD_SERVICESTART_FAILED into the middleware.

Added custom error handling and MockMode

Sounds good @Tomasvrba. I somehow forgot that systemctl restart will
start the services even if they are disabled.

The solution would be to check if base:setup 0 in all of these calls and immediately restart the service only if the setup 1

Added these checks in a separate commit https://github.com/digitalbitbox/bitbox-base/pull/250/commits/0981d2867fa5a02f3e342460e05aab7783a2c1de


Tapo P110 data missing

Hi everyone!
I have 10 Tapo P110 smart plug, with energy monitoring.
I integrated them the 6th of october 2022. However, I don't know why but I cannot see data before 11st of november 2022. Such as if the data before that date had been deleted... I use month_energy sensors...
Has this happened to anyone else too?  Do you know why I can't view data before that date?  I noticed that the problem is not with Home Assistant since even on the Tapo application I don't have the data before November 11th, when in reality I have been using the plugs since October 6th.
Other strange thing... In Tapo app I see energy data for dates that have not yet passed, such as December 1, 2022 (as you can see from the attached photos).
However, if I go to see the calendar it no longer shows me future dates, but you can still see how the data for October is missing even if it somehow tells me the cost for the month of October.  Absolutely nothing maked sense!!!
Anyone can help me? Please!

Hello, this might be coming from the Tapo device - in the latest firmware update, there was a notice, that historical data might be deleted. If you performed a firmware update recently, this might be it.

Related to #264

Duplicate of #264


Updated the issue but still can't open the running plugin

Reinstalling also doesn't install

Please refer to https://github.com/PunishXIV/Artisan/issues/65


getValidationMessages doesn't return not blocking validation rule

Reproduction
https://formkit.link/33df405510d7895346d9347a5f0c2bd9
Describe the bug
not blocking validation rules are not returned when use getValidationMessages.
not sure if it is a wanted behavior or a bug, but just in case...
if it's not a bug, is it possible to have another function (or same function with second optional parameter) that retrieve not blocking validation messages too ?
Environment
• OS: [e.g. iOS]
• Browser [e.g. chrome, safari]
• formkit 0.17.5

Good point, this will be fixed in @next


Adding frontend for signin/signup  and integrating it with the backend

i will implement frontend and integrate it with backend from the recently merged Backend pull request, i will make sure the frontend looks clean, look for any issues in the Backend and work on user authentication for different endpoints
@gupta-ritik @Maheshwari-Love  Assign this to me under appropriate labels:)

trying to solve this issues

@gupta-ritik working on it!

@gupta-ritik it looks like sign-in/signup is up on your website but they dont seems to be working, what do you want me to do?

@gupta-ritik it seems like frontend is already up, and people are already working on the bug. So you can assign other people

@gupta-ritik  Assign me this issue, i will implement it..


[GLUTEN-1483][CH] Fix ut errors after disable CoalesceBatchesExec for CH backend

What changes were proposed in this pull request?
Fix ut errors after disable CoalesceBatchesExec for CH backend
Fixed: #1483.
Close #1483.
How was this patch tested?
(Please explain how this patch was tested. E.g. unit tests, integration tests, manual tests)
(If this patch involves UI changes, please attach a screenshot; otherwise, remove this)

retest this please

Run Gluten Clickhouse CI


Add build and install instructions

How do I install this? I don't need the whole MobilFlight Connector application, I just need this standalone WASM module.

the easiest method is to download the mobiflight connector and let it install the wasm module. then you could delete mobiflight connector.

i can add a compiled version as release.

That would be nice - thanks.

I just downloaded it from https://github.com/MobiFlight/MobiFlight-Connector/tree/main/MSFS2020-module  (well, as part of the overall source code zip file).  Extracted and put the mobiflight-event-module  folder into my MSFS Community directory.
Did I cheat?  :)
Thanks for the work Sebastian!
-Max

@mpaperno  haha - you are right. that's one way to do it.

Releases now contain the wasm module.


RST and Exchange are not correctly parsed after update from callbook

This is for reporting bugs with the code, if this issue is regarding setting up on your local server please use the discussions area
Describe the bug
After updating a contest-qso in advanced logbook from callbook, the report and exchange (here serial) are not parsed and rendered correctly. After reloading the page all is ok again.
Version Information
We need some information about your versions. You can get all Information in the Admin > Debug Menu

OS:               DARC Wavelog
PHP:              DARC Wavelog
MySQL/MariaDB:    DARC Wavelog
Wavelog:          DARC Wavelog

Steps to Reproduce

Mark a contest qso with serial-exchange in advanced logbook
Click on 'update from callbook'
See error

Expected Behavior
Should be "normal"
Screenshots

Desktop Information:

OS:               Debian 12
Browser:          Chrome
Version:          Version 130.0.6723.116 (Offizieller Build) (64-Bit)

Thanks for the report. It's fixed in the dev branch😊


Replaced Jackson by combination of GSON and AutoValue extension.

Reducing method count by replacing Jackson with GSON. Please, see: https://github.com/artem-zinnatullin/qualitymatters/issues/136

@ArazAbishov could you explain why we should switch from Gson to Jackson?

It is quite strange that tests are failing on CI servers, while locally all of them are passing.

@danielgomezrico huh, this PR failed with OOM on both CIs
https://travis-ci.org/artem-zinnatullin/qualitymatters/builds/166865076
https://circleci.com/gh/artem-zinnatullin/qualitymatters/189?utm_campaign=vcs-integration-link&utm_medium=referral&utm_source=github-build-link

Current coverage is 77.97% (diff: 100%)

No coverage report found for master at 1af1cbf.

Powered by Codecov. Last update 1af1cbf...77061d4

@artem-zinnatullin Should I resolve conflicts in build.gradle? Conflicts were introduced in the PR which was merged in lately.

Yes you'll need to resolve them. Sorry for that :D

That would be good, or I'll resolve and merge manually on my side later
On 17 Oct 2016 11:50 am, "Niklas Baudy"<EMAIL_ADDRESS>wrote:

Yes you'll need to resolve them. Sorry for that :D
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/artem-zinnatullin/qualitymatters/pull/205#issuecomment-254149384,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AA7B3JJqBjX_mSmaGMLiXn_IHYRp6p6mks5q0zbbgaJpZM4KUC9B
.

@artem-zinnatullin Resolved conflicts.

Thanks, @ArazAbishov!


Creating custom dataset from scratch

I was wondering if you download the training data, in original sciERC format (as shown here) and then reformat again automatically internally before training the model? Asking this, because a little confused whether to format my custom dataset like sciERC or your input data format, as shown on the Readme.md . Also, sciERC annotates sentence wise , as per the aforementioned link. How does pure handle multisentence passages?  The pretrained models that are downloaded by the repo-provided Readme.md link, are also labeled as single sentence model.

Hi, we downloaded the processed SciERC (link), which is in the same format as shown on the README.
In our experiments, we do not consider cross-sentence relations. All the datasets (ACE04, ACE05, SciERC) are annotated in the sentence level. So we consider each sentence individually if there are multiple in a passage. For cross-sentence relations, you can concatenate sentences and apply our approach on concatenated inputs to predict cross-sentence relations.

Sort of a complementary question, the processed dataset has an additional clusters node for each document. What does it refer to or is it important?

I think those are coreference clusters, as the model that SciERC was created for also incorporates coreference resolution. I believe this pipeline doesn't do that, so they probably aren't used?

The clusters field contains the coreference annotations. Our approach doesn't use those annotations, so you may ignore this field when using our code.


[docs][nodejs] Update npm package publishing documentation

Update Node.js builder documentation to instruct users on how to publish since the builder will no longer be responsible for publishing.

We may need to update the doc to include a step to verify the tarball & provenance before running tests or publishing.
@laurentsimon I'm still not sure I understand if we really need this. Even if the tarball was modified, consumers would still catch that the tarball was modified at verification time.  Is this just to catch a modified tarball early to avoid uploading it in the first place (and not rely on any verification done by the npm registry)?

Someone may replay old (genuine) provenance / artifacts. Maybe the registry will reject them because the version would already exist.

Someone may replay old (genuine) provenance / artifacts. Maybe the registry will reject them because the version would already exist.

Right got it.

We need to update the docs to remove the inputs for uploading to a release.


Test and Enhanced to Identify and Download to BS2e, BS2sx, BS2p24, BS2p40, and BS2pe

Verify that the app can identify and download to BS2e, BS2sx, BS2p24, BS2p40, and BS2pe modules.
At this point in time, it appears that this functionality is already built-in, or is close to being complete for Identification.
The current app may or may not be able to handle the normal single-slot download properly.  Please verify as part of this issue.  Note that Issue #292 (to be implemented at a later time) addresses multi-slot programming.

@PropGit I'm working through these modules now, and encountered something odd with BS2e. According to the BASIC Stamp Programming Protocol 1.1 docs, BS2e identification should be a sequence of:

Send e (0x65)
Receive echo e
Receive version byte, where 0x65is 1.0. No other versions are mentioned.

This BS2e is Rev E, but I'm seeing a 0x67 response for the version step. Is this just a newer revision that isn't documented here?

@2fast2fourier - The hardware revision doesn't relate in any direct way to the firmware version; so just ignore the "Rev E" you see on the hardware.
The firmware of many modules has been revised since that document was written.  Here's a current list of expected firmware versions (but every version from v1.0 through the listed version should be supported by the app; ie: identify and download to all old versions too).  Not of the versions changes the download protocol of that module.
BS2 - v1.0
BS2e - v1.2
BS2sx - v1.3
BS2p24/40 - v1.7
BS2pe24 - v1.4
The 0x67 (character 'g') represent's firmware version 1.2 for the BS2e.

[CORRECTION]
All versions 1.0 through the latest listed in the previous post should be identifiable and downloadable from the app with the exception of the BS2p... that should only support v1.2 through v1.7.  It's not the way I'd want it, but it's the way it is.

Verified working.


(steppy-1.20-1.0.1) should be marked as 1.20.2 compatible

For a long time I was not bothering to test if Steppy was compatible until I decided to test it right now and it just works!
I don't remember if there was a toggle in the hotkeys menu but other than that not being present, it works :)

Great, thanks! I'll mark it as such

Marked as 1.20.2 compatible on Modrinth. If the mod itself needs to be marked as such as well, please let me know! :)