Fix and Improve Imports and Exports

This PR makes some fixes and improvements to Frodo imports and exports. This PR is part of a bigger PR that adds additional imports/exports into Frodo, but due to the amount of bug fixes and other miscellaneous changes I made I decided to separate them into separate PRs. Once this one is merged, I will create the other PR that contains the new additional imports and exports.
Note that a corresponding PR in Frodo-CLI under the same name as this PR relies on the changes in this PR.
The list of changes include:

Updated test timeouts from 90000 to 120000 milliseconds (to accommodate the bigger exports/imports in the future)
Updated resource versions of different exports/imports to the latest ones
Updated comments and type information to be more accurate and fix typos
Fixed TrustedJWTIssuer exports/imports (since these will be included as part of the full config export/import in the future PR)
Fixed service imports to work for federation services
Updated exports for agents and esv secrets/variables to have a singular instead of plural type (i.e. agents => agent, secrets => secret, variables => variable). The reason for this is to make them more consistent with the rest of the exports which are also singular, and also because secrets plural will be used for exporting AM secret config in the future PR with additional exports/imports.
For full exports, duplicate config is now deleted from the IDM exports since themes, email templates, and mappings are all handled separately.
Fixed full imports to only import if the full import config contains the items being imported rather than erroring out.
Fixed full imports to return the config items that were imported
Fixed email template imports/exports. For exports, there was a bug with the api where not all email templates were being exported using “emailTemplate” as the type, but it was fixed by using “emailTemplat” as the type instead (not sure why this works, but it’s the best solution I could find to fix the problem).
Moved functionality for handling env substitution and entity filters from CLI to lib for IDM exports/imports.
Fixed a few bugs with importing/exporting journeys. The main issue that was found was that if you were importing a journey containing nodes that are not supported by the current deployment (e.g. IDM journey nodes from cloud being imported into a classic deployment of AM), the journey would still be imported. This would cause an error to be thrown on export of the journey preventing it as well as other journeys from being exported on full export. The fix here was to just prevent the import of the journey if this happens by erroring out to prevent those errors from happening on export.
Fixed a few bugs with script imports to allow each of the 3 types of imports to work (i.e. if scripts are a single unencoded string, if scripts are a single encoded string, and if scripts are a decoded array).
Fixed an issue with file paths on the Windows version of Frodo that were causing errors on imports due to the differences between Windows and Linux file paths.

@phalestrivir @hfranklin the PR looks great! Nice work! I have only started to review in detail but will complete asap.
One thing that jumped the eye and worries me is: A lot of API version updates across the board in many API layer modules. I am not sure which AM versions we will drop support for by doing this? I have stuck to the versions the UI was using at the time I was initially implementing most modules and I have not updated the version in any modules as far as I can remember.
So this also raises the question if we have to take a stance and either narrow our support window or dynamically pick a version based on the platform versions we detect. I just don't know how much complexity we can handle if we were to go down that path. Probably better to narrow our window and say: 7.x is supported, not below. But with all the changes in this PR I don't even know if that was true?
I will reach out internally to find a good way to establish which API versions for which API are supported in which AM version, so we can decide which one we want to base Frodo on. What do y'all think?

@phalestrivir @hfranklin the PR looks great! Nice work! I have only started to review in detail but will complete asap.
One thing that jumped the eye and worries me is: A lot of API version updates across the board in many API layer modules. I am not sure which AM versions we will drop support for by doing this? I have stuck to the versions the UI was using at the time I was initially implementing most modules and I have not updated the version in any modules as far as I can remember.
So this also raises the question if we have to take a stance and either narrow our support window or dynamically pick a version based on the platform versions we detect. I just don't know how much complexity we can handle if we were to go down that path. Probably better to narrow our window and say: 7.x is supported, not below. But with all the changes in this PR I don't even know if that was true?
I will reach out internally to find a good way to establish which API versions for which API are supported in which AM version, so we can decide which one we want to base Frodo on. What do y'all think?

@vscheuber @hfranklin That's a good point, I wasn't thinking of supporting previous versions. I think that would make sense to support 7.x and not below. I got the API versions by web scraping the Amster documentation for the latest 7.5.0 version, so if we want to support 7.5 and above this would work, otherwise I could scrape the 7.0.0 documentation and update the PR with those API versions so that it supports all 7.x versions if we want to go that route

Thinking about this some more, what if we made the API version values an array with the latest version being the top value. Our API layer will always use the top value but If we receive an error, we will fall back to the next etc. Not a fully formulated plan, yet, but just throwing around some ideas how we can maintain support for older versions. And maybe we do something like a global API version index where we have the same number of versions in each array across all modules, even if the values are the same. Then as the first API call fails and we find a version header that works for that API, we update the global index in state with that array index and from that moment on, every module falls back to that level and we can avoid every module failing independently and wasting a lot of time with the falling back.
I do believe your change was great, @phalestrivir and we need to keep up with the new versions, but I do not want to lose backwards compatibility because of it.
What if we did something like this in every API layer module:
const apiVersion = [
  'protocol=3.0,resource=1.0',
  'protocol=2.1,resource=1.0',
  'protocol=2.1,resource=1.0',
  'protocol=2.0,resource=1.0'
];

And then when frodo launches, we start with global index 0 and on error we go to index 1, 2, 3, etc.
const getNodeApiConfig = () => {
  return {
    apiVersion[state.getApiVersionIndex()],
  };
};

Something along those lines. Then in a new global test we would make sure that the length of every apiVersion array anywhere in the library is the same.

Of course, thinking about this some more, we'd have to have the array in ascending order so that the meaning of an index does not change. So we would have oldest top, then newer versions after that:
const apiVersion = [
  'protocol=2.0,resource=1.0',
  'protocol=2.1,resource=1.0',
  'protocol=2.1,resource=1.0',
  'protocol=3.0,resource=1.0'
];

it appears that unsupported protocol versions return a 400:

Alright, in our call this morning we decided: To update this PR to remove all the API header version updates and get the PR merged asap. Then address the versions immediately after.
We think that for cloud we should keep using the latest versions where necessary and for self-hosted we should fallback to older versions. We are thinking of having only one fallback version (oldest functional version) and the latest version. Cloud deployments always use latest and should always work. Forgeops and classic deployments attempt to use latest and on failure will use fallback version.

I reverted the changes to the resource/protocol versions. Tests are still passing in both the lib and the CLI on my machine, so it should be ready to go to be merged in.


[4.0] Added fallback to select_from_array column

Fixes #2451
In case the value isn't found in the array, it just shows the value.
Ex: if xx is the value in the DB, but inside the options array there's no such thing as 'xx' => 'Something', it'll just show the xx value.

A new inspection was created.

A new inspection was created.

The inspection completed: No new issues

The inspection completed: No new issues


Add microk8s --version flag

Goal
The purpose of this ticket is to add the --version flag to the main microk8s entrypoint.
Motivation
As of now, we are using snap info microk8s and microk8s.kubectl version to know which versions of the snap and upstream k8s are installed, correspondingly. However, we are missing a convenient way to check, not only that, but also the versions for all microk8s components (cluster agent, kind, dqlite, etc)
We want to show the version for the following components:

[ ] MicroK8s snap
[ ] Upstream k8s
[ ] cluster agent
[ ] dqlite
[ ] traefik
[ ] etcd
[ ] flanneld
[ ] cni
[ ] more?

Example output
$ microk8s --version
# TBD

@ktsakalozos @neoaggelos since one could build a custom microk8s version tuning env variables like KUBE_VERSION and so on, I wonder if we should write all env variable values at built time onto a file, and then microk8s --version would just display it.
WDYT?

I am not convinced we should print the versions of all internal components. Does the end user care what is the version of etcd, flannel, traefik that typically are not used? The cluster-agent is something internal to us no one else outside the microk8s devs team know what this component is.
Lets print only what the user cares about: k8s version, CNI version and the snap revision. With the snap revision we can find what is the exact version of each component.

write all env variable values at built time onto a file

I like this approach because that would mean we would not need to query external services.

write all env variable values at built time onto a file

I like this approach because that would mean we would not need to query external services.

What would be an appropriate path to store the versions file? ${SNAP_DATA}/var/versions.json for instance?

Also, could you guide me on how can I obtain the snap version and revision at built time?


add Andrew Young

Great job! Now that this pull request has been merged in it will been sent to our build server.
You can watch it's progress as https://travis-ci.org/OperationCode/operationcode_bot.


React 16 warnings

How would you expect it to work?
No dev tools warnings
How does it work currently?
Warning: Invalid DOM property `readonly`. Did you mean `readOnly`?
    in input (created by t)
    in span (created by t)
    in div (created by t)
    in t (created by Typeahead)
    in span (created by Typeahead)
    in Typeahead (created by ManagedInput)
    in ManagedInput
printWarning

checkPropTypes.js:19 Warning: Failed prop type: You provided a `value` prop to a form field without an `onChange` handler. This will render a read-only field. If the field should be mutable use `defaultValue`. Otherwise, set either `onChange` or `readOnly`.
    in input (created by t)
    in span (created by t)
    in div (created by t)
    in t (created by Typeahead)
    in span (created by Typeahead)
    in Typeahead (created by ManagedInput)
    in ManagedInput
printWarning

warning.js:33 Warning: React uses onFocus and onBlur instead of onFocusIn and onFocusOut. All React events are normalized to bubble, so onFocusIn and onFocusOut are not needed/supported by React.

Tell us about your environment

Version used: latest, React 16

Hi @DavidBeale
Thanks for flagging this. The React warnings have previously been documented in https://github.com/alphagov/accessible-autocomplete/issues/266. The accessible autocomplete currently supports React v15.5.4 fully as documented in README. It would however be good to add full compatibility with later versions of React too.
The other two warnings in your screen grab don't mention React, could these have been specific to your setup?
Thanks,
Hanna

I'm also seeing this error and created a test case in Codesandbox.io
https://codesandbox.io/s/accessible-autocomplete-bc0tt
The issue looks to be with the showHint input, React expects readOnly rather than readonly
https://github.com/alphagov/accessible-autocomplete/blob/master/src/autocomplete.js#L465


Maybe make a TeamViewer so I can watch debug live? Contact me on discord.

Hi, Have you found a solution for this problem?

This is not an error, if it is not found it is because it does not exist OR it has been unloaded by the script. In addition, this library is only present on original L1 devices.


UI - Call buttons are clickable and visible on debug

Issue: The call and video buttons should not be clickable right now and should be greyed out. If you run in --release mode it is appears correctly. If you run in debug the buttons are visible and clickable
OS
Mac
Windows
Screenshot:
--Release

Debug

these were left enabled in debug mode on purpose. but if the desired behavior is different then go ahead and change it


fix: handle duplicate connections to LocalPeers

Fixes #374

Fixes generally make sense! Added some non-blocking suggestions

Thanks for the suggestions, once tests pass I'll merge.


Think i have found a bug on this one the imput and placeholder seem to be correct but the third question does make me pass

Challenge Add Placeholder Text to a Text Field has an issue.
User Agent is: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.143 Safari/537.36.
Please describe how to reproduce this issue, and include links to screenshots if possible.
My code:

