Vertical interpolation of fields between pressure and height coordinates.

Replace italics below with details for this issue.
Describe the New Feature
Use methods of METcalcpy/vertical_interp to interpolate TCRMW output from pressure to height.
Update TCRMW plots with height coordinate.
Acceptance Testing
List input data types and sources.
Describe tests required for new functionality.
Time Estimate
Estimate the amount of work required here.
3 days.
Sub-Issues
Consider breaking the new feature down into sub-issues.

[ ] Add a checkbox for each sub-issue here.

Relevant Deadlines
List relevant project deadlines here or state NONE.
Funding Source
Define the source of funding and account keys here or state NONE.
Define the Metadata
Assignee

[ ] Select engineer(s) or no engineer required
David Fillmore
[ ] Select scientist(s) or no scientist required
Mrinal Biswas

Labels

[ ] Select component(s)
[ ] Select priority
[ ] Select requestor(s)

Projects and Milestone

[ ] Review projects and select relevant Repository and Organization ones
[ ] Select milestone

Define Related Issue(s)
Consider the impact to the other METplus components.

[ ] METplus, MET, METdb, METviewer, METexpress, METcalcpy, METplotpy

New Feature Checklist
See the METplus Workflow for details.

[ ] Complete the issue definition above.
[ ] Fork this repository or create a branch of develop.
Branch name:  feature_<Issue Number>_<Description>
[ ] Complete the development and test your changes.
[ ] Add/update unit tests.
[ ] Add/update documentation.
[ ] Push local changes to GitHub.
[ ] Submit a pull request to merge into develop and link the pull request to this issue.
Pull request: feature <Issue Number> <Description>
[ ] Iterate until the reviewer(s) accept and merge your changes.
[ ] Delete your fork or branch.
[ ] Close this issue.

Link to paper from Mrinal Biswas which may be useful:
https://journals.ametsoc.org/view/journals/mwre/141/9/mwr-d-12-00357.1.xml


Dashboard showing Codespaces usage

Dependent on #42
We are recording daily metrics about Codespaces usage, so we should make those available on a dashboard within Grafana. This will tell us if people are using Codespaces and how they're using it.
This text is based on this comment by Iain
We can derive the number of users that are developing their study code in Codespaces, over time. We hope this number is non-zero (someone is using a Codespace 🤞🏻) and is similar to the rate at which new studies are approved, albeit with a lag. For example, if a new study is approved every week for four weeks, then we hope that the number of users that are developing their study code in Codespaces will (eventually) increase to four. Knowing the user and repo will help us in the observation stage of the initiative: We will know who to ask about what, when we want to know about the experience of developing study code in Codespaces.
It would be useful to derive the distribution of time deltas between when a Codespace was created and when it was last used, as the distribution could help us calibrate our usage policy. For example, if the peak of the distribution was consistently low, then we could infer an ephemeral pattern of use. The current maximum retention period of 14 days would appropriate. However, if the peak of the distribution approached 14 days, then we should reevaluate the current maximum retention period, or at least our communication of it, to prevent users from loosing their work.
It would be useful to derive the distribution of time deltas between when a repo was created and when the associated Codespace was last used. We think this distribution will have positive skew -- that is, a large number of small deltas -- as this would demonstrate that new study code is being edited in Codespaces. However, we're very interested in repos to the right of the distribution, as these would demonstrate that old study code is being edited in Codespaces. These studies may be larger, more complex, and depend on older versions of our tools, and may help us address any challenges associated with developing study code in Codespaces sooner rather than later.
I expect this work will take around one day.
Acceptance criteria

A Grafana dashboard that has one or more graphs showing Codespaces usage.
The dashboard is accessible by the REX Team and Catherine.
Catherine (or Lucy, if she's not available) has reviewed the dashboard.

This depends on #42 being merged and deployed. @Jongmassey mentioned that the failed silently, so there isn't (yet) any data from which to create a dashboard.

I've created a starter dashboard here: https://dashboards.opensafely.org/d/bdo2ig1sxis5ca/codespaces?orgId=1

I've updated Lucy's starter dashboard, which now displays:

a histogram and frequency distribution of Number of Codespaces by Lifespan (Days)
a time series of Number of Codespaces Created by Day
a table of Recent Use

I showed and told the tech team about this dashboard in a recent weekly tech team meeting.
It's going to take more time than I anticipated to derive the distribution of time deltas between when a repo was created and when an associated Codespace was last used, so I've created ebmdatalab/metrics#187.

@lucyb kindly reviewed the dashboard,^1 so I shall close this issue.


Issue 9 card component

Card Component changes

Default  card with no image
Left aligned card
Top aligned card
Docs
Tests

nice work! thanks for the contribution. may need to tweak styling for dark mode.


Had to fix the version of OnTime that the service hook is valid for

Just a single line change to the version check in the ontime.rb service.

You really need to pull in my master before you make further changes :)

Also, the tests were broken because of the version number.  I had to bump the major to v12 in 82e36e82e7515a2fd5f98dbb7020661d399cfeff


All images are low quality. Ugly! Can't even tell what they are.

Version

[X] Yes

General Question

[X] No

What happened?
When I run "Generate"  all my images come back with low gamma, they look awful, like something from a 1930s computer, can't even tell what they are.
What have you tried?
I went to YouTube and Google but no help.
Relevant log output
No response
Protect your information

[X] I Agree

@Glitchbes did you make all of your layer items on the same Canvas size?

Both the background and layers are all the same zize, height and width, exported as png at 32 bit, platform used is Gimp.

What is the size of your layers and the size of your format width and height in the config.js file?
If these are different then the image will be distorted.

Hi there! Having the same issue. All exported in high quality png but when images generate they are low quality. Sizing of layers are all the same and I have even adjusted the width/ height of format to see if it helps. Size H: 608 W:740.  What else should I be looking at to get a clear image output? Thanks so much for your help

I ended up importing all mine that I made in Gimp into Figma, then exporting them out of Figma into a new layers folder.
Powered by Cricket Wireless
Get Outlook for Androidhttps://aka.ms/AAb9ysg

From: Cadevens1 @.>
Sent: Saturday, February 5, 2022 11:53:35 AM
To: codeSTACKr/create-10k-nft-collection @.>
Cc: Jonathan Powell @.>; Mention @.>
Subject: Re: [codeSTACKr/create-10k-nft-collection] All images are low quality. Ugly! Can't even tell what they are. (Issue #73)
Hi there! Having the same issue. All exported in high quality png but when images generate they are low quality. Sizing of layers are all the same and I have even adjusted the width/ height of format to see if it helps. Size H: 608 W:740. What else should I be looking at to get a clear image output? Thanks so much for your help
—
Reply to this email directly, view it on GitHubhttps://github.com/codeSTACKr/create-10k-nft-collection/issues/73#issuecomment-1030658234, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AXQISKMSH4M45I76M5QOA7DUZVIY7ANCNFSM5NIBJDKA.
Triage notifications on the go with GitHub Mobile for iOShttps://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Androidhttps://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you were mentioned.Message ID: @.***>

Interesting— I initially created mine in Figma and exported them straight from platform. Did the Figma and new layer folder solve your issue? Mine still are really low quality and pixelated.

I had to add a frame into each section of my layers, it's complicated to explain in "typing".
I played with it for several hours before getting it all correct. Wasn't as easy as it should have been. But yes all my images are now correct, when ran through generator.
Powered by Cricket Wireless
Get Outlook for Androidhttps://aka.ms/AAb9ysg

From: Cadevens1 @.>
Sent: Saturday, February 5, 2022 12:04:20 PM
To: codeSTACKr/create-10k-nft-collection @.>
Cc: Jonathan Powell @.>; Mention @.>
Subject: Re: [codeSTACKr/create-10k-nft-collection] All images are low quality. Ugly! Can't even tell what they are. (Issue #73)
Interesting— I initially created mine in Figma and exported them straight from platform. Did the Figma and new layer folder solve your issue? Mine still are really low quality and pixelated.
—
Reply to this email directly, view it on GitHubhttps://github.com/codeSTACKr/create-10k-nft-collection/issues/73#issuecomment-1030660652, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AXQISKPJY6FEY7MNNY7TKWLUZVKBJANCNFSM5NIBJDKA.
Triage notifications on the go with GitHub Mobile for iOShttps://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Androidhttps://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you were mentioned.Message ID: @.***>

Got it— I have frames exactly the same for each layer. But I noticed after adjusting a few times that my height and width, don’t seem to change output when i adjust them within code. This could be causing the distortion , but am unsure how to fix. Any suggestions?

I just selected all images, frame included (ctrl+a), that were within frame. Then put h/w in, it lined them all up in one go.
Powered by Cricket Wireless
Get Outlook for Androidhttps://aka.ms/AAb9ysg

From: Cadevens1 @.>
Sent: Saturday, February 5, 2022 12:36:56 PM
To: codeSTACKr/create-10k-nft-collection @.>
Cc: Jonathan Powell @.>; Mention @.>
Subject: Re: [codeSTACKr/create-10k-nft-collection] All images are low quality. Ugly! Can't even tell what they are. (Issue #73)
Got it— I have frames exactly the same for each layer. But I noticed after adjusting a few times that my height and width, don’t seem to change output when i adjust them within code. This could be causing the distortion , but am unsure how to fix. Any suggestions?
—
Reply to this email directly, view it on GitHubhttps://github.com/codeSTACKr/create-10k-nft-collection/issues/73#issuecomment-1030666312, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AXQISKLRZE35FKPQSR3D77LUZVN3RANCNFSM5NIBJDKA.
Triage notifications on the go with GitHub Mobile for iOShttps://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Androidhttps://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you were mentioned.Message ID: @.***>


One service creates multiple ReactiveFeignClients?

How to use multiple ReactiveFeignClients to connect to the same service?

Are you going to use auto-configuration or manual configuration of feign clients?

You should specify name attribute in this annotation. Feign client bean will be registered with the name of name + "ReactiveFeignClient"
if you had not specified qualifier attribute.

In case if you want to use the same client (interface) with different configs you should provide different qualifier attribute in ReactiveFeignClient annotation


some h3index values create distorted long horizontal line on map

h3 values examples -859b436ffffffff ,859b5dd7fffffff ,859b5dc7fffffff
I created hex boundary by using h3ToGeoBoundary(perh3index['key'],true) and when i map them on map they create long horizontal distorted hex(as shown in image).

Can I know how to resolve this incorrect hex boundary conversion issue?

