error  Cannot query field "siteSearchIndex" on type "Query"  graphql/template-strings

I've searched through all the related issues and tried everything I could find, but I'm still getting the following error when I try to save my header component with the Search component included:
error  Cannot query field "siteSearchIndex" on type "Query"  graphql/template-strings
I'm fairly new to Gatsby so I may have overlooked something. Any help would be greatly appreciated.
Here are the relevant site files:
package.json:
{
	"name": "gatsby-wordpress-starter",
	"description": "",
	"version": "",
	"author": "",
	"dependencies": {
		"@gatsby-contrib/gatsby-plugin-elasticlunr-search": "^2.3.0",
		"babel-plugin-styled-components": "^1.10.1",
		"elasticlunr": "^0.9.5",
		"gatsby": "^2.11.0",
		"gatsby-cli": "^2.7.9",
		"gatsby-image": "^2.1.4",
		"gatsby-plugin-manifest": "^2.1.1",
		"gatsby-plugin-offline": "^2.1.3",
		"gatsby-plugin-postcss": "^2.0.7",
		"gatsby-plugin-react-helmet": "^3.0.12",
		"gatsby-plugin-sharp": "^2.1.5",
		"gatsby-plugin-styled-components": "^3.1.0",
		"gatsby-source-filesystem": "^2.0.39",
		"gatsby-source-wordpress": "^3.0.64",
		"gatsby-transformer-sharp": "^2.1.21",
		"intersection-observer": "^0.7.0",
		"isomorphic-fetch": "^2.2.1",
		"postcss-extend-rule": "^2.0.0",
		"postcss-import": "^12.0.1",
		"postcss-mixins": "^6.2.1",
		"postcss-nested": "^4.1.2",
		"postcss-preset-env": "^6.6.0",
		"postcss-simple-vars": "^5.0.2",
		"prop-types": "^15.7.2",
		"react": "^16.8.6",
		"react-dom": "^16.8.6",
		"react-helmet": "^5.2.1",
		"simple-crypto-js": "^2.0.2",
		"styled-components": "^4.3.2"
	},
	"devDependencies": {
		"prettier": "^1.18.2",
		"typescript": "^3.5.2"
	},
	"keywords": [
		"gatsby",
		"wordpress",
		"ACF",
		"ACF Pro",
		"Advanced Custom Fields",
		"Flexible Content"
	],
	"license": "MIT",
	"scripts": {
		"build": "gatsby build",
		"develop": "gatsby develop",
		"format": "prettier --write src/**/*.{js,jsx}",
		"start": "npm run develop",
		"serve": "gatsby serve",
		"test": "echo \"Write tests! -> https://gatsby.dev/unit-testing\""
	},
	"repository": {
		"type": "git",
		"url": "git+https://github.com/gatsbyjs/gatsby-starter-default.git"
	},
	"bugs": {
		"url": "https://github.com/gatsbyjs/gatsby/issues"
	},
	"homepage": "https://github.com/gatsbyjs/gatsby-starter-default#readme",
	"main": "gatsby-browser.js"
}

gatsby-config.js:
module.exports = {
	siteMetadata: {
		title: `Gatsby - Wordpress`,
	},
	plugins: [
		`gatsby-plugin-react-helmet`,
		{
			resolve: `gatsby-source-filesystem`,
			options: {
				name: `images`,
				path: `${__dirname}/src/images`,
		},
		},
		`gatsby-plugin-styled-components`,
		`gatsby-transformer-sharp`,
		`gatsby-plugin-sharp`,
		{
			resolve: `gatsby-plugin-manifest`,
			options: {
				name: `gatsby-starter-default`,
				short_name: `starter`,
				start_url: `/`,
				background_color: `#663399`,
				theme_color: `#663399`,
				display: `minimal-ui`,
				icon: `src/images/gatsby-icon.png`, // This path is relative to the root of the site.
			},
		},
		{
			resolve: `gatsby-source-wordpress`,
			options: {
				baseUrl: `test-gatsby-admin.pantheonsite.io`,
				protocol: `http`,
				hostingWPCOM: false,
				useACF: true,
				acfOptionPageIds: [],
				verboseOutput: true,
				perPage: 100,
				searchAndReplaceContentUrls: {
					sourceUrl: `test-gatsby-admin.pantheonsite.io`,
					replacementUrl: `test-gatsby-admin.pantheonsite.io`,
				},
				concurrentRequests: 10,
				includedRoutes: [
					"**/categories",
					"**/posts",
					"**/pages",
					"**/media",
					"**/menus",
					"**/tags",
					"**/taxonomies",
					"**/users",
					"**/example-cpt",
					"**/example-tax",
				],
				excludedRoutes: [],
				normalizer: function( { entities } ) {
					return entities
				},
			},
		},
		{
			resolve: `@gatsby-contrib/gatsby-plugin-elasticlunr-search`,
			options: {
				// Fields to index
				fields: [ `title`],
				// How to resolve each field`s value for a supported node type
				resolvers: {
					wordpress__PAGE: {
						title: node => node.title,
						path: node => node.slug,
					},
					wordpress__POST: {
						title: node => node.title,
						path: node => node.slug,
					},
				},
			},
		},
		{
			resolve: `gatsby-plugin-postcss`,
			options: {
				postCssPlugins: [
					require( `postcss-import` ),
					require( `postcss-simple-vars` ),
					require( `postcss-nested` ),
					require( `postcss-mixins` ),
					require( `postcss-extend-rule` ),
					require( `postcss-preset-env` )( {
						stage: 0 ,
						autoprefixer: {
							grid: true
						}
					} ),
				],
			},
		},
		{
			resolve: `gatsby-source-filesystem`,
			options: {
				name: `images`,
				path: `${__dirname}/src/images/`,
				ignore: [`**/\.*`], // ignore files starting with a dot
			},
		},
	],
}

search.js:
import React, { Component } from 'react'
import { Index } from 'elasticlunr'
import { Link } from "gatsby"

// Search component
export default class Search extends Component {
	constructor( props ) {
		super( props )
		this.state = {
			query: ``,
			results: [],
		}
	}

	render() {
		return (

			<input type="text" value={ this.state.query } onChange={ this.search } />

				{ this.state.results.map( page => (

						<Link to={ "/" + page.path }>{ page.title }</Link>
						{ ": " + page.tags.join( `,` ) }

				) ) }

		)
	}
	getOrCreateIndex = () =>
		this.index
			? this.index
			: // Create an elastic lunr index and hydrate with graphql query results
				Index.load( this.props.searchIndex )

	search = evt => {
		const query = evt.target.value
		this.index = this.getOrCreateIndex()
		this.setState( {
		query,
		// Query the index with search string to get an [] of IDs
		results: this.index
			.search( query, {} )
			// Map over each ID and return the full document
			.map( ( { ref } ) => this.index.documentStore.getDoc( ref ) ),
		} )
	}
}

header.js:
import React from 'react'
import { StaticQuery, Link } from 'gatsby'
import Img from 'gatsby-image'
import { graphql } from "gatsby"
import './header-styles.css'

import Navigation from '../navigation/navigation'
import Search from '../search/search'

const Header = ( { siteLogo } ) => (
	<StaticQuery
		query={ graphql`
			query SearchIndexQuery {
				siteSearchIndex {
					index
				}
			}
		` }
		render={ data => (

				Skip to main content

						<Link to="/" className='site-header__logo'>

						</Link>
						<Navigation navType='header-nav' />

					<Search searchIndex={ data.siteSearchIndex.index } />

		) }
	/>
)

export default Header

When following the examples on Github I didn't see any code changes to gatsby-node.js. Was I supposed to update this file to make the search work? Here is my current gatsby-node.js file just in case this may be causing issues:
/**
 * Implement Gatsby's Node APIs in this file.
 *
 * See: https://www.gatsbyjs.org/docs/node-apis/
 */

const path = require(`path`)

exports.createPages = ( { graphql, actions } ) => {
	const { createPage } = actions
	const pageTemplate = path.resolve( './src/templates/page.js' )
	const postTemplate = path.resolve( './src/templates/post.js' )
	const cptTemplate = path.resolve( './src/templates/cpt.js' )
	const pagePassword = path.resolve( './src/templates/page-password.js' )

	return graphql(`
		{
			allWordpressPage {
				edges {
					node {
						id
						slug
						wordpress_id
						path
						template
					}
				}
			}
			allWordpressPost {
				edges {
					node {
						id
						slug
						wordpress_id
						path
						template
					}
				}
			}
			allWordpressWpExampleCpt {
				edges {
					node {
						id
						slug
						wordpress_id
						path
						template
					}
				}
			}
		}
	`).then( result => {
		if ( result.errors ) {
			throw result.errors
		}

		const pages = result.data.allWordpressPage.edges

		pages.forEach( page => {
			const template = page.node.template
			if( 'page-password.php' !== template ) {
				createPage( {
					path: `${ page.node.path }`,
					component: pageTemplate,
					context: {
						id: page.node.wordpress_id,
					},
				} )
			} else {
				createPage( {
					path: `${ page.node.path }`,
					component: pagePassword,
					context: {
						id: page.node.wordpress_id,
					},
				} )
			}
		} )

		const posts = result.data.allWordpressPost.edges
		posts.forEach( post => {
			createPage( {
				path: `/blog/${ post.node.slug }`,
				component: postTemplate,
				context: {
					id: post.node.wordpress_id,
				},
			} )
		} )

		const cptPosts = result.data.allWordpressWpExampleCpt.edges
		cptPosts.forEach( post => {
			createPage( {
				path: `/example-cpt/${ post.node.slug }`,
				component: cptTemplate,
				context: {
					id: post.node.wordpress_id,
				},
			} )
		} )
	} )
}

@vabelha Thanks for the reply and I really appreciate the help. Unfortunately, I tried updating the spelling of the resolvers, but I'm still getting the same error.

@TJBriggs were you able to resolve this issue?

I had a similar issue on a Gatsby project. I was getting an error that said "cannot query field on template strings." To isolate the problem I ran the same query in the GraphQL IDE and found no error.
Then I saw a thread on Github where someone suggested restarting the server. So I did that and it worked. I forgot every time you make changes to the gatsby-config.js file you have to restart the server for it to take effect. So until I did that it was throwing errors when it went to look for data I was querying that hadn't yet been updated.
Hope that's helpful to folks that run into the same problem!

Hello.
I had same issue on a Gatsby and Wordpress project.
I restarted the server. It worked.
Hope it helps.


General: Fix access to environments from default settings