<link href="https://fonts.googleapis.com/css?family=Lobster" rel="stylesheet" type="text/css">

CatPhotoApp

Click here for cat photos.

Things cats love:

cat nip

laser pointers

lasagna

Top 3 things cats hate:

flea treatment

thunder

other cats

<input type="text"
       placeholder="cat photo URL".>

The 3. one tells you: The finished input element should have valid syntax.  That rule has not been met so the assignment won't let you pass. For that info, here you can see that assignment works fine...

@Jaimiec420 Thanks for reporting this. But your code is incorrect. This challenge dont have a bug.
GitHub Issues are for reporting bugs on the website only
Please use the Help chat room for getting challenge related help.
Happy Coding..


Issue templates for bugs should prompt for additional information.

Now that we have launched we've gotten some great and much needed feedback. When people submit issues for bugs, it would be very helpful to have some additional context like their k8s version, helm chart version, values they override, etc.
It would help us if this context was provided in bug support tickets we get. We can request this information easily via issue templates.

Hey @alex-bezek, thanks for making this issue! Agreed that having this info upfront would help us narrow our triaging more effectively.
Before I assign this to a team member to create, based on your experience triaging issues for the ingress controller, can I get a list of what you think you think would be helpful? So far, I see

k8s version
helm chart version
overridden values

Perhaps we can add:

ingress controller version

Anything else?

I think that covers the major things. Perhaps k8s distribution (minikube, eks, etc) would be useful as well. I think we can start here and always add things if we find more info we wish we had on logged issues

@ofthedelmer


Add 'How to build a catalog connector' content

This PR:

Adds documentation describing how to build a custom catalog connector
Adds quickstart template files
Adds basic troubleshooting information

The entrypoint (for users) is build-a-custom-connector.md
Developer's Certificate of Origin 1.1
   By making a contribution to this project, I certify that:

   (a) The contribution was created in whole or in part by me and I
       have the right to submit it under the Apache License 2.0; or

   (b) The contribution is based upon previous work that, to the best
       of my knowledge, is covered under an appropriate open source
       license and I have the right under that license to submit that
       work with modifications, whether created in whole or in part
       by me, under the same open source license (unless I am
       permitted to submit under a different license), as indicated
       in the file; or

   (c) The contribution was provided directly to me by some other
       person who certified (a), (b) or (c) and I have not modified
       it.

   (d) I understand and agree that this project and the contribution
       are public and that a record of the contribution (including all
       personal information I submit with it, including my sign-off) is
       maintained indefinitely and may be redistributed consistent with
       this project or the open source license(s) involved.

@kevin-bates fyi


Add empty string validation exception

This is to address this issue. It returns the correct ValidationException, with the correct response message, for attributes set to empty strings when calling the put_item method on a table. I'm very new to the moto codebase, so any feedback would be welcome.

Coverage decreased (-0.1%) to 93.44% when pulling 722859748efdf8f9b8635f17c6e94dfa2ad50797 on dbfr3qs:add-empty-string-validation-exception into 273d11a6ec7317b3cd1f672fb7e77bf52bb95e6d on spulec:master.

Coverage decreased (-0.1%) to 93.44% when pulling 2a66ae2bfdd9f715e87ef79ca649cff1333fee1c on dbfr3qs:add-empty-string-validation-exception into 273d11a6ec7317b3cd1f672fb7e77bf52bb95e6d on spulec:master.

Coverage increased (+0.001%) to 93.558% when pulling 274faf6f1d028a413ecd751c7e09b661210b2730 on dbfr3qs:add-empty-string-validation-exception into 273d11a6ec7317b3cd1f672fb7e77bf52bb95e6d on spulec:master.

Coverage increased (+0.001%) to 93.558% when pulling 274faf6f1d028a413ecd751c7e09b661210b2730 on dbfr3qs:add-empty-string-validation-exception into 273d11a6ec7317b3cd1f672fb7e77bf52bb95e6d on spulec:master.

Coverage increased (+0.001%) to 93.558% when pulling 6ee204e458d4c696ac3939569e07c2116ce83511 on dbfr3qs:add-empty-string-validation-exception into 273d11a6ec7317b3cd1f672fb7e77bf52bb95e6d on spulec:master.

@dbfr3qs This is really great! I left a comment about a test helper that makes testing exceptions a little clearer. It's your call whether to use the suggested pattern or to keep the code as-is. Once you tell me this PR is all set I'll merge this and release a new version.
Thanks for your contribution!

@JackDanger I've made the suggested change and this PR is ready to go.

@dbfr3qs Woohoo! Nice work. Thanks for this and welcome to Moto!

@dbfr3qs Your work has been released with Moto version 1.1.5

Coverage increased (+0.001%) to 93.558% when pulling 1472d63c877471996e3798fcdc6144665e57121c on dbfr3qs:add-empty-string-validation-exception into 273d11a6ec7317b3cd1f672fb7e77bf52bb95e6d on spulec:master.

Coverage increased (+0.001%) to 93.558% when pulling 1472d63c877471996e3798fcdc6144665e57121c on dbfr3qs:add-empty-string-validation-exception into 273d11a6ec7317b3cd1f672fb7e77bf52bb95e6d on spulec:master.

Coverage increased (+0.001%) to 93.558% when pulling 1472d63c877471996e3798fcdc6144665e57121c on dbfr3qs:add-empty-string-validation-exception into 273d11a6ec7317b3cd1f672fb7e77bf52bb95e6d on spulec:master.


Clarify socks integration test by adding a single-echo helper function.

Addresses https://github.com/uProxy/uproxy/issues/782

:+1:


Improve Code Coverage

Code Coverage is now at 76%

after merging https://github.com/ApptiveGrid/Soil/pull/38 we are at 92%


Recursive update exception

[] > trivial
  memory > f1
  cage > f2
  memory > f0
  seq > @
    f0.write 0
    f1.write 1
    f2.write ((f0).add (f1))
    f1.write (f2)
    TRUE

Also this way
[] > trivial
  cage > f1
  cage > f2
  cage > f0
  seq > @
    f0.write 0
    f1.write 1
    f2.write ((f0).add (f1))
    f1.write (f2)
    f1

@dours well, of course, this leads to endless recursion. Why it surprises you?

@yegor256 in line f1.write (f2) dataization of f2 is called before assigment to f1, so f1 should store data 1. Why then the dataization leads to recursion?

@yegor256 It leads to recursion, because dataization of f2 in line f1.write (f2) creates a copy of object ((f0).add (f1)) with new rho, that is add.rho becomes f2, not f0. So, it calculates f2+f1 instead of f0+f1, which is indeed an endless recursion. This behavior  still does surprise me.
I hacked EOcage.java: return object.copy(object.attr("ρ").get()); on line 56 instead of return object.copy(rho);
My generated Fibonacci test passes with the hack. Is there a better way?

@dours nice catch! Please, submit a PR with the change at the line 56, I'll merge it. BTW, I suggest making the same change in the EOmemory class.

@yegor256/z everybody who has role DEV is banned at #445; I won't be able to assign anyone automatically; consider assigning someone manually (as in §19), or invite more people (as in §51), or remove the job from the scope (as in §14)

@yegor256 alright, I'll do it. But still, it looks like a hack to me: it looks that there are 2 objects here: an abstract object add (which has rho equal to f0) and an object application add f1, which may have a different rho (f2 for example). If this is only one object, then I don't understand why, for example, in this code
[] > o1
  f0.add f1 > f2

(f0.add f1).rho does not become equal to o1, while this is what definiton 8 of section 3.5 of the paper https://www.eolang.org/eolang-paper.pdf tells us (me at least).

Job gh:cqfn/eo#445 is not assigned, can't get performer


Dead link to 'online bayes factor calculator'

You can check this in an online Bayes Factor calculator (Rouder et al., 2009). At successes, fill

The link is dead for me

It is indeed dead, but I doubt it will stay dead - this calculator is widely used and has been there for years. Let's see if they fix it

Thanks.
I 2)

On May 29, 2022, at 2:51 AM, Daniel Lakens @.***> wrote:

It is indeed dead, but I doubt it will stay dead - this calculator is widely used and has been there for years. Let's see if they fix it
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you authored the thread.

The calculator is still not fixed. I will just remove this check from the textbook until it is fixed.


Update README.md

Remove the bulk in favour of links to our core docs.

Thank you for unifying this info!


fix(ses): Bad RegExp taming revealed by #237

Fixes #237
The constructor and prototype structure of the regexp taming was wrong in many ways, including leakage of the unsafeRegExp constructor, which is a security hole. I first wrote the new test cases in this PR to demonstrate six cases that fail to work with the old structure. All those cases pass now.
On the way, I discovered https://github.com/Agoric/SES-shim/issues/239 which I'll fix in a separate PR

I am getting 3 test262 failures. Not a merge candidate until fixed.

I am now excluding those three new failures because they are similar to two existing failures that need to be diagnosed together. See https://github.com/Agoric/SES-shim/issues/242

This PR is again a candidate.

please rebase and/or squash this before landing, there's some internal merging in this branch that doesn't need to be in our final history

Closing this in favor of new PR with the same code


Path to SCAP extensions folder

In my v1806 lab I found the SCAP extensions folder under "...\Microsoft Configuration Manager\AdminConsole\bin\SCAP Extensions". If this is the correct path, should we add 'bin' to the path in the 'Install SCAP extensions' section?

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

ID: 9d0098dd-8fe4-9651-f691-d81fd5674329
Version Independent ID: 4ab396a7-c337-e53e-978a-a46761ef0aa6
Content: Install and configure SCAP extensions - Configuration Manager
Content Source: sccm/compliance/plan-design/scap/install-configure-scap.md
Product: configuration-manager
GitHub Login: @aczechowski
Microsoft Alias: aaroncz

Checking...

Closing this issue as I'm removing this content. Version 1806 is out of support, and SCAP isn't available in later versions.


Use tail/mask undisturbed instead of agnostic

Currently the tests use tail and mask agnostic.
We then check the full vector registers for their values.
I think if we want to be implementation independent (especially for out-of-order cores),
we use undisturbed for checking the full vector registers.
Alternatively we can only check the parts of the vector registers were the agnostic policy does not have an effect.

If the agnostic parts are not "undisturbed", then it is a complicated feature to implement, especially for the mask agnostic. I think it would be more proper to implement a co-simulator and then use TEST_MODE=cosim to generate tests instead of torturing tests writers :smile_cat:

Sure I understand that using agnostic perfectly would be a lot of manual work.
What do you think about using undisturbed mode by default then?

Ah yes, make the undisturbed default sounds reasonable, can you submit a PR addressing this? And even make it an option in the Makefile maybe.

Sure sounds good.

Nah, for now, I don't think it's worth an option, made a simple replacement above.

Sorry about leaving it open for that long.
I knew the changes were simple but wasn't sure about verifying their correctness.
Anyways thanks for closing the issue.


Nice changes and additions. Good work

Made revisions that I would have made. Adds fields to settings.py that allow the user to not have to input username and password into term. Also removes venv variables and code. Adds the addition of pulling links from files. Some nice alterations.

Need to swap over to command line to complete the process of merging.