This is a rendering issue, not an issue with library output. The library guarantees output within standard lat/lng bounds (-180 to 180 longitude, -90 to 90 latitude), but many renders have poor results for polygons that cross the antimeridian.
To fix in Javascript, see this function: https://observablehq.com/@nrabinowitz/mapbox-utils#fixTransmeridian - it takes the coordinates on the east (negative) side of the antimeridian and turns them into non-standard values > 180 degrees, which generally renders correctly.


Add note about security descriptors

Adding a note about security descriptors when the image is captured from a subfolder. When working with Windows images, this might lead to a captured image with bad ACLs.

Docs Build status updates of commit 1ce6282:
:x: Validation status: errors
Please follow instructions here which may help to resolve issue.

File
Status
Preview URL
Details

docset/windows/dism/New-WindowsImage.md
:x:Error

Details

docset/windows/dism/New-WindowsImage.md

[Error]

Failed to parse windows/dism/New-WindowsImage.md due to :47:(248) ' > [!IMPORTANT]
 > When the path specified is not...'
 Expect Heading, please use PlatyPS to do content validation

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


SyntaxError: Named export 'AppClasses' not found.

Check that this is really a bug

[X] I confirm

Reproduction link
https://github.com/tranhoang1010vn/nextjs-konsta.git
Bug description
error - SyntaxError: Named export 'AppClasses' not found. The requested module '../../../shared/esm/classes/AppClasses.js'
is a CommonJS module, which may not support all module.exports as named exports.
file:///D:/Repo-Nextjs-QLGV/node_modules/konsta/react/esm/components/App.js:6
import { AppClasses } from '../../../shared/esm/classes/AppClasses.js';
^^^^^^^^^^
SyntaxError: Named export 'AppClasses' not found. The requested module '../../../shared/esm/classes/AppClasses.js' is a CommonJS module, which may not support all module.exports as named exports.
I use dependencies : {
"axios": "^0.26.1",
"konsta": "^0.8.1",
"next": "^12.1.5",
"next-auth": "^4.3.2",
"react": "^18.0.0",
"react-dom": "^18.0.0"
},
Expected Behavior
No response
Actual Behavior
No response
Konsta UI version
0.8.1
Platform/Target and Browser Versions
Windows 10
Validations

[X] Follow our Code of Conduct
[X] Read the docs.
[X] Check that there isn't already an issue that request the same feature to avoid creating a duplicate.
[X] Make sure this is a Konsta UI issue and not a framework-specific issue

Would you like to open a PR for this bug?

[ ] I'm willing to open a PR

I'm updated demo, sr

should be fixed in 0.8.2

thank you! it's work


fix for restore-dbafromsnapshot

fixes errors when using -snapshots that were caused by it deleting all snapshots, including the snapshot being restored. @niphlod please approve/merge.

LGTM


Preferred method of avoiding FOUC

Hello,
I used to use src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" in my  tags. I did this to avoid alt="some alt text" FOUC when initially loading the page. However, given issues like the following:
https://github.com/aFarkas/lazysizes/issues/509
(the above link references to the below 2 links, in another library)
https://github.com/verlok/lazyload/issues/212
https://github.com/verlok/lazyload#do-not-use-placeholder-images
I have stopped doing using the transparent pixel method. I noticed that you are also removing some of these same things in some of your latest commits. I also had an unusual condition that came about because of the use of the 1x1 pixel being used in place of another image that had a different ratio cause some DOM layout issues until the image became lazyloaded.
However, the result is that I now sometimes have the flash of alt text before my images begin loading. What is the preferred method of avoiding this? Currently, the only other solution I have is to stop using alt="" attribute completely. If I add .lazyload{ visibility: hidden; }, this negatively affects image rendering time on initial load as it places the images further down the priority chain. If I use class="lazypreload", then it loads all my images, even ones that I don't want to load yet. So, I'm not sure of the best solution?

I settled on
.lazyload {
  opacity: 0;
}

which seemed to work OK.

With current version you can do this:
.lazyload {
  opacity: 0.0001;
}

With next version you will be able to do this:
.lazyload {
  visibility: hidden;
}

Because then I will handle visibility: hidden; only if the .lazyload element and his parent is hidden not only the element itself.

@aFarkas Thanks for the reply. Is there a particular reason that opacity: 0.0001 is needed? In the code, I see special conditions for display: none and visibility: hidden, but nothing for opacity: 0, so I was just curious.

Well, if you are using it only on img elements it is fine. If you are using it on div elements (positioned ancestor elements) it might be treated identically to visibility: hidden. But you shouldn't run into this.

