Render attachment

Trello: https://trello.com/c/zMYmFTPx/801-show-metadata-for-attachments
This is a draft as it waits for https://github.com/alphagov/govuk_publishing_components/pull/842 to be released.
This provides the rendering for attachments within the application and for govspeak.
A tricky part is that we have the same hash of attachment data that is used to render a component and is sent to govspeak. I tried to find a single place that could store that serialising logic. After initially going with a method on the model I tried out a Helper after a chat with Ben. I'm not quite sure where'd be best, there are disadvantages to all options.
See commits for more details

Thanks @benthorner coincidently I spotted the same just a few mins ago on the thumbnail work so I'm just working on addressing it in the component.

Looks good from me too, only a small thing. I noticed the attachments on the index page are grouped quite close together meaning it was easy to miss clicking on the title and actually delete the attachment above (as there is no space between hovering over one link to the other):

Changing the margin-bottom spacing from 1 to 2 here https://github.com/alphagov/content-publisher/blob/render-attachment/app/assets/stylesheets/components/_attachment-meta.scss#L13 created a gap between the links and generally looks nicer in my opinion.

@benthorner I'd agree that the meta name in component is confusing. I'm not quite sure what the right name for them is though, they act as items in a list mostly. I'd like to look at resolving that outside this PR though since that's a non blocking aspect of this.
@1pretz1 you're right that it doesn't look great as it is, I don't think that margin suggestion is the right one though, I think we'd want this to be consistent with the image one where there are separating lines between items:

I've just had a word with @alex-ju and he can have a look at making these more consistent and the naming.


Slower than deep_q_rl

Hi, I found that this implementation is slower than deep_q_rl which is implemented by theano.
Is it because this repo used openai gym rather than rom files?
Or the performance between Thesorflow and Theano? Or any other details?
deep_q_rl runs 100-200 steps at learning process.
But DQN-tensorflow just runs 70-90 steps at learning process. It makes the training slow, and cannot run 200M in 10 days as dqn nature paper.

Looks like it's currently not using GPU efficiently #21

I ran some experiments a while ago, and observed the same thing.
In my experiments (I did not using this repo), everything other than underlying NN library were same, and mini-batch was fed to GPU in the same manner (send mini-batch every time network is updated.) and yet Theano was faster than Tensorflow.
According to #2919 #3377, Tensorflow's seesion.run method does things more than just feeding data to GPU.  thus I guess that is adding overhead and making the training slower than Theano.

@mthrok The two issues are saying that feed_dict is slow. It's actually a good practice to avoid using feed_dict inside training loops.

Has anyone solve the training slower problems? in my case, it almost 600hours training.

@ppwwyyxx So nice to see you here, Tensorpack author, why this repo's performance differ so much from your samples in tensorpack. I don't see major difference but this repo collect experince replay in the same thread with training. But does it matter? Or because you used ROM directly?

I don't know why. Maybe the use of feed_dict is the major reason.
Using thread improves speed but not significant in my case. Using rom should make no difference to speed.

@ppwwyyxx I failed to describe the issue clearly. The issue I run into this reop is the training best rewards is 30, no where to compare with the sample in your repo. I compared code but don't see major difference. I changed your sample by replacing ROM direcly with Gym, no code change with network or training, unfortunatly, the output from your code is as bad as this repo, the best reward simply 50 and doesn't make any progress any more after million steps.
So I guess the Gym envirement itself has bugs. But ROM is free of the issue, I though you were aware of this issue so you use ROM instead of Gym

It's not a bug. Gym environments (**-v0) is just a harder setting because it has more randomness. You can use other gym settings e.g. BreakoutDeterministic-v4 is closest to a naive atari wrapper.
However even with Breakout-v0, you should still be able to see better performance than 50.


Release/cf219

Removed Sizing quidance from CF219

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.1 out of 2 committers have signed the CLA.:white_check_mark: biancaluna:x: sunilkn002-hclYou have signed the CLA already but the status is still pending? Let us recheck it.


feat: visual explore editing

https://www.notion.so/rilldata/Visual-Explore-Editor-1a7a88c5e4e84ffab8da33a29987b240?pvs=4
Closes #5806

Fixed
Should largely be fixed.
This is the intended behavior so that the YAML more explicitly reflects the default options.

Could not reproduce the first one, but made a change based off a guess.

Fixed
Fixed
Fixed
Would need input. Don't think this should be a blocker for merging, though certainly for release.

Hmm it seems one of those changes regressed the "Subset" UX: Jam

Links to docs are now shown in mocks when expression is selected for dims and measures:

@ericpgreen2 @briangregoryholmes
These docs about such expressions can hopefully be timed with release @royendo


How to post a binary file?

I have a table for binary content:
create table files (
  id serial primary key,
  content bytea
  )
  ;

that I can, of course, query with
GET http://<IP_ADDRESS>:3000/files?id=eq.1&select=content
Accept: application/octet-stream

However, I have not managed to POST binary data (i.e. upload a file). It should be most natural to use
curl -F "content=@path/to/file" https://localhost:3000/files

but that seems to hang indefinitely(?). Any other ways?
Since I probably will have to use an nginx server as frontend anyhow, is there any quick advice how to configure https://github.com/konstruxi/ngx_postgres/ (found it mentioned on another post) for that? Just in case binary POSTs should remain unimplemented for some time, that would probably make for a good stopgap solution.

Your best bet probably is to have a separate /files location that rewrites for get and for post uses the module you mentioned. Or go for openresty and script this with lua (only a couple of lines probably)

OK thanks for the pointers!

Yeah I'm having a hard time coming up with what the correct HTTP interface would even be for this in postgrest itself. See if the workaround works for you, and if someone has an idea for a clean way to express that kind of a post request feel free to comment here for future consideration.


Add no_std support

Add support for working without std, that's important for usage in embedded. For example, I'm going to use it on stm32f103.

All command generation methods now return [u8; 9] (which have Packet type alias) instead of Vec<u8>. There's no Vec in std. heapless has Vec with fixed allocation, but it isn't really needed here, as all packets have fixed size of 9 bytes.
Added conditional compilation feature std which only enables implementation of Error for MHZ19Error:
https://github.com/zenria/mh-z19-rs/blob/2522cafe8a975ee63b2032e48042c923ad3d7fa4/src/lib.rs#L172-L173
I doubt if this impl is really needed. If you think it's not needed, it can be made always no_std. AFAIK, no_std libraries work in std environment without problems.
As there's already changes in tests, I moved READ_GAS_CONCENTRATION_COMMAND_ON_DEV1_PACKET constant inside tests. It doesn't needed outside.

This change is backwards-incompatible, but I think it will not even break most code which just takes Vecs and pours them into serial port. Arrays have almost the same API as Vecs from the perspective of 'read-only' use.

I've released 0.3.0... Thank you!


Swap, transaction fees. Add min/max limits

Currently we have min limit, but not max. As a result user can input too large value. We should warn the user

Fixed but code in the branch. Keeping open until the merge.

Verified the fix, hence closing this ticket.


VoltDB Plugin

Provide a Plugin for VoltDB

VoltDB provides a New Relic plugin, perhaps that would work for you?
https://rpm.newrelic.com/accounts/66022/plugins/directory/133

We have a pull request out which made me create Issue perhaps someone can look at PR https://github.com/MeetMe/newrelic-plugin-agent/pull/432


Fix documentation location

:)

If you need me to fix the commit message I can do that

Thank you! I missed that 🤣


no module name gunicorn after update to 1.10..0

After updating raspiblitz to version 1.10.0 Core Lightning no longer starts.
When I check the cllog I only find the message:
2023-10-11T15:31:36.408Z INFO    plugin-clnrest.py: Killing plugin: disabled itself: No module named 'gunicorn'
I already tried installing the packagage via "pip install gunicorn" but after restart of the node the issue remains.
Any ideas?

the clnrest plugin is not used currently and it should not crash lightningd even if it is not running.
@orangedmind please double check if CLN recovered since.
You can check the installed version wih:
₿ lightningd --version
v23.08.1

The dependencies are not installed by pip, but using poetry in the directory:
/home/bitcoin/lightning
https://github.com/raspiblitz/raspiblitz/blob/60b5c47240459bceca20ea34f8d921d5ba9d0677/home.admin/config.scripts/cl.install.sh#L55
Can try updating the deps with:
cd /home/bitcoin/lightning
sudo -u bitcoin git reset --hard v23.08.1
sudo -u bitcoin poetry install

I followed your instructions for updating the preps.
After a restart of the raspiblitz sames behavior, CL does not start.

@orangedmind you need to share more info.
enter the CLN menu which will display the last lines of cllog and sudo journalctl -fu lightningd

Please find below the requested logs.

You need to delete the erroneous line 20 from the CLN config as shown in the errorr message.

Thank you. CL is running again.


merged word for millions amount-

dear Omar,
we are trying this amount, and as per our testing team the amount is reading as incorrect in arabic. can you please help on this.
this.amount= new Tafgeet(2250000.00, 'QAR').parse();
amount:- 2,250,000.00
amount in arabic:- مليونينمائتين وخمسون ألف ريال قطري فقط لا غير
As per our guys, the first words are getting as merged, and correct representation would be like:-
مليونين و مائتين
your support would be highly helpful for our scenario.

Dear @kishoreaoe
Thank you for utilizing the package and bringing the issue to our attention.
I'm happy to let you know that the issue has been resolved in the latest patch, version 1.0.11. We recommend updating the package to the most recent version to benefit from the fix.
Thank you for your understanding.

                                                                                Dear @omar-ehab  thanks alot for the quick support on this, we used the newly provided fix, however as per our testing guys, they are said "still one letter is missing between two words". can you please kindly help on this.

PFB image:-


Fix memory leak in mbedtls_md_setup with HMAC

Fix #3486.
There is no non-regression test because we don't have the infrastructure to test low memory conditions. You can check manually by building the library and the test program that Guido posted in #3486.
scripts/config.py set MBEDTLS_PLATFORM_MEMORY
make CLFAGS='-fsanitize=address,undefined -fno-sanitize-recover=all -fno-common -g3' lib
cc -fsanitize=address,undefined -fno-sanitize-recover=all -fno-common -g3 a.c
./a.out

Before: Asan detects a memory leak. After: Asan is happy.
Things I reviewed for similar issues:

The md module doesn't call malloc anywhere else.
cipher contexts have two parts: an encryption context and an optional CMAC context. They do setup differently, and if the second allocation fails, the context is in a correct state for mbedtls_cipher_free() to free the first allocation.
pk contexts only have a single part so this particular.

Reviewing the whole library for leaks in low-memory conditions is out of scope. Adding a framework to test for memory leaks in low-memory conditions is out of scope.
Needs backports.

As far as I see, the bug doesn't exist in 2.7 or 2.16 since md->md_ctx is freed directly on failure to allocate the HMAC context. See here for 2.7 and here for 2.16.

I ran the manual test provided by Guido on 2.16 and 2.7 and it passed, which confirms that those branches are not affected and backports are not required.


When I use i18n and basePath at the same time, return 404.

What's the problem
When I use i18n and basePath at the same time, not working properly and return 404.
I don't know if this is a problem with next.js or a problem with nextra or  mine's problem.

How to reproduce
version : latest nextra-docs-template
This is the demo repo
Any help? Thanks!

I can confirm this bug that goes from nextra middleware that doesn't handle basePath

I used the locales you wrote，it works very well, but when i switch language, the url does not include basePath at the beginning(xxx.com/index), and then rewrite to the path containing basePath（xxx.com/docs/index).
May be when I click the button, it should include basePath.

Hm.. I tested it on swr-site example and it worked well, which version of Next.js do you use?

Yes, it works well on my computer, but in production env ,we have a gateway....
When I switched from English to Chinese(default locale)， the url is xxx.com/, and then rewrite to xxx.com/docs, Rewrite twice.
and in production env xxx.com/ will not works
this is the repro repo
Maybe should add basePath in language switch click event

The issue is closed. Can you help me reopen it? @B2o5T


Tools and guides - Promethesus (Metrics)