Upgrade to ES6 spread operator to merge options

For improved readability, modernize all occurrences of:
const settings = Object.assign(defaults, options);

to:
const settings = { ...defaults, ...options };

Hi @dpilafian, I would like to work on this issue.


Add possibility to control MDC values for adding to log message

The issue:
All values from MDC are written as labels to each log message, even if there is no need in some of them.
Usually MDC is populated by a built-in components (like MDCInsertingServletFilter) with all possible values, but only several of them are used in log message.
google-cloud-java/google-cloud-clients/google-cloud-contrib/google-cloud-logging-logback/src/main/java/com/google/cloud/logging/logback/LoggingAppender.java

    for (Map.Entry<String, String> entry : e.getMDCPropertyMap().entrySet()) {
      if (null != entry.getKey() && null != entry.getValue()) {
        builder.addLabel(entry.getKey(), entry.getValue());
      }
    }

Possible solution:

Add possibility to control which MDC values should be added to log message.
Add Enhancer to add required values of MDC.

Hello! As I can see the issue gets stucked for a month, may I help somehow?

@gendolf3d You helped by reminding me to bump this, thank you. I will be cherry-picking the code over to https://github.com/googleapis/java-logging

@codyoss Hello! I'm just curious when it's being planned to merge fix to goolgeapis/java-logging project?
Thank you in advance!

I will try to get it done today, thanks.

This commit does actually already exist. It is just in a different repo: https://github.com/googleapis/java-logging-logback/commit/46c421c069f4997f7c5ed33234a0441cccc174e8


FOUC using simple-universal-style-loader

Hey @janoist1!
Thanks again for putting together this awesome setup! It has been very good to me.
I was wondering if you were getting the same "FOUC" (Flash of Unstyled Content) on the page I do, even in production.
What I mean is:

Hit URL
Shows one style
quickly shows a different style

I've been doing some research and it looks like ExtractTextPlugin can help fix this, but for some reason this is not working. Do you have any idea?
Thanks!

Nevermind, figured it out :) Thank you


Title bar becomes transparent when Zed is inactive

Since last update (0.145.1) this is happening. Zed devs seems to think it's a theming issue, which would make sense.
For reference: https://github.com/zed-industries/zed/issues/15163 and https://github.com/zed-industries/zed/issues/15112

hmm, yeah this seems like it's Catppuccin theme on this. I recently tried Zed Linux and vaguely remember running into this issue, but thought it was a general X11/Wayland bug

fixed by #26


Requires Tensorly 0.4.2

Thanks for making this great library!
This is just a note that the latest version of tensorly, 0.4.3, does not work with this library out of the box. You'll need tensorly==0.4.2.

Thanks @rw, I've pinned tensorly==0.4.2.


split large data inserts