Hi @aFarkas from another (totally unrelated, as far as I know) AFarkas!
I've applied visibility: hidden on the .lazyload class and it works well in Chrome and Safari but does not work for Firefox browsers. I needed to add a Firefox-specific selector like this:
 @-moz-document url-prefix(): {
   &.lazyload: {
     visibility: hidden
  }

Not sure why this is needed but thought I'd drop it here.

@aFarkas Thanks for the reply. Is there a particular reason that opacity: 0.0001 is needed? In the code, I see special conditions for display: none and visibility: hidden, but nothing for opacity: 0, so I was just curious.

I know it's been a long time since you asked the question but if you are still interested in the response, It's llinked to the fact that transitionning to opacity 0 triggers a repaint of the component while opacity 0.001 does not !
tldr: 0 to 1 ==> repaint | 0.1 to 1 ==> no repaint


Fix AmbiguousMatchException for .Net Core 3.1

Proposed fix for https://github.com/dbelmont/ExpressionBuilder/issues/65
It appears that in .Net Core 3.1, the call would be confused between the standard string.Contains method and the System.Linq .Contains generic extension method. This issue can be resolved by making the GetMethod call more specific.

 Here is an overview of what got changed by this pull request:

Complexity decreasing per file
==============================
+ ExpressionBuilder/Configuration/Settings.cs  -1

See the complete overview on Codacy

I did not mean to have those other commits in this pull request. Sorry about that


Improve the appeal of the landing pages (docs and README)

Update the Iris README markdown to be consistent with other SciTools projects.
Gave the package a description (for pypi).
Minor spruce of the Iris docs layout to include the tagline and the forkme button

Page preview: https://rawgit.com/pelson/scitools.org.uk/iris_docs_dev_tweak/iris/docs/phil_dev/index.html
README preview: https://github.com/pelson/iris/tree/markdown_readme

[x] Spell check on README

Whilst it needs doing, I do not intend to spruce up the index.html page on the iris docs in this PR. I will probably do that once this is merged, and re-use the content from README.

cc @bjlittle - I'd like to merge this for v2.1.


Update using.html.md.erb

Updated with 2.4.4 documentation links.

Created pull request under master repo by mistake. Closing it.
Sorry for inconvenience.


perf(plugins-iterator): refactor precedence matching algoritm

Data structure to store plugin scope configurations
This patch set changes how the Plugins Iterator finds suitable plugin configurations for defined precedence rules.
To achieve that, we move from a nested table structure that stores various combinations of route, service and consumer to a flat hashmap.
Before.
combos[name].rsc[cfg.route_id] =
combos[name].rsc[cfg.route_id] or {}
combos[name].rsc[cfg.route_id][cfg.service_id] =
combos[name].rsc[cfg.route_id][cfg.service_id] or {}
combos[name].rsc[cfg.route_id][cfg.service_id][cfg.consumer_id] = cfg

combos[name].rc[cfg.route_id] =
combos[name].rc[cfg.route_id] or {}
combos[name].rc[cfg.route_id][cfg.consumer_id] = cfg
-- and so on for all possible combinations

After:
-- Build a compound key using the route_id, service_id, and consumer_id
local compound_key = PluginsIterator.build_compound_key(route_id, service_id, consumer_id)

-- Store the plugin configuration in the 'combos' table using the compound key as index
combos[name][compound_key] = cfg

The build_compound_key function concatenates the ids of scoped entity to generate a unique index.
Lookup algorithm
The change to the data structure allows us to move away from the concept of combo_keys to an index based lookup.
Before:
if route_id and service_id and consumer_id and combos[COMBO_RSC]
  and combos.rsc[route_id] and combos.rsc[route_id][service_id]
  and combos.rsc[route_id][service_id][consumer_id]
then
  return combos.rsc[route_id][service_id][consumer_id]
end

After:
return combos[build_compound_key(route_id, service_id, consumer_id)] or
	-- ...

Aligning db-less and db modes
This patch also streamlines the way these different modes handle configuration retrieval.
In traditional mode, we stored a placeholder value of true in the lookup tables to indicate that a configuration is in fact present. This would trigger a cache retrieval with transparent database lookup in case of a cache-miss.
In db-less mode, we saved the entire configuration alongside the lookup table. This reduces the lookup-time by avoiding potentially costly detours to the database, as well as the extra function call to cache
The obvious drawbacks are an increased memory footprint for traditional mode as we're saving configuration data alongside the lookup table.
In db-less mode, the memory footprint should be slightly reduced due to a more efficient/predictable table structure.
This change also allows to drop cache-warmups during Plugins Iterator rebuilds, which speeds rebuild times in traditional mode.
Tests
Tests to support the validity of this change are here:
kong/spec/02-integration/15-plugins-iterator
Performance measurements
Where baseline is a nightly image without these changes
and variant is containing the described changes
Test scenario:
10.000 configured plugins scoped to separate routes, ramping pressure with 10k req/s peak load

Traditional mode

Hybrid mode

Interpreting the measurements
Overall, the increases or decreases in performance are not significant enough to claim a real impact.

Aligning db-less and db modes

@hbagdi, I think this has been proposed before, but we have always refused to do it because of "consumer" entity, and thus we have had many discussions about "getting rid of consumers". The problem comes from the traditional mode use case, where there are unbounded number of consumers (cardinality of consumers can be low or extremely high, and then again there may or may not be plugins attached to each consumer), and then associated plugin (potentially millions). Sure we have the same problem if we try to migrate such traditional customer to hybrid or dbless. On the otherhand we try to do this refactoring as part when we introduce consumer groups, which would hopefully lessen the use of consumers. But if there are customers using millions of consumers and then having say rate-limiting plugin attached to each consumer, then this might get problematic.

We shouldn't be differentiating the cardinality of consumers across hybrid mode and traditional mode. I do get that there are technical reasons why different cardinality assumptions exists and how the iterator is built in both modes.
We should keep on aligning both modes as much as possible and try to get to a point where hybrid performs at par with traditional mode. This will take time.

We shouldn't be differentiating the cardinality of consumers across hybrid mode and traditional mode. I do get that there are technical reasons why different cardinality assumptions exists and how the iterator is built in both modes.
We should keep on aligning both modes as much as possible and try to get to a point where hybrid performs at par with traditional mode. This will take time.

@hbagdi, hybrid/dbless mode is arguable more performant and simpler with normal number of plugins. Iterator just build everything in memory on all the workers. No runtime cache lookups, no runtime db queries when things are not in cache. But with huge number of plugins the change here can cause major issues on those that try to upgrade (aka cannot upgrade, e.g. memory usage jumps from 400 MB to gigabytes per worker or something). As said, I have proposed it before in 2019, which was not given green light, so my question is, is it ok now?

@jschmid1 please cherry-pick in EE

It is reverted at https://github.com/Kong/kong/pull/10751. Kick out of 3.3.


iOS - implement deep linking for account screen

Description
LEARNER-6448
implement deep linking for account screen
How to test this PR

Add "https://edx.app.link/account" in notes, opening this url by clicking will open the app and navigate to account screen.

@saeedbashir ready for another pass.

@salman2013 If the profile screen is opened from Account screen then the deep link is not opening Account screen.

@saeedbashir i fixed the issue. I called the dismiss on root view controller. I think its fine if the dismiss method call for every deep link process because it mention in the definition that this method take care of by itself if the view is presented or not.
https://stackoverflow.com/questions/33520899/single-function-to-dismiss-all-open-view-controllers?answertab=active#tab-top

@saeedbashir ready for another pass.

@zeshanarifios The above mention bug is video player related so i have created separate ticket for it. https://openedx.atlassian.net/browse/LEARNER-6687
I have fixed the comments please take a look into it.

@salman2013 some test cases start failing, Please look into it.

@zeshanarifios I have fixed the comments.

@zeshanarifios Please take a look into it.

@salman2013
Unable to open account screen with deep link in this case.
Steps to reproduce

Open edit profile screen.
Touch Change Button.
Select Take photo or Choose a photo.
Now open your account deep link.
It does not open account screen.

@saeedbashir please review this PR.

You are right but we have to handle that thing separately, In account screen case we face multiple stack of same view if we open the profile and image capture view agin and again after deep linking, for that reason we decide to dismiss previous views before navigating to deep link view.

@saeedbashir Please take a look into it.


DOC-8738: Warn users that generating the debug zip can degrade the cluster

Addresses DOC-8738
(1) Updated cockroach debug zip page with cluster impact warning and recommendation to filter by time range.

Before I can document https://github.com/cockroachdb/docs/issues/16919, I need to clarify what is the default value. For context, see this slack thread.

Clarification: https://github.com/cockroachdb/cockroach/pull/104133 changed the default to true and concat-ed the range info into 1 ranges.json file.

@dt, PTAL, I included your recommendation under the --include-range-info flag description.


Revert "Generate semantic tokens legend programmatically + re-enable …

…semantic tokens tests (#6423)"
This reverts commit 3a8659bfdd000663650990a59ff78ae6098bf8e1.
Summary of the changes

I did bad and merged before the Roslyn side PR was inserted into VS 😶

I did bad and merged before the Roslyn side PR was inserted into VS 😶

Surprised this doesn't break integration tests

Surprised this doesn't break integration tests

I think integration tests are currently disabled due to needing newer versions of VS. @ryanbrandenburg this might be another example of needing integration tests to run against VS main

Surprised this doesn't break integration tests

Due to infra limitations we're not currently running integration tests against PRs by default. Fixing that is probably the next thing I'll work on once I finish my current chain, but until then if people making significant/dangerous changes could run it manually that would be great. I can give people a short guide on how to do it if that helps.


Propagate baseHref from parent window to iframe-renderer-outlet

Part of the fix for vaadin/vaadin-router#113

This change is

Review status: all files reviewed at latest revision, all discussions resolved.

Comments from Reviewable

Review status: all files reviewed at latest revision, all discussions resolved, all commit checks successful.

Comments from Reviewable


Reproducing results

I have got this error "RuntimeError: margin_ranking_loss : All input tensors should have same dimension but got sizes: input1: torch.Size([50, 1]), input2: torch.Size([50, 1]), target: torch.Size([50])
python3: can't open file 'occ.py': [Errno 2] No such file or directory"
I have tried but couldn't resolve this issue

@pushpendra9950 Hi, it seems like an error due to pytorch version being too old. Can you provide me with your pytorch/torchvision version, thanks

@pushpendra9950 In addition, given your error message, I think you can try one simple thing:
replacing the original "loss_mr" with the following:
loss_mr = nn.MarginRankingLoss(margin=self.dist)(gt_scores.view(-1, 1),
max_novel_scores.view(-1, 1),
torch.ones(hard_num * self.K).to(self.device).view(-1,1))

@Yujun-Shi  I have replaced  the code but I have got the same type of error ''RuntimeError: margin_ranking_loss : All input tensors should have same dimension but got sizes: input1: torch.Size([6, 1]), input2: torch.Size([6, 1]), target: torch.Size([6]) ''
My PyTorch version is 1.11.0

@pushpendra9950 Hi, thanks for providing the version information. I've successfully replicate your error message in Pytorch 1.12.0. Now I've updated the code in the main branch and it should be running smoothly with the Pytorch 1.12.0.


ERROR: Undefined color: "unspecified-bg"

Just pulled from the develop branch and make in the .emacs.d folder.
Then starting emacs will get this error.

This should be fixed as of https://github.com/hlissner/doom-emacs/commit/76a1e8a279b7e1cf98e321b6c06a2bf415393a7a. Let me know if that isn't the case.


Loop in a more rubyish way in Readme

Ruby devs generally iterate using the more functional methods rather than setting up an index and mutating it.
If this they are the target audience of this doc this would probably be clearer.

Currently, MemoryView does not have an each method, so we can not write such code.
I tried to implement each method, but I can not judge whether this is suitable for MemoryView.

Sorry, I (wrongly) assumed that memory view was just a ruby array with the data.
It could be nice to define an each and include the enumerable so that transforms of the data could be defined in terms of map/reduce, but I also understand why you could have concerns around it.

MemoryView is a large general purpose buffer, so I'm worried about the need for methods like each to iterate from start to end.
@Hywan, could you tell us your opinion?

I'm not familiar with Ruby idiomatic API to be totally honest.
I like this patch https://github.com/irxground/ruby-ext-wasm/commit/eeaf9f71a355b69d9c8469d44d94fa4d38e19163. I think it makes sense and it feels more idiomatic.
About .include?, I guess it's fine to implement it too. I've no particular opinion against. Wouldn't it be possible to achieve that with a slice though? Anyway, go for it, I'm OK!

Thank you @Hywan. I will send a PR later.

Can we close this in favor or #15?

This pull request is a modification of the README. PR #15 does not include that.

@Hywan this is a doc change that was incorrect until @irxground implemented what it is documenting in #15.
My personal take is this is more clear documentation for ruby devs, especially now that it is actually implemented ;-)
Thanks again @irxground for figuring out the impl!

bors r+

You're right, let's go :-).

Thanks!

Thank you for merging my feature-request-as-documentation ;-)


fix register cluster broker without auth info

This PR is a

[ ] Feature Implementation
[x] Bug Fix
[ ] Documentation

What this PR does / why we need it:
we can not register a cluster broker without auth info
Which issue(s) this PR fixes

Fixes #2445

/assign @carolynvs @jberkhahn

/ok-to-test


Traceback information output.xml

When I run tests I get output in vim's quickfix window, where I can jump between files in traceback.
With Python this works out of the box, some template languages like Django and Jinja2 have this feature.
But RobotFramework does not have it.
It would be really useful if output.xml would have traceback information about failure, so that I could jump directly to a .robot file where test failed and also could jump to other places if failure happened somewhere in resource file or in a library.

First of all, sorry for ignoring this issue for so long. It was buried under a pile of other issues during summer time when I didn't have much time to follow this tracker.
Tracebacks are logged using the debug level and can be enabled by running tests with --loglevel DEBUG option.


LEN function