Brief description
Function get_general_environments does not use sytem settings but all default settings which cause crash if overrides do not have set environments.
Changes

use system setttings as base for finding environments instead of all default values

Task linked: OP-1780 set_global_environments fails with addons


update to bindgen 0.51.0

This patch lets us compile mbedtls-sys with recent clang versions.
It still has a hack calling "sed" in it, which fixes some of the enum
generated names, but it is a good starting point.

Got rid of the sed

LGTM. @jethrogb ?

@jack-fortanix  @jethrogb
friendly ping

Final PR: #152


⚠ Bofrost.lu has degraded performance

In b34cf1c, Bofrost.lu (https://www.bofrost.lu) experienced degraded performance:

HTTP code: 200
Response time: 1052 ms

Resolved: Bofrost.lu performance has improved in 9e9eb0b after 7 minutes.


The LINQ to XML link links to “previous version” documentation

When I follow the link to LINQ to XML in this document, I enter the “previous version” style documentation with this header:
>  We're no longer updating this content regularly. Check the Microsoft Product Lifecycle for information about how this product, service, technology, or API is supported.
I shouldn’t be linked to previous versions documentation which has this warning when browsing the current version of the documentation.
It looks like the target page links to the C# and VB.net versions of the LINQ to XML guides. There should be a “current version” version of that landing page and it should be linked from this page instead of the “previous version” one.

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

ID: 0e4e006a-3b84-bc10-377b-aa5d1ca02e04
Version Independent ID: 4f022102-f171-5ff2-cc3d-a6247f83643f
Content: XML Processing Options
Content Source: docs/standard/data/xml/xml-processing-options.md
Product: dotnet
GitHub Login: @mairaw
Microsoft Alias: mairaw

Thanks for your feedback @binki. This issue touches on a lot of migration efforts that are going on at the moment.
The most relevant related issue would be the following: https://github.com/dotnet/docs/issues/4728. Once we add that new set of docs, then the links would be revised with that effort.

This was fixed by PR #10683, which added a link to the C# guide and one to the VB guide. Once we finish the work for #4728, we'll get the links updated to go to the new single target.


Channel layout

Import of cubeb changes from Gecko Bug 1431221 and Gecko Bug 1432779.
The addition of QUAD and QUAD_LFE layout broke test_mixer.  Based-on the diagrams in ITU-R BS.775-3, the mappings of side and rear surround in cubeb_pulse.c and the change for 2F2 layout from LS/RS to RLS,RRS, I've made the same change to the other layouts and updated the tests accordingly.

@padenot and @jyavenard, can you review the changes made to the layouts?

test_deadlock fails to compile after removing cubeb_get_preferred_layout. Disable test.

@jyavenard tells me this is the wrong code.


upload custom avatar

It uses your GitHub avatar when logging in via GitHub so you could just upload a custom avatar here on GitHub.

Maybe we can resolve this by patching Gravatar into dogehouse?

Duplicate of #569


drop tag from config

We use tag to store meta information about type while generating a configuration using GRPC. With the LLM powered config generation we don't need that anymore.
Technical Requirements

Just drop it :)

/bounty 15$

/attempt 2649


added create quay repo + name change to advanced

This PR will address the following tasks:
https://issues.redhat.com/browse/FLPATH-1826
https://issues.redhat.com/browse/FLPATH-1244
https://issues.redhat.com/browse/FLPATH-1834
The changes include adding an additional step in the software-templates; creating a new quay repository in addition to initializing CI/CD. This change includes an additional view-pane for adding configuration to the new quay repository.
This PR also includes cosmetic name changes: the 'complex-assesment' naming convention was changed to 'advanced'.
Moreover, some Step titles were shortened and made more concise.

@gabriel-farache
@masayag

Nice, good direction; lots of changes, I hope I did not miss anything All the comments made on the complex workflow applied to the basic one

The same goes for my review :-)

@y-first FYI

Hey @masayag @gabriel-farache
I addressed the UX issues with the Quay page, now all fields are in the Build page, and the flow for the user make more sense. Only drawback is the length of the page, but I believe it is sufficiently divided by the radio widget.
I resolved all other comments, let me know what you think :)


Moved config, latest kustomizer requires files to be in same or child directory

See https://github.com/openshift/hive/pull/215


Update README.md for Users to clone this repository

Greeting PA,

The Readme file lacks the list of python libraries to be installed. The best solution would be to create a requirement.txt file and step to install them.
The steps required to Fork and clone the repo is not available for new contributors.

Please assign me this issue

can i do it?

i would like to request to assign this issue to me under GSSOC'24

Hey, can you please assign me this issue under gssoc'24?

I am interested in this task. Pls assign it to me under GSSOC'24 so that I can contribute to this project. I am good enough at my skills to complete this task efficiently.

I would like to work on this feature @hasmithagunda123  please assign it to me.

Could you please assign this issue to me under GSSOC'24.

Please assign me the 2nd issue of "Forking and Cloning Repo" under GSSOC'24.

i would like to request to assign this issue to me under GSSOC'24

can you assign me for this @hasmithagunda123

Hello @hasmithagunda123, I would like to work on this issue as a contributor at GSSOC'24. Please assign this to me.

Hii @hasmithagunda123
Please assign this task to me under GSSOC'24

Hii.I would like to work on this .Please assign this to me Under GSSOC'24

@hasmithagunda123 , I would like to request assignment of this issue to me under GSSoC'24.

Hi, @hasmithagunda123 I think I can create the requirements.txt file and also manage to list the steps for further checking if it worked safely.
Please assign me this issue

I would like to work on this. Please assign this to me as a contributor at GSSOC'24.

Please assign me this issue.

hi @hasmithagunda123
Proposal for Adding More Examples to Prompt Example Page
Objective:
The current Prompt Example page lacks comprehensive coverage and user-friendliness. By adding more examples and enhancing the formatting, we aim to improve user understanding and utilization of the application's features.
Tasks:

Add Additional Examples:

Incorporate diverse examples covering various use cases.
Ensure clear instructions accompany each example.

Improve Formatting:

Organize content with headings, subheadings, and lists for clarity.
Integrate code snippets or sample inputs/outputs where applicable.

Ensure Consistency:

Maintain a consistent style and format across all examples.

Conclusion:
Enhancing the Prompt Example page will enhance user experience and usability, fostering better interaction with the application. This proposal outlines a concise plan for achieving these goals within a reasonable timeline.


Remove additional generator from expected gens_eia860 row count

Overview
Closes #3742.
What problem does this address?
I dropped an additional non-existent generator in #3699, but forgot to update the expected row counts.
What did you change?
Dropped the generator from test.validate.eia_test.py.
# To-do list
- [ ] If updating analyses or data processing functions: make sure to update or write data validation tests (e.g. `test_minmax_rows()`)
- [ ] Review the PR yourself and call out any questions or issues you have

Definitely looking forward to getting these row-count validations moved into asset checks so we can find them sooner!


Added support to Flutter_web and fix Get version

The project used Dart: io which made it incompatible with Flutter_web.
The Get version was updated in pubspec to correct the error with null Get.key.

This is great man 👍👍

Dopeness @jonataslaw . Thanks for that fix.


Is there a way to inject BrowserWindow options from a user script?

It appears that the options for Atom's BrowserWindow instance are compiled here.
Is there a way for user scripts to add to / manipulate these options? There are many use cases for this, such as setting the initial window position or enabling the GTK+ dark theme.

@p-e-w Would like to as well, there's an option that I think may be the culprit for poor font rendering on windows:

CC @damieng Tag Linux

@darkmorpher I appreciate the help but I'm focused on Windows issues.


Allow Spring/CDI injection

Using @Konverter
The mapper implementation would be annotated with @Component / @ApplicationScope to allow Spring/CDI injection
@Konverter could have a parameter to select from Spring or cdi

Thank you for the idea. I know that MapStruct offers this functionality.

Generating Spring/CDI annotations

I am not sure about the priority of this feature, especially as Spring and CDI offer simple ways to dynamically register beans (e.g. @Bean and @Provides).
Also, Konvert should not be coupled too tight with any framework and I am thinking about if this could also be an extension (like konvert-spring) to have a clean processor. But of course this would be more complex.

Having configuration via annotation

Adding a configuration annotation (like MapStruct offers) is at least planned. But due to the lack of configurations (only one at the moment), it probably does not have high prio as well.

I'd love that feature too
@mcarleio I did something very similar to this in other mapper: https://github.com/s0nicyouth/kmapper/pull/10
I think i could to PR with integration of koin/anvil/hilt (i do not know about Spring, since i mostly focus on android development). As to extension - i don't think that's possible, since you have to apply the annotations directly on class generated by the main processor, but i don't think this is really "tight coupling" since you do not directly depend on injection frameworks. You just apply annotations via ClassName. You can add new module for annotations that are related to injection framework. So let's say you want to create a mapper that's injected via koin. You can annotate your interface like this:
@Konvert
@KoinSingle
interface YourMapper { }

In this case @KoinSingle would live in a separate module, but the implementation of processor would have to stay in main module

You are right, it is not directly "tight coupling", but imagine how the processor will look like, if you add special logic for each existing DI framework.
I have a rough idea, how this could be done, but I have to test it out and see, if this works well (and feels good). I will comment again, when I have more than a rough plan. As I have only little expierence with Koin and co. I would be happy if you then create a PR 👍

The processor itself can be modularized to separate concerns, i just don't think exposing it as separate artifact is feasible since i don't think two separate processors can cooperate. But waiting for results of your tests :)

@jakoss please have a look onto #3. Do you think this is sufficient, or are you missing stuff?

@mcarleio Looks great, i'll look at adding koin to this mix in some spare time :)

Done with #3


Uncaught Error: Cannot find module 'invariant'

It just stays white. Not sure if the error in the console is the reason. (maybe add an status/error display?)
Running this app on a different computer (Mac OS X 10.9.5)

The Android app can connect fine, and my Laptop is displaying the game using In-Home Streaming, so that is connected too.

npm install invariant

seems to fix that issue.

Weird. What version of npm and node are you on? invariant ends up getting installed as part of history, a peer dependency of react-router.

mac:~ luckydonald$ npm --version
2.14.4

Interesting. I'm on npm 3.3.12, which does a flat layout now (as well as some pesky peer deps issues).

@rgbkrk Normally peer-dependencies are not installed automatically. That's the difference to normal dependencies. I bet we just forgot to add it to the package.json

Ah. That's definitely my fault. It has the appearance of working because of npm 3 installing invariant flatly. I'll fix this now.