Is your feature request related to a problem? Please describe.
When a large set of data is received, if doing a single insert, crate bombs:
ERROR:app:Exception on /v2/notify [POST]
Traceback (most recent call last):
  File "/src/ngsi-timeseries-api/src/translators/sql_translator.py", line 295, in _insert_entity_rows
    self.cursor.executemany(stmt, rows)
  File "/usr/local/lib/python3.8/site-packages/crate/client/cursor.py", line 67, in executemany
    self.execute(sql, bulk_parameters=seq_of_parameters)
  File "/usr/local/lib/python3.8/site-packages/crate/client/cursor.py", line 53, in execute
    self._result = self.connection.client.sql(sql, parameters,
  File "/usr/local/lib/python3.8/site-packages/crate/client/http.py", line 331, in sql
    content = self._json_request('POST', self.path, data=data)
  File "/usr/local/lib/python3.8/site-packages/crate/client/http.py", line 458, in _json_request
    _raise_for_status(response)
  File "/usr/local/lib/python3.8/site-packages/crate/client/http.py", line 187, in _raise_for_status
    raise ProgrammingError(error.get('message', ''),
crate.client.exceptions.ProgrammingError: SQLActionException[CircuitBreakingException: [parent] Data too large, data for [<transport_request>] would be [1570329861/1.4gb], which is larger than the limit of [1530082099/1.4gb], usages [request=222986240/212.6mb, fielddata=0/0b, in_flight_requests=196118812/187mb, query=10660857/10.1mb, jobs_log=71309008/68mb, operations_log=67110264/64mb, accounting=10343710/9.8mb]]

Describe the solution you'd like
Split insert in smaller batches for multi notifications.
Describe alternatives you've considered
Fixing on the client side currently.
Additional context
N/A

This goes hand in hand with #193

@c0c0n3 fixing the inject to db with a sub batches should not be much pain, can you have a look? the issue occurred in prod on ekz

Hi @c0c0n3 and @chicco785,
first of all, I want to salute you for #450. Then, I wanted to take the chance to inform you that there is a new asyncpg release, which just happened a few hours ago, see [1]. This includes the long awaited patch for improved executemany() performance wrt. batch operations, see https://github.com/MagicStack/asyncpg/pull/295.
We are currently looking into how that can improve performance when talking to CrateDB using the PostgreSQL wire protocol. So, while I recognize QuantumLeap is still using the HTTP interface, that might well be an option to look into in one of the next iterations.
Whether Flask/Werkzeug will support asyncio natively is obviously the other side of the story in order to leverage most out of asyncpg. Things like [2] and [3] are obviously just workarounds and should not yet be considered for production use. Also, experiments like [4] or [5] are also, well, experimental. However, people at https://github.com/pallets/flask/issues/3339 and https://github.com/pallets/werkzeug/issues/1322 are discussing the real thing on this matter.
With kind regards,
Andreas.
[1] https://github.com/MagicStack/asyncpg/releases/tag/v0.22.0
[2] https://jdhao.github.io/2020/06/07/asyncio_inside_flask/
[3] https://stackoverflow.com/questions/47841985/make-a-python-asyncio-call-from-a-flask-route
[4] https://github.com/miguelgrinberg/aioflask
[5] https://flask-aiohttp.readthedocs.io/
cc @mfussenegger

Hi @amotl, thanks for your support and appreciation.

QuantumLeap is still using the HTTP interface, that might well be an option to look into within a future iteration

Yes, definitely. Just give us a shout when you guys are done w/ those postgres wire protocol improvements, we'll definitely consider switching to asyncpg then so we can kill two birds w/ one stone. Btw, thanks for letting us know about asyncpg, judging by the pr you referenced the guys there are doing an awesome job!

Whether Flask/Werkzeug will support asyncio natively is obviously the other side of the story

Yep, spot on. We looked into that a while back and got stuck since not all libs in our stack were designed to work w/ an event loop.

people at pallets/flask#3339 and pallets/werkzeug#1322 are discussing the real thing on this matter.

Exciting news, thanks for sharing!


Release 1.0.1

Object.add、Object.addUnique、Object.remove 等方法支持从传入非数组类型

所以应该是 1.1.0 吧

[Current coverage][cc-pull] is 65.10%

Merging [#312][cc-pull] into [master][cc-base-branch] will decrease coverage by 0.27%

@@             master       #312   diff @@
==========================================
  Files            27         28     +1
  Lines          2903       2920    +17
  Methods           0          0
  Messages          0          0
  Branches          0          0
==========================================
+ Hits           1898       1901     +3
- Misses         1005       1019    +14
  Partials          0          0

Powered by Codecov. Last updated by [8d5ba16...af0391a][cc-compare]
[cc-base-branch]: https://codecov.io/gh/leancloud/javascript-sdk/branch/master?src=pr
[cc-compare]: https://codecov.io/gh/leancloud/javascript-sdk/compare/8d5ba163e415b9f4a88e2fb7be5ad23a722a3b1c...af0391ad61e830e594290252a9f4d88866a6583c
[cc-pull]: https://codecov.io/gh/leancloud/javascript-sdk/pull/312?src=pr


Fix file parsing for indirect enum cases with inline documentation

What version of Swift are you using (swift --version)?
5.3.2
What did you do?
Generated enum code where the cases (some of which are indirect) had inline documentation.
What did you expect to see?
Expected indirect to be true in the appropriate EnumCases.
What did you see instead?
indirect was always false for cases with inline documentation.

This change fixes file parsing for indirect enum cases that have inline documentation, like the following:
enum Foo {
    /// Option A
    case optionA

    /// Option B
    case optionB

    /// Option C
    indirect case optionC(Foo)
}

The problem is that the trimmed modifier.description in the optionC case contains the comment on the previous line, i.e.
/// Option C\n    indirect

so the indirect property for the optionC EnumCase was coming back false.

One edge case that this fix doesn't address would be the following:
enum Bar {
    /// Better to be direct than indirect
    case assertive
}

I didn't test for this, but it's possible that the EnumCase for assertive could have an indirect value of true.

thanks for contributing @samadhiBot, I fixed this for all cases, forgot to update this part to use my modifiers approach before


Fix multiprocessing.freeze_support()

Kivy and multiprocessing.freeze_support() wasn't working correctly (on Windows at least) when launching multiple processes from an app packaged with PyInstaller or cx_Freeze.
The  --multiprocessing-fork sys.argv flag was not being restored in the correct order. It is, surprisingly, hard coded as the first argument in multiprocessing's implementation of this feature.
The patch fixes the check for the --multiprocessing-fork argument, as well as restoring it in the correct position in sys.argv. Tested and verified on windows 7 with an app frozen with pyinstaller.

Looks good, thanks.


Handle SHA512 in Release files

Fix: #656

Thanks, @flx42!
I'll try to add test on top of that (I hate features lacking at least some testing)

Closing in favor of #668


User Research: Discovery & Guidance_Library Enquiry

Purpose
To document the workflow of online and offline library enquiry process based on the workshop with the library staffs (part of #4395)
Deliverables

[x] Create a draft version of the enquiry journey map
[ ] Document common enquiry questions and responses given by the library staffs
[ ] Review with the team (Jenn, Ross, Alice, Phoebe, etc.)
[ ] Digitise the enquiry journey map and share with the Library team
[ ] Highlight key opportunity areas

Draft version of the enquiry journey map


undefined method Neoxygen\Neogen\Neogen::generateGraphFromCypher()

Using an example from README, I got a fatal error:
$ ./bin/neogen generate-cypher --source="pattern.cypher" --export="export.gen"
Locating fixtures file
PHP Fatal error:  Call to undefined method Neoxygen\Neogen\Neogen::generateGraphFromCypher() in /app/src/Console/GenerateCypherCommand.php on line 99

Fatal error: Call to undefined method Neoxygen\Neogen\Neogen::generateGraphFromCypher() in /app/src/Console/GenerateCypherCommand.php on line 99

It looks like generateGraphFromCypher function really do not exist:
$ find . -name "*.php" | xargs egrep 'generateGraphFromCypher'
./src/Console/GenerateCypherCommand.php:        $graph = $gen->generateGraphFromCypher($this->source);
./tests_old/Neoxygen/Neogen/Tests/Integration/IntegrationTest.php:        $schema = $gen->generateGraphFromCypher($pattern);
./tests_old/Neoxygen/Neogen/Tests/Integration/StandardCypherConverterTest.php:        $graph = $gen->generateGraphFromCypher($p);
./tests_old/Neoxygen/Neogen/Tests/Integration/CypherStatementsConverterTest.php:        $graph = $gen->generateGraphFromCypher($p);
./tests_old/Neoxygen/Neogen/Tests/Integration/GraphJsonTest.php:        $graph = $gen->generateGraphFromCypher($p);
./tests_old/Neoxygen/Neogen/Tests/Integration/GraphJsonTest.php:        $graph = $gen->generateGraphFromCypher($p);
./tests_old/Neoxygen/Neogen/Tests/Integration/GraphJsonTest.php:        $graph = $gen->generateGraphFromCypher($p);
./tests_old/Neoxygen/Neogen/Tests/ProcessorTest.php:        $schema = $gen->generateGraphFromCypher($p);

So I tried to use version tag 0.5.9 but it probably doesn't support a lot of data:
$ docker exec -ti neogen-php ./bin/neogen generate-cypher --source="pattern.cypher" --export="1.cql"
Locating fixtures file
PHP Fatal error:  Allowed memory size of 268435456 bytes exhausted (tried to allocate 72 bytes) in /app/src/Processor/VertEdgeProcessor.php on line 49

Yes, it depends on your processor and memory for such use case.

@ikwattro  Does this behavior is changed since 1.x.x version, so I it generate data in batches without eating all memory?

This will be implemented, currently we have a forked version that we use in enterprise world where it batches. This system uses 3 rabbitmq queues because if you flush the memory you will loose the references for creating the relationships.
The goal is to provide all the system with a docker stack, this may require some weeks to release the whole setup, currently I am focused of releasing the new graphgen online version.
Le 11 mai 2015 5:42 PM, Alexey Shevchenko<EMAIL_ADDRESS>a écrit :@ikwattro  Does this behavior is changed since 1.x.x version, so I it generate data in batches without eating all memory?
—Reply to this email directly or view it on GitHub.

Is there a plan to re-introduce generateGraphFromCypher()?


Support TypeScript's path mapping out of box

🚀 Feature request
Current Behavior
Currently if I define path aliases in tsconfig's paths, module resolution does not respect these aliases.
To make it work, I currently have tsconfig-paths-webpack-plugin set up in razzle.config.js.
Suggested Solution
Since 4.0 will suport TS out of box, it would be nice to have its path aliases work out of box too.

Thanks!

That should work already in 3.3

https://github.com/jaredpalmer/razzle/blob/master/packages/razzle/config/modules.js#L53

Oops, I overlooked that.
Can confirm, it works in 3.3!
Great work, these rarely work out of box in other solutions ☺

If this does not work it is a bug. It will not work with the typescript plugin i think, only with the builtin ts support.


Support Tizen

I am having a look at this now, but it is more of a background task at this point. If the community has had any success, then just leave a comment or share repos or any code/notes.

Just for an FYI, I saw this: https://github.com/Samsung/skia/commit/7e6c8a5a5d89559e826298a1f2c8180ef54fd03b
Not sure if it helps, but I am just collection information at this point.

And this repo: https://github.com/pld-linux/skia

Mostly hacky, but this is the first bits:
https://github.com/mono/SkiaSharp/tree/dev/tizen-support

This was added in #493 and #479


Set the device name and query connection status

Two very handy API sets -

setName() to name your device as it then appears in name tables.
is_connected(), get_transmission_status(), get_connection_speed(),
and mii_read_data() to help manage the connection state for more robust
behavior.

[I've applied and used this in my mbed.org repo, manually applied the changes here, so extra eyeballs would be helpful.]

The additional functionality is for only NXP. It's welcomed addition.
For example bool EthernetInterface::is_connected(void) is a generic method, which should work for any other platform. As it's here, it's valid only for NXP phy.
You can split this into 2 PR, as some new methods are generic.

@Wiredhome I'll close this PR, we can continue discussion or create an issue for expanding APi as you did for NXP.


Mark VersionConstraint as not for implementation

Fixes #22718

@bot-gradle test this

I've triggered the following builds for you. Click here to see all build failures.

PullRequestFeedback build

@bot-gradle test this

I've triggered the following builds for you. Click here to see all build failures.

PullRequestFeedback build

@bot-gradle test and merge


change to pyduckling-native for shorter loading time

uninstall duckling and install pyduckling-native
its based on the duckling haskell version (clojure version is depcrated) and it loads faster.

you might need to update the .gitpod.Dockerfile as well


Build ipa/ios/apk Unhandled exception: RangeError (offset): Invalid value: Not in inclusive range 0..4102: 9987

Steps to reproduce
I don't know exactly how to reproduce.
I have two apps. One builds without problems, and the other has an error.
Actual results
When build my app, I get error(see Logs section).
Build example:
flutter build apk --release --tree-shake-icons --obfuscate --split-debug-info=build/split-debug-info/android

In the emulator, the application runs without problems.

dependencies
environment:
  sdk: '>=2.19.1 <3.0.0'

dependencies:
  flutter:
    sdk: flutter
  flutter_localizations:
    sdk: flutter
  intl: ^0.18.0

  cupertino_icons: ^1.0.2
  go_router: ^6.0.3
  flutter_native_splash: ^2.2.14
  provider: ^6.0.5
  state_notifier: ^0.7.2+1
  flutter_state_notifier: ^0.7.3
  freezed: ^2.3.2
  freezed_annotation: ^2.2.0
  json_annotation: ^4.8.0
  flutter_svg: ^2.0.0+1
  gap: ^3.0.1
  vibration: ^1.7.6
  collection: ^1.17.0
  dropdown_search: ^5.0.6
  syncfusion_flutter_datepicker: ^22.2.9
  crypto: ^3.0.2
  path_provider: ^2.0.12
  path: ^1.8.2
  url_launcher: ^6.1.9
  flutter_pdfview: ^1.2.5
  fluttertoast: ^8.2.1
  visibility_detector: ^0.3.3
  custom_refresh_indicator: ^2.0.1
  flutter_vibrate: ^1.3.0
  http: ^1.0.0
  package_info_plus: ^4.0.0
  device_info_plus: ^9.0.3
  cached_network_image: ^3.2.3
  flutter_cache_manager: ^3.3.0
  permission_handler: ^10.4.3

  # Database
  isar: ^3.1.0+1
  isar_flutter_libs: ^3.1.0+1
  hive: ^2.2.3
  hive_flutter: ^1.1.0
  # Firebase
  firebase_messaging: ^14.7.3
  firebase_core: ^2.21.0
  firebase_crashlytics: ^3.4.4

dev_dependencies:
  flutter_test:
    sdk: flutter

  flutter_lints: ^2.0.0
  flutter_launcher_icons: ^0.11.0
  build_runner: ^2.3.3
  json_serializable: ^6.6.1
  isar_generator: ^3.1.0+1
  hive_generator: ^2.0.0

Logs

Logs

flutter build apk --release --tree-shake-icons --obfuscate --split-debug-info=build/split-debug-info/android

Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: /Users/smirnov/.pub-cache/hosted/pub.dev/firebase_messaging-14.7.4/android/src/main/java/io/flutter/plugins/firebase/messaging/FlutterFirebaseMessagingPlugin.java uses unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
Unhandled exception:
RangeError (offset): Invalid value: Not in inclusive range 0..4102: 9987
#0      RangeError.checkValueInInterval (dart:core/errors.dart:313:7)
#1      Source.getLocation (package:kernel/ast.dart:14692:16)
#2      Component.getLocation (package:kernel/ast.dart:14456:31)
#3      _getLocationInComponent (package:kernel/ast.dart:14907:22)
#4      Constructor._getLocationInEnclosingFile (package:kernel/ast.dart:2631:12)
#5      TreeNode._getLocationInEnclosingFile (package:kernel/ast.dart:203:20)
#6      TreeNode._getLocationInEnclosingFile (package:kernel/ast.dart:203:20)
#7      TreeNode._getLocationInEnclosingFile (package:kernel/ast.dart:203:20)
#8      TreeNode._getLocationInEnclosingFile (package:kernel/ast.dart:203:20)
#9      TreeNode.location (package:kernel/ast.dart:199:12)
#10     getFreshStructuralParametersFromTypeParameters.<anonymous closure> (package:kernel/type_algebra.dart:187:39)
#11     new _GrowableList.generate (dart:core-patch/growable_array.dart:136:28)
#12     getFreshStructuralParametersFromTypeParameters (package:kernel/type_algebra.dart:183:11)
#13     FunctionNode.computeThisFunctionType (package:kernel/ast.dart:3754:11)
#14     FunctionNode.computeFunctionType (package:kernel/ast.dart:3792:12)
#15     FunctionExpression.getStaticTypeInternal (package:kernel/ast.dart:8511:21)
#16     StaticTypeContextImpl.getExpressionType (package:kernel/type_environment.dart:753:19)
#17     Expression.getStaticType (package:kernel/ast.dart:3920:20)
#18     SummaryCollector._staticDartType (package:vm/transformations/type_flow/summary_collector.dart:1284:12)
#19     SummaryCollector._staticType (package:vm/transformations/type_flow/summary_collector.dart:1287:36)
#20     SummaryCollector.visitFunctionExpression (package:vm/transformations/type_flow/summary_collector.dart:1630:12)
#21     FunctionExpression.accept (package:kernel/ast.dart:8515:44)
#22     SummaryCollector._visit (package:vm/transformations/type_flow/summary_collector.dart:846:44)
#23     SummaryCollector.visitFieldInitializer (package:vm/transformations/type_flow/summary_collector.dart:2434:19)
#24     FieldInitializer.accept (package:kernel/ast.dart:3340:45)
#25     SummaryCollector._visitWithoutResult (package:vm/transformations/type_flow/summary_collector.dart:849:10)
#26     List.forEach (dart:core-patch/growable_array.dart:416:8)
#27     SummaryCollector.createSummary (package:vm/transformations/type_flow/summary_collector.dart:706:29)
#28     TypeFlowAnalysis.getSummary (package:vm/transformations/type_flow/analysis.dart:1650:55)
#29     _DirectInvocation._processFunction (package:vm/transformations/type_flow/analysis.dart:298:42)
#30     _DirectInvocation.process (package:vm/transformations/type_flow/analysis.dart:226:14)
#31     _WorkList.processInvocation (package:vm/transformations/type_flow/analysis.dart:1539:27)
#32     TypeFlowAnalysis.applyCall (package:vm/transformations/type_flow/analysis.dart:1798:23)
#33     Call.apply (package:vm/transformations/type_flow/summary.dart:359:31)
#34     Summary.apply (package:vm/transformations/type_flow/summary.dart:1075:28)
#35     _DirectInvocation._processFunction (package:vm/transformations/type_flow/analysis.dart:307:24)
#36     _DirectInvocation.process (package:vm/transformations/type_flow/analysis.dart:226:14)
#37     _WorkList.processInvocation (package:vm/transformations/type_flow/analysis.dart:1539:27)
#38     TypeFlowAnalysis.applyCall (package:vm/transformations/type_flow/analysis.dart:1798:23)
#39     Call.apply (package:vm/transformations/type_flow/summary.dart:359:31)
#40     Summary.apply (package:vm/transformations/type_flow/summary.dart:1075:28)
#41     _DirectInvocation._processFunction (package:vm/transformations/type_flow/analysis.dart:307:24)
#42     _DirectInvocation.process (package:vm/transformations/type_flow/analysis.dart:226:14)
#43     _WorkList.processInvocation (package:vm/transformations/type_flow/analysis.dart:1539:27)
#44     _DispatchableInvocation.process.<anonymous closure> (package:vm/transformations/type_flow/analysis.dart:449:44)
#45     _LinkedHashMapMixin.forEach (dart:collection-patch/compact_hash.dart:633:13)
#46     _DispatchableInvocation.process (package:vm/transformations/type_flow/analysis.dart:423:12)
#47     _WorkList.processInvocation (package:vm/transformations/type_flow/analysis.dart:1539:27)
#48     _WorkList.process (package:vm/transformations/type_flow/analysis.dart:1481:7)
#49     TypeFlowAnalysis.process (package:vm/transformations/type_flow/analysis.dart:1676:14)
#50     transformComponent (package:vm/transformations/type_flow/transformer.dart:114:20)
#51     runGlobalTransformations (package:vm/kernel_front_end.dart:573:20)
#52     compileToKernel (package:vm/kernel_front_end.dart:477:11)
<asynchronous suspension>
#53     FrontendCompiler.compile (package:frontend_server/frontend_server.dart:635:17)
<asynchronous suspension>
#54     starter (package:frontend_server/starter.dart:102:12)
<asynchronous suspension>
#55     main (file:///Volumes/Work/s/w/ir/x/w/sdk/pkg/frontend_server/bin/frontend_server_starter.dart:13:14)
<asynchronous suspension>

Target kernel_snapshot failed: Exception

FAILURE: Build failed with an exception.

* Where:
Script '/opt/homebrew/Caskroom/flutter/3.3.1/flutter/packages/flutter_tools/gradle/src/main/groovy/flutter.groovy' line: 1350

* What went wrong:
Execution failed for task ':app:compileFlutterBuildRelease'.
> Process 'command '/opt/homebrew/Caskroom/flutter/3.3.1/flutter/bin/flutter'' finished with non-zero exit value 1

* Try:
> Run with --stacktrace option to get the stack trace.
> Run with --info or --debug option to get more log output.
> Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 49s
Running Gradle task 'assembleRelease'...                           50,1s
Gradle task assembleRelease failed with exit code 1

Flutter Doctor output

Doctor output

[✓] Flutter (Channel stable, 3.16.4, on macOS 14.2 23C64 darwin-arm64, locale uk-UA)
    • Flutter version 3.16.4 on channel stable at /opt/homebrew/Caskroom/flutter/3.3.1/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 2e9cb0aa71 (7 days ago), 2023-12-11 14:35:13 -0700
    • Engine revision 54a7145303
    • Dart version 3.2.3
    • DevTools version 2.28.4

[✓] Android toolchain - develop for Android devices (Android SDK version 33.0.0)
    • Android SDK at /Users/smirnov/Library/Android/sdk
    • Platform android-33, build-tools 33.0.0
    • Java binary at: /Applications/Android Studio.app/Contents/jbr/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 17.0.7+0-17.0.7b1000.6-10550314)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 15.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Build 15C65
    • CocoaPods version 1.12.1

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 2023.1)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 17.0.7+0-17.0.7b1000.6-10550314)

[✓] IntelliJ IDEA Ultimate Edition (version 2023.3.1)
    • IntelliJ at /Users/smirnov/Applications/IntelliJ IDEA Ultimate.app
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin version 233.11799.172

[✓] Connected device (3 available)
    • iPhone 12 (mobile)     • 11434F9C-5740-4751-8AB5-27E5A30A6EE4 • ios            • com.apple.CoreSimulator.SimRuntime.iOS-16-4 (simulator)
    • macOS (desktop)        • macos                                • darwin-arm64   • macOS 14.2 23C64 darwin-arm64
    • Chrome (web)           • chrome                               • web-javascript • Google Chrome 119.0.6045.123

[✓] Network resources
    • All expected network resources are available.

• No issues found!

This is likely a duplicate to https://github.com/flutter/flutter/issues/138898 and already fixed. @smiera Could you try building your application on the latest version of Flutter?

This is likely a duplicate of #138898 and already fixed. @smiera Could you try building your application on the latest version of Flutter?

But I already on the latest version
% flutter upgrade
Flutter is already up to date on channel stable
Flutter 3.16.4 • channel stable • https://github.com/flutter/flutter.git
Framework • revision 2e9cb0aa71 (7 days ago) • 2023-12-11 14:35:13 -0700
Engine • revision 54a7145303
Tools • Dart 3.2.3 • DevTools 2.28.4

Could you try the beta channel?

Could you try the beta channel?

Build successful. Thanks!
Can you tell me when this fix will be in a stable channel? At least an approximate date.

Closing this as fixed. You may read about the release process here.


using json from ktor-serialization

My project is already using json from kotlinx.serialization, both for ContentNegotiation as well for some other purposes, and not jackson or gson. Is it possible to use ktor-swagger in this case?
Right now I'm getting
[ERROR] 2020-09-29 12:44:31.387 [nioEventLoopGroup-4-1] Application - Unhandled: GET - /apidocs/openapi.json - {}
kotlinx.serialization.SerializationException: Serializer for class 'OpenApi' is not found.
Mark the class as @Serializable or provide the serializer explicitly.

and I wonder if there is any easy solution for that

kotlinx.serialization requires that the classes are explicitly marked as serializable, which they are not, (PRs welcome). Or for you to tell the kotlinx.serialization project explicitly how to do the serialization/deserialization of these types.


DPLA::MAP::SourceResource#language getter returns empty array

This starts by adding specs, including a failing spec for DPLA::MAP::SourceResource#language. The additional specs are not meant to be exhaustive, but rather complementary to demonstrate this is not an issue with DPLA::MAP::Concept or its subclasses.

I squashed this and added a nice commit message leading people down a rabbit hole.


Don't reformat body of arrow function when deleting its parameter

Basically a port of #23973
We no longer crash on the original repro, but still a good idea to not avoid reformatting any nodes we don't need to.

Already done in #28217.


Function returns set-of view fails introspection if view does not define primary key

Describe the bug
I reported this possible bug in the main supabase repository, but I believe it could be linked here.
https://github.com/supabase/supabase/issues/20106

I followed the template for issues in that repository

Since we don't have a reproduction case, could you please send your project_ref so I can investigate it?
Its most likely the issue solved by this PR

Since we don't have a reproduction case, could you please send your project_ref so I can investigate it?
Its most likely the issue solved by this PR

Interesting.
The project's url is this https://supabase.com/dashboard/project/fkdkdrrilrzbkvtqglhy
Does this help?
I see that PR was already merged. How could I make use of it to solve my case?

Okay this is a related but different case than PR.
You've got 2 functions get_....(uuid) (omitted for privacy) that return setof <some_view>
we currently check that the returned entity is selectable before exposing a function in the GraphQL AP. The 2 views ARE selectable by authenticated and anon but the views don't define a primary key so their associated types are omitted from the __Schema, making the function's reference invalid.

I think the outcome you're looking for is to be able to query the two views. To do that you can add a comment directive primary key to make them show up in the GraphQL API
comment on view "or...ers" is e'@graphql({"primary_key_columns": ["col1", "col2"]})';
comment on view "us....ture" is e'@graphql({"primary_key_columns": ["col1", "col2"]})';

and then you won't need the get_... functions because the views are queryable just like your tables.
More info here https://supabase.github.io/pg_graphql/views/

If that assumption was wrong, and you want to exclude the 2 get_... functions instead: you can revoke execute permission for the anon, authenticated, and public roles to remove them from your API, which will also solve the introspection issue.
revoke execute on function get_orgusers from anon, public;
revoke execute on function get_user_access_structure from anon, public;

and your schema will load, but you won't be able to query those functions

renaming this issue for tracking

TODO: update this logic https://github.com/supabase/pg_graphql/blob/2bb35d5dadf2af15b17e855e414d8dbc5e5a5b7a/src/graphql.rs#L1290-L1299
to make sure they table/view will be in the schema.
The logic should be the same as in __Schema
https://github.com/supabase/pg_graphql/blob/2bb35d5dadf2af15b17e855e414d8dbc5e5a5b7a/src/graphql.rs#L3955-L3959
its a small/simple change

Interesting.
Thanks.
In this case, if I revoke those permissions, my server-side authenticated token (aka "the app") will still be able to call those functions, right?

If that assumption was wrong, and you want to exclude the 2 get_... functions instead: you can revoke execute permission for the anon, authenticated, and public roles to remove them from your API, which will also solve the introspection issue.
and your schema will load, but you won't be able to query those functions

In the side notes...I hope this has helped supabase to get better :)

if I revoke those permissions, my server-side authenticated token (aka "the app") will still be able to call those functions, right?

If you change the permissions (option 2) you would be able to call the functions using a direct database connection but not over the API as an anonymous or authenticated user.
if you set the comment directive (option 1) you will be able to access the functions over the API and via direct connection

In the side notes...I hope this has helped supabase to get better :)