Recommended tools section is currently very web/Azure/App Insights focussed.
With the purpose of providing insight into tools and their purposes, best practices, starter templates/recipes (if available)

Contribute content for Promethesus - Purpose and usage application scenarios
Recommended approaches
What to watch for
Recipes / Starter templates

Hi @NarmathaBala , can i pick this up and raise a PR?

Hi @NarmathaBala , can i pick this up and raise a PR?

@narmathabala and @lakshaykaushik - this has been stale for a while, is this still an active issue?


Can't seem to add event handler to Pswp for Custom HTML implementation

The $Pswp object doesn't expose anything to add event handlers.
For accessibility reasons, I need to attach a callback to the close event to return the focus to the button that triggered the opening.

Fixed in v0.15.1.
this.$Pswp.open({}).listen('close', () => {})

Update to v0.15.1, then this code works


Remove python dependency

Hi!
I'm new to node.js development and I don't know why parse server need Python installed. Is it possible to use Parse server without it? Any bypass it?
I wan't setup parse-server on openshit but unfortunately I have problems because of python dependency :(
Cheers!

Node.js is built with GYP — cross-platform built tool written in Python. Also some other build steps are implemented in Python. So Python is required for building node from source.
But you also need Python for building native addons.

Thank you for your  answer! @cainoeraabele  is it possible to build this native addons on other machine and deploy them on server without python installed?

bcrypt is the issue here which requires python, because it needs to be compiled on the target.  I think you should work on getting python 2.7 running.. don't think we can avoid this dependency.

@gfosco  thanks!

Is this still true @gfosco?  I was able to run parse-server in Windows 8 without installing Python, and I'm seeing bcrypt hashes in my MongoDB.

That doesn't seem to be true, we changed the bcrypt libs for native or node versions and a fallback is provided in case the native version can't be built.


Saving with instanced scenes is nondeterministic.

Godot version:
Master, built from 0b69be91d56e8983877ec5a48c219cf28a741903
OS/device including version:
Windows
Issue description:
When saving, the order in which external scenes are loaded and thus their index can randomly change. Other external resources seem fine.
To be clear, I am talking about these lines in a .tscn-file:
[ext_resource path="res://path_to_scene.tscn" type="PackedScene" id=16]

The order of such lines can change and thus the index/id will differ.
While this bug does not cause the scene to break, it generates a lot of clutter for version control.
Steps to reproduce:

Have a scene use instances of many other scenes. Such a scene is provided.
Save the scene and observe the changes in your scene file.

Minimal reproduction project:
nondeterminism.zip
The main scene is Test.tscn. It consists of 10 MeshInstances using mesh1.tres through mesh10.tres. These external resources seem fine. It additionally contains instances of sub1.tscn through sub10.tscn. These resources get shuffled.

I can confirm this, it's a real pain (and I think it's a regression, it used to be more reliable in the past, though there were other issues with tscn determinism).
There's an existing issue about this but I'm on phone now, can't check for the number. Might make sense to keep this one open and focused on a potential regression in handling tscn instances, it's the first time I see it mentioned as being the potential culprit.

We could just alphabetically sort by path name on save?

I would love to see instead of an index based counter a UUIDv3 for resources or similar consistent hash based on the path so then ids don't have to shift around regardless of sorting.  It might make the lookup signatures longer, but what's a few characters wasted if it makes the files more deterministic.

It seems as if on line 1586 of scene/resources/resource_format_text.cpp the vector that is dumped to the .tscn file is already sorted with a .sort() call...

Seems as if the consistent resource IDs were implemented in commit c1dcdf6109dbe29549517d683d85b81c0ade8611 , however given its current buggyness, I'd move to get rid of this caching code and sort each category of resources alphebetically on resource saving regardless of whether or not the editor is open.

After removing the changes made in c1dcdf6109dbe29549517d683d85b81c0ade8611 that have to do with path caching, resources are saved in the order that they are in the editor. Is this acceptable behavior?

After removing the changes made in c1dcdf6 that have to do with path caching, resources are saved in the order that they are in the editor. Is this acceptable behavior?