VMS: copy prologue/epilogue headers when header files are generated

This is crucial when the build tree isn't the source tree, as they
only take effect in directories where included header files reside.
The issue only comes up when linking with the static libraries, since
the shared libraries have upper case aliases of all symbols.

This PR is currently in draft, until I've verified that the fix works.

This is now verified on VMS, ready for review

The CI failures are not relevant for this PR.  The same failures can be seen in today's daily builds...  something happened on master since f596bbe, which built cleanly

Ping?  @openssl/committers, second reviewer needed.
This has been verified to work correctly on VMS.

24 hours has passed since 'approval: done' was set, but this PR has failing CI tests.  Once the tests pass it will get moved to 'approval: ready to merge' automatically, alternatively please review and set the label manually.

Merged
master:
98b7b74122e66f63c4ec67a74e345c64a55c68db VMS: copy prologue/epilogue headers when header files are generated
3.0:
4b908b6c386ef02cf7c363d639c9ef831d77587f VMS: copy prologue/epilogue headers when header files are generated


Make channels handling code more generic

What is the expected feature or enhancement?
Today we have two channels - ibm_quantum and ibm_cloud. The URLs are hard coded, and there is channel specific logic in various places.
Since there are plans to onboard additional channels, we should make channel account management more generic. That is, to have a configuration file that lists the channels, their default urls, and any channel strategies they support.
It is unlikely the code can be completely channel agnostic, but we can try to isolate such code to separate classes/methods. If there are actions that can be done on the server side, we can also bring that back to them.
Acceptance criteria
Ideally, when adding a new channel, all one has to do it to update the config file.
Suggested fix
Instead of hard coding the channels, we should have a config file that lists what channels are support. For example, in a format of:
channels:
    - name: ibm_quantum
      default_url: api.quantum-computing.ibm.com
      token_required: True
      instance_required: True
      channel_strategy: []
    - name: ibm_cloud
      ...