it did! thanks for reporting


build failed on circle ci

@jakirkham the build failed even though I am merging them one by one. Can you help please?

So, it is possible not all dependencies were build at this point. Would you please try restarting the CI?

Looks like that fixed it.

Yes, I built bob.core once more, thanks.


How to handle request validation errors?

When I get response with some error status, e.g. 400 bad request, the client throws an exception ApolloHttpException, then onFailure callback is executing.
I need the response error messages, but they aren't available inside onFailure callback.
How can I get these messages to show user?

https://github.com/apollographql/apollo-android/blob/master/apollo-runtime/src/main/java/com/apollographql/apollo/exception/ApolloHttpException.java#L27
It has the rawResponse that you can access and get the raw http response. But keep in mind if you override the https://github.com/apollographql/apollo-android/blob/master/apollo-runtime/src/main/java/com/apollographql/apollo/ApolloCall.java#L103 you must close response manually

@sav007 what about Rx2Apollo?
I'm also receiving throwables in onError callback of my observable and i can't reach to the "message" field in graphQL response.
For example, based on .hasErrors() method of Response i'm expecting this code to work fine:
Rx2Apollo.from(apolloClient.mutate(SomeMutation.builder().build()))
                .map {                         if (it.hasErrors())                                  error(it.errors().first().message())                         }
but it never gets to the if (it.hasErrors()) because observable returned from .from() method calls error on ApolloHttpException

I see your point, with RxJava unfortunately the OkHttp error response is closed automatically when we wrap response call back with Rx call. The issue is that if we provide opened OkHttp response stream for errors then we don't have control when it's going to be closed and will relay on user to close it, that in 99% won't happen and as result we will have leaked connections.
@digitalbuddha any thoughts how we can propagate error with opened http stream to Rx but make sure it's closed if user forgets to do so?

Hello, Im having the same issue. Im getting an ApolloHttpException but I cannot get the errors. Looking the exception.rawReponse.body.string its getting me a IllegalException bc the stream is closed. How I can get the error response?