we connected airflow with UI OMD, then created several DQ test checks in different databases, but we always see the same result, the DAG fails and is uninformative (the log in the attachment). This is in a dev environment. In the prod environment, air flow works separately and DQ checks work well.
I tried to run the same DQ check again and I see an error:
[SQL: SELECT anon_1.mean, anon_1."valuesCount", anon_1."distinctCount", anon_1.anon_2, anon_1."minLength", anon_1.anon_2 AS anon_2_1, anon_1."maxLength", anon_1."nullCount", anon_1.anon_2 AS anon_2_2, anon_1.anon_2 AS anon_2_3
FROM (SELECT avg(LEN(item_article)) AS mean, count(item_article) AS "valuesCount", count(DISTINCT item_article) AS "distinctCount", NULL AS anon_2, min(LEN(item_article)) AS "minLength", NULL AS anon__1, max(LEN(item_article)) AS "maxLength", sum(CASE WHEN (item_article IS NULL) THEN :param_1 ELSE :param_2 END) AS "nullCount", NULL AS anon__2, NULL AS anon__3
FROM beeline.bee_1c_item_price) anon_1
WHERE ROWNUM <= 1]
[parameters: {'param_1': 1, 'param_2': 0}]
(Background on this error at: https://sqlalche.me/e/14/4xp6)

{core.py:231} WARNING - Error trying to compute column profile for market_code - (cx_Oracle.DatabaseError) ORA-00904: "LEN": invalid identifier

Version of Oracle:
Oracle Database 12c Enterprise Edition Release <IP_ADDRESS>.0 - 64bit Production
PL/SQL Release <IP_ADDRESS>.0 - Production
"CORE	<IP_ADDRESS>.0	Production"
TNS for Linux: Version <IP_ADDRESS>.0 - Production
NLSRTL Version <IP_ADDRESS>.0 - Production

many thanks for reporting!


Feedback on your versioning strategy: IMHO, "0.9.0-rc29" is too much of an understatement

InfluxDB is a great product and I really enjoy to see how much effort you put into it to make it even greater. Many thanks for your great Open Source contribution!
Hence, sorry for the following non-technical feedback, which you perhaps might even dislike as it perhaps does not sound constructive from your perspective (as you are focusing on stabilizing your code base currently). But your "release candidate" phase (which now lasts for many many weeks already) up to currently a version like "0.9.0-rc29" is IMHO really too much of an understatement.
My points are in detail are:

A major.minor.micro versioning scheme already has a micro-level for hotfixes, release candidates, etc. So, usually your main version is "0.9" and your release candidates are perhaps "0.9rc1" and "0.9rc2" before you went to "0.9.0". Attaching the release candidates to the end as in "0.9.0-rc29" implies that you are using more or less a major.minor.micro-nano scheme or something like this. Perhaps your intention, but this is usually far too much.

Independent of (1), having 29(!) release candidates is strange at all. In really every reasonable development life-cycle one has about 1-4 release candidates or the life-cycle itself is already broken by definition IMHO. Release candidate phase is for fixing last-minute bugs just before the release. This also implies for me that what you are doing currently is not really a "release candidate" phase.

The combination of "0.9.0-rc29" means that you have the 29th release candidate for a micro-version "0.9.0" of the minor version "0.9" of the major version "0". Independent of (2), for a micro version "0.9.0" nobody really expects release candidates at all, because the minor version "0.9" already heavily implies that you are in an alpha or maximum beta product quality era. There is no reason for such a dramatic understatement that you need 29th release candidates to stabilize a micro version "0.9.0". It would be even strange to have "0.9rc29". For "0.9" most people expect just "0.9.0" up to perhaps "0.9.29" as you treat the micro-level as your stabilization "digit".

Sorry for having written this. I really do not want to nerve you in any way, but your product is such excellent in contrast to your IMHO rather strange versioning scheme that I felt forced to say something about it at least once. No offence meant!

http://influxdb.com/blog/2015/05/01/InfluxDB-v0_9_0-release-update.html

Thanks for the feedback, rse, we're not particularly fond of the current naming scheme, either, but we're far enough down the road that we'll use it until there's a good opportunity to switch. (Yet another reason to be excited about 0.9.0 final!)
The RC nomenclature derives from a premature and overly optimistic final release schedule that had some external dependencies driving dates. That's been mitigated recently but we're already into the RC cycle.
The 0.9.0 name, as opposed to 0.9, comes from the previous version of InfluxDB, the 0.8.x family, in which point releases introduced significant functionality. You can expect that 0.9.1 will have expanded functionality and performance over 0.9.0, not just bug fixes. Whether that's the best use of point releases or not is somewhat moot as we need a few more significant releases to get to 1.0. Unless we start doing releases like 0.10.x we're stuck with 0.9.x. To me 0.10.x is far more confusing.


Tree-shaking : Using icons from @mdi/js imports entire package

Laravel Mix Version: 6.0.48 (npm list --depth=0)
Node Version (node -v): 18.3.0
NPM Version (npm -v): 8.11.0
OS: Mac OS M1 last version

Description:
I'm using a few icons from the @mdi/js. The package is added as devDependency and the import is done in this way:
import { mdiFlipHorizontal, .. } from "@mdi/js";
After building the project with webpack this result in approx. 1.6MB extra size added to the output bundle. Is there any way to just import a single icon?
Documentation : https://dev.materialdesignicons.com/getting-started/webpack
Thx

any idea ?


v0.13.0-alpha endgame

DRIs

DRI

Endgame
@Jeadie

QA
@ewgenius

Docs
@sgrebnov

Comms
@karifabri

Milestone Release Timeline

Date
Description

Planning
20th May

Release
20th May

Announcement
21st May

Planning Checklist

[ ] Review the specific GitHub Milestone

Release Checklist

[ ] All outstanding spiceai feature PRs are merged
[ ] Full test pass and update if necessary over README.md (please get screenshots!) @y-f-u
[ ] Full test pass and update if necessary over Docs (please get screenshots!) @y-f-u
[ ] Full test pass and update if necessary over existing and new Samples (please get screenshots/videos!) @y-f-u
[ ] Full test pass and update if necessary over existing and new Quickstarts (please get screenshots/videos!) @y-f-u
[ ] Merge Docs PRs
[ ] Merge Registry PRs
[ ] Merge Samples PRs
[ ] Merge Quickstarts PRs
[ ] Update release notes
[ ] Update acknowledgements by triggering Generate Acknowledgements workflow
[ ] Verify version.txt and version in Cargo.toml are correct using docs/RELEASE.md
[ ] Ensure E2E Test CI is green on trunk branch
[ ] QA DRI sign-off
[ ] Docs DRI sign-off
[ ] Create a new branch release-v[semver] and merge all relevant changes into it. E.g. release-v0.9.1-alpha
[ ] Release the new version by creating a pre-release GitHub Release with the tag from the release branch. E.g. v0.9.1-alpha
[ ] Release any docs updates by creating a v[semver] tag.
[ ] Trigger algolia search crawler workflow, to reindex updated docs.
[ ] Update the Helm chart version (image.tag version & chart version). Ensure docker build for the tag from the release branch completed (~2 hours) and trigger the Release Chart workflow.
[ ] Final test pass on released binaries
[ ] Run E2E Test Release Installation
[ ] Update version.txt and version in Cargo.toml to the next release version.
[ ] Update versions in brew taps
[ ] Remove the released version from the ROADMAP

Announcement Checklist

[ ] X: @spice_ai
[ ] Reddit: reddit.com/r/spiceai
[ ] Discord: #announcements
[ ] Telegram: spiceai
[ ] Blog: blog.spiceai.org

PR reference

PR 1.
PR 2.
etc.

Quickstarts needed to test

[ ] https://github.com/spiceai/quickstarts/tree/trunk/ftp
[ ] https://github.com/spiceai/quickstarts/tree/trunk/acceleration/data-refresh
[ ] https://github.com/spiceai/quickstarts/tree/trunk/s3

Docs needed:

[ ] FTP/SFTP
[ ] Updated s3 for CSV support

For this release, only bug fixes after commit https://github.com/spiceai/spiceai/commit/fa3279b7d9fcaa5e8baaa2425f69b556bb30e309

Acknowledgements: https://github.com/spiceai/spiceai/pull/1433

E2E Test CI: https://github.com/spiceai/spiceai/actions/runs/9165591346

Waiting on docker image build: https://github.com/spiceai/spiceai/actions/runs/9168341518


Removed unused localization key

Step 1: Describe the changes

Localization key "CommandUsageShowName" wasn't used anywhere in code
Localization key "CommandUsageShow" had not enough details

Step 2: Review the checklist
Please use the checklist that is most closely related to your Pull Request (you only need to use one checklist, and you can skip items that aren't applicable or don't make sense):

[x] Ensure that the changes compile and match the formatting conventions and standards used

Step 3: Documentation
If your change involves a hook or API, please make sure to update or add the related documentation as well.

These are there because they are going to be used.


refactor(core): Split the Core - Step 1

Split the Core to have:

CommonCore (Base)
OpenWorld Core
RapidCore

BREAKING CHANGE: Import statements and some names need to be updated.

[x] Code is up-to-date with the main branch.
[x] You've successfully built and run the tests locally.
[x] There are new or updated unit tests validating the change.

I won't merge this yet. I will continue to push PRs and merge them to this till the whole change is done, and then merge this PR with the main.

#123 is merged into this.


Fix(useControlled): do not update default value when working with field-array

Fix(useControlled): do not update default value when working with field-array

@all-contributors please add @wellyshen  for ideas, code, doc, maintenance

@all-contributors please add @wellyshen for infra

@all-contributors please add @wellyshen for ideas, code, doc, infra, maintenance

@all-contributors please add @wellyshen for ideas, code, doc, infra, maintenance


Soft wrap flickering when very close to needing a vertical scrollbar

Prerequisites

[x] Put an X between the brackets on this line if you have done all of the following:

Reproduced the problem in Safe Mode: http://flight-manual.atom.io/hacking-atom/sections/debugging/#using-safe-mode
Followed all applicable steps in the debugging guide: http://flight-manual.atom.io/hacking-atom/sections/debugging/
Checked the FAQs on the message board for common solutions: https://discuss.atom.io/c/faq
Checked that your issue isn't already filed: https://github.com/issues?utf8=✓&q=is%3Aissue+user%3Aatom
Checked that there is not already an Atom package that provides the described functionality: https://atom.io/packages

Description
It seems that when the editor height is very close to needing a vertical scrollbar, soft-wrapped lines will rapidly flicker.  Possibly the vertical scrollbar is showing up for a fraction of a second before realizing it's not needed and hiding again.  On occasion, the cursor is also rendered incorrectly.  In the GIF, it is incorrectly appearing as a blue block below the line where the cursor actually is.
Steps to Reproduce
This might be difficult to repro because on my screen there's only two pixels before the scrollbar is required.

Have a file with soft-wrapped lines that almost reaches the threshold necessary for vertical scrollbars to appear
Move your cursor around the file, make some random selections, etc.

Expected behavior: Editor contents to stay static
Actual behavior: Soft-wrapped lines jump around as the scrollbar appearance is constantly recalculated
Reproduces how often: 100%

Versions
Atom    : 1.22.0-dev-b269b2086
Electron: 1.6.9
Chrome  : 56.0.2924.87
Node    : 7.4.0

If it's helpful, here's the contents of the file I was working on: https://gist.github.com/50Wliu/6d516fd9b32c1191303a5ac64ff39fe7
/cc: @nathansobo @ungb

Thanks for taking the time to contribute!
We noticed that this is a duplicate of https://github.com/atom/atom/issues/17268. You may want to subscribe there for updates.
Because we treat our issues list as the Atom team's backlog, we close duplicates to focus our work and not have to touch the same chunk of code for the same reason multiple times. This is also why we may mark something as duplicate that isn't an exact duplicate but is closely related.
For information on how to use GitHub's search feature to find out if something is a duplicate before filing, see the How Can I Contribute? section of the Atom CONTRIBUTING guide.


Add ignore option to all objects in stage screen

After #4056
Adds ignore option everywhere. This allows to ignore an unsupported object without going to the repo settings.

Alternatively, as my point was consistency in the columns - we could remove the ignore option from stage as it's kinda marginal and only allow to maintain the ignore list from settings.

I didn't know that "ignore" on the stage page adds to the ignore list. it would be indeed a rare thing. +1 for removing it.

@sbcgua @larshp @christianguenter2 any strong feelings about this?

no strong feelings, but suggest to dont have the ignore option, would rather have users move towards supporting additional object types
this pull request also contains the code from https://github.com/abapGit/abapGit/pull/4056/files ?

I will open another PR as we decided on the opposite anyway.

sorry for late response, very busy these days :(

I think all files have to be equal in this respect. So all should be ignorable - it is a right idea
I even have one object to ignore ... a BAPI ... it would take lots of effort to implement the support :(((
I also agree that it is a rare function, so from UX perspective probably should be removed from the main path


Fix link to Transitioner docs

This changes the docs to correct a broken link to the Transitioner page.
Test plan (required)
This is a documentation-only change, there are no tests.

Looks like the old link works fine on the documentation site. I'll close this.


Feature/2143 capture commissioner conflicts

What's included?
Closes #2143
Note: This PR is related to digital-platform: Feature/Export commissioner conflicts.
Who should test?
✅ Product owner
✅ Developers
✅ UTG
How to test?
Example exercise: https://jac-admin-develop--pr2179-feature-2143-capture-f3nlqymg.web.app/exercise/ONqUjAzhDS7rjh6dFJLB/reports/commissioner-conflicts

Go to "Commissioner Conflicts" report.
Check if the details of the commissioner conflicts are shown in the table.
Click "Export to Word" and check if the report is exported to Google Drive (https://drive.google.com/drive/u/0/folders/1RjUXKqkn1tJUvarj2mmvV6W1vvyAlk3v).

Risk - how likely is this to impact other areas?
🟢 No risk - this is a self-contained piece of work
Additional context
Demo:
https://github.com/jac-uk/admin/assets/79906532/4e2353d4-c291-4f47-a573-ea1f99b2a981
Related permissions
Have permissions been considered for this functionality?

No permission changes required
Permissions have been added / updated. Details:

PREVIEW:DEVELOP
can be OFF, DEVELOP or STAGING

I could not see any conflicts in the table. When I clicked the export button, it whirred and said 'Success' but no report was downloaded.

@nickaddy I have created some dummy data for testing. The report will be saved to Google Drive or you can download it from the UI.


MissionController2 was indexed with a really silly version.

This fixes it.

#rebuild ?

Oh jenkins, why are you trying to json validate build.sh?
I'm merging this because it sucks less than before, and it means all future changes will be tested against a 1.0.0 simulated install.


[Bug]: Cartesia Synthesizer Initialization Error

Brief Description
Error when initializing cartesia synthesizer
LLM
GPT-4
Transcription Services
Deepgram
Synthesis Services
None
Telephony Services
None
Conversation Type and Platform
real-time streaming with cartesia
Steps to Reproduce
  conversation = StreamingConversation(
      output_device=speaker_output,
      transcriber=DeepgramTranscriber(
          DeepgramTranscriberConfig.from_input_device(
              microphone_input,
              endpointing_config=PunctuationEndpointingConfig(),
              api_key=settings.deepgram_api_key,
          ),
      ),
      agent=ChatGPTAgent(
          ChatGPTAgentConfig(
              openai_api_key=settings.openai_api_key,
              initial_message=BaseMessage(text="What up"),
              prompt_preamble="""The AI is having a pleasant conversation about life""",
          )
      ),
      synthesizer=CartesiaSynthesizer(
          CartesiaSynthesizerConfig(
              api_key=settings.cartesia_api_key,
              voice_id=CARTESIA_VOICE_ID,
              sampling_rate=16000,
              audio_encoding="linear16",
              experimental_voice_controls={
                  "speed": "slow",
                  "emotion": "positivity: high"
              }
          ).from_output_device(speaker_output),
      ),
  )
  await conversation.start()

Expected Behavior
There should be no error at all
Screenshots

The error might be caused by unpublished release (latest is June) when replacing cartesia.tts with cartesia (July)
https://github.com/vocodedev/vocode-core/commit/949711f7f91a235a3c14c407cf53a4c23864b4a2

I'm having this issue as well and tried to go in and fix things in the Vocode files but wasn't able to figure it out as more and more errors came out.


MvcSiteMapProvider MVC5 External URL Re-routing to Home Controller / Index Method

I've posted this issue on Stack Overflow, so I won't rehash it here. But would love for somebody to respond to my issue if possible.
Basically, whatever value I specify for the url attribute, the link that's rendered on the page always points to the root of the application and not the url I specified.

Closing this issue as it appears to already be resolved. Feel free to reopen if that is not the case.


Auto email active members 1-week prior to a range-restricted event

See if the app can auto email active BHs 1 week prior to a Caliber-Restricted event.

it's Do-able, BUT how often does this happen?  you could flood peoples emails and they will start to drop from the mailer.  seems like we need another email check 'range_alerts' so they can un-sub from it and stay with range days & other


Newly added audio files not added to library correctly.

New sounds/songs are not correctly added to the library. They are not returned when searched, and/or are appended to the end of the sound/song list, rather than inserted alphabetically.
Cause still unknown. Attempts to resolve this issue seem to have failed.
Best bet is this is an issue caused by the asynchronous behaviour of certain methods; order of execution.

Fixed in next commit (v0.7.7).

Issue re-appeared after rewriting some methods.
Looking into issue now.

Issue appears to be related to the unintentional duplication of instances of the same objects (soundData, musicData) being out of sync when updating. One copy might be up-to-date while the other is not, resulting in sounds existing or missing from library when they should not.
This duplication is a result of the objects being part of the Util class, and the fact that two (or more) instances of this class are used; one during boot, and the other during operation.
As a fix, I am moving the soundData and musicData objects to be part of the bot.basic object, then re-referenced by the Util class, so multiple instances will reference the same sound/music data objects. I also need to find all locations these structures are updated; and make sure they are updating the basic.soundData or basic.musicData objects from now on (not changing what Util.soundData or Util.musicData are referencing, as this would reintroduce the bug during operation).

Issue appears to be related to the unintentional duplication of instances of the same objects (soundData, musicData) being out of sync when updating. One copy might be up-to-date while the other is not, resulting in sounds existing or missing from library when they should not.
This duplication is a result of the objects being part of the Util class, and the fact that two (or more) instances of this class are used; one during boot, and the other during operation.
As a fix, I am moving the soundData and musicData objects to be part of the bot.basic object, then re-referenced by the Util class, so multiple instances will reference the same sound/music data objects. I also need to find all locations these structures are updated; and make sure they are updating the basic.soundData or basic.musicData objects from now on (not changing what Util.soundData or Util.musicData are referencing, as this would reintroduce the bug during operation).

Issue appears to be related to the unintentional duplication of instances of the same objects (soundData, musicData) being out of sync when updating. One copy might be up-to-date while the other is not, resulting in sounds existing or missing from library when they should not.
This duplication is a result of the objects being part of the Util class, and the fact that two (or more) instances of this class are used; one during boot, and the other during operation.
As a fix, I am moving the soundData and musicData objects to be part of the bot.basic object, then re-referenced by the Util class, so multiple instances will reference the same sound/music data objects. I also need to find all locations these structures are updated; and make sure they are updating the basic.soundData or basic.musicData objects from now on (not changing what Util.soundData or Util.musicData are referencing, as this would reintroduce the bug during operation).


Further Details on Non-Local Geometric Message Passing Implementation

Hello,
I would like to express my gratitude for your sharing the valuable codebase. So3krates is an insightful work and inspires me a lot.
While going through the code, I noticed that I couldn't find the implementation details regarding non-local geometric message passing (corresponding to Eq. 14 in the paper). This concept is of particular interest to me, and I am wondering whether you are able to provide any guidance or additional information on where I can find the relevant implementation details about non-local geometric message passing.
Thank you for your kind sharing and support. I look forward to hearing from you.

Hey,
you are right, the current version has it not implemented yet, since we are currently working on a improved mechanism that will replace the one proposed in the paper.
However, in the branch v0.1 you can still find the mechanism. Eq (14) from the paper is basically implemented here https://github.com/thorben-frank/mlff/blob/1cea36ef1ccea70dbb19761ce04a7956e983b7e3/mlff/src/nn/layer/so3krates_layer.py#L715 where cutoff and construction of the neighborhood is done from https://github.com/thorben-frank/mlff/blob/1cea36ef1ccea70dbb19761ce04a7956e983b7e3/mlff/src/nn/layer/so3krates_layer.py#L101 to https://github.com/thorben-frank/mlff/blob/1cea36ef1ccea70dbb19761ce04a7956e983b7e3/mlff/src/nn/layer/so3krates_layer.py#L117.
Best,
Thorben

Hi,
Thank you very much for your prompt response and for addressing my concerns. As I am planning to utilize the non-local message passing module to investigate out-of-scale extrapolation in related tasks, I am curious about the rationale behind omitting the non-local geometric message passing in your implementation. From my understanding, this correction is significant for capturing non-local effects, which are essential for generalizing to larger molecules. Certain statements in your paper also seem to support this notion.
Additionally, I noticed that the attention coefficients are linked to a filter-generating function, $w_{ij}$, comprising a radial filter and a spherical filter. Based on this observation, would it be right to conclude that merely uncoupling geometric information from atomic features within the attention mechanism is adequate for capturing non-local effects, even when the receptive field is constrained by the radial neighborhood? Please let me know if my understanding is correct.
I appreciate your time and assistance in clarifying these points.
Best,
He Zhang

Indeed capturing non-local effects is an important part for describing larger molecules. However, generalization to larger structures is usually achieved by building purely local representations which can then be re-used on much larger structures by summing up local contributions. Within our paper, we show that although we are using non-local interactions generalization to larger structures can still be achieved. But non-local corrections are not neccessary for generalizing to larger structures from an ML point of view, since your model might still give you a low error on some test set. However, important effects that happen on large length scales will remain not contributed for. Note, that this holds also for a model with non-local corrections, if your data does not include the length scales that you want to generalize to. I think generalization to larger structures in a phyiscally meaningful way is still an open question so it is nice to hear that you are investigating it. To that end, be aware that the proposed mechanism in the paper specifically targets long-range interactions that depend on relative orientations of neighborhoods as is e.g. for electronically delocalized effects. Other long-range effects e.g. electrostatics which depend on pairwise distances are not be captured by the mechanism. Since we are interested in describing all effects at once, we ommited it from our current code and are working towards a more general solution. I hope this gives a rationale behind our decision.
As you said you are looking into out-of-scale extrapolation, I would recommend to start of with a fully local model. Often, this models are already quite suited for that task. The interesting questions are then if a non-local model can generalize at all and if so if it captures the non-local parts correctly. This is something, no answer exists yet, as far as I know.
Best,
Thorben

Hi Thorben,
Thank you for your detailed response. I understand that the locality assumption based on Kohn's nearsightedness is reasonable for generalizing ML models to larger structures. The primary motivation for So3krates is to consider non-local effects that are crucial for specific molecular systems, which are often neglected by purely local representations. So3krates addresses this issue by utilizing non-local geometric corrections. And the So3krates models need to be trained exactly on these systems and used for in-scale but across-conformation generalization. Thus So3krates does not guarantee good out-of-scale generalization performance.
Regarding long-range effects (e.g., electrostatics) that depend on pairwise distances, I came across a model named Ewald-MP, which employs a nonlocal Fourier space scheme to capture these interactions. This paper might cover some scenarios you mentioned.
As you mentioned, you are working towards a more general solution to encode all effects and you start with a purely local model. I am curious whether you plan to re-incorporate all possible non-local correction modules (for covering all potential long-range effects) in the future. For instance, would you consider combining the SPHC-related module and the Ewald-MP modules?
Looking forward to your thoughts.
Best,
He


Use go-modules

Closes #7

Hi @epk! Thank you for the PR.
Everything work fine except make generate command, which updates example project in example directory and imports gogo.proto file from vendor directory.
See Makefile and example/message.proto for details.
With Go modules it could be used as
diff --git a/Makefile b/Makefile
index d5cf219..7ce93e4 100644
--- a/Makefile
+++ b/Makefile
@@ -6,7 +6,7 @@ LDFLAGS= -ldflags '-X github.com/bold-commerce/protoc-gen-struct-transformer/gen

 re-generate-example:
        protoc \
-               --proto_path=vendor/github.com/gogo:. \
+               --proto_path=$(GOPATH)/pkg/mod/github.com/gogo:. \
                --struct-transformer_out=package=transform,debug=false,helper-package=helpers:. \
                --gogofaster_out=Moptions/annotations.proto=github.com/bold-commerce/protoc-gen-struct-transformer/options:. \
                ./example/message.proto
diff --git a/example/message.proto b/example/message.proto
index fb184a0..62872e0 100644
--- a/example/message.proto
+++ b/example/message.proto
@@ -7,7 +7,7 @@ option (transformer.go_models_file_path) = "example/model/model.go";
 option go_package = "example"; // Package name for pb.go

 import "options/annotations.proto";
-import "protobuf/gogoproto/gogo.proto"; // for gogoproto options
+import<EMAIL_ADDRESS>// for gogoproto options
 import "google/protobuf/timestamp.proto";

 message TheOne{

Can we relay on Go modules cache which is located in $(GOPATH)/pkg/mod for importing *.proto files? Or maybe there is better solution?
How we can fix version for specific modules? github.com/gogo/protobuf in this case.

Thanks!

Hi @epk, could you please, take a look at comment above? ^

Hi @epk, could you please, take a look at comment above? ^

Hi Evgeny, sorry for the delayed response,I am in a middle of a move currently, I will take a look into this on Sunday

@epk, great, thank you!


[hold] update metrics for MongoDB size and remove deprecated monitoring components

hold for a while, merge it after GA

Hold the PR until we will completely remove the monitoring components

/rebase


last commit c4a2adc99906b982803ec44a6891e1ad0977a960 breaks the game

It seems last commit c4a2adc99906b982803ec44a6891e1ad0977a960 breaks the game :(

It works fine for me, have you a recent version of Godot ?

It was an error in between.tscn , which worked on project list but not in editor, fixed with 59c7a1907d7157aff9e9a4a7ea3201013ba34718

It was an error in between.tscn , which worked on project list but not in editor, fixed with 59c7a1907d7157aff9e9a4a7ea3201013ba34718

It was an error in between.tscn , which worked on project list but not in editor, fixed with 59c7a1907d7157aff9e9a4a7ea3201013ba34718


migrate2rocky logfile is truncated on each start, all info lost when restarting

I just had a migrate2rocky run fail due to an error with a package in a custom repo. Essentially the same as #112. I fixed the repo issue and then accidently ran migrate2rocky again. This removed all info from /var/log/migrate2rocky.log before logging that it can't continue. As I wanted to continue the migration manually, I was missing all the info about the previously installed modules that was in the logfile before.
Currently there is the call ```truncate -s0 "$logfile"```` at the beginning of migrate2rocky.sh. I suggest to replace that with adding a date/time marker to the logfile, so you can easily keep apart different runs.
Something like this:
echo "===============================================================================================" >>"$logfile"
date >>"$logfile"
echo "===============================================================================================" >>"$logfile"
echo >>"$logfile"

What do you think?

I think some sort of log rotation would be appropriate.  Either add in a timestamp to the filename or a sequence number and rotate the logs so that up to five are kept before the oldest ones drop off.

Hmm, isn't a full rotation scheme a bit of overkill?
migrate2rocky isn't designed to be run regularly. Actually it won't work anymore once it passed a certain point.  So I don't think that the file getting too large over time is an issue.
So I wouldn't bother with rotating, just preserving the data that is in there.

The logs can be quite long as it is, so it makes more sense (imo) to have a separate log file for each run of the script just to avoid any individual log getting too long.  Once we're doing separate log files it really isn't much of a stretch to do rotation and it is necessary to keep the files from taking up too much space.  Also rotation is easy, should just be a few lines of code.

The logs can be quite long as it is

I just had a look at my migrate-logfiles. The largest one is just about 600 KBytes and 7000 lines. So in my perspective these logs are miniscule.
I wouldn't bother with rotation unless they regularly reach tens of megabytes and I don't see a way the migrate2rocky-logfiles will reach that size.

This is now fixed with PR #135


Update uv instructions

With recent uv you can use uvx marimo ... directly. No install step.
https://docs.astral.sh/uv/guides/tools/
This PR simply updates index.md to use those new features.

Thanks for the PR! Since marimo is both a CLI tool but also a library, it may be helpful to install marimo in each environment. At least that's how I've been thinking about it. Let me look at uvx a bit more closely.

I have read the CLA Document and I hereby sign the CLA

Yea, unfortunately I'm not sure if uvx marimo ... would be useful since marimo needs to run in the environment in which it is installed.  I can see uvx --with-requirements ... marimo ... being useful however. I'm happy to be corrected or educated further.

Thanks for the PR! Since marimo is both a CLI tool but also a library, it may be helpful to install marimo in each environment. At least that's how I've been thinking about it. Let me look at uvx a bit more closely.

uvx will install the tool in an isolated environment for the purpose of running it without a python project. uv will do so inside a project.
The advantge of uvx, specially on a Getting Started or someone just using the web interface is that there is zero artifacts: only your notebook .py files in the folder!

recheck

could we make that clearer and support both? e.g.?
# when in an existing virtual environment
uv pip install marimo && marimo tutorial intro
# running marimo in an isolated environment
uvx marimo tutorial intro

actually uvx marimo tutorial intro won't let you install packages (maybe a bug not setting the venv, or maybe intentional)
so it's likely not a "getting started" instruction we should encourage

I think this is more complicated than I initially thout.
I have opened #2143 with a much broader scope for further discussion.


Write special DL1 data for deep-learning studies

A use case from Daniel Nieto:
Let me try to describe one of our own use cases, where I tried to use
current ctapipe functionalities as far as my limited knowledge of the
code allows.

A set of simtel files are read and processed with ctapipe, stopping
at DL1. For each event and triggered telescope, the integrated charge
("image" in the DL1 container) and arrival time ("peakpos" in the DL1
container) for each pixel are now accessible as two 1-D arrays whose
length is the number of pixels in the camera (telescope-type dependent).

Both 1-D arrays from the container above (charge and timing) are
transformed into a 3-D arrays representing the camera geometry. I
believe this can be already done with
ctapipe.image.convert_geometry_hex1d_to_rect2d - if a rotation of 0 deg
is applied, I guess - , but not for the square-pixel cameras, right? The
resulting 3-D array (rot_img if convert_geometry_hex1d_to_rect2d is
used) is stored to disk in hdf5 format, along with all the mc, trigger
and instrumental info.

I would say the output from points 1 and 2 could be the common format
those of us working with machine learning methods would love to have
(this is the impression I got from our last two dedicated calls). From
now on the use case describes what we would do with those data.

DL1 data in h5 format is input to our deep learning models. Our deep
learning software stack is based on the Tensorflow python API. Our h5 to
tensorflow interface could then select which events to train/eval our
models with, e.g., cutting in multiplicity, telescope type, or any
combination of parameters from the h5 metadata.

I hope all this makes sense...
If our deep learning studies (or any of the ongoing alternative event
characterization studies) prove to be comparable or outperform the
standard event characterization we would work on their implementation
within the ctapipe.reco module (at least that would me my personal
intention).

I think this is partially supported by PR #554 , but would need a new Container class to store the 2D cartesian images and a script to do the geometry conversion before writing out (using image.GeometryConverter).

@ParsonsRD is there a particular data format you are using for your CNN studies?

Just reading from Konrad's day level 0 data at the moment.

DST level 0 that is

Hi all,
We are starting to compile a list of quantities we'd like to have stored to disk for our ML studies that can be found here.
Some of this quantities are run-wise, some others are even-wise, and not all of them come from the DL1 container (e.g. mc info, instrument data, ...).  I do not know if the scope of the DL1 dumper (PR #554 ) feature also includes adding variables from other containers, but that would be very nice.
Regarding the storage of 2D cartesian images: for the sake of disk space, we would like to investigate if performing the 1D to 2D conversion on-the-go while we are loading the datasets for training does not have a significant impact on performance.
Cheers,
D.

I have a script that makes square integrated images/ datacubes with waveforms for each pixel included for the CHEC cameras (and saving them to hdf5) that I could submit to ctapipe. But we need to discuss on the next phone call the best way to train the networks on the waveforms before that. I would personally advise against using the 1D to 2D conversion when training; I'd say its better just to do it once when extracting the data from the simtel files using ctapipe and then save to hdf5. That way you can train as many networks as you like based on your dataset as opposed to having to perform the image squaring every time.
Could anyone please elaborate on the differences between dl1 and r0 data for MC events as opposed to real data? Myself and Etienne Lyard discussed this in La Palma and we're both using the r0 level data in order to avoid the calibration biasing the training.

For MC files:
R0 - Raw
R1 - Pedestal subtracted and samples converted to p.e.. Both the pedestal and dc_to_pe arrays are also extracted from the sim_telarray file. There is no special analysis done for this calibration.
DL0 - Same as R1
DL1 - Charge extracted from the waveform per pixel (1 value per pixel).
If you are training your algorithms using waveforms I would suggest to use DL0. The waveforms at this level should match closest to the real data, and this is the earliest data level that would be stored in the file array implementation for use in offline analysis.

Hi Sam.
I wish you were there the evening we discussed these points during the
consortium meeting.
There are already at least two scripts available in ctapipe that allow you
to shift any camera into a square matrice, one of which conserves data
locality in memory in respect to pixels positions (written by Pierre
Aubert).
Now concerning 2D conversion, we agreed not to it for storage - but as you
were not there we can of course discuss it during next phone call. The main
reason is that 2D conversion to a square matrice introduce a geometrical
bias that will depend on the algorithm you use. If we want to put things in
common, I'd advise to keep things as general as possible and not make
choices that would impact everybody. Of course, I agree there is a cost to
that, and it is an extra computation at training. But once we have a common
dataset, nothing prevents you from doing it on your own machine and storing
it locally.
Concerning waveforms and calibration. I see Jason replied concerning the
data levels. Unless you are plugged online, you will never access R0 and R1
data. I'm also thinking about how we can use deep learning to select events
on site without calibration but this is a very long shot and we are very
far from that. You'll run into huge problems as two images won't be
comparable at all, the calibration evolving quickly in time during
observations (not the case for simulated data).
Here again, we agreed to start the work with calibrated and integrated (no
waveforms) data during the meeting. Also can be discussed.
The main reasons were to start "simple" before seeing too big and to have
manageable data volumes as the whole production once calibrated and
integrated boils down to several TB compared to several hundreds of TB for
waveforms.
Le dim. 12 nov. 2017 16:48, Samuel Timothy Spencer<EMAIL_ADDRESS>a écrit :

I have a script that makes square integrated images/ datacubes with
waveforms for each pixel included for the CHEC cameras (and saving them to
hdf5) that I could submit to ctapipe. But we need to discuss on the next
phone call the best way to train the networks on the waveforms before that.
I would personally advise against using the 1D to 2D conversion when
training; I'd say its better just to do it once when extracting the data
from the simtel files using ctapipe and then save to hdf5. That way you can
train as many networks as you like based on your dataset as opposed to
having to perform the image squaring every time.
Could anyone please elaborate on the differences between dl1 and r0 data
for MC events as opposed to real data? Myself and Etienne Lyard discussed
this in La Palma and we're both using the r0 level data in order to avoid
the calibration biasing the training.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/cta-observatory/ctapipe/issues/556#issuecomment-343750344,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AEEO3plXCwnPguyyOFt2GG8p5FpY_6lkks5s1yFogaJpZM4PwHP4
.

Hi all,
Thanks for the answer Jason and the response Thomas; I also regret not being at there that evening and agree that we should discuss all the above during the phone call tomorrow (what time is it by the way, the call is not on the ASWG indico or the machine learning redmine?).  One of my main interests over the past few weeks has been considering using machine learning techniques to quantify the benefits of taking waveform data in the cameras, however I'd only plan to be using a comparitively small dataset for this. I agree with all your points for larger runs.
The one point I would raise with respect to ctapipe is that if there is a script to convert the more rectangular cameras such as CHEC to square matricies as you say, then it needs to be documented; at the minute there's only reference to a script for converting hexagonal camera output to square images.

Hi all,
The next ML call would be next Monday 20th, at 10:00 CET (we use the aswg mailing list for announcements). We will be summarizing and following up on the discussions that took place in La Palma, so everyone should be up to speed after the call. Sorry if I missed some of you when organizing the informal meeting in La Palma! It seems I have not identified all ML fans around...
Cheers,
Daniel

r0 level data in order to avoid the calibration biasing the training.

That seems like a bad idea - with uncalibrated cameras, you will train on the calibration artifacts, not the  images. The DL0 images have e.g gain variations and noise pedestal variations, and in reality those will be much more complex and may change in time, and therefore break your model on real data.  The idea of calibration is to remove non-physical artifacts from the data so that they can be analyzed.  Any machine learning should start at the DL1 level.

DL0 images have e.g gain variations and noise pedestal variations

Aren't those variations corrected for by the DL0 level?
If you want to create a machine learning algorithm (or any other algorithm) that utilises the entire waveforms as opposed to extracted charge images, isn't DL0 your best (and really your only) option?
Granted it is a lot more complex and more likely to break on real data...

So, I'm using ctapipe's ctapipe.io.hessio.hessio_event_source reader to read in data from a simtelarray file, below is what I get if I print out an event. It seems to me that if I want to use the MC waveform data then I don't really have much of a choice but to use r0 at the minute, or did I miss some DL0/DL1 flag when I ran simtelarray?  Take a look at ctapipe/examples/calibration_pipeline.py. I can explain in more detail in person next week.


Windows documentation overhaul

This PR moves all content out of /docs/setup/production-environment/windows to new locations.
Where possible we merged Windows information into the existing docs.
This is a big PR but most of the contents have already been reviewed

https://github.com/kubernetes/website/pull/31900 for storage related docs
https://github.com/kubernetes/website/pull/31852 for networking related docs
https://github.com/kubernetes/website/pull/31899 for troubleshooting section

I was initially hoping to get all of these changes in with the 1.24 release branch but in order to ease pressure on the release team we all decided to merge these changes after the 1.24 release.
Part of https://github.com/kubernetes/website/issues/31428
/label refactor
/sig windows
/assign @jsturtevant @sftim
/cc @tengqm @aravindhp @nate-double-u

/cc @brasmith-ms

@tengqm I have incorporated all of the suggested edits.
Since this PR is primarily moving pages around in an attempt to break up the giant intro-windows-in-kubernetes page (which is hard to edit and consume) would you be OK if the rest of the suggestions get addressed in a seperate PR?

@tengqm I have incorporated all of the suggested edits. Since this PR is primarily moving pages around in an attempt to break up the giant intro-windows-in-kubernetes page (which is hard to edit and consume) would you be OK if the rest of the suggestions get addressed in a seperate PR?

Sure. I'm okay with whichever approach to improve these pages, provided that the ball is not dropped.

@tengqm I have incorporated all of the suggested edits. Since this PR is primarily moving pages around in an attempt to break up the giant intro-windows-in-kubernetes page (which is hard to edit and consume) would you be OK if the rest of the suggestions get addressed in a seperate PR?

Sure. I'm okay with whichever approach to improve these pages, provided that the ball is not dropped.

Understood.
I will follow up with a PR to update the intro-windows page.
I will try and find someone with more networking knowledge to update that page and if not I'll try to update that too.

@sftim @tengqm - do you see any issues with the structural changes in this PR?
I can open up new PRs for content changes after this merges.

I'm okay to move this forward.
/approve
/label tide/merge-method-squash

/lgtm


[Enhancement] On Android DisplayToastAsync should use Toast not SnackBar

Summary
I am confused to see that DisplayToastAsync() is in fact using SnackBar and not Toast on Android, I don't know about the other platforms but for Android this is confusing. I suggest we introduce/use https://developer.android.com/guide/topics/ui/notifiers/toasts when it is possible.
Intended Use Case
To follow what a developer expect from a Toast in Android.
Who Will Do The Work?

[ ] I am willing to take this on myself
[ ] Just putting this out there for someone to pick up

I don't know what is it called DisplayToastAsync(), should be called DisplaySnackbarAsync()...

Guess what!? DisplaySnackBarAsync already exists beside DisplayToastAsync(). I don't know what is the difference?
Good to know I was not aware that toast has been deprecated  👍🏻 .

MMhh must be some kind of confusion about the semantic.
DisplayToastAsync seem to display a snackbar without an action associated
DisplaySnackBarAsync for a snackbar associated with an action

Should be both called DisplaySnackbarAsync() with method overload from my point of view

@VladislavAntonyuk can you answer this question?

It is by design: https://github.com/xamarin/XamarinCommunityToolkit/issues/260

Yup, that's what I thought: it's semantic misunderstanding.
Snackbar can have action attached or not.
Snackbar without action is not a toast, it's a Snackbar without action :-)
It's true that it's confusing but eeeeeh....

so it will be kept with Toast name or changed to something else (the snack bar without action) ?

The issue is that it would be a breaking change... I guess you'll have to live with this x)

I can add that it happens only on Android. Because only Android has native Snackbar and toast.
Further more Snackbar on Android unfortunately has only 1 button, but other platforms supports multiple buttons.
I think we need to discuss if we want to use native implementation or we can customize it with "StackLayout"


[BUG]

Description
Can't able to see test by typing in Input field of Search For Icons page.
its causing in dark mode not in light mode.
Screenshots

Additional information
No response

Pls assign me this issue

Hey, can you assign me this issue please. I want to work on this.

Pls assign me this issue

@Ashish-simpleCoder as you requested this first I will assign this to you

Hey, can you assign me this issue please. I want to work on this.

@Rahul-Kumar-prog can I suggest that in future, if you would like to work on the Issue that you raised that you mention this in the Additional Information section of the Issue description.  That way a maintainer can assign this immediately to you when changing the status of the Issue.

@SaraJaoude Thanks for letting me know, I'll keep that in mind


Add differentiation between solarized-light and solarized-dark

It appears there is CSS in there to enable the dark version, but I cant figure out for the life of me what needs to be done to enable it instead of the light default.

+1

Sorry I ignored this for so long -- it's available in latest version 0.2.0.


update readme and refine tests

cherry-picked commit from #52 to update Readme and tests. Added some more refinements on top.

authorship of @amotl is still intact


How to install on a old Ubuntu 14.04?

I have this old server I wish to monitor because is giving us strange behaviours
NAME="Ubuntu"
VERSION="14.04.6 LTS, Trusty Tahr"

There is no repo for goaccess for this specific distro.
Could you help me to find a way?
I tried to force 'buster' as repository but it's too new and on ubuntu 14,04 I cannot install because of library incompatibilities
I tried to compile from source but make hangs with this

configure: error:
*** Missing development files for libmaxminddb library.

You can try to build as:
$ wget https://tar.goaccess.io/goaccess-1.5.1.tar.gz
$ tar -xzvf goaccess-1.5.1.tar.gz
$ cd goaccess-1.5.1/
$ ./configure
$ make
# make install

Let me know how it goes.

I tried to compile from source but make hangs with this

configure: error:
*** Missing development files for libmaxminddb library.

You can change the default GeoIP implementation from mmdb to (e.g.) legacy when configure'ing.


Remove deprecated platforms from README

We have removed the code for deprecated platforms, but we still mention them as supported and it's quirks, we should remove all that.

(You can probably duplicate this in apache/cordova and add a TODO for all plugins...)

I should check all plugins first, maybe they were removed correctly in other plugins

maybe...

In fact it was correctly removed, but then added by accident later, probably because of the automatic doc generation, I've only checked a few other repos but didn't have the deprecated platforms anymore.


Sensor icon translation

Hi @rrooggiieerr This PR adds translation keys for sensors. If you want to continue working on #125 this change will make things easier.

@bieniu can you rebase on current master?

can you rebase on current master?

Done

@bieniu , yes, I like to continue working on #125, but am currently traveling for work for the next 2 weeks so will look at it when I return home


Show client identification in notify_connect module

If someone connects to ZNC as username@identifier/network, the module will now show that identifier. When the identifier is not provided, the behavior is unchanged.

[Notice] -*status- *** username@identifier detached (from <IP_ADDRESS>)

May you add a test for it?
At this point we have enough infrastructure to make this easy (make test2 and test/Integration.cpp)

If this module had tests, I would gladly extend them. But I have no idea how to add new ones.

Clientnotify could probably also use this change as I don't think it has identifier either.

@Mikaela Interesting. This change is even more relevant to clientnotify, and the module is more relevant to me, but I wasn't aware of it!

I believe that the two modules  should be merged and same with automode/autoop. They do so similar thing and better than two separate modules would be just having options "notify me (admin) when someone else connects" or "notify me when other clients login as me". But that is a separate issue.

I investigated the testing facilities.
So make test2 requires sudo make install? No, thanks :neutral_face:

why sudo?
./configure --prefix=/tmp/znc
2015-11-27 9:44 GMT+00:00 Oleh Prypin<EMAIL_ADDRESS>
I investigated the testing facilities.
So make test2 requires sudo make install? No, thanks [image:
:neutral_face:]
—
Reply to this email directly or view it on GitHub
https://github.com/znc/znc/pull/1195#issuecomment-160097453.

Oh, I've noticed you added the test...
Please comment in such cases; github doesn't notify about new commits in PR, but does about new comments.

Merged with this change: d7363971946c17e17aaac2fdd5a50020ded87270


[DOC] Discuss trade-offs/advantages of Rust vs. AssemblyScript

Is your feature request related to a problem? Please describe.
As a user, I want to make sure I'm using the correct programming language to write my smart contracts. I am unaware of the implications on storage or gas and would like to see a page detailing this.
Describe the solution you'd like
A page or section in the docs that goes over gas and storage implications of using AssemblyScript vs Rust.
Additional context
Good thoughts here from Max:
Is there anything where AS stands up more than Rust (or vice versa)?

I doubt AssemblyScript contracts are cheaper than Rust contracts in terms of gas used.  Most of the gas cost comes from the host functions that are not specific to the language. Also, Rust contracts leverage binary serialization more than AssemblyScript that uses JSON for everything. JSON is significantly more expensive than binary serialization.
In terms of the contract size current AssemblyScript contracts that we used for examples tend to be 20% smaller than similar Rust contracts, but it does not mean we cannot write smaller contracts in Rust. In fact, we have some contracts in Rust that are 400 bytes large. It is just that we haven't added no-std option to near-sdk-rs, so that people who want their contracts smaller need to do it manually. Also, please keep in mind that 20% size is a small difference compared to the overall contract size variance that can be anything between 100KiB and 200KiB for a typical contract if you don't put optimization efforts into it. I don't really think it makes sense to worry about the contract size unless it is >>300KiB.
Yes, AS is lagging behind in terms of functionality added. Partially because AS is a new language and we need to contribute some changes to the language itself to bring it on par with Rust. FYI Near is the largest financial sponsor of AS and we also co-organize AS community group.
AssemblyScript (not recommended for financial applications)
AssemblyScript is a new language that has a much smaller community than Rust. While we are contributing a lot towards its maturity and participate in its development, we need to see more signs of its maturity before we can vouch for it as a completely safe language for financial applications, e.g. having a stable version

There are many Web2 projects that could benefit from migrating or integrating with us. Many of these web-projects are built by the developers who are used to JS/TS-like ecosystem. AssemblyScript is our attempt to make the transition for the people coming from the Web2 world as easy as possible. Currently, anyone who is familiar with TypeScript can build an end-to-end application on us.
Overall, we want to have contract languages that provide a good coverage of all ecosystems:

Rust -- for delicate financial code;
AS -- for web-developers;
And something we are currently brainstorming:
Kotlin -- for mobile-developers, plus maybe backend developers not covered by Rust
from:
https://discordapp.com/channels/490367152054992913/510254340120903684/714528239040856114

@mikedotexe do you think we can just add this as-is to the intro page for contracts: http://localhost:3000/docs/roles/developer/contracts/intro or is there more work to be done to kind of "prove" the differences listed here with experimental evidence?

In terms of the contract size current AssemblyScript contracts that we used for examples tend to be 20% smaller than similar Rust contracts, but it does not mean we cannot write smaller contracts in Rust. In fact, we have some contracts in Rust that are 400 bytes large

Hmm, in our practice difference between Rust and AS modules is not 20%, it usually  several times different. Recent discussion about this.

Just to add to the above, as a possible starting point, here's something I came up with a while ago for a partner:

At the language level, there are a few drawbacks to using AssemblyScript:

No closures or dynamic dispatch (i.e. interfaces and abstract methods)
Type system: Rust has a much more mature and powerful type system
Smaller community: there are not many libraries available yet for AssemblyScript, whereas Rust has crates.io which has a large selection (this is probably the biggest drawback to AS right now)

In regards to near-sdk-rs vs near-sdk-as: near-sdk-as still doesn’t expose primitive actions whereas in Rust you can do things like initiate a transfer, create an account or add a key from inside a contract. (Example of a simple transfer: https://github.com/near/near-sdk-rs/blob/master/examples/cross-contract-high-level/src/lib.rs#L143; example of a full contract deployment process: https://github.com/near/near-sdk-rs/blob/master/examples/cross-contract-high-level/src/lib.rs#L48). Here's the full list of available methods on a Promise in near-sdk-rs; we are working to implement these in near-sdk-as but they're not ready yet: https://github.com/near/near-sdk-rs/blob/5339877e68736781716858149ca2191904c6284b/near-sdk/src/promise.rs#L207

@mikedotexe do you think we can just add this as-is to the intro page for contracts: http://localhost:3000/docs/roles/developer/contracts/intro or is there more work to be done to kind of "prove" the differences listed here with experimental evidence?

I think that intro link you suggested is a great place for it. And thanks for stepping in, too, @MaxGraey, as I tend to see quite a discrepancy between Rust and AS with AS being significantly smaller than 20%. I don't want to be vague in documentation, but I think we'll want to avoid numbers figures like 20% here because we've seen sizes across the spectrum.
Great thoughts from Chad here, too.
I'm not envisioning a huge page that takes a week to write, but a few paragraphs covering what we've discussed here. I think it's quite natural for someone to ask why they should choose one over the other and I'd love to have that link in my holster ready for quick-draw. 🤠

I would like to be clarified a little on these points:

No closures or dynamic dispatch (i.e. interfaces and abstract methods)

Since 0.10.0 AS fully support abstract methods and partially interfaces. But closures still in progress.

Type system: Rust has a much more mature and powerful type system

Yes, Rust overall more mature language, but type system in AS pretty strong. Much stronger than in C++ or Java due to preventing implicit unsafe conversions, having nullable types and built-in null checking and etc. It still have some unsound for access uninitialized properties, which should be fixed in this PR.

Smaller community: there are not many libraries available yet for AssemblyScript, whereas Rust has crates.io which has a large selection (this is probably the biggest drawback to AS right now)

That's right. But AS is just superset of TypeScript which has pretty large community also if I'm not mistaken Neat has own runtime with non-standard persistent primitives, set of functions and etc.
Rust really has a lot more libraries and packages compare to AS, so I would say this is the most significant drawback of AssemblyScript at the moment

Hey there! After reading a few threads about Rust vs AssemblyScript thing, I didn't find any good explanation why AssemblyScript is not recommended for finance apps development except for its early adoption and the lack of third-party libraries. I totally get Rust selling points like advanced type system, memory safety, low-level optimizations, etc., but for small/medium-sized (code-wise) contacts and most of the developers does that really matter much? I agree with @MaxGraey here. Can anyone elaborate please on why?

Closing this issue as we are deprecating support for AS in favor of JS SDK.


Cannot use query builder on GitHub API

Product
Banana Cake Pop
Version
18.0.0
Link to minimal reproduction
https://eat.bananacakepop.com/
Steps to reproduce

Go to https://eat.bananacakepop.com/
Set HTTP Endpoint to https://api.github.com/graphql
Wait for schema to load
Try to use query builder

What is expected?
Query builder works as normal
What is actually happening?
Nothing happens after "New Query" is clicked
Relevant log output
20:08:53.694 SyncMessage 5dce60ac-7068-4c41-992f-f22df5062ba8,https://eat.bananacakepop.com/, state loading, result: {"permissions":{"capabilities":["frame","fetch","other","script","media","webgl","font","noscript","unchecked_css","lan","lazy_load"],"temp":false},"cascaded":false} SyncMessage.js:265:15
20:08:53.696 Creating extension->page port windowPatchMessages:2b327b33-61d7-4e9a-89f3-e05b6be092a4 patchWindow.js:68:13
20:08:53.697 Creating page->extension port windowPatchMessages:2b327b33-61d7-4e9a-89f3-e05b6be092a4 patchWindow.js:68:13
20:08:59.255 Uncaught (in promise) Error: Error fetching graphql language service worker
    u https://eat.bananacakepop.com/static/js/main.0349187e.js:2
    doValidate https://eat.bananacakepop.com/static/js/main.0349187e.js:2
    e https://eat.bananacakepop.com/static/js/main.0349187e.js:2
    setTimeout handler*53790/initialize/e/< https://eat.bananacakepop.com/static/js/main.0349187e.js:2
    _deliver https://eat.bananacakepop.com/static/js/703.7397f7b9.js:2
    _deliverQueue https://eat.bananacakepop.com/static/js/703.7397f7b9.js:2
    fire https://eat.bananacakepop.com/static/js/703.7397f7b9.js:2
    setSchemaInfo https://eat.bananacakepop.com/static/js/main.0349187e.js:2
    e https://eat.bananacakepop.com/static/js/90.543fa1ad.chunk.js:1
    next https://eat.bananacakepop.com/static/js/main.0349187e.js:2
    next https://eat.bananacakepop.com/static/js/main.0349187e.js:2
    r https://eat.bananacakepop.com/static/js/main.0349187e.js:2
    E https://eat.bananacakepop.com/static/js/main.0349187e.js:2
    next https://eat.bananacakepop.com/static/js/main.0349187e.js:2
    next https://eat.bananacakepop.com/static/js/main.0349187e.js:2
    u https://eat.bananacakepop.com/static/js/main.0349187e.js:2
    k https://eat.bananacakepop.com/static/js/main.0349187e.js:2
    promise callback*67315/Vs/k< https://eat.bananacakepop.com/static/js/main.0349187e.js:2
    r https://eat.bananacakepop.com/static/js/main.0349187e.js:2
    next https://eat.bananacakepop.com/static/js/main.0349187e.js:2
    next https://eat.bananacakepop.com/static/js/main.0349187e.js:2
    r https://eat.bananacakepop.com/static/js/main.0349187e.js:2
    E https://eat.bananacakepop.com/static/js/main.0349187e.js:2
    next https://eat.bananacakepop.com/static/js/main.0349187e.js:2
    next https://eat.bananacakepop.com/static/js/main.0349187e.js:2
    Uc https://eat.bananacakepop.com/static/js/main.0349187e.js:2
    Uc https://eat.bananacakepop.com/static/js/main.0349187e.js:2
main.0349187e.js:2:713920

Additional context
No response

We are working on this... it seems with our recent update we broke the schema component.