Then a new channel can just update this file with a new section. create_account can return a GenericAccount (or use the base Account since it's not actually declared as an abstract class despite the comment).

This issue was brought up again in regards to new channel partners. The original PR didn't quite address the issue, as the two channels are still hard coded. For example, if I try to do
QiskitRuntimeService(channels="foo")

This would blow up as it only accepts ibm_quantum and ibm_cloud.
I updated the OP with a "Suggested fix"

Closing because of pending IQP changes.


[Secp256k1-zkp] Update README

We should add a section listing the methods for which we provide the go bindings.

I would make this crawable by godoc


tailwind plugin won't work in production build

Hey,
I am trying to use postcss with tailwindcss plugin. It works for ng serve and ng build but when using ng build --prod to build production assets, it doesnt run tailwindcss plugin. I added console log at start of custom webpack file, it shows in console but it just doesnt run tailwindcss plugin.
My custom webpack looks like this:
const tailwindcss = require('tailwindcss');

console.log('** Custom webpack config was loaded.');

module.exports = {
    module: {
        rules: [
            {
                test: /\.css$/,
                use: [
                    {
                        "loader": "postcss-loader",
                        "options": {
                            "ident": "embedded",
                            "plugins": [
                                tailwindcss('./tailwind.js'),
                            ],
                            "sourceMap": true
                        }
                    }
                ]
            },
        ],
    },
};

I have tried all mergeStrategies in angular.json configuration but it doesnt work anyway.

If you add a print at the beginning of tailwind.js file, does it show up in the log? Both in prod and dev build?
Do you use dev-server:generic for ng serve target?
What happens if you run ng serve in production mode?

I added print at the beginning of tailwind.js file and it shows up only in dev build.
Yes I am using @angular-builders/dev-server:generic for ng serve.
If I run ng serve --prod it doesnt work aswell. Only ng serve (dev) works.
It logs "Custom webpack config was loaded" but not log from tailwind.js which means its not running postcss  tailwind plugin.

Any update about this?

Funny thing - I took a look at their internals and I'm very surprised that the behavior is inconsistent. To be precise, I'd say it shouldn't work neither in dev build nor in production.
You see, postcss-loader can receive either Array or Function (that returns an array) as plugins value.
You can see that in their implementation (that is relevant for Angular CLI 6) they are using the second option - Function.  This is not very good, I believe your intention was to add on top of this functionality  instead of replacing that completely.
In any case I don't understand what is the difference here between dev build and production so a repository with minimal reproduction would be really helpful.
But even when we find the root cause and fix it you'll have to take this array as a base line for your plugins array in postcss-loader options.

Thanks for checking it out. I made repository with simple tailwind page.
mihaliak/angular-builders-bug
I added screenshot.png to repository, in screenshot you can see success tailwind build (dev serve or build).
Can you check it please and if possible fix it ? Copying array as base line for my plugins in postcss-loader wont be problem I think, is there any es6 version of this array? Or have idea how to use ts version in custom webpack config?
Thanks!

Ok, so a few good news and a few bad.
The good:

You don't have to dig through their configuration to align with it - the plugin creator function is applied before it comes to the merge.
The merge works just as expected (the extra configuration is being merged in both product and development modes). It's a bit strange it doesn't merge the \\/.css$ rule but it doesn't affect the configuration.

The bad:
I still don't know why tailwind.js file is not loaded in production mode.
I've serialized runtime configurations so that you can easily diff between production and development merged configs.
I'd say it's is not a bug in angular-builders/custom-webpack but rather a configuration issue (for production it probably should be configured in a different way).
Most probably that the problem is related to the fact that in production build they use mini-css-extract-plugin instead of style-loader or their own version of raw-loader (@angular-devkit\\build-angular\\src\\angular-cli-files\\plugins\\raw-css-loader.js) instead of plain raw-loader.
I will continue the investigation but in a meantime you can play with the configuration a bit and try to figure out what is the exact source of the problem.

Hello,
any new info about this? This is not related only to tailwind but any postcss plugins.
Thanks

No news yet, I do believe it is an issue with configuration and not with the builder.
Have to investigate in depth how mini-css-extract-plugin affects the situation.

Setting extractCss to false in angular.json file fixed this issue, extra webpack config is loaded and build is ok.


Validator for alphanumeric

Alphanumeric are used extensively.Please update for alphanumeric.

Also min and max can be applied for different controls

welcome PR


kubie: 0.14.1 -> 0.15.0

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://github.com/sbstp/kubie/releases.
meta.description for kubie is: "Shell independent context and namespace switcher for kubectl"
meta.homepage for kubie is: "https://github.com/sbstp/kubie"
meta.changelog for kubie is: ""
Updates performed

Rust version update

To inspect upstream changes

Release on GitHub

Compare changes on GitHub

Impact

Checks done (click to expand)

built on NixOS

The tests defined in passthru.tests, if any, passed

/nix/store/zwzndcasgwr7rvvy3anf0jwn5419sh7p-kubie-0.15.0/bin/kubie passed the binary check.

1 of 1 passed binary check by having a zero exit code.

1 of 1 passed binary check by having the new version present in output.

found 0.15.0 with grep in /nix/store/zwzndcasgwr7rvvy3anf0jwn5419sh7p-kubie-0.15.0

found 0.15.0 in filename of file in /nix/store/zwzndcasgwr7rvvy3anf0jwn5419sh7p-kubie-0.15.0

directory tree listing: https://gist.github.com/8b2da579c4b9a0d254348c635f1221e1

du listing: https://gist.github.com/e4de9012f75b8c0e5df73cdc607673fe

Rebuild report (if merged into master) (click to expand)

4 total rebuild path(s)

1 package rebuild(s)

1 x86_64-linux rebuild(s)
1 i686-linux rebuild(s)
1 x86_64-darwin rebuild(s)
1 aarch64-linux rebuild(s)

First fifty rebuilds by attrpath
kubie

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/zwzndcasgwr7rvvy3anf0jwn5419sh7p-kubie-0.15.0 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A kubie https://github.com/r-ryantm/nixpkgs/archive/05e2a71c8bfe02bd3c39b4e5cc541e8329fa9bf7.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/zwzndcasgwr7rvvy3anf0jwn5419sh7p-kubie-0.15.0
ls -la /nix/store/zwzndcasgwr7rvvy3anf0jwn5419sh7p-kubie-0.15.0/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

1 package built:

kubie

Maintainer pings
cc @illiusdope for testing.

Result of nixpkgs-review pr 126040 run on x86_64-linux 1

1 package built:

kubie


Docs: Clarify warning around using clear_state=True with Logger() when using Powertools as a Lambda layer vs using other Lambda layers

What were you searching in the docs?
I was reading about Logger()
Is this related to an existing documentation section?
https://docs.powertools.aws.dev/lambda/python/latest/core/logger/#clearing-all-state
How can we improve?
The documentation contains a warning Danger: This can have unintended side effects if you use Layers however I believe this relates to using other layers as opposed to using the Powertools layer itself.
Got a suggestion in mind?
Something like...
Danger: This can have unintended side effects if you use Layers other than Powertools.

Acknowledgment

[X] I understand the final update might be different from my proposed suggestion, or refused.

Hi @ChrisHills463,
The docs are correct, it affects us – we should probably change the wording though here with what it actually affects.

Assigning to release it this Thursday


Problem with import of nested library files

Describe the bug
import of nested library files not working.
To Reproduce
Steps to reproduce the behaviour:

Open Kode Console
Type import libmath.timeit;
It fails to load the library through the library file is available in the \lib\ folder

Expected behaviour
Expected behaviour like in python.
Desktop:

OS: Windows-x64

Additional context
Only import libmath; is working fine.

Dear Devs,
This problem is more or less related to the design of the import syntax...
So, I have decided to re-think about the syntax design of it.
Thanking You,
@Edumate696

Dear devs,
This problem is fixed but the change is if you execute import libmath.timeit;, it will import the file timeit only, i.e., to access any function fun1 you need to call timeit.fun1() instead of libmath.timeit.fun1().


travis: update to test against Go 1.7.1, 1.6.3

@levb @akshaybahetii

This also fixes an issue with the Coveralls configuration, probably due to an upstream change in goveralls or perhaps Coveralls itself. Master is currently failing on the goveralls step.
I'll likely merge when this goes green.

LGTM

Coverage remained the same at 30.151% when pulling 557e3e26913ec11ed57aba12166ba7cf7b4d6098 on add-go-1.7.1 into 47cb0918eee70c82a75c0090e0ff870f79d895fb on master.


⚠ Turnos 24x7 has degraded performance

In efce8c8, Turnos 24x7 (https://reservas-dev.alternativasinteligentes.com/) experienced degraded performance:

HTTP code: 200
Response time: 4002 ms

Resolved: Turnos 24x7 performance has improved in ab33045.


[Tests] [pallet-timestamp] Add tests for OnTimestampSet.

Add tests for OnTimestampSet for the pallet timestamp.
There should be no change in the API, just refactoring code to be in separate files and adding a new test.
polkadot address: 12xH9F4aSGEq27AZxLqG15fheDTtSxh1rJkVSXQ2g59djs7u

It needs a format to make the CI happy.

Okay will check that

@bkchr Thank you for the review, I've introduced mock.rs to contain the code related to the testing setup. (following the pattern of other pallets in the substrate codebase).
so tests.rs will only house tests.

@ggwpez the formatting issues are not in the scope of this PR. I will see if I can open a new PR with this fix

I'm not sure if this is a useful change TBH, but as long as it is correct is there a reason not to merge it?

Thank you.
Noted, will not use force push in my future contributions.

bot merge

/tip small

/tip small
@shawntabrizi Thank you for the tip ❤. seems like the bot didn't catch this comment.

@TarekkMA let me figure out whats up

/tip small

Thank you much appreciated


Event page section not responsive overlapping div

Main heading Events not visible overlapping issue
I would like to work on it and can improve UI of this page.

@akshitagupta15june can you assign this to me !!

go for it

Hey @Geeta259 , are you still working on it ?


chore: migrate vm2 to isolated-vm

The maintenance of vm2 has been discontinued due to critical security issues (patriksimek/vm2#533), and isolated-vm is suggested as replacement.
Quoted from the requirements of isolated-vm:
This project requires nodejs version 16.x (or later).
🚨 If you are using a version of nodejs 20.x or later, you must pass --no-node-snapshot to node.
Furthermore, to install this module you will need a compiler installed. If you run into errors while
running npm install isolated-vm it is likely you don't have a compiler set up, or your compiler is
too old.

Windows + OS X users should follow the instructions here: node-gyp
Ubuntu users should run: sudo apt-get install python g++ build-essential
Alpine users should run: sudo apk add python3 make g++
Amazon Linux AMI users should run: sudo yum install gcc72 gcc72-c++
Arch Linux users should run: sudo pacman -S make gcc python
Red Hat users should run: sudo dnf install python3 make gcc gcc-c++ zlib-devel brotli-devel openssl-devel

https://github.com/patriksimek/vm2/issues/533#issuecomment-2027887015


Collapsed Toolbar title disappear when dialog is displayed

Material Dialogs version: <IP_ADDRESS>
Device OS version: 6.0
Device Manufacturer: Huawei
Device Name: P9
Support Library Version: 24.2.1

Reproduction Steps

You need to have layout hierarchy like this:

<CoordinatorLayout>
    <AppBarLayout>
        <CollapsingToolbarLayout>
            <Toolbar>
            </Toolbar>
        </CollapsingToolbarLayout>
    </AppBarLayout>
    <NestedScrollView>
        <!-- My content -->
    </NestedScrollView>>
</CoordinatorLayout>

Header is expanded on the beginning
You have to collapse header by scrolling top in NestedScrollView
Then display material dialog when toolbar is collapsed

Expected Result

Dialog is displayed
Toolbar title is in the same position

Actual Result
When I display material dialog, toolbar title disappear. When I hide dialog, toolbar title is still invisible. When I expand toolbar, then title appears, with animation from a bottom. When I collapse it again, toolbar title disappears. Only way to bring collapsed toolbar title, is to show dialog when toolbar is expanded, then title appears again in collapse mode.
How it looks like:
http://giphy.com/gifs/3o7TKBTM2DeV0uDljG

I don't think this is related to this library, since this library is just wrapping around regular android.app.Dialog instances. There's probably an underlying issue in Google's code.


ZEN76 has the scenes reversed

has this been updated in a new firmware update or is the 76 just different?

Sorry, I do not have a ZEN76 to test with. It may be easier to fork my repo and swap the functions to meet your needs. I could probably add a check for the model, but then it will continue to grow more complex than I intended.

that's what I did...was just asking in case it was changed in a new firmware update across the line. on the ZEN76 they are definitely reversed (001 is paddle up and 002 is paddle down).

Yes, same here, i have ZEN71 switch, scene 001 = paddle UP, scene 002 = paddle down, change it in the blueprint with your home assistant text editor before you create the automation and it works well.   ; )
/config/blueprints/automation/willheineman/zooz_zen_blueprint_template_zwave_js.yaml


Install Netlify GitHub App for PR preview

I've noticed Netlify is being used for hosting the content based on https://github.com/oam-dev/oam-dev.github.io/blob/dev/netlify.toml
The Netlify GitHub App could be use to build a preview of the website in a PR so that it can be reviewed as it would be deployed.
For an example, see https://github.com/tomkerkhove/promitor/pull/766 which generated https://deploy-preview-766--promitor-staging.netlify.com/. I'm not using Netlify for my PROD site so it would be https://deploy-preview-766--oam.netlify.com/.

The site used Netlify for earlier dev and staging work, but the live site is actually hosted on Github Pages.
live site     -->   oam-dev.github.io
staging site  -->   oamdev.netlify.com

I'd prefer to use Netlify as well as their continuous deployment for Hugo static sites is smoother than Github Pages. Currently we have to run these steps to deploy. Plus the deploy previews you mention on pull requests is a great feature.

@vturecek what do you think? What we have right now works. Changing would require a DNS edit.


Add repo directory key to published package.json

This adds support for npm RFC 10 as defined in this PR.

Would love to see this merged! I've implemented a workaround in Dependabot in the meantime, but having DefinitelyTyped follow npm RFC 10 would be much nicer. 😄

/cc @sandersn


SDK examples missing for Send a new message using MIME format

I am trying to implement sending of MIME format messages using the Java SDK, but unfortunately there are no examples for any of the SDKs of how to do this. It would be great if this documentation hole could be filled!

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

ID: 572e47b6-e504-0918-fc06-11217eea40a4
Version Independent ID: c30fd8a1-e913-0192-7405-d55232ea3703
Content: Send mail - Microsoft Graph v1.0
Content Source: api-reference/v1.0/api/user-sendmail.md
Product: outlook
Technology: microsoft-graph
GitHub Login: @abheek-das
Microsoft Alias: MSGraphDocsVteam

This should have been fixed in the new generation of SDKs. This needs to be addressed in the code snippet generation tool: https://github.com/microsoftgraph/msgraph-sdk-raptor/issues/2794

I have transferred this issue to the appropriate repo https://github.com/microsoftgraph/microsoft-graph-devx-api/issues/1949 and closed the earlier one. However, @isvargasmsft still remains as the PM there I believe.


Replace #34

This PR will replace #34

HTTPS had some issues on Travis.. I got:

Ivory\HttpAdapter\HttpAdapterException: An error occurred when fetching the URI "https://data.wien.gv.at/d..." with the adapter "curl" ("gnutls_handshake() failed: A TLS fatal alert has been received.").

This PR is ready to be merged

@Nyholm +1 / LGTM

Thank you.


Feature: Add "Known Issues" docs page

Before you start...

[X] Have you refreshed the page? You might be using an old version of the website.
[X] Have you checked if someone already requested this feature? If they have, post a comment with your use case instead.

Description
As the title. I would be grateful if there's a docs showing Known Issues or Issues Difficult to Fix section. Also, when someone opened an issue describing one of the known issues and then we have to tell them that it has been reported but there's a lmimitation to fix, it will be very convenient if we have a link to show.
Alternative solutions
I don't think there is.
Relevant Assets
No response

I would love this. Great recommendation.


Added CUDA support info for GPU compute targets

@johnwu0604 : Thanks for your contribution! The author(s) have been notified to review your proposed change.

Hi @johnwu0604 - This pull request was opened in the public repository. This content has a private repo, and PMs typically work there to take advantage of the automated quality validations and comprehensive PR reviews that are available in that repository. Would you submit this update in a pull request in the private repo? We'll close this one.
Let me know if you need info about accessing the private repo. Thanks.


Add command to queue packages

Closes #151

Some suggestions from @import-pandas-as-numpy on Discord:

It would be nice to get the output... somewhere.
It would be nice to get some feedback if it was already scanned.

@import-pandas-as-numpy what do you think about a button on the result message that lets you check if the queued package is done? Something along the lines of a "refresh" button.

After [further discussion[(https://discord.com/channels/1121450543462760448/1121462605245067356/1201637020213198879), we should also add a background task that would periodically check for this package, and update the message with the new results if it's done.

Gonna hold off on the background task thing for now, and do that in a separate PR for the sake of getting this merged.


Bug: Mentions in LexicalMention Plugin are changable with cursor insertions in between

Lexical version: 0.5.0
Steps To Reproduce

Mention any user using the mention plugin provided on Github or CodeSandBox
You will find that you can insert your cursor in between the mentioned names and change the name which ideally should not happen.

Link to code example: https://codesandbox.io/s/lexical-mention-plugin-example-ojn42n
The current behavior
https://user-images.githubusercontent.com/47386839/222651746-1a80abc1-aeb5-4a03-b593-d42b8d01eefa.mp4
The expected behavior
https://user-images.githubusercontent.com/47386839/222651938-a8f4d414-07f1-456f-81af-d59932b2a074.mp4
(Mentioned users should not be clickable hence changeable)

This is by design. If you set the below on your MentionNode though it will work as intended:
  isToken(): true {
    return true;
  }

@thegreatercurve shouldn't the highlight disappear when any word of the entire name is deleted? Eg, "Tim Murphy". If "Tim" is removed , shouldn't the highlight go off from "Murphy" as well?


Unable to override persistentVolume.mountPath on neo4j-community

macOS 10.15.7
kind v0.10.0 go1.15.8 darwin/amd64
########### CONFIG ##############
image: "neo4j"
imageTag: "3.5.25"
imagePullPolicy: "IfNotPresent"
name: "neo4j"
service:
type: ClusterIP
core:
standalone: true
persistentVolume:
mountPath: /Users/jonas/code/cartography/data
acceptLicenseAgreement: "yes"
neo4jPassword: password
########## PERMS ON MOUNT PATH ##########
❯ ls -la /Users/jonas/code/cartography/data
total 0
drwxrwxrwx  2 jonas  staff   64 Feb 25 15:02 .
########## INITIAL RESULT ##########
❯ kubectl logs -l "app=neo4j-community"
import:       /var/lib/neo4j/import
data:         /var/lib/neo4j/data
certificates: /var/lib/neo4j/certificates
run:          /var/lib/neo4j/run
Starting Neo4j.
2021-02-26 16:17:40.596+0000 INFO  ======== Neo4j 3.5.25 ========
2021-02-26 16:17:40.620+0000 INFO  Starting...
2021-02-26 16:17:45.025+0000 INFO  Bolt enabled on <IP_ADDRESS>:7687.
2021-02-26 16:17:48.365+0000 INFO  Started.
2021-02-26 16:17:50.574+0000 INFO  Remote interface available at http://localhost:7474/
########### GET neo4j.log VIA KUBECTL EXEC INTO NEO4J CONTAINER ##############
2021-02-26 20:16:00.446+0000 ERROR Failed to start Neo4j: Starting Neo4j failed: Component 'org.neo4j.server.database.LifecycleManagingDatabase@7a362b6b' was successfully initialized, but failed to start. Please see the attached cause exception "Store and its lock file has been locked by another process: /data/databases/store_lock. Please ensure no other process is using this database, and that the directory is writable (required even for read-only access)". Starting Neo4j failed: Component 'org.neo4j.server.database.LifecycleManagingDatabase@7a362b6b' was successfully initialized, but failed to start. Please see the attached cause exception "Store and its lock file has been locked by another process: /data/databases/store_lock. Please ensure no other process is using this database, and that the directory is writable (required even for read-only access)".
org.neo4j.server.ServerStartupException: Starting Neo4j failed: Component 'org.neo4j.server.database.LifecycleManagingDatabase@7a362b6b' was successfully initialized, but failed to start. Please see the attached cause exception "Store and its lock file has been locked by another process: /data/databases/store_lock. Please ensure no other process is using this database, and that the directory is writable (required even for read-only access)".
'/' is a read only filesystem on MacOS so of course overriding the default mount path is required.  Have you ever successfully executed this helm chart against MacOS with a non-default path?  I'm very curious to know how you achieved that.
Thanks!

Hey @jonassteinberg1!
Sorry for such a long delay.
I can't confirm the issue you're seeing:
$ helm install test neo4j-community --repo https://equinor.github.io/helm-charts/charts/ --set persistentVolume.mountPath=/Users/jonas/code/cartography/data
WARNING: Kubernetes configuration file is group-readable. This is insecure. Location: /Users/ykomar/.kube/config
WARNING: Kubernetes configuration file is world-readable. This is insecure. Location: /Users/ykomar/.kube/config
NAME: test
LAST DEPLOYED: Wed Apr  7 12:30:32 2021
NAMESPACE: default
STATUS: deployed
REVISION: 1
TEST SUITE: None
NOTES:
We'll need to wait a few seconds for Neo4j to start.

We need to see this line in our pod log:

> Remote interface available at Remote interface available at http://localhost:7474/

We can see the content of the logs by running the following command:

kubectl logs -l "app.kubernetes.io/name=neo4j-community"

$ kubectl logs -l "app.kubernetes.io/name=neo4j-community"
2021-04-07 09:31:56.239+0000 INFO  ======== Neo4j 4.2.4 ========
2021-04-07 09:31:58.815+0000 INFO  Initializing system graph model for component 'security-users' with version -1 and status UNINITIALIZED
2021-04-07 09:31:58.822+0000 INFO  Setting up initial user from defaults: neo4j
2021-04-07 09:31:58.823+0000 INFO  Creating new user 'neo4j' (passwordChangeRequired=true, suspended=false)
2021-04-07 09:31:58.831+0000 INFO  Setting version for 'security-users' to 2
2021-04-07 09:31:58.837+0000 INFO  After initialization of system graph model component 'security-users' have version 2 and status CURRENT
2021-04-07 09:31:58.844+0000 INFO  Performing postInitialization step for component 'security-users' with version 2 and status CURRENT
2021-04-07 09:31:59.056+0000 INFO  Bolt enabled on <IP_ADDRESS>:7687.
2021-04-07 09:32:00.633+0000 INFO  Remote interface available at http://localhost:7474/
2021-04-07 09:32:00.635+0000 INFO  Started.

$ kubectl exec sts/test-neo4j-community -- cat /logs/debug.log
...
2021-04-07 09:31:58.965+0000 INFO  [o.n.i.i.l.LabelScanStore] [neo4j/29ccb0e1] No label index found, this might just be first use. Preparing to rebuild.
2021-04-07 09:31:58.973+0000 INFO  [o.n.k.a.DatabaseAvailabilityGuard] [neo4j/29ccb0e1] Requirement `Database unavailable` makes database neo4j unavailable.
2021-04-07 09:31:58.974+0000 INFO  [o.n.k.a.DatabaseAvailabilityGuard] [neo4j/29ccb0e1] DatabaseId{29ccb0e1[neo4j]} is unavailable.
2021-04-07 09:31:59.001+0000 WARN  [o.n.k.i.s.MetaDataStore] [neo4j/29ccb0e1] Missing counts store, rebuilding it.
2021-04-07 09:31:59.001+0000 WARN  [o.n.k.i.s.MetaDataStore] [neo4j/29ccb0e1] Counts store rebuild completed.
2021-04-07 09:31:59.003+0000 INFO  [o.n.i.i.l.LabelScanStore] [neo4j/29ccb0e1] Rebuilding label index, this may take a while
2021-04-07 09:31:59.005+0000 INFO  [o.n.i.i.l.LabelScanStore] [neo4j/29ccb0e1] Label index rebuilt (roughly 0 nodes)
2021-04-07 09:31:59.005+0000 INFO  [o.n.k.a.DatabaseAvailabilityGuard] [neo4j/29ccb0e1] Fulfilling of requirement 'Database unavailable' makes database neo4j available.
2021-04-07 09:31:59.006+0000 INFO  [o.n.k.a.DatabaseAvailabilityGuard] [neo4j/29ccb0e1] DatabaseId{29ccb0e1[neo4j]} is ready.
2021-04-07 09:31:59.006+0000 INFO  [o.n.m.DatabaseHealth] [neo4j/29ccb0e1] Database health set to OK
2021-04-07 09:31:59.057+0000 INFO  [o.n.b.BoltServer] Bolt enabled on <IP_ADDRESS>:7687.
2021-04-07 09:31:59.057+0000 INFO  [o.n.s.AbstractNeoWebServer$ServerComponentsLifecycleAdapter] Starting web server
2021-04-07 09:32:00.634+0000 INFO  [o.n.s.CommunityNeoWebServer] Remote interface available at http://localhost:7474/
2021-04-07 09:32:00.634+0000 INFO  [o.n.s.AbstractNeoWebServer$ServerComponentsLifecycleAdapter] Web server started.

$ kubectl exec sts/test-neo4j-community -- ls -alh /Users/jonas/
total 12K
drwxr-xr-x 3 root root 4.0K Apr  7 09:31 .
drwxr-xr-x 3 root root 4.0K Apr  7 09:31 ..
drwxrwxrwx 2 root root 4.0K Apr  7 09:30 code


WIP: Push notifications enabled migration to have current information about bouncer registration state

Prototype of the API detailed in https://chat.zulip.org/#narrow/stream/378-api-design/topic/register.3A.20Be.20more.20informative.20about.20push-bouncer.20setup/near/1686802.

Closing in favor of https://github.com/zulip/zulip/pull/27939, which has more current work on this.

Reopening this to merge a couple prep commits from #27939.


ginkgo-hpc: init at 1.6.0

Description of changes
Tracking: #197885
For: #216655
@keldu I added you to the maintainers for ginkgo-hpc since you expressed interest in making a PR for this yourself.

Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
23.11 Release Notes (or backporting 23.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

Thanks for working on this.
Since this is in draft stage, I leave some general comments here to help with future iterations:

New packages should go into /pkgs/by-name/... (see https://github.com/NixOS/rfcs/blob/master/rfcs/0140-simple-package-paths.md)
Please use lib.getDev instead of pkname.dev if you need to find headers.
Instead of making the build of docs, examples, etc. optional, I would recommend to rather use  multiple outputs.
Please consider to split up the PR into several PRs. That makes it easier to review.
What is pmix-5 needed for at the moment ? I would rather go with having only version (if possible). OpenMPI is only compatible with pmix-3 (if I remember correctly). PMix is tightly coupled to MPI and Slurm. Thus openmpi and pmix should be updated together once openmpi-5 is released.

Thanks for working on this. Since this is in draft stage, I leave some general comments here to help with future iterations:
* New packages should go into `/pkgs/by-name/...` (see https://github.com/NixOS/rfcs/blob/master/rfcs/0140-simple-package-paths.md)

* Please use `lib.getDev` instead of `pkname.dev` if you need to find headers.

* Instead of making the build of docs, examples, etc. optional, I would recommend to rather use  multiple outputs.

* Please consider to split up the PR into several PRs. That makes it easier to review.

* What is `pmix-5` needed for at the moment ? I would rather go with having only version (if possible). OpenMPI is only compatible with pmix-3 (if I remember correctly). PMix is tightly coupled to MPI and Slurm. Thus openmpi and pmix should be updated together once openmpi-5 is released.

pmix_5 is needed because openmpi-rocm overrides openmpi to use the 5.0.x branch, which is required for working ROCm support. We can remove most of this override as well as pmix_5 once openmpi 5.0 is released.

Gladly taking the maintainer role here.
My derivation file used in the issue https://github.com/NixOS/nixpkgs/issues/216655 I had created regarding hip was more meant to debug the issue with hip I kept having in nixos-23.05 with the future intent of doing this PR. I guess it got fast tracked a little bit.
Thanks for the additional work.

That should fix most of what you asked, @markuskowa.
As for the multiple PRs thing, normally I would but everything here's pretty tightly integrated with maybe the exception of kokkos only being needed for making examples.

To clarify a bit further; openmpi 5.0 requires pmix 5.0

I have been preparing openmpi-5.0 (https://github.com/markuskowa/nixpkgs/tree/openmpi-5.0), so once it is released, were are actually ready to update.

As for the multiple PRs thing, normally I would but everything here's pretty tightly integrated with maybe the exception of kokkos only being needed for making examples.

The additions of rocm to ucc, ucx, and openmpi could be its own PR first, for example.

To clarify a bit further; openmpi 5.0 requires pmix 5.0

I have been preparing openmpi-5.0 (https://github.com/markuskowa/nixpkgs/tree/openmpi-5.0), so once it is released, were are actually ready to update.

As for the multiple PRs thing, normally I would but everything here's pretty tightly integrated with maybe the exception of kokkos only being needed for making examples.

The additions of rocm to ucc, ucx, and openmpi could be its own PR first, for example.

Looking through your commits, I think I see why pmix works on your branch. It's at 4.0, which apparently is good enough for openmpi 5.0. I still see no reason to get rid of pmix_5, but that's good to know.

The additions of rocm to ucc, ucx, and openmpi could be its own PR first, for example.
This is indev right now anyway, so sure alright.

Keeping the commits here until those two PRs are merged so I can continue to build and test.

I'm using this package (ginkgo-hpc) as a bit of a testing bed for rocmPackages changes, including impureTests.
If you have any further nitpicks at all, let me know. The changes here are going to be reflected across the entire package set.


Mistral QLoRA and config spring cleaning

Context

In #665 it was pointed out that we can't run any recipes on Colab. While #666 allows us to run Llama2 7B with QLoRA, we still don't support Mistral 7B out of the box as we don't have a QLoRA recipe for it yet.

Changelog

Add a Mistral 7B QLoRA recipe
Also a lot of other stuff (sorry)

While I was adding the Mistral 7B QLoRA recipe, I was pretty befuddled by our config -> recipe mapping. @joecummings and @kartikayk and I had discussed this previously, but configs -> recipes should never be a one-to-many mapping. It's confusing and a maintenance nightmare. So I

split Mistral recipes out into single device and multi-device
tried to improve the "docstrings" across our different configs to make them consistent and fix any obvious errors (I'm sure I missed/introduced a few)
removed the distinction of single-device vs. single-device low-memory for our full finetunes. Now single-device implicitly means low-memory (i.e. these configs will ship with optimizer_in_bwd=True and paged AdamW out of the box).

Oh also we never use cpu_offload in our recipes and all the cpu_offload: False polluting our configs is confusing, and in general single-GPU FSDP is confusing, so.. no more CPU offload.

Also I have no idea why half our recipes default to epochs=1 and half default to epochs=3 but this is already enough of a hodgepodge PR so will tackle that separately.
 Now single-device implicitly means low-memory

I thought we were going the other way with this, e.g. we explicitly call out the recipes as low memory, rather than single device.


add RetryableConnection for the case for wait a moment when The channelMaxlimit is reached

When I encounter message sending in high-concurrency scenarios in the actual project, I often encounter 'The channelMax limit is reached. Try later.' However, I need to handle this kind of retry compatibility at different parts of the business logic. So, I'm considering extending support for retry connection types in Spring RabbitMQ

@javaecrainbow Thank you for signing the Contributor License Agreement!

I have found the corresponding solution in the relevant amqp.adoc document, so I am closing this pull request.

I assume you mean by adding a suitably configured RetryTemplate to the RabbitTemplate https://docs.spring.io/spring-amqp/docs/current/reference/html/#template-retry
So why did you re-open it?

Indeed, there are scenarios where the RetryTemplate in RabbitTemplate can be used to handle custom exception retries at a higher level. However, there are some use cases not triggered from RabbitTemplate. For instance, in BlockingQueueConsumer, there is also a business scenario for obtaining a channel, but it does not support RetryTemplate. Therefore, it is necessary to support RetryTemplate uniformly in the lower-level Connection module to cater to various upper-level business use cases that involve retrying channel acquisition exceptions. @garyrussell

The BlockingQueueConsumer (essentially any AbstractMessageListenerContainer) can be supplied with a recoveryBackOff:
	/**
	 * Specify the {@link BackOff} for interval between recovery attempts.
	 * The default is 5000 ms, that is, 5 seconds.
	 * With the {@link BackOff} you can supply the {@code maxAttempts} for recovery before
	 * the {@link #stop()} will be performed.
	 * @param recoveryBackOff The BackOff to recover.
	 * @since 1.5
	 */
	public void setRecoveryBackOff(BackOff recoveryBackOff) {

Which works as a retry on connection failure as well.
So, looks like we have both passive and active connection covered with retries.
Any thought why do we need this extra one exactly in the connection?
Either way, if we really need, I'd prefer to make it based on that BackOff abstraction instead.
The RetryTemplate is more high-level, end-user API. What we are talking about here is really a rudimentary back off between connection attempts.
Let us know if that is OK with you and we close this as Works as Designed!

The BlockingQueueConsumer (essentially any AbstractMessageListenerContainer) can be supplied with a recoveryBackOff:
	/**
	 * Specify the {@link BackOff} for interval between recovery attempts.
	 * The default is 5000 ms, that is, 5 seconds.
	 * With the {@link BackOff} you can supply the {@code maxAttempts} for recovery before
	 * the {@link #stop()} will be performed.
	 * @param recoveryBackOff The BackOff to recover.
	 * @since 1.5
	 */
	public void setRecoveryBackOff(BackOff recoveryBackOff) {

Which works as a retry on connection failure as well.
So, looks like we have both passive and active connection covered with retries.
Any thought why do we need this extra one exactly in the connection?
Either way, if we really need, I'd prefer to make it based on that BackOff abstraction instead. The RetryTemplate is more high-level, end-user API. What we are talking about here is really a rudimentary back off between connection attempts.
Let us know if that is OK with you and we close this as Works as Designed!

I encountered the problem in the case of  the connection is shared between producers and consumers, and enabled producer reliability delivery . In the case of large concurrent message delivery, the connection cannot be obtained intermittently from RabbitTemplate . From the code you referred, I think that the solution you provide is actually a retry mechanism for consuming modules. I don't know whether there's a problem with my understanding, or whether spring-rabbit already has a solution for my problem in message delivery

But you said it yourself before:

there are scenarios where the RetryTemplate in RabbitTemplate can be used to handle custom exception retries at a higher level.

So, for RabbitTemplate you use RetryTemplate since it is passive operation and called from other code.
For the consumer side we use that BackOff functionality.
Not sure what else you'd like to have on top of existing functionality without over-confusing framework users with paradox of choice.

But you said it yourself before:

there are scenarios where the RetryTemplate in RabbitTemplate can be used to handle custom exception retries at a higher level.

So, for RabbitTemplate you use RetryTemplate since it is passive operation and called from other code. For the consumer side we use that BackOff functionality.
Not sure what else you'd like to have on top of existing functionality without over-confusing framework users with paradox of choice.
Thanks, I understand you way you provided can solve  my problem I encountered before. Just I think the exception handling function at the network level should belong to the low-level design, so it should also has  its own exception handling strategy mechanism at the bottom layer, and RetryTemplate and BackOff are modules at the upper level.

OK. I see your point:
			Channel channel0 = super.getDelegate().createChannel();
				if (channel0 == null) {
					throw new AmqpResourceNotAvailableException("The channelMax limit is reached. Try later.");
				}

Can we then still look into that BackOff injection instead of heavy RetryTemplate?
As you said: this is low-level, so no need in sophisticated retry features.
Thanks

OK. I see your point:
			Channel channel0 = super.getDelegate().createChannel();
				if (channel0 == null) {
					throw new AmqpResourceNotAvailableException("The channelMax limit is reached. Try later.");
				}

Can we then still look into that BackOff injection instead of heavy RetryTemplate? As you said: this is low-level, so no need in sophisticated retry features.
Thanks

ok,i agree that. Wish backoff injection function in connection module. whether i close the pr ？

I think you can just make a change and push the next commit.
Thanks

@artembilan i have changed the retry template to backoff util and commited


Can't modify some model parameters from SBML model

I imported an SBML model from COPASI. I can edit the species concentrations in the usual way, but I can't edit any variables (i.e. Vmax values).
import tellurium as te
r = te.loadSBMLModel('YeastGlycolysis_cell_free_DO02262021.xml')
print(r.ATP)
print(r.PGI_Vmax) # this gives an error message

The 3rd line gives me an error message.
Interestingly, if I convert the SBML file to an Antimony text file, and then re-import the model, it works fine.
-Dan
YeastGlycolysis_cell_free_DO02262021.zip

I had a look at the copasi file and it appears to be treating  the
parameters as local to the reaction which makes them inaccessible.
Converting to antimony promotes the parameters to the global space. That’s
what seems to be happening, it’s appears to be the way copasi saves its
models. There maybe an option when you save from copasi to promote the
parameters but copasi also separates rate laws into user functions so it
might not be possible. Generally I convert to antimony first so I’ve never
seen this issue before.
Herbert Sauro
On Fri, Feb 26, 2021 at 7:05 PM danolson1<EMAIL_ADDRESS>wrote:

I imported an SBML model from COPASI. I can edit the species
concentrations in the usual way, but I can't edit any variables (i.e. Vmax
values).
import tellurium as te
r = te.loadSBMLModel('YeastGlycolysis_cell_free_DO02262021.xml')
print(r.ATP)
print(r.PGI_Vmax) # this gives an error message
The 3rd line gives me an error message.
Interestingly, if I convert the SBML file to an Antimony text file, and
then re-import the model, it works fine.
-Dan
YeastGlycolysis_cell_free_DO02262021.zip
https://github.com/sys-bio/tellurium/files/6053608/YeastGlycolysis_cell_free_DO02262021.zip
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/sys-bio/tellurium/issues/508, or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAIBSDVVSBQYIDUS4DGOS5LTBBOL5ANCNFSM4YJPA65Q
.

--
Herbert Sauro, Professor
University of Washington, Bioengineering
206-685-2119, www.sys-bio.org
<EMAIL_ADDRESS>Books: http://books.analogmachine.org/

In the original model, there is nothing with the id "PGI_Vmax".  Instead, there is a reaction with the id 'PGI', and that reaction has a local parameter child called "Vmax".  Both Antimony and Roadrunner will read SBML models with local parameters, but roadrunner does not provide an interface that allows people to modify or otherwise interact with them directly.  Instead, as Herbert says, if you convert it to Antimony first, Antimony will 'promote' local parameters to global parameters by using the naming scheme you're using. There may be a similar thing you can do from Copasi when saving to SBML.

Thanks for clarifying that. I thought maybe there was a way to access the
Vmax parameter within PGI, but sounds like that's not the case. Using
conversion to Antimony as a workaround is pretty simple, though.
-Dan
On Fri, Feb 26, 2021 at 10:28 PM Lucian Smith<EMAIL_ADDRESS>wrote:

In the original model, there is nothing with the id "PGI_Vmax". Instead,
there is a reaction with the id 'PGI', and that reaction has a local
parameter child called "Vmax". Both Antimony and Roadrunner will read SBML
models with local parameters, but roadrunner does not provide an interface
that allows people to modify or otherwise interact with them directly.
Instead, as Herbert says, if you convert it to Antimony first, Antimony
will 'promote' local parameters to global parameters by using the naming
scheme you're using. There may be a similar thing you can do from Copasi
when saving to SBML.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/sys-bio/tellurium/issues/508#issuecomment-786996082,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABK4ACH2NSNYCISQYJ4ZJX3TBBRGFANCNFSM4YJPA65Q
.


Responsive and Animated Navbar

Make navbar animated with gsap and other effects
Add hamburger menu for mobile devices.
Make navbar responsive and pretty

Can I please work on this?

@aindree-2005 yes you can start working !


Remove assignment-bot from openapi-alps

[x] https://github.com/Azure/azure-rest-api-specs/pull/27481
[ ] Remove source from openapi-alps
[ ] Remove Azure resources
[ ] Remove from CI pipeline
[ ] Remove https://github.com/Azure/azure-sdk-for-net/blob/main/.github/pull_request_assignment.yml
Audit log here.
Kept relevant code in openapi-deployment to avoid causing incident. E.g. values-assignmentbot-prod.yaml.

Similar to:

https://github.com/Azure/azure-sdk-tools/issues/7811

Pull Request 550311: Remove assignment-bot


Assertion failed: (smallestWeight != INT_MAX), function _UnpackPath

running the debug version, and moving the start pointer around bit, west of the covered data area repeatedly results in:
Assertion failed: (smallestWeight != INT_MAX), function _UnpackPath, file Plugins/../DataStructures/SearchEngine.h, line 494.

I was not able to reproduce this one on my data sets. Did you use the Bryggen test file?

So, I was finally able to reproduce the error. Will look into that more thouroughly in the coming days.

I can only reproduce this problem, if i move the end pointer out of the area. Moving the start pointer out of area is no problem.

I was finally able to nail this one. As always fix is waiting to be pushed to master repo.

Unfortunately i can still reproduce this:

osrm-routed: Plugins/../DataStructures/SearchEngine.h:510: void SearchEngine<EdgeData, GraphT>::_UnpackPath(std::deque&, std::vector<_PathData>&) const [with EdgeData = ContractionCleanup::Edge::EdgeData, GraphT = StaticGraphContractionCleanup::Edge::EdgeData]: Assertion `smallestWeight !=<PHONE_NUMBER>' failed.

Please uncomment line 54 of Server/RequestHandler.h so that it reads
INFO( "[r] " << request );

It will give you the actual request that is getting computed. The last one it prints will be the one that breaks. Which data file are you using?

Thanks for the feedback. Happy to hear that this one is gone now.


Fix misleading plan for database

Closing this PR because the changes for correcting the misleading plans have been addressed in a different PR with a separate approach.


Clean up debug println and unneeded cooldown period

@mvines I don't recall why the cooldown was needed. There's a comment that it can be removed after commitment stuff lands. Is it ok to remove?

Ah it must have been because the cluster was dropping stake delegation transactions, I think it's ok to remove because I will be making stake delegation more robust here: https://github.com/solana-labs/tour-de-sol/pull/64

👍


Let AddMapping return ModelToTableMapper

To provide a consistent API, I changed the return type of AddMapping from void to ModelToTableMapper<T>, which is also returned by the other overload.

Thanks

You changes will be present in next release (7.6.0)


Data Flow IP range

When will data flows use fixed IP ranges per region?

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

ID: 33fc045d-cec5-9c08-0eee-8af574b9e76f
Version Independent ID: 94e41877-46e8-f5fa-f1f7-14714db3a447
Content: Azure Integration Runtime IP addresses - Azure Data Factory
Content Source: articles/data-factory/azure-integration-runtime-ip-addresses.md
Service: data-factory
GitHub Login: @nabhishek
Microsoft Alias: abnarain

Thank you for your detailed feedback.  We are looking into the issue, and we will respond when we have more information.

Thank you for your feedback, @mikeholmes-personal .
Our Product Group is working diligently on this feature amongst others. There is no ETA at this time, but it is something to come.
You can help prioritize this feature by voting for it at feedback forum link
Until then, if you need to connect to a data store under a firewall using data flow, it is recommend that you use MSI auth and 'Allow trusted services'.
You can subscribe to Azure Updates to be notified when this feature becomes available,


Cannot install package with Code's package installation help

VS Code Version: 1.54
OS Version: Windows 10
Conda version: 4.9.2

Steps to Reproduce:

Do something that triggers VS Code to offer its help to install a python package, and chose to install it with conda. E.g. edit a python source code and rename a symbol. For that, you need rope in your conda env, and if it is not installed, VS Code will ask you if you'd like to install it with conda or pip. Select conda.
VS Code will open a new terminal, activate your environment, and execute a command to get the package installed, but it fails:

Windows PowerShell
Copyright (C) Microsoft Corporation. All rights reserved.

Try the new cross-platform PowerShell https://aka.ms/pscore6

Loading personal and system profiles took 658ms.
(base) PS C:\Users\daniel\source\repos\studies> conda activate py36
(py36) PS C:\Users\daniel\source\repos\studies> & C:/Users/daniel/miniconda3/Scripts/conda.exe install --name py36 autopep8 -y
Collecting package metadata (current_repodata.json): failed

CondaHTTPError: HTTP 000 CONNECTION FAILED for url <https://repo.anaconda.com/pkgs/main/win-64/current_repodata.json>
Elapsed: -

An HTTP error occurred when trying to retrieve this URL.
HTTP errors are often intermittent, and a simple retry will get you on your way.

If your current network has https://www.anaconda.com blocked, please file
a support request with your network engineering team.

'https://repo.anaconda.com/pkgs/main/win-64'

(py36) PS C:\Users\daniel\source\repos\studies>

But if you refer to conda without an absolute path, it is executed properly:
(py36) PS C:\Users\daniel\source\repos\studies> conda install --name py36 autopep8
Collecting package metadata (current_repodata.json): done
Solving environment: done

## Package Plan ##

  environment location: C:\Users\daniel\miniconda3\envs\py36

  added / updated specs:
    - autopep8

The following packages will be downloaded:

    package                    |            build
    ---------------------------|-----------------
    autopep8-1.5.5             |     pyhd3eb1b0_0          42 KB
    ------------------------------------------------------------
                                           Total:          42 KB

The following NEW packages will be INSTALLED:

  autopep8           pkgs/main/noarch::autopep8-1.5.5-pyhd3eb1b0_0
  pycodestyle        pkgs/main/noarch::pycodestyle-2.7.0-pyhd3eb1b0_0

Proceed ([y]/n)?
CondaSystemExit:
Operation aborted.  Exiting.

(py36) PS C:\Users\daniel\source\repos\studies>

VS Code finds conda, as it is in the path:
(py36) PS C:\Users\daniel\source\repos\studies> gcm conda*

CommandType     Name                                               Version    Source
-----------     ----                                               -------    ------
Alias           conda -> Invoke-Conda                              0.0        Conda
Application     conda.bat                                          <IP_ADDRESS>    C:\Users\daniel\miniconda3\Library\bin\conda.bat
Application     conda.bat                                          <IP_ADDRESS>    C:\Users\daniel\miniconda3\condabin\conda.bat
Application     conda.exe                                          <IP_ADDRESS>    C:\Users\daniel\miniconda3\Scripts\conda.exe
Application     conda_auto_activate.bat                            <IP_ADDRESS>    C:\Users\daniel\miniconda3\condabin\conda_auto_activate.bat
Application     conda_hook.bat                                     <IP_ADDRESS>    C:\Users\daniel\miniconda3\condabin\conda_hook.bat
Application     conda-env.exe                                      <IP_ADDRESS>    C:\Users\daniel\miniconda3\Scripts\conda-env.exe

Does this issue occur when all extensions are disabled?: Yes

(Experimental duplicate detection)
Thanks for submitting this issue. Please also check if it is already covered by an existing one, like:
* [If Conda is not on path, VSCode can't activate enviroments (#116054)](https://www.github.com/microsoft/vscode/issues/116054)

Sorry bot, not this time, this is not a duplicate of that issue.

If I start VS Code from an Anaconda prompt, it has different behavior. When I ask it to install rope or autopep8, it doesn't call & C:/Users/daniel/miniconda3/Scripts/conda.exe, but relies on conda, and the package is installed properly.
What property in the settings.json tells VS Code to use the conda (python, pytest, and all other programs) environment-aware program? (I also had a problem with pytest and numpy, and I think these issues are related.)

@danieltuzes this sounds like a problem you have with the Python extension you are using. Can you please report the issue with their extension?


Can't create a calendar meeting with more than 2 attendees

I am trying to create meetings using the node-ews library. I am using this https://msdn.microsoft.com/en-us/library/office/dd633661(v=exchg.80).aspx
These are the arguments that I am sending to the function "Create Item"
{
"attributes": {
"SendMeetingInvitations": "SendToAllAndSaveCopy"
},
"SavedItemFolderId": {
"DistinguishedFolderId": {
"attributes": {
"Id": "calendar"
}
}
},
"Items": {
"CalendarItem": {
"Subject": "Test Meeting",
"Body": {
"attributes": {
"BodyType": "Text"
},
"$value": "Let's learn to really work as a team and then have lunch!"
},
"ReminderMinutesBeforeStart": "60",
"Start": "2017-08-28T23:00:00.000Z",
"End": "2017-08-29T00:00:00.000Z",
"Location": "Conf Room",
"RequiredAttendees": [
{
"Mailbox": {
"Address"<EMAIL_ADDRESS>}
},
{
"Mailbox": {
"Address"<EMAIL_ADDRESS>}
},
{
"Mailbox": {
"Address"<EMAIL_ADDRESS>}
}
],
"TimeZoneContext": {
"TimeZoneDefinition": {
"attributes": {
"Id": "Central Standard Time"
}
}
}
}
}
}
after sending this arguments the function only takes the first email and the last email only 2 emails are being added to the calendar meeting

Try editing the "node_modules\soap\lib\client.js" file and add
console.log("XML:",xml);
someplace before the "self.emit(..."line  which in my case is line 263. It should looks like this:
  if(self.security && self.security.postProcess){
    xml = self.security.postProcess(xml);
  }
console.log("XML:",xml); //Log the XML string for debugging
  self.lastMessage = message;
  self.lastRequest = xml;
  self.lastEndpoint = location;

  self.emit('message', message);
  self.emit('request', xml);

This should output the actual XML that is getting sent to the server. Check that and see if all three attendees are present. If they are then the problem is somewhere on your server, but if not then it is somewhere in the soap XML generation.

This is the XML, I can see the 3 emails (user1, user2, room), the meeting was created but it didn't include the user2.
See the attached image

<soap:Envelope
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:tns="http://schemas.microsoft.com/exchange/services/2006/messages"
xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types"
xmlns:wsi="http://ws-i.org/schemas/conformanceClaim/">
soap:Header</soap:Header>
soap:Body

<t:DistinguishedFolderId Id="calendar"
xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types">
</t:DistinguishedFolderId>

<t:CalendarItem
xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types">
<t:Subject>Test Meeting</t:Subject>
<t:Body BodyType="Text">Let's learn to really work as a team and then have lunch!</t:Body>
<t:ReminderMinutesBeforeStart>60</t:ReminderMinutesBeforeStart>
<t:Start>2017-08-28T23:00:00.000Z</t:Start>
<t:End>2017-08-29T00:00:00.000Z</t:End>
<t:Location>arenal@avantica.net</t:Location>
<t:RequiredAttendees>
<t:Attendee>
<t:Mailbox>
<t:EmailAddress>emilio.duarte@avantica.net</t:EmailAddress>
</t:Mailbox>
</t:Attendee>
</t:RequiredAttendees>
<t:RequiredAttendees>
<t:Attendee>
<t:Mailbox>
<t:EmailAddress>marco.salazar@avantica.net</t:EmailAddress>
</t:Mailbox>
</t:Attendee>
</t:RequiredAttendees>
<t:RequiredAttendees>
<t:Attendee>
<t:Mailbox>
<t:EmailAddress>arenal@avantica.net</t:EmailAddress>
</t:Mailbox>
</t:Attendee>
</t:RequiredAttendees>
<t:TimeZoneContext>
<t:TimeZoneDefinition Id="Central Standard Time"></t:TimeZoneDefinition>
</t:TimeZoneContext>
</t:CalendarItem>

</soap:Body>
</soap:Envelope>

This is my code
var ewsArgs = {
"attributes": {
"SendMeetingInvitations": "SendToAllAndSaveCopy"
},
"SavedItemFolderId": {
"DistinguishedFolderId": {
"attributes": {
"Id": "calendar"
}
}
},
'Items': {
'CalendarItem': {
'Subject': 'Test Meeting',
"Body": {
"attributes": {
"BodyType": "Text"
},
"$value": 'Let's learn to really work as a team and then have lunch!'
},
            'ReminderMinutesBeforeStart': '60',
            'Start': userRequest.start,
            'End': userRequest.end,
            'Location': userRequest.room,
            'RequiredAttendees': utils.setAttendees(userRequest.participants, userRequest.room),
            'TimeZoneContext': {
                'TimeZoneDefinition': {
                    "attributes": {
                        'Id': 'Central Standard Time'
                    }
                }
            }
        }
    }
};
console.log(JSON.stringify(ewsArgs, null, 2));
ews.run(ewsFunction, ewsArgs)
    .then(result => {
        var createItemResponse = result.ResponseMessages.CreateItemResponseMessage.attributes.ResponseClass;
        var conflicts = (createItemResponse == "Success" ? true : false);
        onSuccess(conflicts)
    })
    .catch(err => {
        console.log("[DEBUG]: " + err.message)
        onError(err.message)
    });

function setAttendees(emails, room) {
var emailList = emails.split(",");
var jsonObj = []
emailList.forEach(function(email) {
jsonObj.push({
"Attendee": {
"Mailbox": {
"EmailAddress": email
}
}
});
});
jsonObj.push({
    "Attendee": {
        "Mailbox": {
            "EmailAddress": room
        }
    }
});

return jsonObj;

}

We are using Office 365 to handle our email

Interesting... The XML looks good. What happens if you change the order of the attendees? I'd be curious if the middle attendee gets dropped or if the same user does.

In this case, I added the room at the middle, the meeting was created but only took the 2 attendees
not the room at the middle

<t:RequiredAttendees>
<t:Attendee>
<t:Mailbox>
<t:EmailAddress>emilio.duarte@avantica.net</t:EmailAddress>
</t:Mailbox>
</t:Attendee>
</t:RequiredAttendees>
<t:RequiredAttendees>
<t:Attendee>
<t:Mailbox>
<t:EmailAddress>arenal@avantica.net</t:EmailAddress>
</t:Mailbox>
</t:Attendee>
</t:RequiredAttendees>
<t:RequiredAttendees>
<t:Attendee>
<t:Mailbox>
<t:EmailAddress>marco.salazar@avantica.net</t:EmailAddress>
</t:Mailbox>
</t:Attendee>
</t:RequiredAttendees>
Something that I see here is that the tags <t:RequiredAttendees></t:RequiredAttendees> are being duplicated every time I add a new attendee is that OK? I think that in the documentation the tags that should be repited is <t:Attendee> etc

Any comments?

Good catch! I completely missed that and based on the Microsoft link you provided in your original post, that would be the problem. The XML should look like:
<t:RequiredAttendees>
    <t:Attendee>
        <t:Mailbox>
            <t:EmailAddress>emilio.duarte@avantica.net</t:EmailAddress>
      </t:Mailbox>
    </t:Attendee>
    <t:Attendee>
        <t:Mailbox>
            <t:EmailAddress>arenal@avantica.net</t:EmailAddress>
        </t:Mailbox>
    </t:Attendee>
    <t:Attendee>
        <t:Mailbox>
            <t:EmailAddress>marco.salazar@avantica.net</t:EmailAddress>
        </t:Mailbox>
    </t:Attendee>
</t:RequiredAttendees>

The node soap XML generator takes whatever key has an array and replicates that for every element in the array, so to get the proper output you will need to change it so that "Attendee" has the array by changing:
'RequiredAttendees': utils.setAttendees(userRequest.participants, userRequest.room),
to
'RequiredAttendees': {
  'Attendee':utils.setAttendees(userRequest.participants, userRequest.room)
},

And then in your utils.setAttendees function you need to change both the email and room sections to:
{
    "Mailbox": {
        "EmailAddress": email
    }
}

Note: You'll obviously need to change the "email" variable to "room" for the room section.

that was the problem. it solve my question 👍 thanks


Memory leak risk with @FeatureToggle Instance<Boolean> and @FeatureVariant Instance<?>

From what I saw in the extension code, when @FeatureToggle Instance<Boolean> or @FeatureVariant Instance<?> are used, the injected bean doesn't have an explicit CDI scope which means it defaults to @Dependent.
When a @Dependent bean is injected with Instance<?> into an @ApplicationScoped or @Singleton bean and is no destroyed when it's no longer needed, it stays in the memory forever, so there's basically a memory leak.
Is there a risk of memory leak with this extension, or did I miss something? If there is a risk of leak, the doc should at least explain how to prevent it and show how the injected bean can be destroyed.

@gwenneg thank you for checking the implementation. Could we change the implementation to avoid the memory leak?

If the leak is confirmed (which I'll try to check next week), there are several ways to "fix" it.
One of them would be a simple doc update, showing how to destroy the Boolean field after it's been used:
try (Instance.Handle<Boolean> toggleHandle = toggle.getHandle()) {
    boolean toggleValue = toggleHandle.get();
    // do something with toggleValue
}

There are other approaches such as using a wrapper class for the toggle field. But before considering any changes, the leak has to be confirmed 😄

I expected a potential memory leak in this extension but my profiler showed a healthy memory so I may be missing something... 😅

So both Weld and ArC try to mitigate this problem in a way that only some references to @Dependent beans are stored in the CreationalContext.
In ArC, we only add a @Dependent bean to the CreationalContext if (1) a class bean has @PreDestroy interceptor or @PreDestroy callback, (2) a producer has a disposal method and (3) a synthetic bean has some destruction logic OR if the bean has a @Dependent dependency that matches the rules (1), (2) or (3).
In your case, there is a producer with no disposer and no @Dependent depencency == no leak ;-). But of course it's always safer to destroy the bean after use.
CC @manovotn

In your case, there is a producer with no disposer and no @Dependent depencency == no leak ;-)

Awesome 🎉
Thanks for the detailed explanation!

I expected a potential memory leak in this extension but my profiler showed a healthy memory so I may be missing something... 😅

So both Weld and ArC try to mitigate this problem in a way that only some references to @Dependent beans are stored in the CreationalContext.
In ArC, we only add a @Dependent bean to the CreationalContext if (1) a class bean has @PreDestroy interceptor or @PreDestroy callback, (2) a producer has a disposal method and (3) a synthetic bean has some destruction logic OR if the bean has a @Dependent dependency that matches the rules (1), (2) or (3).
In your case, there is a producer with no disposer and no @Dependent depencency == no leak ;-). But of course it's always safer to destroy the bean after use.
CC @manovotn

Yea, I can confirm this is the case even for Weld (code here).
This is both, a workaround to reduce a chance of memory lea because of bad handling and an optimization as there is no real need to keep the reference if the destruction is a no-op.
That being said, you should handle the bean properly and destroy it when no longer needed (assuming it is intended that those beans are dependent and repeated invocations generate new instances OFC).


Mildly confusing line in getting_started_step_1

In getting_started_step_1, the instructions say to "add the following four lines to the top of src/lib.rs".  Following this literally results in an uncompilable file:
#![feature(proc_macro)]

#[macro_use] extern crate diesel_codegen;

pub mod schema;
pub mod models;

#[macro_use] extern crate diesel;
extern crate dotenv;

#[macro_use] extern crate diesel; needs to come before #[macro_use] extern crate diesel_codegen; of course.
I'd submit a PR to add some wording but I didn't see where the getting-started file was located.
This didn't take long to figure out, just hoping to save others the trouble.

And the error is pretty darned confusing:
error: `#[derive]` for custom traits is not stable enough for use. It is deprecated and will be removed in v1.15 (see issue #29644)
 --> src/models.rs:1:10
  |
1 | #[derive(Queryable)]
  |          ^^^^^^^^^
  |
  = help: add #![feature(custom_derive)] to the crate attributes to enable

error: aborting due to previous error

error: Could not compile `diesel_demo`.

Same thing with src/models.rs in step 2, "We'll want a struct to use for inserting a new record."  It's not clear that the new code should integrate with the existing.

@bronson sorry for the short but still delayed answer; you can find the getting started code at https://github.com/diesel-rs/diesel/tree/master/examples and the website text at https://github.com/sgrif/diesel.rs-website

Thank you, I'll submit PRs there.