@emi-net21 are you using coroutines? If yes, take a look at https://github.com/apollographql/apollo-kotlin/issues/2119, it contains a workaround.
If not, can you please share your code and version? Thanks!

@emi-net21 are you using coroutines? If yes, take a look at https://github.com/apollographql/apollo-kotlin/issues/2119, it contains a workaround.
If not, can you please share your code and version? Thanks!


Accessing POST request (reply in a thread) of ThreadCRUDApiView without a user_id in the parameter.

Love this Django-messages-DRF packaged just having a slight issue.
I'm trying to reply to the thread without passing a user_id as suggested in the comment but the URL for this view has a user_id as a keyword argument.
path('message/thread/<uuid>/<user_id>/send/', views.ThreadCRUDApiView.as_view(), name='thread-send'),
ThreadCRUDApiView(DjangoMessageDRFAuthMixin, ThreadMixin, RequireUserContextView, APIView):
    """
    View that allows the reply of a specific message as well as the
    We will apply some pagination to return a list for the results and therefore

    1. This API gets or creates the Thread~
    2. If a UUID is passed, then a Thread is validated and created but if only a user_id is
    passed, then it will create a new thread and start a conversation.
    """

    serializer_class = THREAD_REPLY_SERIALIZER

    def post(self, request, uuid=None, *args, **kwargs):
        """
        Replies a mensage in given thread
        """
        thread = self.get_thread() if uuid else None
        user = self.get_user()

        if not user:
            raise NotFound()

        serializer = self.serializer_class(data=request.data)
        serializer.is_valid(raise_exception=True)

        subject = serializer.data.get('subject') or thread.subject
        if not thread:
            msg = Message.new_message(
                from_user=self.request.user, to_users=[user], subject=subject,
                content=serializer.data.get('message')
            )

        else:
            msg = Message.new_reply(thread, self.request.user, serializer.data.get('message'))
            thread.subject = subject
            thread.save()

        message = MessageSerializer(msg, context=self.get_serializer_context())
        return Response(message.data, status=status.HTTP_200_OK)

So to summarise to reply with a message in the thread; can you do it without passing a user_id as a parameter; if yes how? and if no can you elaborate or explain what you meant by your comment?!
Many thanks!

@cloudlessdreams first thank you for using the package, means a lot.

No, it not possible without the user ID because what we do is to basically match the UUID against a user id to validate if the user really belongs to it and avoid the message being sent to the wrong person by mistake or any middle man issue.

You can always do your own view and you just need to remove the user = get_user() that is inherited from the ThreadMixin, hence also the id.
I hope it helps and the package is useful to you.

Thanks for clarifying. I have a forked version with some customisation but this saved me hours of work.
I actually understand the logic and m2m through models quite deeply as I have an entire dB with custom through models.
I don't if being a native English speaker helps but I can definitely go through it, rewrite some of the comments and proof read the notes if that helps?
Let me know.
Thanks again!

Also how can I add multiple user_ids to the to_users looks like I have to create a custom view or modify to handle this?

@cloudlessdreams so,

From your second comment - Sure, have a look.
Message.new_message() the to_users is already prepared to be a list, so yes. In this view is for an individual thread and thought to be like it. 99.9% of the cases are like this I'm afraid, the only thing you need to modify is [user] to to_users=[YOUR LIST]

Thanks. Much appreciated.


js-controller 3.2.16

Nach dem update auf js-controller 3.2.16 kommen folgende Warnungen
bosesoundtouch.0	2021-02-26 20:16:58.886	warn	(10402) State "bosesoundtouch.0.sources.LOCAL_INTERNET_RADIO" has no existing object, this might lead to an error in future versions
bosesoundtouch.0	2021-02-26 20:16:58.884	warn	(10402) State "bosesoundtouch.0.sources.TUNEIN" has no existing object, this might lead to an error in future versions
bosesoundtouch.0	2021-02-26 20:16:58.883	warn	(10402) State "bosesoundtouch.0.sources.ALEXA" has no existing object, this might lead to an error in future versions
bosesoundtouch.0	2021-02-26 20:16:58.881	warn	(10402) State "bosesoundtouch.0.sources.AMAZON" has no existing object, this might lead to an error in future versions
bosesoundtouch.0	2021-02-26 20:16:58.879	warn	(10402) State "bosesoundtouch.0.sources.AUX" has no existing object, this might lead to an error in future versions
Platform: linux
os: Raspbian GNU/Linux 10 (buster)
Architecture: arm
CPUs: 4
Speed: 1500 MHz
Model: ARMv7 Processor rev 3 (v7l)
RAM: 3.7 GB
Node.js: v12.21.0
NPM: 6.14.11

und mit js 3.3.x

bosesoundtouch.0
2021-05-04 21:46:30.165
info
State value to set for "bosesoundtouch.0.volume" has to be type "number" but received type "string"

bosesoundtouch.0
2021-05-04 21:46:30.164
info
State value to set for "bosesoundtouch.0.nowPlaying.time" has to be type "number" but received type "string"

bosesoundtouch.0
2021-05-04 21:46:30.162
info
State value to set for "bosesoundtouch.0.nowPlaying.total" has to be type "number" but received type "string"

Please try Github version. Update from Github, restart adapter manually ...  and check please if errors are gone

Mit 0.10.0 ist alles ok. Kann geschlossen werden.


JSON fixtures should be sent to stdout, not a file

This one's definitely an enhancement, not a bug.
I think that when I use --json-fixtures the output should be sent to the standard output, not to a file. This mirrors how --fixtures works. Besides, we all know how to redirect the JSON to a file if needed.
The tough part of implementing this will be suppressing non-JSON output from Pytest when using --json-fixtures so that you don't end up with a mish-mash of JSON and log output.

Closed with https://github.com/marcosanchotene/pytest-json-fixtures/pull/5


Clean/Delete Releases and tags from Workflow experiments

All previous beta tags, releases, and packages have been deleted


Intacct - Tapping 3 dots not redirected to credentials page & authentication error displayed

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Version Number: 9.0.20
Reproducible in staging?: Y
Reproducible in production?: N
If this was caught during regression testing, add the test name, ID and link from TestRail: https://expensify.testrail.io/index.php?/tests/view/4859515
Logs: https://stackoverflow.com/c/expensify/questions/4856
Issue reported by: Applause-Internal team
Action Performed:

Go to https://staging.new.expensify.com/
Tap profile icon -- workspaces-- workspace
Tap more features -- enable accounting
Tap sage intacct-- connect
Enter invalid credentials & tap confirm
Note authentication error is shown
Tap on 3 dots

Expected Result:
Tapping 3 dots user must be directed to credentials page & authentication error must not be displayed on entering invalid credentials.
Actual Result:
Tapping 3 dots user not directed to credentials page & authentication error displayed on entering invalid credentials.
Workaround:
Unknown
Platforms:

Which of our officially supported platforms is this issue occurring on?

[x] Android: Native
[x] Android: mWeb Chrome
[ ] iOS: Native
[x] iOS: mWeb Safari
[ ] MacOS: Chrome / Safari
[ ] MacOS: Desktop

Screenshots/Videos
https://github.com/user-attachments/assets/5b82441f-5acc-4d48-b159-9c271afc1a00

View all open jobs on GitHub
Issue OwnerCurrent Issue Owner: @yuwenmemon

Production - different error
https://github.com/user-attachments/assets/4d376618-55d9-49e9-8bed-fd17c264ea0c

We think this issue might be related to the  #vip-vsb

As per the discussion here, removing the blocker label: https://expensify.slack.com/archives/C01GTK53T8Q/p1723735252143779

No update just yet but will look soon.

Will be fixed by https://github.com/Expensify/App/pull/48001


fix(@angular-devkit/build-angular): allow AOT mode with ng test

Closing old PRs, this was just a proof of concept.


Error when trying to access next paginator page

Hey,
I'm using latest version and since today, I have a problem with paginator.
Pulling notices like this:
notices = Honeybadger::Api::Notice.paginate(project_id, fault_id, { created_after: created_after })
There is a NoMethodError: undefined method '<' for nil:NilClass when trying to access next page with notices.next?

It looks like that read API returns only "results" and "links" (there is no pagination info) in JSON response. I wrote to their support, will get back to you once they reply.

Hello @tolhaje.
I've just taken a look and you are correct that the Honeybadger Read API for the notices resource only returns results and links keys and there are no current_page or num_pages being returned anymore.
You can see this with the following snippet:
require "honeybadger-api"

access_token = "xxx"

Honeybadger::Api.configure do |c|
  c.access_token = access_token
end

project_id = "xxx"

fault_id = "xxx"

filters = {}
filters.merge!({ :page => 1 })
path = "projects/#{project_id}/faults/#{fault_id}/notices"
response = Honeybadger::Api.client.get(path, filters)

puts response.keys

I wonder if Honeybadger have introduced a breaking change as the other resources still have the old pagination keys. Can you let me know what their support say? I'll ping the honeybadger team here and see if they have any ideas? //cc @joshuap @starrhorne @stympy

What I heard from support: they deployed V2 API for testing, and some of its code snuck into the V1 namespace. They have deployed a fix, and it's working again. Thanks for your time!

@tolhaje No worries thanks for reporting and following up with their support 👍

Sorry for the breakage!  V2 of the API (to be officially launched soon) will drop the current pagination links in favor of a links hash that will have next and prev attributes.  These will be URLs you can use to get the next and previous page of results.  Either or both of these may be omitted (if there is no next or previous page), and you may get a next link that, when loaded, actually has no results.

@stympy No worries, thanks for following up.
I wasn't aware that you were working on V2 of the API. Will V1 continue to work after V2 is released or will it have breaking changes?
It would good to have a list of changes that are planned so I can update the gem appropriately 👍

The plan is to release V2 in the next week or so, deprecating the V1 API, which will continue to work until August 1st.  The changes aren't that drastic -- the biggest change is the pagination -- so updating the gem shouldn't require too much work.  I'll definitely give you a heads up on the changes, and you're also welcome to go ahead and play with the new API if you like... it's available at https://app.honeybadger.io/v2/projects (authentication stays the same).

@murraysum me and @mat3k will be happy to help you with gem update, just give us a shout :)

V2 of our API is now live, and the announcement blog post is here: http://blog.honeybadger.io/version-2-of-our-read-api/

@tolhaje @mat3k I've now publish a v2.0.0 release which upgrades the gem to support v2 of the Honeybadger Read API. I've also added any missing attributes that are now present to any of the resources. Let me know if you happen to find any bugs or have any questions.
Thanks again to @stympy for answering some of questions when upgrading the gem.
Enjoy, cheers! 👍

@murraysum Thanks for releasing API V2 support. Does anything have to been done after updating to 2.0.0 ?

@mat3k There are several changes between v1 and v2 in the Honeybadger Read API which is summarised in the announcement blog post : http://blog.honeybadger.io/version-2-of-our-read-api/
The major things that you should be aware of when upgrading to 2.0.0 :

Removed support for Honeybadger::Api::Notice.find method as the API endpoint has been removed.
The environment, assignee, ignored, and resolved params are no longer supported by the faults list. These filters have been replaced by the q param, which uses the same search syntax that we use in our UI.
The notices, and deploys endpoints now use the new paging params of created_after and created_before rather than page