Storing in alphabetically would be more consistent in my opinion.
Imagine a situation the where the user changes order in the editor, the lines in the tscn would be reshuffled without a gain.
Unless there is a need/gain for them following editor order(I don't know any, just a beginner), I would vote for alphabetical order. Honestly, isn't it a choice between the time needed for sort and clutter caused by code changes? I think the former option is better.
Let's see what core devs and others here think.

Note that when you say alphabetical, you mean lexigraphical (ascii / utf8 ordering) and not actual alphabetical order which requires per language lookup tables right?

Note that when you say alphabetical, you mean lexigraphical (ascii / utf8 ordering) and not actual alphabetical order which requires per language lookup tables right?

Whichever is simpler and faster is better, as long the order reproducible with as less extra data as possible.
This will make sure changes are minimum.
Lexicographically is what I meant when I mentioned alphabetically. It is fast, universal and manually reproducible too.

Lexicographically, as the < operator is already overloaded on Godot's String class to do so I beleive.

I've implemented a lexicographical sorted external scene saving and opened a PR to have it merged. It makes the external resource listings stay the same no matter the order of the nodes in the scene tree, however, it's worth noting that rearranging the nodes still produces a different scene file as the [node listings are still dependent on their order in the editor.

I've implemented a lexicographical sorted external scene saving and opened a PR to have it merged. It makes the external resource listings stay the same no matter the order of the nodes in the scene tree, however, it's worth noting that rearranging the nodes still produces a different scene file as the [node listings are still dependent on their order in the editor.

That should be fine since rearranging nodes is a change that is relevant.
If this is not true, then [node listings might also be sorted in some way. But that seems to be out this issue's scope and is better to have as separate issue(if at all needed) with it's own PR(if at all needed).

I'm not a fan of lexicographical sorting because it has the potential of creating large diffs at the introduction of a single new resource.  By introducing a value that sorts earlier than others, you'll shift all the other indices and cause diffs on nodes that didn't actually change in any way as they need to update the references.
What's really needed is a consistent hash so then ordering doesn't matter.

I'm in the process of fixing the actual bug right now @nhydock . The IDs are cached in the resource, but because the resource is a reference, I believe that at the end of the ResourceInteractiveLoaderText poll because nothing has loaded it yet, the reference is freed, and so the cached ID is lost.

It seems as if resources are being freed, and so the path cache is being lost on scene startup and also the mesh-instances on closing the scene. I'm going to move the path cache to a singleton somewhere and that should fix the bug.

Not only the order, but sometimes a root node in a TSCN scene has an attribute index="0", but another this same scene removes this attribute when saved again.

Index=0 is a separate issue that should've been fixed already.

I had this happen again in 3.2 alpha3:

As well as one of these:

We got rid of folds for the same reason, so I wonder why those are here.

@Zylann I can confirm that the issue is reappearing in a different form in 3.2 alpha 3, it seems to consistently happen with only two packed scenes on every save, however I am not seeing the meta tags reappear in this version. ( in the provided image, only those two packed scenes have been switching back and forth nondeterministically every save )

This seems to have gotten REALLY bad recently.  I've been doing custom builds, so I'm not sure exactly which version has the issue, but my previous 3.x sync was before the beginning of the year and I just recently synced a few weeks ago, so probably around 3.5, and now, if I so much as LOOK at a scene, 90+% of my id's get randomly shuffled:

Makes it extremely difficult to tell what, if anything, actually changed.

If this still happens why not re-open it? Or should I open a separate issue?

You should open a new issue. Similar symptoms 3 years later != same bug.


Autoscroll while dragging an element using cdkDrag and cdk-virtual-scroll

I have a long list of elements which have to be dragged and dropped. Which is working if the elements are in the viewport. The page does not scroll if i have to drag further down or up. I am using the CdkVirtualScrollViewport for scrolling and CdkDragDrop for drag and drop.
Heres my html code
`<cdk-virtual-scroll-viewport cdkDropList #virtualScroller  [itemSize]="100" class="stepViewPort" cdkDropList  [cdkDropListData]="listOfSteps" (cdkDropListDropped)="dropSteps($event)" >
`
And my .ts file function
 dropSteps(event) { moveItemInArray(   event.container.data,   event.previousIndex,   event.currentIndex );    let control = <FormArray>this.ActionTypeForm.controls['steps'];    control.controls=event.container.data;     this.listOfSteps = this.ActionTypeForm.get('steps')['controls'];      this.listOfSteps = [...this.listOfSteps]; }
How do I implement autoscroll while dragging using cdkvirtualscroll?

Can you provide a StackBlitz and/or ng-run demo?

Sorry for the delay in providing help with this - we are currently limited on resources for troubleshooting issues. You will probably have better luck getting help if you post on StackOverflow.


llama.rn crashes when proguard is enabled

Crashes were reported in release 0.7.7 of ChatterUI by various individuals on various devices.
Versions tested: 0.3.1, 0.3.2
Issue:
Expo allows the customization of build configurations, allowing the use the following fields:

enableProguardInReleaseBuilds
enableShrinkResourcesInReleaseBuilds

Source: https://docs.expo.dev/versions/latest/sdk/build-properties/#pluginconfigtypeandroid
Loading models on the release build was still functional, however, once it attempts to emit the first token, the app crashes.
From checking logcat, this crash is caused by a NoSuchMethodException on emitPartialCompletion. Presumably Proguard is inaccurately removing vital llama.rn components, causing a crash.
Removing the build configuration lines above fixes this issue. The addition of proguard rules would be beneficial for better Android build compatibility.

Have you tried to add the proguard rule to extraProguardRules?

It seems that this was a misconfiguration on my part. The extraProguardRules was added in my CD pipeline, but it seemed to overwritten during compilation.


Add twitter link and remove footer link title

In #169 it was identified that we should add the Twitter link and remove the "subscribe to ... " text above these footer links. This PR does that.
Preview-able here: https://critzo.github.io/m-lab.github.io/

This change is

LGTM


Features Request: On Radius, Captive Portal, Wizard and Proxy

OPNSense is getting better on every release. There couple of features I see it missing.
Radius
add For Users
1- Max Daily Download (MB)
2- Max Daily Upload (MB)
3- Generate Password
4- Mass copy of user account with new generated passwords
5- User Account Template: a template is a place to store account configurations and apply it on specified users instead coping the same configuration on each user.
Captive Portal
1- Auto delete expired vouchers and voucher group if group is empty
Access
More options on Password Generator
1- Select box: Generate Password using: Only Uppercase, Only lower case, both, numbers only
Wizard
Configure
1- Captive Portal
2- MultiWAN
3- Radius
4- Access LAN From outside through NAT farwarding
5- Proxy
6- VPN
All wizards changes can be reverted by making use of backup and restore features. All wizard are very easy to follow and to configure.
Proxy
1- Adapt https caching without certificate as an option

For Radius adding Max-Up is not a problem, but you need an application respecting these values.
Templates would need group support which relies on SQL .. I dont have the time to add this, but I'd be glad to help if someone likes to. Otherwise you could also use the API to script this.
I'm not a fan of wizards .. they are error prone and the user doesn't learn anything, also when it comes to troubleshooting.

1- Do you mean Max-Up and Max-Down or just up?
2- What about captive portal: Auto delete expired vouchers and voucher group if group is empty?
3- Can you ease Voucher Generator. Users complain about mixed capital and small letters in User/pass.
4- https proxy without certificate as an option
Proxy implements the so-called “peek and splice” behavior: it establishes the SSL connection with remote sites and checks the validity of certificates without decrypting the traffic. Then the server can filter requested URLs using the web filter and return back the response to the client.

both
2-4) other dev's, not me

This issue has been automatically timed-out (after 180 days of inactivity).
For more information about the policies for this repository,
please read https://github.com/opnsense/core/blob/master/CONTRIBUTING.md for further details.
If someone wants to step up and work on this issue,
just let us know, so we can reopen the issue and assign an owner to it.


Editing TSX randomly makes the --type=extensionHost process use 100% CPU

VSCode Version: 1.10-Insiders 0b27b5
OS Version: windows 10 x64

import React from 'react'
import {
  View,
  Button,
  TextInput,
  Picker,
  StyleSheet,
  ScrollView,
  Text,
  TouchableOpacity,
  Alert
} from 'react-native'
import t, { FormComponent } from 'tcomb-form-native'
import { KeyboardAwareScrollView } from 'react-native-keyboard-aware-scroll-view'

const Model = t.struct({
  cep: t.String,
  neighborhood: t.String,
  name: t.String
})

const Form = t.form.Form

const styles = StyleSheet.create<any>({
  form: {
    padding: 15
  },
})

export default class extends React.Component<any, any> {
  constructor(props) {
    super(props)

    this.state = this.initialState()
  }

  initialState() {
    return {
      form: {
        cep: this.props.defaultCep,
        name: null,
        neighborhood: null,
      },
      disabled: true
    }
  }

  render() {
       return (
      <KeyboardAwareScrollView style={styles.form} keyboardShouldPersistTaps="always">
        <Form
          ref="form"
          type={Model}
          value={this.state.form}
          onChange={(o) =>{ }}
        />

        <View style={{marginVertical: 30}}>
          <Button title="Cadastrar logradouro" disabled={this.state.disabled} onPress={() => {
            Alert.alert('Sucesso', 'Rua cadastrada')

            this.setState(this.initialState())
          }} />
        </View>
      </KeyboardAwareScrollView>
    )
  }
}

Edit <KeyboardAwareScrollView  to <View, then edit any children (Form, View) leaving the </KeyboardAwareScrollView> opened, then change it back to <KeyboardAwareScrollView, after a few times, the process will start using 100% CPU. closing the editor won't close the child  --type=extensionHost process, and typing on the editor becomes sluggish, all Typescript suggestions stop working

This one became a blocker, everytime when dealing with children of React Native elements, it happens. having to restart the editor every 10 minutes

@pocesar Does this still happen if you disable all extensions?

Yes, but it's harder to reproduce, so some pipes might being clogged

@pocesar So do you still see this after disabling all extensions?
If you do, please try collecting a trace of the TypeScript Server when this occurs. Here's information on to do this using the TSS_LOG environment variable: https://github.com/Microsoft/TypeScript/wiki/Standalone-Server-(tsserver)#logging
From a command line, run:
set TSS_LOG=-level verbose -file c:\tmp\tsserver.log
code

Reproduce the problem in VSCode and then share the c:\tmp\tsserver.log file
Let me know if you have any questions about this.
Thanks

@mjbvz Yes, I managed to make the external process hang ONCE with all the extensions disabled, but it was a crazy non-sense typing (which I guess wouldn't apply in normal conditions). I couldn't reproduce it again with disabled extensions, but could reproduce it everytime with both extensions (either both enable, or either one, Auto close tag and React Native Tools)

I have the same problem on Ubuntu Linux, vs-code version:1.10.1-1488415350
Typing Angular2 code causes the problem, when this happens, intellisense stops completely ( just displays Loading... )

my insiders, when having TS files open, usually keep a lowish but constant CPU usage, but when using many editors opened at the same time, the system really take a hit

this screenshot is when "idle", not typing or doing anything

this seems to have been fixed in latest insiders, although TS in watch mode always make the shell responsiveness inside the editor worst

Ok, thank you for the followup. I'm not sure what fixed this on the TS side but I'm glad you are no longer seeing this issue


Update index.html

Looks better than previous one and buttons shown clear now

Cut and Paste is not accepted at all


Issue #1632 - jsx-sort-props: reservedFirst conflicts with callbacksLast

Updated unit test with failing case for callbacksLast not working when used in combination with reservedFirst. (First ever pull request - tell me if I did something wrong!)

Thanks, this looks great!

Codecov Report

Merging #1691 (ea3988f) into master (e324a19) will decrease coverage by 1.99%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master    #1691      +/-   ##
==========================================
- Coverage   97.38%   95.39%   -2.00%
==========================================
  Files         111      111
  Lines        7426     7426
  Branches     2713     2713
==========================================
- Hits         7232     7084     -148
- Misses        194      342     +148

Impacted Files
Coverage Δ

lib/util/propTypes.js
78.29% <0.00%> (-18.93%)
:arrow_down:

lib/rules/jsx-uses-react.js
81.81% <0.00%> (-18.19%)
:arrow_down:

lib/util/ast.js
82.69% <0.00%> (-13.47%)
:arrow_down:

lib/rules/jsx-no-comment-textnodes.js
87.50% <0.00%> (-12.50%)
:arrow_down:

lib/rules/boolean-prop-naming.js
91.97% <0.00%> (-7.30%)
:arrow_down:

lib/rules/jsx-no-literals.js
95.52% <0.00%> (-4.48%)
:arrow_down:

lib/rules/no-unused-prop-types.js
89.58% <0.00%> (-4.17%)
:arrow_down:

lib/rules/jsx-no-constructed-context-values.js
90.90% <0.00%> (-2.03%)
:arrow_down:

lib/util/usedPropTypes.js
96.62% <0.00%> (-1.13%)
:arrow_down:

lib/rules/no-typos.js
99.14% <0.00%> (-0.86%)
: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 e324a19...ea3988f. Read the comment docs.

@kolpax so sorry this slipped through the cracks!
The tests are failing, but oddly, only in eslint 7. Additionally, when I comment out reservedFirst in reservedFirstAndCallbacksLastArgs, the test continues to fail, so I'm not sure this is illustrating the conflict in #1632 (but clearly there's something weird going on)


sync: provide api to request missing data

we have several implicit dependencies in the application. one of them is getting ballots from the first applied block which is used in:

computing hare activeset
fallback for tortoise activeset (main option it to use graded active set)

if node for any reason missed such rewarded ballots it won't be able to complete those operations.
in order to make application more robust we should identify missing data and make sync download it from peers until error is resolved.

[ ] provide api to initiate ballots set reconciliation starting from a specific layer
[ ] trigger api if node can't compute tortoise or hare activeset

hare active set: https://github.com/spacemeshos/go-spacemesh/blob/develop/hare/eligibility/oracle.go#L454-L457
tortoise active set: https://github.com/spacemeshos/go-spacemesh/blob/develop/miner/proposal_builder.go#L756C3-L759


Can i use this package with while loop?

Can i use this package with while loop?

Can i use this package with while loop?

No.
If it isn't possible to transform the while loop into a for loop, then the loop is probably too complicated for it to understand.
LoopVectorization works by performing different iterations in parallel (using SIMD instructions with @turbo, or SIMD instructions + threading with @tturbo), so it's also important that this is legal.

There are some numerical methods that i couldn't transform to for loop (fixed iteration). It goes on and on until the condition meets. It will be nice to see any plan to support while (not fixed) iterations.
İdea:
Don't parse whole loop body, parse just inside of while loop body and compile to efficient one.


preComputeUrls dosn't work when using Database query

Package version
https://github.com/ndianabasi/adonis-responsive-attachment V 1.3.0
Node.js and npm version
Node version: v16.11.0
Npm version: 8.0.0
The error
When getting images from the databases, you can use Image.query() or Database.from(Image.table).
When using Database.from(Image.table),  your SGBD return usable timestamp, so it can help to use this method. But, with version V 1.3.0 of this packages, the image's url dosn't compute when using Database.from(Image.table) as you can see below
Sample Code (to reproduce the issue)
Images models:
@responsiveAttachment({
    folder: 'images',
    preComputeUrls: true,
    breakpoints: {
      medium: 'off',
      large: 'off',
      thumbmail: 'off',
    },
  })
  public data: ResponsiveAttachmentContract

Query to fetch an image
  public async show({ params }: HttpContextContract) {
    const image = await Image.findOrFail(params.id)
    return image
  }

Return this result:
{
    "folder_id": 9,
    "id": 1000,
    "title": "IMG_7740.png",
    "data": {
        "name": "images/original_cl3od91bf000argxi5zmohrc5.png",
        "size": 23187.75,
        "hash": "cl3od91bf000argxi5zmohrc5",
        "width": 3861,
        "format": "png",
        "height": 2574,
        "extname": "png",
        "mimeType": "image/png",
        "breakpoints": {
            "thumbnail": {
                "name": "images/thumbnail_cl3od91bf000argxi5zmohrc5.png",
                "hash": "cl3od91bf000argxi5zmohrc5",
                "extname": "png",
                "mimeType": "image/png",
                "format": "png",
                "width": 234,
                "height": 156,
                "size": 96.57,
                "url": "/uploads/images/thumbnail_cl3od91bf000argxi5zmohrc5.png"
            },
            "small": {
                "name": "images/small_cl3od91bf000argxi5zmohrc5.png",
                "hash": "cl3od91bf000argxi5zmohrc5",
                "extname": "png",
                "mimeType": "image/png",
                "format": "png",
                "width": 500,
                "height": 333,
                "size": 428.04,
                "url": "/uploads/images/small_cl3od91bf000argxi5zmohrc5.png"
            }
        },
        "url": "/uploads/images/original_cl3od91bf000argxi5zmohrc5.png"
    },
    "raw": null,
    "created_at": "2022-05-27T13:33:58.194+02:00",
    "updated_at": "2022-05-27T13:33:58.194+02:00"
}

But if you're using this method to fetch from db:
  public async show({ params }: HttpContextContract) {
    const image = await Database.from(Image.table).where('id', params.id).first()
    return image
  }

The result is:
{
    "folder_id": 9,
    "id": 1000,
    "title": "IMG_7740.png",
    "data": {
        "name": "images/original_cl3od91bf000argxi5zmohrc5.png",
        "size": 23187.75,
        "hash": "cl3od91bf000argxi5zmohrc5",
        "width": 3861,
        "format": "png",
        "height": 2574,
        "extname": "png",
        "mimeType": "image/png",
        "breakpoints": {
            "thumbnail": {
                "name": "images/thumbnail_cl3od91bf000argxi5zmohrc5.png",
                "hash": "cl3od91bf000argxi5zmohrc5",
                "extname": "png",
                "mimeType": "image/png",
                "format": "png",
                "width": 234,
                "height": 156,
                "size": 96.57
            },
            "small": {
                "name": "images/small_cl3od91bf000argxi5zmohrc5.png",
                "hash": "cl3od91bf000argxi5zmohrc5",
                "extname": "png",
                "mimeType": "image/png",
                "format": "png",
                "width": 500,
                "height": 333,
                "size": 428.04
            }
        }
    },
    "raw": null,
    "created_at": "2022-05-27T11:33:58.194Z",
    "updated_at": "2022-05-27T11:33:58.194Z"
}

There is no URL, and the timestamp are TZ

I'm really sorry if this is normal, but, it worked on previous version 1.2.2 so i thought something happened since then

Hi @AT-Lorlando. Sorry for the late replay. V1.3.0 removed persisting of urls to the database. URLs are not generated when the image data is fetched from the database.


Support for monitoring 0.1.1.x

Kafka manager does not behave properly for latest Kafka possibly for all kafka >0.9.x.x. Would be nice have a pull request to support the same.
Would be happy to pair with someone already doing it or planning for it.

This guy using tool without problem - https://github.com/yahoo/kafka-manager/issues/394


mod not answering to identify event

the mod seems to try to reconnect to the websocket constantly
but it never answers to the identify event for some reason

this is the log i receive
[14:13:26] [Server thread/INFO]: Trying to connect to Devious Socket
[14:13:26] [Render thread/INFO]: Time elapsed: 1267 ms
[14:13:26] [HttpClient-60-Worker-1/INFO]: Received message from Devious Socket: {"event":"identify"}
[14:13:26] [Server thread/INFO]: Sent event to Devious Socket: {"event":"serverState","server":"ATM9","state":"started"}
[14:13:26] [Server thread/INFO]: Changing view distance to 12, from 10
[14:13:26] [Server thread/INFO]: Changing simulation distance to 12, from 0
[14:13:26] [Netty Local Client IO #15/INFO]: Connected to a modded server.
[14:13:26] [Server thread/INFO]: Mass1milian0[local:E:3b4cbac0] logged in with entity id 325 at (-23.244952846393186, 56.0, 10.557103738019288)
[14:13:26] [Server thread/INFO]: Mass1milian0 joined the game
[14:13:26] [Server thread/INFO]: Sent event to Devious Socket: {"event":"playerState","server":"ATM9","player":"Mass1milian0","uuid":"a954dc31-6031-44a3-a4fa-d7bd25b9314b","joined":"joined"}
[14:13:26] [Render thread/INFO]: Loaded 24 advancements
[14:13:31] [Server thread/INFO]: Saving and pausing game...
[14:13:31] [Server thread/INFO]: Saving chunks for level 'ServerLevel[New World]'/minecraft:overworld
[14:13:31] [Server thread/INFO]: Saving chunks for level 'ServerLevel[New World]'/minecraft:the_end
[14:13:31] [Server thread/INFO]: Saving chunks for level 'ServerLevel[New World]'/minecraft:the_nether
[14:13:41] [Server thread/INFO]: Saving and pausing game...
[14:13:41] [Server thread/INFO]: Saving chunks for level 'ServerLevel[New World]'/minecraft:overworld
[14:13:41] [Server thread/INFO]: Saving chunks for level 'ServerLevel[New World]'/minecraft:the_end
[14:13:41] [Server thread/INFO]: Saving chunks for level 'ServerLevel[New World]'/minecraft:the_nether
[14:13:59] [Timer-1/INFO]: Devious Socket connection closed, reconnecting...
[14:13:59] [HttpClient-61-Worker-1/INFO]: Received message from Devious Socket: {"event":"identify"}
[14:13:59] [HttpClient-61-Worker-1/INFO]: Received message from Devious Socket: {"event":"playerCount"}
[14:14:10] [Timer-7/INFO]: Devious Socket connection closed, reconnecting...
[14:14:10] [HttpClient-62-Worker-1/INFO]: Received message from Devious Socket: {"event":"identify"}
[14:14:22] [Timer-0/INFO]: Devious Socket connection closed, reconnecting...
[14:14:22] [HttpClient-63-Worker-1/INFO]: Received message from Devious Socket: {"event":"playerCount"}{"event":"playerCount"}{"event":"identify"}{"event":"identify"}
[14:14:22] [HttpClient-63-Worker-1/ERROR]: Failed to send message to Devious Socket. See debug logs for more info.
[14:14:25] [Timer-9/INFO]: Devious Socket connection closed, reconnecting...
[14:14:25] [HttpClient-64-Worker-1/INFO]: Received message from Devious Socket: {"event":"identify"}
[14:14:40] [Timer-13/INFO]: Devious Socket connection closed, reconnecting...
[14:14:40] [HttpClient-65-Worker-1/INFO]: Received message from Devious Socket: {"event":"identify"}
[14:14:57] [Timer-2/INFO]: Devious Socket connection closed, reconnecting...
[14:14:57] [HttpClient-66-Worker-1/INFO]: Received message from Devious Socket: {"event":"playerCount"}{"event":"playerCount"}{"event":"playerCount"}{"event":"message","username":"Mass1milian0","channel":"global","serverName":"ATM9","message":"a"}{"event":"playerCount"}{"event":"playerCount"}{"event":"playerCount"}{"event":"identify"}{"event":"identify"}{"event":"identify"}
[14:14:57] [HttpClient-66-Worker-1/ERROR]: Failed to send message to Devious Socket. See debug logs for more info.
[14:15:06] [Timer-3/INFO]: Devious Socket connection closed, reconnecting...
[14:15:06] [HttpClient-67-Worker-1/INFO]: Received message from Devious Socket: {"event":"identify"}
[14:15:31] [Timer-10/INFO]: Devious Socket connection closed, reconnecting...
[14:15:31] [HttpClient-68-Worker-1/INFO]: Received message from Devious Socket: {"event":"identify"}
[14:15:46] [Timer-4/INFO]: Devious Socket connection closed, reconnecting...
[14:15:46] [HttpClient-69-Worker-1/INFO]: Received message from Devious Socket: {"event":"playerCount"}{"event":"playerCount"}{"event":"playerCount"}{"event":"identify"}{"event":"identify"}
[14:15:46] [HttpClient-69-Worker-1/ERROR]: Failed to send message to Devious Socket. See debug logs for more info.

my single player world doesn't seem to produce debug logs unfortunately

I see what is happening:
The timer is not reset when reconnecting. As you can see, all timers have different id's (Timer-1, Timer-4 etc.).
This should be a fairly easy fix.

fixed with last update


[WIP] Improve block sync

Avoid same announcement entering the block sync queue.
If the synchronization is not successful, enqueue again.
If receive two higher than the current height, and less than 16 height, try to synchronize from the longest chain or the best chain.
Move some logic from handler to service,Let handler know less logic about block sync.

:x: Build AElf <IP_ADDRESS>78 failed (commit https://github.com/AElfProject/AElf/commit/5312ce67f4 by @zhxymh)

:white_check_mark: Build AElf <IP_ADDRESS>84 completed (commit https://github.com/AElfProject/AElf/commit/e8f8894bdb by @zhxymh)

:x: Build AElf <IP_ADDRESS>87 failed (commit https://github.com/AElfProject/AElf/commit/0c5e9d2c2d by @zhxymh)

:x: Build AElf <IP_ADDRESS>26 failed (commit https://github.com/AElfProject/AElf/commit/ae0c1bacfd by @zhxymh)


kvclient(cdc): handle out-of-order prewrite events for pipelined DMLs

What problem does this PR solve?
Issue Number: close #11185
What is changed and how it works?
Handles out-of-order prewrite events, which come from Pipelined DML transactions during incremental scans.
Check List
Tests

Unit test

Questions
Will it cause performance regression or break compatibility?
Do you need to update user documentation, design documentation or monitoring documentation?
Release note
None

/test cdc-integration-mysql-test

/retest

/retest

/retest

/retest

/retest


Don't inject unicodedata2 into sys.modules

I noticed charset_normalizer meddles with sys.modules, causing this:
>>> import charset_normalizer
>>> import unicodedata
>>> unicodedata
<module 'unicodedata2' from '.../site-packages/unicodedata2.cpython-39-darwin.so'>

This PR fixes that by using a fairly standard try: except ImportError: guard instead of the sys.modules hook.
>>> import charset_normalizer
>>> import unicodedata
>>> unicodedata
<module 'unicodedata' from '.../python3.9/lib-dynload/unicodedata.cpython-39-darwin.so'>

Hi @akx
Thanks for your report and your PR proposal.
Why do you say that PR "fixes" when this behavior is well documented and is expected?
I would be open to change that, considering recent events.
I have some further questions regarding this patch.
Why did you install and not expect it to be used instead of your cPython unicodedata distribution?
Removing the charset_normalizer.hook and replacing it with a plain import won't be useful unless we create some intermediary compat like solution.
It would be nicer to propose something that both keeps the backward compatibility AND "fix" your concern.
Thanks.

Hi @Ousret.
As far as I can see, it's certainly not documented that simply importing charset_normalizer while having unicodedata2 installed will make it impossible to access unicodedata (unless you had imported unicodedata beforehand).
Sure, it's documented that charset_normalizer will internally use unicodedata2 if it's available, and that's fine, but I don't expect it to mess with the global state of my Python interpreter. If I wanted to patch in unicodedata2 for all unicodedatas in my interpreter, I'd want to be explicit about that. (Explicit is better than implicit.)
My proposal is exactly the same mechanism that patches in charset_normalizer for chardet in requests (which is how I stumbled upon this library in the first place):
https://github.com/psf/requests/blob/a1a6a549a0143d9b32717dbe3d75cd543ae5a4f6/requests/compat.py#L11-L14

I really do not understand why having more up-to-date unicodedata is messing with your global Python environment. Anyway.
Like I said earlier, I am open to change that behavior, but I must be convinced that using your method/patch actually does what is expected.

I really do not understand why having more up-to-date unicodedata is messing with your global Python environment.

It's a matter of principle. If I do import unicodedata, I want unicodedata, not another module just because I had happened to import an unrelated module (charset_normalizer) before importing unicodedata.
It's maybe slightly far-fetched, but without this patch, you can't easily write a program that compares the differences between unicodedata and unicodedata2 unless you're specific about your import order!

I must be convinced that using your method/patch actually does what is expected.

Well, I'm pretty sure the CI suite for charset_normalizer would show that it doesn't break things. Can you enable running the GitHub workflows for this PR?

I need another person's opinion on that. @sethmlarson What do you think of that?
Unfornutally, in the current state the test suite does not prove without a doupt that unicodedata2 is correctly used. I am working on it.
How is that the right thing for us?
import unicodata2 as unicodedata

"a".isalpha()

What I am concern about is methods like .isalpha() from a str instance. How do you ptr them to unicodedata2?

import unicodedata2 as unicodedata

"a".isalpha()

What I am concern about is methods like .isalpha() from a str instance. How do you ptr them to unicodedata2?

As mentioned in https://github.com/Ousret/charset_normalizer/pull/57#discussion_r669703707 , I don't believe having unicodedata2 installed will help at all with str.isalpha(), etc. calls. In other words, you'd need to have your own def isalpha(s) sort of implementation that'd consult unicodedata2's tables, and doing that in pure Python will likely be slow.

@Ousret Don't know much about the unicodedata module or whether it even interacts with isalpha, from a brief reading of CPython it doesn't seem like it interacts with this static table: https://github.com/python/cpython/blob/bb3e0c240bc60fe08d332ff5955d54197f79751c/Python/pyctype.c
If you chase down the implementation of str.isalpha it ends up checking flags in this table, at least from my reading.
If this is the case we shouldn't be injecting unicodedata2 as it doesn't modify str.isalpha behavior.

@sethmlarson

whether it even interacts with isalpha, from a brief reading of CPython it doesn't seem like it interacts with this static table: https://github.com/python/cpython/blob/bb3e0c240bc60fe08d332ff5955d54197f79751c/Python/pyctype.c

That's the non-Unicode table. See https://github.com/Ousret/charset_normalizer/pull/57#discussion_r669703707 for the Unicode isalpha chase.

Codecov Report

Merging #57 (a30cf9f) into master (929f13c) will decrease coverage by 0.15%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##           master      #57      +/-   ##
==========================================
- Coverage   84.46%   84.31%   -0.16%
==========================================
  Files          12       11       -1
  Lines        1062     1058       -4
==========================================
- Hits          897      892       -5
- Misses        165      166       +1

Impacted Files
Coverage Δ

charset_normalizer/__init__.py
100.00% <ø> (ø)

charset_normalizer/utils.py
76.25% <100.00%> (+0.52%)
:arrow_up:

charset_normalizer/api.py
82.65% <0.00%> (-1.16%)
: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 929f13c...a30cf9f. Read the comment docs.

Thanks, @akx @sethmlarson for your inputs.
I am okay with merging this. I don't know when a new tag will be available, It would be wise to wait upon any remarks or concerns beforehand.
Do you have any more concerns @akx ?

@Ousret I don't have any further concerns regarding this PR :) Thank you for your consideration!

You are welcome, thanks for your contribution as well.

Now available under https://github.com/Ousret/charset_normalizer/releases/tag/2.0.2

I just found this while trying to debug a problem, and I just wanted to make absolutely clear that the old way causes problems. With charset_normalizer 2.0.0 (and 2.0.1), I saw this behavior:
No import:
❯ python
Python 3.7.12 | packaged by conda-forge | (default, Oct 26 2021, 05:59:23)
[Clang 11.1.0 ] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> compile(r's="$\N{DEGREE FAHRENHEIT}$"', 'foo.py', 'exec')
<code object <module> at 0x7fde000c4810, file "foo.py", line 1>
>>>

With import charset_normalizer:
❯ python
Python 3.7.12 | packaged by conda-forge | (default, Oct 26 2021, 05:59:23)
[Clang 11.1.0 ] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import charset_normalizer
>>> compile(r's="$\N{DEGREE FAHRENHEIT}$"', 'foo.py', 'exec')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "foo.py", line 1
SyntaxError: (unicode error) \N escapes not supported (can't load unicodedata module)
>>>

With the fix merged here in 2.0.2 (and the latest 2.0.7), the problem disappears. (I have an entirely different issue to solve where conda-forge is still giving me 2.0.0 🤷♂ )

Thanks for the report. Indeed I saw this weird behavior at conda-forge giving by default 2.0.0 instead of latest. I do not know why and who to reach to explain that. https://anaconda.org/conda-forge/charset-normalizer/files The download tendency is revealing that something seems wrong. Could it be that the requests version requirement ~=2.0.* for this lib is applied in the wrong way?

Incorrect dependencies for requests was exactly the reason: https://github.com/conda-forge/requests-feedstock/pull/48


libreoffice updates

Motivation for this change
Things done

[ ] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[x] Fits CONTRIBUTING.md.

No attempt on aarch64-linux (full log)
The following builds were skipped because they don't evaluate on aarch64-linux: libreoffice-fresh, libreoffice-still
Partial log (click to expand)

a) For `nixos-rebuild` you can set
  { nixpkgs.config.allowUnfree = true; }
in configuration.nix to override this.

b) For `nix-env`, `nix-build`, `nix-shell` or any other Nix command you can add
  { allowUnfree = true; }
to ~/.config/nixpkgs/config.nix.

Timed out, unknown build status on x86_64-linux (full log)
Attempted: libreoffice-fresh, libreoffice-still
Partial log (click to expand)
[build CXX] cppu/source/UnsafeBridge/UnsafeBridge.cxx
[build MOD] liblangtag
[build BIN] liborcus
[build MOD] libstaroffice
[build MOD] lpsolve
[build MOD] rhino
[build PKG] postprocess_registry
building of '/nix/store/21yvj13nplhqsf9n5ifxzq3j8fj6gflc-libreoffice-<IP_ADDRESS>.drv' timed out after 1800 seconds
cannot build derivation '/nix/store/41gqrn9js57h53dy5ik89ngg0qhyk1cx-libreoffice-<IP_ADDRESS>.drv': 1 dependencies couldn't be built
error: build of '/nix/store/41gqrn9js57h53dy5ik89ngg0qhyk1cx-libreoffice-<IP_ADDRESS>.drv', '/nix/store/n2j5whfbmfpjbri2mzja6gmr3vhcka1y-libreoffice-<IP_ADDRESS>.drv' failed


UI 问题

描述

这个转弯的箭头

有时候方向不对，有时候又是对的

悬浮窗口似乎没提供自定义 width 和 height，而默认的计算方式总是导致

要么窗口宽度太窄

要么窗口高度太窄

缩放也改变不了这种显示。
配置
local saga = require 'lspsaga'

saga.init_lsp_saga {
  show_diagnostic_source = false,
  diagnostic_header = { 'E', 'W', 'I', 'H' },
  code_action_icon = '',
  max_preview_lines = 30, -- preview lines of lsp_finder and definition preview
  finder_action_keys = {
    open = '<CR>', vsplit = 's', split = 'i', quit = '<Esc>', scroll_down = '<C-f>', scroll_up = '<C-b>'
  },
  code_action_keys = { quit = "<Esc>", exec = "<CR>" },
  rename_action_quit = '<Esc>',
  definition_preview_icon = ''
}

version_2 branch had fixed this bug. when all task complete will merge to main

问题 1 解决了~
问题二依然存在。我粗略看了历史的 issue 和一些代码，似乎是按照主窗口大小的比例计算悬浮窗口大小的。

yup a known bug there has some thing wrong in wrap function. need rewrite it. provide some example code that can reproduce this bug it's useful.

The code in GIF is here.
It's Rust code and Rust-Analyzer is required.
Complete nvim config is here.

The error from rustc (compiler) and diagnostic from Rust-Analyzer are (and should be) the same. So the error msg is this
$ cargo c
    Checking mini-redis v0.4.1 (/rust/github/mini-redis)
error[E0308]: mismatched types
   --> src/frame.rs:269:22
    |
269 |         Error::Other(src)
    |         ------------ ^^^ expected struct `Box`, found struct `String`
    |         |
    |         arguments to this enum variant are incorrect
    |
    = note: expected struct `Box<(dyn std::error::Error + Send + Sync + 'static)>`
               found struct `String`
note: tuple variant defined here
   --> src/frame.rs:28:5
    |
28  |     Other(crate::Error),
    |     ^^^^^

Hope it's useful.

Okay take a look at later.

@zjp-CN, I'm sorry that this is unrelated to your issue, but how were you able to jump inside the diagnostic popup window?

@rowsephx

jump inside the diagnostic popup window

Ctrl-w w.
You can refer to :h CTRL-W_w.

Ctrl-w w.

Oh wow! I didn't know that.
I just use the inline diagnostic, and press its keybinding twice to get inside the diagnostic window.
This is good to know!

How to get inside the diagnostic window? I always want to to that. @rowsephx
I recently find lsp_lines might be a solution too.

@zjp-CN, you can either use vim.diagnostic.open_float or Lspsaga show_line_diagnostics, and put mapping.
For example:
 vim.keymap.set("n", "gl", require("lspsaga.diagnostic").show_line_diagnostics, { silent = true })
Pressing gl will show all the diagnostics for the current line, and if gl is pressed again, it will put your cursor inside the diagnostic window.

I recently find lsp_lines might be a solution too.

I'm aware of this, but I find it cluttered.

@rowsephx Thank you for reminding me of that!


Function pointer lifetimes

Rendered
(looks like I accidently removed the template by using the github quick commit, be careful)

This RFC has gotten quite old by now, and there are newer RFCs that offer more comprehensive solutions. I'm closing this RFC as postponed under https://github.com/rust-lang/rfcs/issues/1037. Thanks very much for the suggestion!


Add OpHalt

A few reruns did not found any speed improvements.
name                        old time/op    new time/op    delta
_expr-2                        209ns ± 2%     210ns ± 3%    ~     (p=0.139 n=20+1[7](https://github.com/antonmedv/expr/actions/runs/3352587426/jobs/5554825889#step:8:8))
_expr_reuseVm-2                109ns ± 4%     107ns ± 3%  -1.53%  (p=0.017 n=20+20)
_filter-2                     26.2µs ± 2%    25.[8](https://github.com/antonmedv/expr/actions/runs/3352587426/jobs/5554825889#step:8:9)µs ± 3%  -1.44%  (p=0.007 n=20+20)
_access-2                      168ns ± 2%     16[9](https://github.com/antonmedv/expr/actions/runs/3352587426/jobs/5554825889#step:8:10)ns ± 2%    ~     (p=0.126 n=20+20)
_accessMap-2                   182ns ± 3%     184ns ± 4%  +1.26%  (p=0.033 n=20+20)
_callFunc-2                   1.30µs ± 4%    1.33µs ± 4%  +2.52%  (p=0.001 n=20+20)
_callMethod-2                 1.34µs ± 2%    1.36µs ± 4%  +1.78%  (p=0.000 n=19+20)
_callField-2                   566ns ± 3%     574ns ± 4%  +1.42%  (p=0.015 n=20+20)
_callFast-2                    228ns ± 6%     224ns ± 3%    ~     (p=0.059 n=20+20)
_callConstExpr-2               178ns ± 3%     180ns ± 3%  +1.02%  (p=0.025 n=20+20)
_largeStructAccess-2           397ns ± 3%     394ns ± 3%    ~     (p=0.078 n=19+20)
_largeNestedStructAccess-2     427ns ± 2%     422ns ± 4%  -1.23%  (p=0.025 n=20+20)
_largeNestedArrayAccess-2     3.35ms ± 3%    3.35ms ± 3%    ~     (p=0.813 n=20+19)
_realWorld-2                   571ns ± 3%     566ns ± 3%    ~     (p=0.[10](https://github.com/antonmedv/expr/actions/runs/3352587426/jobs/5554825889#step:8:11)3 n=20+20)
_realWorld_reuseVm-2           461ns ± 3%     459ns ± 3%    ~     (p=0.387 n=20+20)
_realWorldInsane-2             219µs ± 3%     217µs ± 3%    ~     (p=0.[15](https://github.com/antonmedv/expr/actions/runs/3352587426/jobs/5554825889#step:8:16)8 n=20+[19](https://github.com/antonmedv/expr/actions/runs/3352587426/jobs/5554825889#step:8:20))

Closing as not needed.


Add header bar entries for Slack, GitHub and StackOverflow.

Add icons and links to to the header bar for Slack, GitHub and StackOverflow.

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


Support an Intel architecture

[ ] Decide which Intel architecture to use
[ ] Import primitives
[ ] Add tests

I'm doing some digging. The basic task is to find which Intel family (they use "family" instead of "architecture", or at least Yosys does) fulfills the following constraints:

Has interesting DSPs
Is supported by Quartus

Note that we use free Quartus, which limits this

Has accessible simulation models in Quartus

Some families that are supported have their simulation files encrypted in Quartus

Is supported by Yosys

Useful Quartus manual here: https://www.intel.com/programmable/technical-pdfs/654662.pdf

Supported by Yosys:

max10, cycloneiv, cyclonev, cycloneive, cyclone10lp, cyclone10gx, arriav

Supported by Quartus:

According to this table: https://www.intel.com/content/www/us/en/products/details/fpga/development-tools/quartus-prime/article.html
Cyclone 10 LP, Cyclone IV (maybe IVE too? not stated), Cyclone V, Arria II (one device; basically unsupported), MAX series

Has interesting DSPs whose simulation models are accessible to us (i.e. included in Quartus, in and around /tools/intel/quartus/eda/sim_lib)

NOT Cyclone V; its models are encrypted. At least its MAC is encrypted.
Unclear on Max 10 -- don't immediately see any models for it, while I do for Max II and Max V.
Cyclone 10 LP yes, but it only has MAC from what I've seen so far.
Cyclone IV yes, and it's actually the same as Cyclone 10 LP (the comments say these primitives are from Cyclone II)
Cyclone IVE seems to be the same story

It seems like Cyclone 10 LP is our best bet.


Questions on Strategy, Governance & Operating Model.

Hello,
Do you have any documentation, or reference material or help for the questions below, as we plan on our Architecture design for chat bots?
1). The above picture shows the Azure Active directory validation at message level. How & where does the control exist for having the users authorize/ authenticate one time during the session active, and where do we control the duration of a session length
2). What are the recommendations from Microsoft on Authentication when a chat bot is being accessed by Internal customers (employees etc.) Vs external customers (Suppliers etc.). How does AD Vs Azure Active directory work in parallel?
3). Parameters to consider while choosing a channel (other than  the end users ability to access the channel), are there any functional elements to be considered while choosing a channel A Vs B?
4). What components of the architecture would allow us to control & govern the security aspects? - What is the recommendation from Microsoft to consider, and make sure we protect the data from PII/PCI/GDPR side.
Consider an example where I have a chat bot helping the Employees, Suppliers & Customers with FAQ's, as a part of which it collect the contact information. How do I secure the entity of Employee from Supplier/ Customers and vice-versa......can we secure entities by role?
5). COuld not download the content from git for the above, can you share this?

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

ID: d0a5d586-36db-1258-a949-04084fa331e6
Version Independent ID: 5615a84e-21d7-6a9c-6c2a-37bba2b9d5d8
Content: Information Chatbot - Azure Solution Ideas
Content Source: docs/solution-ideas/articles/information-chatbot.md
Service: architecture-center
GitHub Login: @adamboeglin
Microsoft Alias: pnp

We're deprecating this article in favor of the much more detailed reference architecture here: https://docs.microsoft.com/en-us/azure/architecture/reference-architectures/ai/conversational-bot
Please review this article and open a new issue if you still have questions.


We need to have a health check endpoint for premium function app so the load balancers can call to verify health of the API

[Enter feedback here]
Hello,
We need to have a health check endpoint for our premium function apps, so the load balancers can call it to determine the health of the functions. However, Microsoft does not recommend health checks for premium functions. What other options do I have?
https://docs.microsoft.com/en-us/azure/app-service/monitor-instances-health-check#limitations
Thanks
R

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

ID: 20c42a13-f6cb-1e60-0438-f7f32b86a336
Version Independent ID: 79e7dd15-24aa-2e6d-cee7-7714e1940c11
Content: Monitor the health of App Service instances - Azure App Service
Content Source: articles/app-service/monitor-instances-health-check.md
Service: app-service
GitHub Login: @msangapu-msft
Microsoft Alias: msangapu

@zaalion Thank you for your feedback! We will review and update as appropriate.

@zaalion Thanks for asking question! As its further mentioned in the document that "Premium Functions have their own internal health probes that are used to inform scaling decisions."

@zaalion Since we did not here from you. We will close this out but if you feel you need more information let us know.


Accented URL -> Category

If Accented URL enabled and category contain cyrilic chars... on category page got 404

Hi @metacreo
Thank you for your report.
Can you please clarify the following?

the issue is only for category (product, cms,etc are ok) ?
please provide a sample category name to be used to reproduce
is the same name working on PS without the module?
PS version
module version

Thanks

I think only on category. Because product page showing ok. On cms pages not tested.
Examples of names:
example.com/en/turbochargers
example.com/ru/турбокомпрессоры
example.com/en/equipment
example.com/lt/įranga
example.com/ru/оборудование
The same names on PS with ID working ok.
Tested on prestashop <IP_ADDRESS>
unfortunately now I do not have access to the files and I can not describe in detail.
Soon I try to repeat everything in a clean installation

OK thank you .. will inspect ASAP

Hi Zizuu,
fresh install of latest version.
CMS pages the same not work.
You can check at http://test.newestvision.com
BO conn:  /adminka
<EMAIL_ADDRESS>admin123
Thank You

@metacreo oh wonderful thank you .. if you could gimme a console access to this test server I'll try to debug and fix in real time ASAP ;)
In case you can, please contact me via gitter or email for access credentials, thanks again

@metacreo I'm debugging and working both on your test server and on my own
On my server (PS <IP_ADDRESS>) I installed the russian language and added a CMS page for it .. coping the name from your site (ru/info/доставка) .. on my server it works!! ..
Can be a PHP version issue?

root@newestvision:/etc/systemd/system# php -v
PHP 5.6.14-0+deb8u1 (cli) (built: Oct  4 2015 16:13:10)
Copyright (c) 1997-2015 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2015 Zend Technologies
with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2015, by Zend Technologies

I can give you ssh access to server tomorrow.

I found some info http://doc.prestashop.com/display/PS16/Handling+special+characters+in+links
maybe the problem in link constructor.

@metacreo no need for xdebug for now .. a shell access should suffice at the moment
thank you

@metacreo good catch! I think the doc you found could be the issue .. even if I don't understand why it seems to work on my server even without any change ..

On my server Cylillic seems to be correctly handled by PHP without any modification.
Please try to run the following:
webmaster@zz01$ php -r "\$uri = '/ru/оборудование'; \$uri = basename(\$uri); echo \$uri.\"\\n\"; preg_match_all('/[_a-zA-Z0-9\pL\pS-]/', \$uri, \$m); var_dump(\$m);"

оборудование
array(1) {
  [0]=>
  array(17) {
    [0]=>
    string(1) "�"
    [1]=>
    string(1) "�"
    [2]=>
    string(1) "�"
    [3]=>
    string(1) "�"
    [4]=>
    string(1) "�"
    [5]=>
    string(1) "�"
    [6]=>
    string(1) "�"
    [7]=>
    string(1) "�"
    [8]=>
    string(1) "�"
    [9]=>
    string(1) "�"
    [10]=>
    string(1) "�"
    [11]=>
    string(1) "�"
    [12]=>
    string(1) "�"
    [13]=>
    string(1) "�"
    [14]=>
    string(1) "�"
    [15]=>
    string(1) "�"
    [16]=>
    string(1) "�"
  }
}

root@newestvision:~# php -r "$uri = '/ru/оборудование'; $uri = basename($uri)                               ; echo $uri."\n"; preg_match_all('/[_a-zA-Z0-9\pL\pS-]/', $uri, $m); var_d                               ump($m);"
оборудование
array(1) {
[0]=>
array(17) {
[0]=>
string(1) "▒"
[1]=>
string(1) "▒"
[2]=>
string(1) "▒"
[3]=>
string(1) "▒"
[4]=>
string(1) "▒"
[5]=>
string(1) "▒"
[6]=>
string(1) "▒"
[7]=>
string(1) "▒"
[8]=>
string(1) "▒"
[9]=>
string(1) "▒"
[10]=>
string(1) "▒"
[11]=>
string(1) "▒"
[12]=>
string(1) "▒"
[13]=>
string(1) "▒"
[14]=>
string(1) "▒"
[15]=>
string(1) "▒"
[16]=>
string(1) "▒"
}
}

@metacreo Please join https://gitter.im/ZiZuu-store/zzCleanURLs to have a better interaction

Resolved very simply
Localization ->  Advanced:
Language identifier: en
Country identifier: gb   (!!! if lt or ru or other... rewrite not work!)
but it is strange why the work without the module

Good to know :)
I think because without the module PS retrieves the object from DB just using the ID in the url, discarding the eventually malformed part of the string
Thank you for your time .. have a nice day


502 Bad Gateway

502 Bad Gateway if the nginx config on the docker container is not set properly.
I am keeping config as below
server {
    listen 443;
    location / {
        include uwsgi_params;
        uwsgi_pass unix:///tmp/uwsgi.sock;
    }
}

If i am keeping listen  443 ssl, it will required certificate to mentioned.

no "ssl_certificate" is defined for the "listen ... ssl" directive

But certificates are created inside /etc/nginx/certs of docker-letsencrypt-nginx-proxy-companion container. So How would a nginx config for this look like?

Hi.
I don't get what you are trying to accomplish. Were does the config block you quoted comes from ?

My container runs nginx server on start up. i have to set certificates in the nginx config file in the containers.
Currently i am using --volumes-from docker-letsencrypt-nginx-proxy-companion and use the path /etc/nginx/certs inside the containers to set the certificate.
Do you have any other option to get the certificate inside the individual containers from path /etc/nginx/certs ?

The issue is with nginx-proxy


Weave CNI fails to launch because of port conflict

What you expected to happen?
After running kubectl apply -f weave-daemonset-k8s-1.11.yaml I expected to see a weave-net pods running.
What happened?
The weave-net pods had 1/2 containers running. The weave-npc container fails to launch with the following message in the log:
FATA: 2021/04/13 23:42:31.147114 listen udp4 :6783: bind: address already in use
Running netstat on the host reveals that weaver is the process listening on UDP 6783:
tcp6       0      0 :::6783                 :::*                    LISTEN      8515/weaver
udp        0      0 <IP_ADDRESS>:6783            <IP_ADDRESS>:*                           8515/weaver
This appears to be the weave container in the same pod.
How to reproduce it?

Because of github rate limiting I download the Docker image:
docker pull weaveworks/weave:2.8.1
and stored it in AWS ECR.
I then download the manifest: https://github.com/weaveworks/weave/releases/download/v2.6.5/weave-daemonset-k8s-1.11.yaml
I modified the manifest by replacing weaveworks/weave-kube:2.8.1 with the ECR URI
I added the IPALLOC_RANGE environment variable to avoid conflicting with our <IP_ADDRESS>/8 internal network.
Ran kubectl --kubeconfig <kubeconfig-for-our-eks-cluster> apply -f weave-daemonset-k8s-1.11.yaml to deploy the daemonset to our EKS cluster.
The weave-npc containers in the weave-net pods fail.

Anything else we need to know?
As mentioned above this is being deployed on AWS EKS.
Versions:

$ weave version
weave script 2.8.1
$ docker version
Client:
 Version:           19.03.13-ce
 API version:       1.40
 Go version:        go1.13.15
 Git commit:        4484c46
 Built:             Mon Oct 12 18:51:20 2020
 OS/Arch:           linux/amd64
 Experimental:      false

Server:
 Engine:
  Version:          19.03.13-ce
  API version:      1.40 (minimum version 1.12)
  Go version:       go1.13.15
  Git commit:       4484c46
  Built:            Mon Oct 12 18:51:50 2020
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.4.1
  GitCommit:        c623d1b36f09f8ef6536a057bd658b3aa8632828
 runc:
  Version:          1.0.0-rc93
  GitCommit:        12644e614e25b05da6fd08a38ffa0cfe1903fdec
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0
$ uname -a
Linux ip-10-135-235-147.ec2.internal 4.14.225-169.362.amzn2.x86_64 #1 SMP Mon Mar 22 20:14:50 UTC 2021 x86_64 Linux
$ kubectl version
Client Version: version.Info{Major:"1", Minor:"19", GitVersion:"v1.19.7", GitCommit:"1dd5338295409edcfff11505e7bb246f0d325d15", GitTreeState:"clean", BuildDate:"2021-01-13T13:23:52Z", GoVersion:"go1.15.5", Compiler:"gc", Platform:"darwin/amd64"}
Server Version: version.Info{Major:"1", Minor:"18+", GitVersion:"v1.18.9-eks-d1db3c", GitCommit:"d1db3c46e55f95d6a7d3e5578689371318f95ff9", GitTreeState:"clean", BuildDate:"2020-10-20T22:18:07Z", GoVersion:"go1.13.15", Compiler:"gc", Platform:"linux/amd64"}

Logs:
$ docker logs weave

or, if using Kubernetes:
$ kubectl logs -n kube-system <weave-net-pod> weave
DEBU: 2021/04/13 22:50:20.083765 [kube-peers] Checking peer "42:9d:fb:0e:30:e1" against list &{[{be:e1:25:37:77:01 ip-10-135-235-124.ec2.internal} {ca:e7:a9:30:62:ca ip-10-135-235-77.ec2.internal} {d6:9a:f9:9b:9a:72 ip-10-135-235-160.ec2.internal} {c2:dc:36:a7:72:26 ip-10-135-235-100.ec2.internal} {52:30:60:a1:77:e3 ip-10-135-235-248.ec2.internal} {42:9d:fb:0e:30:e1 ip-10-135-235-147.ec2.internal} {8e:ff:47:df:61:c1 ip-10-135-235-25.ec2.internal}]}
INFO: 2021/04/13 22:50:20.176702 Command line options: map[conn-limit:200 datapath:datapath db-prefix:/weavedb/weave-net docker-api: expect-npc:true http-addr:<IP_ADDRESS>:6784 ipalloc-init:consensus=6 ipalloc-range:<IP_ADDRESS>/16 metrics-addr:<IP_ADDRESS>:6782 name:42:9d:fb:0e:30:e1 nickname:ip-10-135-235-147.ec2.internal no-dns:true no-masq-local:true port:6783]
INFO: 2021/04/13 22:50:20.176744 weave  2.8.1
INFO: 2021/04/13 22:50:20.678048 Re-exposing <IP_ADDRESS>/12 on bridge "weave"
INFO: 2021/04/13 22:50:20.713509 Re-exposing <IP_ADDRESS>/16 on bridge "weave"
INFO: 2021/04/13 22:50:20.741198 Bridge type is bridged_fastdp
INFO: 2021/04/13 22:50:20.741220 Communication between peers is unencrypted.
INFO: 2021/04/13 22:50:20.793288 Our name is 42:9d:fb:0e:30:e1(ip-10-135-235-147.ec2.internal)
INFO: 2021/04/13 22:50:20.793330 Launch detected - using supplied peer list: [<IP_ADDRESS> <IP_ADDRESS> <IP_ADDRESS> <IP_ADDRESS> <IP_ADDRESS> <IP_ADDRESS>]
INFO: 2021/04/13 22:50:20.793366 Using "no-masq-local" LocalRangeTracker
INFO: 2021/04/13 22:50:20.793372 Checking for pre-existing addresses on weave bridge
INFO: 2021/04/13 22:50:20.793464 weave bridge has address <IP_ADDRESS>/12
INFO: 2021/04/13 22:50:20.793475 weave bridge has address <IP_ADDRESS>/16
INFO: 2021/04/13 22:50:20.796094 adding entry <IP_ADDRESS>/18 to weaver-no-masq-local of 0
INFO: 2021/04/13 22:50:20.796132 added entry <IP_ADDRESS>/18 to weaver-no-masq-local of 0
INFO: 2021/04/13 22:50:20.799882 [allocator 42:9d:fb:0e:30:e1] Initialising with persisted data
INFO: 2021/04/13 22:50:20.799911 [allocator 42:9d:fb:0e:30:e1] Address <IP_ADDRESS>/12 claimed by weave:expose - not in our range
INFO: 2021/04/13 22:50:20.799940 Sniffing traffic on datapath (via ODP)
INFO: 2021/04/13 22:50:20.800217 ->[<IP_ADDRESS>:6783] attempting connection
INFO: 2021/04/13 22:50:20.800251 ->[<IP_ADDRESS>:6783] attempting connection
INFO: 2021/04/13 22:50:20.800332 ->[<IP_ADDRESS>:6783] attempting connection
INFO: 2021/04/13 22:50:20.800378 ->[<IP_ADDRESS>:6783] attempting connection
INFO: 2021/04/13 22:50:20.800448 ->[<IP_ADDRESS>:6783] attempting connection
INFO: 2021/04/13 22:50:20.800473 ->[<IP_ADDRESS>:6783] attempting connection
INFO: 2021/04/13 22:50:20.800599 ->[<IP_ADDRESS>:6783] error during connection attempt: dial tcp :0-><IP_ADDRESS>:6783: connect: connection refused
INFO: 2021/04/13 22:50:20.801026 ->[<IP_ADDRESS>:6783] error during connection attempt: dial tcp :0-><IP_ADDRESS>:6783: connect: connection refused
INFO: 2021/04/13 22:50:20.801184 ->[<IP_ADDRESS>:6783] error during connection attempt: dial tcp :0-><IP_ADDRESS>:6783: connect: connection refused
INFO: 2021/04/13 22:50:20.802141 ->[<IP_ADDRESS>:6783|52:30:60:a1:77:e3(ip-10-135-235-248.ec2.internal)]: connection ready; using protocol version 2
INFO: 2021/04/13 22:50:20.802246 overlay_switch ->[52:30:60:a1:77:e3(ip-10-135-235-248.ec2.internal)] using fastdp
INFO: 2021/04/13 22:50:20.802278 ->[<IP_ADDRESS>:6783|52:30:60:a1:77:e3(ip-10-135-235-248.ec2.internal)]: connection added (new peer)
INFO: 2021/04/13 22:50:20.802350 Listening for HTTP control messages on <IP_ADDRESS>:6784
INFO: 2021/04/13 22:50:20.802366 Listening for metrics requests on <IP_ADDRESS>:6782
INFO: 2021/04/13 22:50:20.802828 ->[<IP_ADDRESS>:6783|be:e1:25:37:77:01(ip-10-135-235-124.ec2.internal)]: connection ready; using protocol version 2
INFO: 2021/04/13 22:50:20.802896 overlay_switch ->[be:e1:25:37:77:01(ip-10-135-235-124.ec2.internal)] using fastdp
INFO: 2021/04/13 22:50:20.802937 ->[<IP_ADDRESS>:6783|be:e1:25:37:77:01(ip-10-135-235-124.ec2.internal)]: connection added (new peer)
INFO: 2021/04/13 22:50:20.803412 ->[<IP_ADDRESS>:6783|8e:ff:47:df:61:c1(ip-10-135-235-25.ec2.internal)]: connection ready; using protocol version 2
INFO: 2021/04/13 22:50:20.803477 overlay_switch ->[8e:ff:47:df:61:c1(ip-10-135-235-25.ec2.internal)] using fastdp
INFO: 2021/04/13 22:50:20.803498 ->[<IP_ADDRESS>:6783|8e:ff:47:df:61:c1(ip-10-135-235-25.ec2.internal)]: connection added (new peer)
INFO: 2021/04/13 22:50:20.903261 ->[<IP_ADDRESS>:6783|be:e1:25:37:77:01(ip-10-135-235-124.ec2.internal)]: connection fully established
INFO: 2021/04/13 22:50:20.903304 ->[<IP_ADDRESS>:6783|52:30:60:a1:77:e3(ip-10-135-235-248.ec2.internal)]: connection fully established
INFO: 2021/04/13 22:50:20.903315 ->[<IP_ADDRESS>:6783|8e:ff:47:df:61:c1(ip-10-135-235-25.ec2.internal)]: connection fully established
INFO: 2021/04/13 22:50:20.904182 sleeve ->[<IP_ADDRESS>:6783|be:e1:25:37:77:01(ip-10-135-235-124.ec2.internal)]: Effective MTU verified at 8939
INFO: 2021/04/13 22:50:20.904553 sleeve ->[<IP_ADDRESS>:6783|52:30:60:a1:77:e3(ip-10-135-235-248.ec2.internal)]: Effective MTU verified at 8939
INFO: 2021/04/13 22:50:20.904650 sleeve ->[<IP_ADDRESS>:6783|8e:ff:47:df:61:c1(ip-10-135-235-25.ec2.internal)]: Effective MTU verified at 8939
INFO: 2021/04/13 22:50:21.185782 [kube-peers] Added myself to peer list &{[{be:e1:25:37:77:01 ip-10-135-235-124.ec2.internal} {ca:e7:a9:30:62:ca ip-10-135-235-77.ec2.internal} {d6:9a:f9:9b:9a:72 ip-10-135-235-160.ec2.internal} {c2:dc:36:a7:72:26 ip-10-135-235-100.ec2.internal} {52:30:60:a1:77:e3 ip-10-135-235-248.ec2.internal} {42:9d:fb:0e:30:e1 ip-10-135-235-147.ec2.internal} {8e:ff:47:df:61:c1 ip-10-135-235-25.ec2.internal}]}
DEBU: 2021/04/13 22:50:21.207565 [kube-peers] Nodes that have disappeared: map[]
<IP_ADDRESS>
DEBU: 2021/04/13 22:50:21.283046 registering for updates for node delete events
INFO: 2021/04/13 22:50:21.816914 ->[<IP_ADDRESS>:6783] attempting connection
INFO: 2021/04/13 22:50:21.817769 ->[<IP_ADDRESS>:6783] error during connection attempt: dial tcp :0-><IP_ADDRESS>:6783: connect: connection refused
INFO: 2021/04/13 22:50:22.122957 ->[<IP_ADDRESS>:6783] attempting connection
INFO: 2021/04/13 22:50:22.123855 ->[<IP_ADDRESS>:6783] error during connection attempt: dial tcp :0-><IP_ADDRESS>:6783: connect: connection refused
INFO: 2021/04/13 22:50:23.383424 ->[<IP_ADDRESS>:6783] attempting connection
INFO: 2021/04/13 22:50:23.383825 ->[<IP_ADDRESS>:6783] error during connection attempt: dial tcp :0-><IP_ADDRESS>:6783: connect: connection refused
INFO: 2021/04/13 22:50:24.866661 ->[<IP_ADDRESS>:41211] connection accepted
INFO: 2021/04/13 22:50:24.867199 ->[<IP_ADDRESS>:41211|d6:9a:f9:9b:9a:72(ip-10-135-235-160.ec2.internal)]: connection ready; using protocol version 2
INFO: 2021/04/13 22:50:24.867248 overlay_switch ->[d6:9a:f9:9b:9a:72(ip-10-135-235-160.ec2.internal)] using fastdp
INFO: 2021/04/13 22:50:24.867280 ->[<IP_ADDRESS>:41211|d6:9a:f9:9b:9a:72(ip-10-135-235-160.ec2.internal)]: connection added (new peer)
INFO: 2021/04/13 22:50:24.867756 ->[<IP_ADDRESS>:41211|d6:9a:f9:9b:9a:72(ip-10-135-235-160.ec2.internal)]: connection fully established
INFO: 2021/04/13 22:50:25.030535 ->[<IP_ADDRESS>:6783] attempting connection
INFO: 2021/04/13 22:50:25.031395 ->[<IP_ADDRESS>:6783] error during connection attempt: dial tcp :0-><IP_ADDRESS>:6783: connect: connection refused
INFO: 2021/04/13 22:50:25.068561 sleeve ->[<IP_ADDRESS>:6783|d6:9a:f9:9b:9a:72(ip-10-135-235-160.ec2.internal)]: Effective MTU verified at 8939
INFO: 2021/04/13 22:50:25.687625 ->[<IP_ADDRESS>:6783] attempting connection
INFO: 2021/04/13 22:50:25.688477 ->[<IP_ADDRESS>:6783] error during connection attempt: dial tcp :0-><IP_ADDRESS>:6783: connect: connection refused
INFO: 2021/04/13 22:50:28.058403 ->[<IP_ADDRESS>:43609] connection accepted
INFO: 2021/04/13 22:50:28.059356 ->[<IP_ADDRESS>:43609|ca:e7:a9:30:62:ca(ip-10-135-235-77.ec2.internal)]: connection ready; using protocol version 2
INFO: 2021/04/13 22:50:28.059428 overlay_switch ->[ca:e7:a9:30:62:ca(ip-10-135-235-77.ec2.internal)] using fastdp
INFO: 2021/04/13 22:50:28.059448 ->[<IP_ADDRESS>:43609|ca:e7:a9:30:62:ca(ip-10-135-235-77.ec2.internal)]: connection added (new peer)
INFO: 2021/04/13 22:50:28.159725 ->[<IP_ADDRESS>:43609|ca:e7:a9:30:62:ca(ip-10-135-235-77.ec2.internal)]: connection fully established
INFO: 2021/04/13 22:50:28.260157 sleeve ->[<IP_ADDRESS>:6783|ca:e7:a9:30:62:ca(ip-10-135-235-77.ec2.internal)]: Effective MTU verified at 8939
INFO: 2021/04/13 22:50:28.466540 ->[<IP_ADDRESS>:6783] attempting connection
INFO: 2021/04/13 22:50:28.467445 ->[<IP_ADDRESS>:6783] error during connection attempt: dial tcp :0-><IP_ADDRESS>:6783: connect: connection refused
INFO: 2021/04/13 22:50:28.956586 ->[<IP_ADDRESS>:50977] connection accepted
INFO: 2021/04/13 22:50:28.957639 ->[<IP_ADDRESS>:50977|c2:dc:36:a7:72:26(ip-10-135-235-100.ec2.internal)]: connection ready; using protocol version 2
INFO: 2021/04/13 22:50:28.957790 overlay_switch ->[c2:dc:36:a7:72:26(ip-10-135-235-100.ec2.internal)] using fastdp
INFO: 2021/04/13 22:50:28.957815 ->[<IP_ADDRESS>:50977|c2:dc:36:a7:72:26(ip-10-135-235-100.ec2.internal)]: connection added (new peer)
INFO: 2021/04/13 22:50:29.058290 overlay_switch ->[c2:dc:36:a7:72:26(ip-10-135-235-100.ec2.internal)] using sleeve
INFO: 2021/04/13 22:50:29.058322 ->[<IP_ADDRESS>:50977|c2:dc:36:a7:72:26(ip-10-135-235-100.ec2.internal)]: connection fully established
INFO: 2021/04/13 22:50:29.159222 sleeve ->[<IP_ADDRESS>:6783|c2:dc:36:a7:72:26(ip-10-135-235-100.ec2.internal)]: Effective MTU verified at 8939
INFO: 2021/04/13 22:50:29.206815 Discovered remote MAC ca:e7:a9:30:62:ca at ca:e7:a9:30:62:ca(ip-10-135-235-77.ec2.internal)
INFO: 2021/04/13 22:50:29.324655 Discovered remote MAC c2:dc:36:a7:72:26 at c2:dc:36:a7:72:26(ip-10-135-235-100.ec2.internal)
INFO: 2021/04/13 22:50:29.459047 overlay_switch ->[c2:dc:36:a7:72:26(ip-10-135-235-100.ec2.internal)] using fastdp
INFO: 2021/04/13 22:50:50.847399 Error checking version: Get "https://checkpoint-api.weave.works/v1/check/weave-net?arch=amd64&flag_docker-version=none&flag_kernel-version=4.14.225-169.362.amzn2.x86_64&flag_network=fastdp&flag_network=fastdp&flag_network=fastdp&os=linux&signature=Bea1JsB9Xn2bK4Z%2BMHC0nqejmtqhpRYRBrViHrHohNU%3D&version=2.8.1": dial tcp: i/o timeout
INFO: 2021/04/13 22:51:20.803064 overlay_switch ->[52:30:60:a1:77:e3(ip-10-135-235-248.ec2.internal)] using sleeve
INFO: 2021/04/13 22:51:20.804051 overlay_switch ->[8e:ff:47:df:61:c1(ip-10-135-235-25.ec2.internal)] using sleeve
INFO: 2021/04/13 22:51:21.303447 overlay_switch ->[be:e1:25:37:77:01(ip-10-135-235-124.ec2.internal)] using sleeve
INFO: 2021/04/13 22:51:24.867590 overlay_switch ->[d6:9a:f9:9b:9a:72(ip-10-135-235-160.ec2.internal)] using sleeve
INFO: 2021/04/13 22:51:28.059715 overlay_switch ->[ca:e7:a9:30:62:ca(ip-10-135-235-77.ec2.internal)] using sleeve
INFO: 2021/04/13 22:51:28.958205 overlay_switch ->[c2:dc:36:a7:72:26(ip-10-135-235-100.ec2.internal)] using sleeve

Network:

$ ip route
$ ip -4 -o addr
$ sudo iptables-save

After posting the weave container log I can see that the weave container is not connecting to the other pods. I will fix the security group rules and see if that has any effect.

It appears the error messages are just transient start up issues. I can connect from the weave container to the 6783 TCP port on another host:
/home/weave # nc -vz <IP_ADDRESS> 6783 <IP_ADDRESS> (<IP_ADDRESS>:6783) open

I found my error. I was using the wrong image for weave-npc.


_artifactcache/cascache.py: Check for permission denied when initializing remote

When we check whether the remote supports PushDirectory() requests, we were
ignoring the possible permission denied.
These checks are made for compatibility with servers, some REAPI requests
are more efficient but not always supported, if they are not supported we
fallback to more inefficient codepaths. When checking push related APIs
we should also ignore errors related to lack of permission.
Fixes #1724

While this is a good thing to have, I think it doesn't fix #1724.
In the case of #1724, we still have an HTTP 404 error which should map to UNIMPLEMENTED. For some reason (likely a bug in grpcio) it is being mapped to some other error (the "stream removed" thing)

While this is a good thing to have, I think it doesn't fix #1724.
In the case of #1724, we still have an HTTP 404 error which should map to UNIMPLEMENTED. For some reason (likely a bug in grpcio) it is being mapped to some other error (the "stream removed" thing)

I've updated the patch to additionally only check for these push capabilities on push remotes.


Fix deadlock in ConfigAdmin Update, UpdateIfDifferent and Remove

The Update, UpdateIfDifferent and Remove methods on Configuration objects send
an asynchronous notification to all services that have published a ConfigurationListener
interface. The asynchronous thread creates a std::future and saves it in a vector (incompleteFutures).
A ConfigurationAdminImpl non-public method (WaitForAllAsync) can be used to wait for all futures in the vector to complete. The future created by the asynchronous notification thread is also shared (std::shared_future) and is returned to the caller of the Update, UpdateIfDifferent or Remove method so they can wait for the operation to complete. There was a bug in the initial version of ConfigurationAdmin that resulted in a deadlock under some circumstances because a std::future was being saved in the incompleteFutures vector instead of a std::shared_future. When the std::shared_future went out of scope, the destructor would stall because the std::future would still exist. This test confirms that
this deadlock no longer exists.
The actual situation in the field involved a complex problem where the notification of the updated configuration object in turn resulted in the code doing the updating being called. Instead of trying to duplicate this in user code, this tests creates a blocking ConfigurationListener and recreates the blocking circumstances that way.
The code was tested by verifying that the test would stall (deadlock) when the value stored in the incompleteFutures and completeFutures vectors was of type std::future and does not stall in it’s present condition with the value stored in those two vectors of type std::shared_vector.

Codecov Report

Merging #612 (d9c9bc6) into development (9db1747) will decrease coverage by 0.55%.
The diff coverage is 100.00%.

@@               Coverage Diff               @@
##           development     #612      +/-   ##
===============================================
- Coverage        90.98%   90.42%   -0.56%
===============================================
  Files              185      247      +62
  Lines             7273    10864    +3591
===============================================
+ Hits              6617     9824    +3207
- Misses             656     1040     +384

Impacted Files
Coverage Δ

.../ConfigurationAdmin/src/ConfigurationAdminImpl.hpp
100.00% <ø> (ø)

framework/src/util/Any.cpp
100.00% <ø> (ø)

.../ConfigurationAdmin/src/ConfigurationAdminImpl.cpp
93.04% <100.00%> (+1.91%)
:arrow_up:

compendium/tools/SCRCodeGen/ManifestParserImpl.hpp
50.00% <0.00%> (-50.00%)
:arrow_down:

...clarativeServices/src/metadata/ServiceMetadata.hpp
75.00% <0.00%> (-25.00%)
:arrow_down:

.../servicecomponent/detail/ComponentInstanceImpl.hpp
73.52% <0.00%> (-14.48%)
:arrow_down:

...ativeServices/src/manager/ComponentManagerImpl.hpp
85.71% <0.00%> (-14.29%)
:arrow_down:

...ervices/src/manager/ComponentConfigurationImpl.hpp
86.36% <0.00%> (-13.64%)
:arrow_down:

compendium/ConfigurationAdmin/src/CMActivator.cpp
78.65% <0.00%> (-11.52%)
:arrow_down:

...arativeServices/src/metadata/ComponentMetadata.hpp
88.88% <0.00%> (-11.12%)
:arrow_down:

... and 203 more


V2 Roadmap

All,
Post discussion between myself @mirceaalexandru, @AdrianRossouw and using feedback from others, I have noted down the plan for V2. Our rough estimate for this work stands at about 16 to 23 days, with it most likely falling around 20 days worth of work; a day being a developer day.
Isomorphic client - 4 to 5 Days

Concorda needs an Isomorphic client that runs in browser and on server
No dependency on Seneca, it is not required
Client communicates with Concorda via REST
Seneca plugin to be created that wraps this client for ease of integration

Concentration on simpler installation - 2 to 3 Days

Installation options needs to be paired down
Concorda Dashboard should not be required to use Concorda
Dashboard is UX over the Client library
No requirement of Seneca to use Concorda
Installation should be simple backend server with optional Dashboard as a second process

First class API - 7 to 10 Days

Concorda's API is actually seneca-auth + some additions being exposed
API needs to be it's own first class citizen (can proxy seneca-auth for first cut)
API needs to be a sane RESTful API
API needs to be clearly documented in it's own right, no deferral to seneca-auth docs

UX needs to match Client functionality - 3 to 5 Days

There is functionality available on a programmatic level that is missing in UI
Splash page needs detail added, it's currently blank
UI needs to handle large numbers of users (this needs to be tested)

V1 focused on making Concorda work well with Seneca based systems and it does this well. Feedback is now focused around greater ease of use over HTTP and with this comes the need for a well defined RESTful API and a first class client.
@AdrianRossouw will be handling Lead duties for this version. Adrian feel free to amend as you gain more context.

Just some additional thoughts on covering some generic security requirements:
logs

any action taken by any user should be logged (login, logout, create user, renew session, change password, etc.)
preference for logging to stdout/stderr as it is the unix standard and leaves it to the system to handle logs but direct to files is ok
do not log sensitive information (email/passwords are sensitive information), username ok.
log client's IP address
log timestamp (millisec accuracy)

settings

Ability to restrict passwords to follow some rules. For example:

at least N chars and any 2 of:

mix of numbers and letters
mix of upper and lower case letters
special characters

Password storage is through a salted hash with the iteration count configurable and updatable during the lifespan of the application
Sensitive application configuration done through ENV variables and not stored on the file system (eg. DB credentials, cookie secret, etc.)
cookies must be HTTPS-only in production
session timeout should be configurable (at least in minutes)

session

session IDs must be unpredictable (/dev/random based). A hashing algorithm - however long and complex - never adds entropy
logout must destroy the session token immediately
only 1 session per user at a given time (login destroys an existing session)
session cookies have no un-encrypted sensitive information

data validation

prevent script injections
validate length of user inputs

Error handling

server errors don't leak stack traces, SQL error or any sensitive information to the client.

Misc

CSRF protection
Automatic disabling of accounts after N unsuccessful logins. Administrator action needed.
Administrators can never know a user's password. On-boarding can be done through a reset link sent by email
Reset password can be done by pre-registered users themselves, with configurable expiry of the reset token
Force users to change password every N days
Disable users after 180 days of inactivity
Return generic error when incorrect credentials are entered

Let me know if you have any comment

@nherment Could you dump your sample api here too for posterity?

There it is. Might modify it a bit once it matures:
Client
Constructor
var ConcordaClient = require('concorda').Client
var client = new ConcordaClient({
  host: '', // optional for browser
  endpoint: '/auth',
  port: 80, // optional for browser
})

Authentication
client.login()
client.login(username, password)
// HTTP response headers must contain Set-Cookie.
{
  email<EMAIL_ADDRESS>  metadata: {
    ...
  },
  sessionToken: '',
  sessionExpiry: ''
}

client.getCurrentUser()
client.getCurrentUser()
{
  email<EMAIL_ADDRESS>  metadata: {
    ...
  }
}

client.renewSession()
client.renewSession()
// HTTP response headers must contain Set-Cookie.
{
  sessionToken: ''
  sessionExpiry: ''
}

client.logout()
client.logout()
{}

client.resetPassword()
client.resetPassword(email)
{
  resetTokenExpiry: ''
}

client.setPasswordFromResetToken()
Setting a new password automatically logs-in the user and returns a valid
session cookie & token.
client.setPasswordFromResetToken(resetToken, password)
// HTTP response headers must contain Set-Cookie.
{
  sessionToken: ''
  sessionExpiry: ''
}

for node-app use
client.verifySessionToken()
client.verifySessionToken(email, sessionToken, extendSessionExpiryBool)
{
  email<EMAIL_ADDRESS>  metadata: {
    ...
  },
  sessionExpiry: ''
}

Administration API
client.createUser()
client.createUser(email, roles, metadata)
{
}

client.updateUser()
client.updateUser(email, roles, metadata)
{
}

client.disableUser(email) // cannot login/reset password
client.deleteUser(email)


Bug fix/add aql collection count cache

Cache the number of documents in a collection for execution plans, in order to reduce the number of HTTP requests in the cluster.
There is also an accompanying enterprise PR: https://github.com/arangodb/enterprise/pull/132

http://jenkins01.arangodb.biz:8080/view/PR/job/arangodb-matrix-pr/755/

http://jenkins01.arangodb.biz:8080/view/PR/job/arangodb-matrix-pr/757/

I just realized that there is a race condition since timestamp is stored before count. Assuming that the cache can be updated multiple times (i.e., count != NotPopulated): The thread in store could have updated timestamp, but not yet count. Another thread could see the new timestamp value, conclude that it is up to date and return the old, outdated count value.
I would therefore suggest to change the implementation as follows:
int64_t CountCache::get() const {
  return count.load(std::memory_order_relaxed);
}

int64_t CountCache::get(double ttl) const {
  // (1) - this acquire-load synchronizes with the release-store(2)
  double ts = timestamp.load(std::memory_order_acquire);
  if (ts + Ttl > TRI_microtime()) {
    // not yet expired
    return get();
  }
  return CountCache::NotPopulated;
}

void CountCache::store(int64_t value) {
  TRI_ASSERT(value >= 0);
  count.store(value, std::memory_order_relaxed);
  // (2) - this release-store synchronizes with the acquire-load (1)
  timestamp.store(TRI_microtime(), std::memory_order_release);
}

http://jenkins01.arangodb.biz:8080/view/PR/job/arangodb-matrix-pr/760/

It is intentionally in LogicalCollection, as the cache is used for local collections too, not just on the coordinator.