You can see all the changes : https://github.com/murraysum/honeybadger-api/pull/20


Hot start the steady state solver

I wrote a library for this! https://github.com/dtu-qmcm/grapevine/


Issue while creating database using sqlserver

I am using entity framework and creating a database in SQL server.
I set the connection string but still getting the same error every time. I am not sure where I need to set up the connection string.
I already run the below command.
SET EF_CONNECTIONSTRING="Server=localhost;Database=ElsaDb;Trusted_Connection=True;"
Update-database -verbose -context SqlServerContext

I solved this by creating a system-level environment variable:


fix: skip AnnouncementHero and Banner tests

Description
Added .skip in all unit tests of AnnouncementHero and Banner to skip the tests of these components.
We will later on remove .skip whenever these components will be in use in website or rendered in default manner.

/rtm


build(deps): add bs4; fix typo in README

Cool application! Raising a small PR to fix a README typo and add beautifulsoup4 to requirements.txt. I get the following ModuleNotFoundError if it's not installed.
Traceback (most recent call last):
  File "ingest_data.py", line 2, in <module>
    from langchain.document_loaders import UnstructuredFileLoader
  File "/Users/mrobinson/.pyenv/versions/langchain/lib/python3.8/site-packages/langchain/document_loaders/__init__.py", line 3, in <module>
    from langchain.document_loaders.azlyrics import AZLyricsLoader
  File "/Users/mrobinson/.pyenv/versions/langchain/lib/python3.8/site-packages/langchain/document_loaders/azlyrics.py", line 5, in <module>
    from langchain.document_loaders.web_base import WebBaseLoader
  File "/Users/mrobinson/.pyenv/versions/langchain/lib/python3.8/site-packages/langchain/document_loaders/web_base.py", line 5, in <module>
    from bs4 import BeautifulSoup
ModuleNotFoundError: No module named 'bs4'

Hi,
New to all of this github and python stuff but chatGPT is helping me get started.
I installed this github repo into my pycharm application (again, I'm a n00b). When I click/run 'python insgest_data.py' as is (with all dependencies installed), I get this error message:
C:\Users\jvonr\PycharmProjects\chat-your-data\venv\Scripts\python.exe ingest_data.py
Traceback (most recent call last):
File "C:\Users\jvonr\PycharmProjects\chat-your-data\ingest_data.py", line 9, in
raw_documents = loader.load()
^^^^^^^^^^^^^
File "C:\Users\jvonr\PycharmProjects\chat-your-data\venv\Lib\site-packages\langchain\document_loaders\unstructured.py", line 35, in load
elements = self._get_elements()
^^^^^^^^^^^^^^^^^^^^
File "C:\Users\jvonr\PycharmProjects\chat-your-data\venv\Lib\site-packages\langchain\document_loaders\unstructured.py", line 29, in get_elements
from unstructured.partition.auto import partition
File "C:\Users\jvonr\PycharmProjects\chat-your-data\venv\Lib\site-packages\unstructured\partition\auto.py", line 3, in
from unstructured.file_utils.filetype import detect_filetype, FileType
File "C:\Users\jvonr\PycharmProjects\chat-your-data\venv\Lib\site-packages\unstructured\file_utils\filetype.py", line 6, in
import magic
File "C:\Users\jvonr\PycharmProjects\chat-your-data\venv\Lib\site-packages\magic_init.py", line 209, in
libmagic = loader.load_lib()
^^^^^^^^^^^^^^^^^
File "C:\Users\jvonr\PycharmProjects\chat-your-data\venv\Lib\site-packages\magic\loader.py", line 49, in load_lib
raise ImportError('failed to find libmagic.  Check your installation')
ImportError: failed to find libmagic.
Thanks!

@jvonreusner - unstructured uses libmagic for filetype detection. Since it looks like you're on window, I think you need pip install python-magic-bin instead of python-magic. We'll add an issue on the unstructured side to see if we can't clean that up for Windows pip installs.

Docs for that are here

Added https://github.com/Unstructured-IO/unstructured/issues/234 to address

Wonderful - thank you so much.
I'm also having trouble verifying which version of python I need, and it doesn't seem to be clearly stated in the requirement documents.
I'm currently using the most up to date version for windows, python 3.11 but am getting error messages about my interpreter being invalid.
ChatGPT tried to give me answer by telling me 3.6.3, but I think it has no idea what it's talking about lol

3.6.3 is definitely wrong. unstructured won't work with versions 3.6 and older because of the pytorch dependency for the PDF partitioning model (though if you don't include the local-inference extra dependencies it won't pull that in and may work for you). We currently test against 3.8 and have an issue to add later Python versions to CI (this one here https://github.com/Unstructured-IO/unstructured/issues/145). We've gotten it working on 3.10 before and I wouldn't think 3.11 would be an issue.
If you're running on Windows, I'd also check out these instructions from our docs. Long story short, the detectron2 model we use for PDF partitioning doesn't support Windows, but there's a workaround you can use to get it running. We do intend to move to a new model for PDF partitioning in the near future that should be more Windows friendly.


Nuanced benchmarking

This PR allows us to more easily benchmark against the version of MemoWise on the main branch in GitHub. In the GitHub actions to print benchmarks, we now also print benchmarks of running the MemoWise main branch against whatever branch a PR creates. This creates an easier way to see if a change is actually more performant for both local development and PR review.
Before merging:

[ ] Copy the table printed at the end of the latest benchmark results into the README.md and update this PR
[ ] If this change merits an update to CHANGELOG.md, add an entry following Keep a Changelog guidelines with semantic versioning

Cool! Are we to copy over the results including the GithubMain comparison? Do you want to include an example output or should we run this branch ourselves to see it?

Cool! Are we to copy over the results including the GithubMain comparison? Do you want to include an example output or should we run this branch ourselves to see it?

I should've said this on the PR itself, but the output is already in the benchmarks run from this PR. Copying it over here too if it's easier to see:
|Method arguments|`GitHubMain` (1.6.0)|
|--|--|
|`()` (none)|0.99x|
|`(a)`|0.99x|
|`(a, b)`|0.97x|
|`(a:)`|0.99x|
|`(a:, b:)`|0.98x|
|`(a, b:)`|0.97x|
|`(a, *args)`|0.98x|
|`(a:, **kwargs)`|0.97x|
|`(a, *args, b:, **kwargs)`|0.99x|

|Method arguments|`Dry::Core` (0.7.1)|`Memery` (1.4.0)|
|--|--|--|
|`()` (none)|1.07x|12.17x|
|`(a)`|1.63x|9.80x|
|`(a, b)`|0.33x|1.98x|
|`(a:)`|1.53x|18.41x|
|`(a:, b:)`|0.36x|4.22x|
|`(a, b:)`|0.35x|4.13x|
|`(a, *args)`|0.81x|1.91x|
|`(a:, **kwargs)`|0.78x|3.19x|
|`(a, *args, b:, **kwargs)`|0.57x|1.51x|


JumpingDots not Working

child: JumpingDotsProgressIndicator(           fontSize: 30.0,           color: Colors.blue,           numberOfDots: 5,         ),
this is my code snippet, but Jumping dots is not working.

Can confirm that the dots do not, in fact, jump.

child: JumpingDotsProgressIndicator( fontSize: 30.0, color: Colors.blue, numberOfDots: 5, ),
this is my code snippet, but Jumping dots is not working.
That was a bug, now fixed. Please check.

@atul-chaudhary
Fixed. Please reopen if this doesn't verify


sarama produces messages in out-of-order when retries happen

we found sarama sends out-of-order messages when retries happen, and we think the issue causes this:

https://github.com/IBM/sarama/issues/2619

This could be reproduced by hacking codes. https://github.com/wk989898/sarama/commit/d06ee56ae5986f77f5bc88b8a63290e068a9c16c

This affect release after v6.4.0


Flow updates

This PR refactors BlackParrot Tools to fit into the new build methodology. This makes it easier to fit into external build flows and CI toolchains, etc

This will break existing flows and should be used with https://github.com/black-parrot/black-parrot-sim versions only


Can not connect mysql to sequel pro, phpmyadmin, or while trying to migrate DB using artisan

Info:

Docker version Docker version 18.06.1-ce, build e68fc7a
System info Mac
Laravel 5.7

Issue:
Sequel Pro

Unable to connect to host <IP_ADDRESS>, or the request timed out.
Be sure that the address is correct and that you have the necessary privileges, or try increasing the connection timeout (currently 10 seconds).
MySQL said: Can't connect to MySQL server on '<IP_ADDRESS>' (61)

Migrating Database

Illuminate\Database\QueryException  : SQLSTATE[HY000] [2054] The server requested authentication method unknown to the client (SQL: select * from information_schema.tables where table_schema = homestead and table_name = migrations)
at /var/www/vendor/laravel/framework/src/Illuminate/Database/Connection.php:664
660|         // If an exception occurs when attempting to run a query, we'll format the error
661|         // message to include the bindings with SQL, which will make this exception a
662|         // lot more helpful to the developer instead of just the database's errors.
663|         catch (Exception $e) {

664|             throw new QueryException(
665|                 $query, $this->prepareBindings($bindings), $e
666|             );
667|         }
668|

Exception trace:
1   PDOException::("PDO::__construct(): The server requested authentication method unknown to the client [caching_sha2_password]")
/var/www/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php:70
2   PDO::__construct("mysql:host=mysql;port=3306;dbname=homestead", "homestead", "secret", [])
/var/www/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php:70
Please use the argument -v to see more details.

While trying to log in to phpmyadmin on localhost:8080
I'm getting a server input field on the login screen that I've never seen before. I get a variety of errors trying to login.

Other issues I've Explored That Could Relate
MySql 5.8 does not yet work with sequel pro Issue 1392 I took steps to change mysql 5.8 to 5.7 and ran into issue 1391
It looks like I'm running 5.7 from the instructions in issue 1391.
docker inspect d52e8d7638d5
"Env": [
                "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
                "GOSU_VERSION=1.7",
                "MYSQL_MAJOR=5.7",
                "MYSQL_VERSION=5.7.23-1debian9",
                "TZ=UTC"
            ],

How do I get mysql to work?

I have the same problem.
I found that it doesn't work when I use the build parameter from a docker compose file
docker-compose.yml
  mysql:
    build:
      context: ./mysql

Dockerfile (in /mysql)
FROM mysql:5.7

Result (sequel pro)

MySQL said: Can't connect to MySQL server on '<IP_ADDRESS>' (61)

But it works when I use the image parameter from a docker compose file
docker-compose.yml
  mysql:
    image: mysql:5.7

Result (sequel pro)

I can connect to MySQL

@corbin88  post your laravel ENV file.
Enter container name as DATABASE_HOST
ssh into workspace container and then run migration command
docker-compose exec workspace bash and then migration command

Original issue comes from this?:
https://stackoverflow.com/questions/50026939/php-mysqli-connect-authentication-method-unknown-to-the-client-caching-sha2-pa


improved authentication logging

log failed attempts at level WARN
removed unused return values
make method package-private

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@3867861). Click here to learn what that means.
The diff coverage is 100%.

@@            Coverage Diff            @@
##             master    #5593   +/-   ##
=========================================
  Coverage          ?   82.73%
  Complexity        ?    11717
=========================================
  Files             ?     1390
  Lines             ?    45287
  Branches          ?     5619
=========================================
  Hits              ?    37467
  Misses            ?     5206
  Partials          ?     2614

Impacted Files
Coverage Δ
Complexity Δ

...ain/java/io/crate/protocols/postgres/Messages.java
79.34% <100%> (ø)
29 <1> (?)

...a/io/crate/http/netty/HttpAuthUpstreamHandler.java
78.43% <100%> (ø)
16 <4> (?)

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 3867861...35917dd. Read the comment docs.


Cannot write to qspi flash in adafruit feather nrf52840, device tree is wrong

Describe the bug
The qspi flash chip on the adafruit feather nrf52840 does not support the write mode supplied in the devicetree file, meaning that no writes are possible. This lead to interesting issues when trying to define a partition and use it for DFU.
Switching to SPI mode proved to be too slow, and caused out of memory issues when attempting a DFU due mcumgr getting data faster than the chip could erase. Working around that issue cause timeout errors because writes could be be completed within the hard coded 10 microsecond timeout.
Ideally one would use quad mode to interact with the chip, but as noted in a previous commit, this was not possible because the flash chip required quad mode to be enabled by setting bit 1 (second bit) in register 2. However, the nordic driver only supported enabling quad mode if the bit was 6 in register 1. While this seems to be the jedec standard (I don't have a copy of the spects to verify), this chip and possibly some others do not fully conform to this.
This leaves things in a state where it is impossible to use unless someone changes to timeout manually.
I have a pull request that I will link in the comments (chicken and egg with description of pr and issue) that addresses this by allowing a user to specify which bit corresponds to the QE bit in the device tree. It defaults to the current behavior, but the pull request also modifies the DT of the adafruit board to make the appropriate change.
Please also mention any information which could help others to understand
the problem you're facing:

What target platform are you using?
I developed against the board mentioned above on zephyr 2.7 and 3.0 master. The pull request is the code against 3.0
What have you tried to diagnose or workaround this issue?
I sort of covered this in the description, but this involved working through the DFU subsystem to discover the problem, leading me to the flash later, then going through the driver line by line in an editor and a debugger. I was able to make things work in SPI mode, by changing time out parameters in the nordic external module, but it was too slow to be of practical use, no one will wait 10s of minuets for a firmware upgrade. I made the changes to the zephyr source code driver to enable quad mode, and have it up and running on a live board.

To Reproduce
Steps to reproduce the behavior:
Load a zephyr image with a partition on the flash configured and attempt to write to it.
Expected behavior
I expect to be able to write to the flash chip, and use it in conjunction with the DFU firmware, in quad mode
Impact
show stopper, as someone cant use the external flash as is.
Environment (please complete the following information):

OS: (e.g. Linux, MacOS, Windows)
Linux
Toolchain (e.g Zephyr SDK, ...)
Zephyr 2.7, 3.0, sdk version 0.13.1
Commit SHA or Version used
Zephyr 2.7 - 8f539523b67036c4d238c3ab5e50a7a28da776b6, Zephyr 3.0 I'm not sure the exact hash, was head 2 days ago, but some merges have happened since then.

Additional context
A thanks to people on discord who helped point me at documentation et al on background so I could work through this issue.

The pull request corresponding to this issue is: https://github.com/zephyrproject-rtos/zephyr/pull/42334

This seems to be fixed in: https://github.com/zephyrproject-rtos/zephyr/pull/42049. Thank you for your time looking at this issue and pull request.

It turns out the other PR does not in fact fix this issue (yet?) So I am reopening this issue to keep track of that until it does.


mycroft.skills.loaded - folder is wrong - path is right

I think folder isnt right as what I see the data uses path to store the folderlocation

Spot on, thanks Andlo!


Make All Pins Clickable on Map

we will use a marker to distinguish red pins content on popups. but all pins should be clickable on the map.

ref: https://github.com/participedia/frontend/issues/584

Fixed by PR #700


Does support resize images when exporting?

Hi, thanks for the great effort.
I'm using CVAT for labeling images for object detection training, the images I collected were from different channels, thus the sizes are differ (could be 1280x720, or 800x600 and etc.). While the training tool(expecting KITTI format data) requires dataset must have the same image size.
Does CVAT support this?

@shaojun , you can export your dataset and use https://github.com/openvinotoolkit/datumaro to transform your images (e.g. resize). Another approach is to transform images as necessary in your training code (pre-processing).

@nmanovic thanks, I've played datum but got an issue, have you see this before?

Hi,
If the issue is still relevant, better to ask in datumaro repository, thanks.


SQL Server Import extension still has preview tag

SQL Server Import moved to v1.0 but still has preview tag in both marketplaces
@aasimkhan30

The Extension details also say Import Flat File Wizard (preview) and This experience is currently in its initial preview.
The details also says it can copy data from a flat file (.csv, .txt, .json) and then a few sentences later says only works on .txt and .csv files.

Moreover, I notice when downloading the extension that the version on the blob server is 0.0.5.  Not sure how relevant this is.
https://sqlopsextensions.blob.core.windows.net/extensions/import/service/0.0.5/win-x64.zip


sleepFDRS does not go into 'Deep sleeping' at values above 2147

I experience sleepFDRS does not go into 'Deep sleeping' at values above 2147.
DEEP_SLEEP is enabled: #define DEEP_SLEEP
I use WEMOS ESP32 LOLIND32 and LOLIN32

@FMJK190, which value are you setting above 2147?  Can you give a copy of that line of code?
Thanks!

@aviateur17 I have only tried with values up to 3600.
You can try with 2148, here the command does not go into deep sleep.
Here is a line of code:
sleepFDRS(2148);
my environment is: PlatformIO Core 6.1.9.
Here's a small example that doesn't go to sleep. Changes sleepFDRS(2148); to sleepFDRS(2147); then it go to sleep.
#include "fdrs_node_config.h"
#include <fdrs_node.h>
void setup() {
beginFDRS();
}
void loop() {
delay(50); //let the sensor warm up
int sensorValue = analogRead(A0);
Serial.println(sensorValue);
const int waterValue  = 1677;
const int airValue  = 3358;
int soilMoisturePercent  = map(sensorValue,airValue ,waterValue ,0,100);
loadFDRS(soilMoisturePercent, SOIL_T);
if(sendFDRS()){
DBG("Big Success!");
} else {
DBG("Nope, not so much.");
}
sleepFDRS(2148);  //Sleep time in seconds
}

Hey guys, sorry I've been so absent!
It sounds like this issue.
Definitely an oversight on my part, it needs to be working with a 64bit number there.
It can probably be fixed by adding ULL to this line.
I've been taking a bit of a hiatus to focus on outdoor stuff. If you would like to fix it and submit a pull request, you're welcome to! Otherwise I will get to it when I can, and leave this issue open until I do.
Thanks for reporting this!

sleep_time should be unsigned. Negative values doesn't make sense, and none of the subsequent sleep/delay functions take signed types.

Good call, @egzumer ! There are probably several int types within the project that have existed since before I knew better. I will add "Fix all ints" to my list of tasks to do.
Thanks!

I think I've fixed this issue plus the int issue. Please let me know if the problem persists.
Thanks to everyone in this thread!


There is a demo showing how to use this collection

AC:

[ ] There is a demo showing how to use the collection's Ansible role and lookup plugin to interact with Conjur
[ ] The demo has been shared in Discourse

This is pending addition of cyberark.conjur.conjur_host_identity role in collection. Currently, tests are failing for Host Identity Demo on branch 37-create-demo.

I'm putting this totally on hold until the published collection matches what is on this repo.  Right now, there are many options for the cyberark.conjur.conjur_variable that are also not available and are needed for the demo.


"Data Shippers" links go to broken page

From this page, https://docs.axiom.co/data-shippers/api, if I click on any link under "Data Shippers" on the left nav, I go to a broken page

I'm not actually sure how I got to https://docs.axiom.co/data-shippers/api
I did a Google search originally
Seems the links are relative to the current path (ie .../elastic-beats/)
I'd make them relative to the site overall (ie. /data-shippers/elastic-beats/)

I think this is the path I took

https://www.google.com/search?q=axiom+ingest+api&oq=axiom+&aqs=chrome.0.69i59j69i60l5j69i65l2.1669j0j7&sourceid=chrome&ie=UTF-8
https://docs.axiom.co/usage/ingest/
Then I clicked on "API Compatibility" which goes to https://docs.axiom.co/data-shippers/api/

I'm not actually sure how I got to https://docs.axiom.co/data-shippers/api
I did a Google search originally
Seems the links are relative to the current path (ie .../elastic-beats/)
I'd make them relative to the site overall (ie. /data-shippers/elastic-beats/)

@cdeutsch wow, yes the links are relative to the path.

Fixed.


Reference counting bug in pattern match

thread 'main' panicked at 'assertion failed: !self.not_reference_counted.contains(symbol)', crates/compiler/mono/src/inc_dec.rs:91:13
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

app "AoC"
    packages {
        pf: "https://github.com/roc-lang/basic-cli/releases/download/0.6.2/c7T4Hp8bAdWz3r9ZrhboBzibCjJag8d0IP_ljb42yVc.tar.br",
    }
    imports [pf.Stdout, pf.Task.{ Task }, "day-1-part-1.txt" as part1Input : Str]
    provides [main] to pf

main : Task {} *
main = Stdout.line part1

part1 : Str
part1 =
    part1Input
    |> Str.split "\n"
    |> List.map Str.toUtf8
    |> List.map determineCalibration
    |> List.sum
    |> Num.toStr

determineCalibration = \input ->
    walk = \f, s, l ->
        when (f, s, l) is
            (Some m, Some n, _) -> m * 10 + n
            (Some m, None, [n, ..]) if n >= '0' && n <= '9' -> walk (Some m) (Some (n - '0')) l
            (None, _, [n, ..]) if n >= '0' && n <= '9' -> walk (Some (n - '0')) None l
            (_, _, [n, .. as rest]) -> walk f s rest
            (_, _, _) -> crash "Invalid input"
    walk None None input

Simpler reproduction:
app "main"
    packages { pf: "https://github.com/roc-lang/basic-cli/releases/download/0.7.0/bkGby8jb0tmZYsy2hg1E_B2QrCgcSTxdUlHtETwm5m4.tar.br" }
    imports [pf.Task.{ Task }]
    provides [main] to pf

main =
    _ = f None None []

    Task.ok {}

f = \a, b, c ->
    when (a, b, c) is
        (Some m, Some n, [_]) -> m + n
        _ -> crash "invalid"

Thanks @JRI98 :)


Add .pyc files in gitignore

@chofski Can you take a look at the PR?

I'm afraid I'm not an owner of this repository. The main development repo for DNAplotlib is: https://github.com/VoigtLab/dnaplotlib Could you make the updates there and I'll be able to merge.

Oh, I thought this is the main repo for the Dnaplotlib project. I will make the PR ASAP.