[FLINK-35555] Make ListSerializer allow null values

What is the purpose of the change
Make ListSerializer allow null values. Background: see FLINK-35555.
Brief change log

Add a binary mask for marking null values in ListSerializer.
Update ListSerializerSnapshot to deal with state-compatibility.

Verifying this change

Add tests on lists with null values in ListSerializerTest.
Updated ListSerializerUpgradeTest to test state-compatibility.

Does this pull request potentially affect one of the following parts:

Dependencies (does it add or upgrade a dependency): (yes / no)
The public API, i.e., is any changed class annotated with @Public(Evolving): (yes / no)
The serializers: (yes / no / don't know)
The runtime per-record code paths (performance sensitive): (yes / no / don't know)
Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Kubernetes/Yarn, ZooKeeper: (yes / no / don't know)
The S3 file system connector: (yes / no / don't know)

Documentation

Does this pull request introduce a new feature? (yes / no)
If yes, how is the feature documented? (not applicable / docs / JavaDocs / not documented)

@flinkbot run azure

Hi @X-czh , thanks for this PR. It's overall LGTM, but I noticed some relating issues to this topic (built-in collection serializer) and this PR:

MapSerializer does not support null key, which means it needs an enhancement like this as well.

List, map and set serializers are all not support that the collection itself is null. This can be troublesome since some internal serializers of container types are not supporting null content, among which the most commonly used is StreamElementSerializer. To use these serializers as defaults safely, we have to: i) make these serializers support null collections, or ii) check all built-in serializers to ensure they properly handle null elements without invoking the value serializer.

What do you think about these issues?


make clicking on the finish button of Creation screen push itinerary to firebase + logic

5 hours may seem very long for the low amount of code that has been written however, I spent a lot of time trying things I reverted because it wasn't good

resolved in PR #226


Key path literal syntax

Update proposal to reflect new ideas regarding short-hand key-path references.

That's fair -- the short version of \ vs # is that the core team wants to save # for future use. It's heritage with macros in C derived languages is appealing, and even as # has been used thus far in swift there is a slight 'perform verb X' aspect to it (#keyPath -> does something returns a string, #available -> does something returns a bool);   #Person.foo.blah could maybe construed that way... except the 'does something'  is a lot more like 'does nothing'.   \ on the other hand has existing precedent in swift of meaning 'behave differently for a moment' (as in string interpolation).  I can tighten that prose up and update the PR if it makes sense.

That's a fair explanation of the rationale.  It makes perfect sense to me.  If this goes through maybe we can get a companion through as well for unbound methods.  Thanks for your work on this proposal!  I'm really excited to see this happen.  :)

Thanks Matt, I think that helps considerably.

  This is shaping up to be a really exciting proposal!  Thank you.


Add README.md

Can you remove this readme as well? https://github.com/wedeploy/wedeploy.com/tree/master/node/electric

Thanks, @zenorocha, @pragmaticivan! I’ve fixed the typo, added a badge for CI, added a badge for Slack, replaced the blockquote with more a meaningful description of the repository and WeDeploy, and then removed the README.md file within electric. I’ve also tried to generally make it look very attractive.
Would you please re-review?


Update address for LSTAR token

I'm submitting a ...
[ ] bug report
[x] feature request
[ ] question about the decisions made in the repository
[ ] question about how to use this project
Summary
Please accept my pr to be merge : Change address for LSTAR token #14709
i update our LSTAR address thank you

merged


Lint other then *.ts file extensions

I have a vue.js project with basic vue-webpack-template setup that I'm moving to TypeScript and TSLint. And I need to lint my project using CLI. So I came up with this command:
tslint -c .tslintrc.js --type-check --project tsconfig.json src

It works well for *.ts files, but when one of them imports *.vue files (which is allowed in webpack) it throws this error Error at src/main.ts:4:17: Cannot find module './App.vue'.
Is there any way to make it lint the *.vue files? I know that in eslint there is a CLI option --ext that allows to do stuff like eslint --ext .js,.vue src. But I couldn't find anything like that in tslint.
There is a way to lint my project with Webpack on every file save but I know that this is a very slow process especially when the project get's bigger.

Currently there is no easy way to make it work. Simply adding an option like --ext wouldn't work. TypeScript also decides how to parse files depending on the extendsion.
*.vue files also contain markup and styles, right? That would confuse TypeScript's parser and you would get bogus errors.
IIRC there's a vue loader for webpack which can be combined with the tslint-loader. Using them with webpack --watch is probably the best (and maybe the only) way to go. But guess you already knew that.

Recently I was thinking about a loader concept in tslint. It would extract the typescript source code from your file and map the errors produced by tslint to your actual file positions.

Thanks for quick response! Ok, I see. Do you think this would be implemented in any observable feature? For now I would probably go with webpack+tslint approach until the project is small

There's already an open issue requesting support for .vue files: #2099
There are currently no concrete plans for supporting loader plugins. Someone would need to come up with a proposal first.
Closing this as a duplicate.

@ajafff having a related issue:
$ tslint -p tsconfig.json ./*.ts ./__tests__/*.test.ts

Invalid source file: __tests__/TsExternals.test.ts. Ensure that the files supplied to lint have a .ts, .tsx, .d.ts, .js or .jsx extension.

I cannot get tslint to lint `*.test.ts files?

That's actually a different problem. I assume __tests__ is excluded (or not included) in your tsconfig.json?
You cannot use -p option to lint files that are not in the project.

@ajafff that's correct. Odd that the message suggests that something is wrong with the extension.
In any case, I'd rather keep them excluded because I don't want the test to end up in my dist. I guess I could create another tsconfig4tslint.json or something... hrmm

@martijnthe the problem with the error message is known: #2208. I have already submitted a PR to fix it.
If you want type checking in your tests, you have no better option than what you mentioned above.

@ajaff thanks!


SW-3646 Scripts to create species and complete observations

Add two new scripts in the scripts directory:

create_species.py creates some example species in an organization so
that there are species IDs available to associate with recorded plants.
observe.py claims then completes some or all of the outstanding monitoring
plot observations in an observation round. It generates semi-random data
that should have enough variety to be useful for testing.

The second script required a way to fetch the details of a single observation,
so there's now a GET endpoint for that. It also required a way to figure out
the organization ID starting from an observation ID; the planting site payload
now includes the site's organization ID.

Current dependencies on/for this PR:

main

PR #1171

PR #1172   👈

This comment was auto-generated by Graphite.

Yes, that's the exact workflow, though in step 4 you can leave off the observation ID if there's only one observation in progress (it will default to the first in-progress one it finds).

@sgrimm started a stack merge that includes this pull request via Graphite.


Use ol.obj.clear to reduce garbage generation

I tested using the cluster example. In this case this.nullGeometryFeatures_ is always empty so ol.obj.cleartake no time.
More tests to come

I did more tests (with the chrome devtools) and the gain is not not significant enough to justify this change.


Allow to change oclif's hardcoded sections' words to another idiom

Do you want to request a feature or report a bug?
Feature.
What is the current behavior?
Words like ARGUMENTS, FLAGS, DESCRIPTION, EXAMPLES are hardcoded into the module core (Command.ts) without a easy way for the developer to adjust. The only exception being USAGE, that can be replaced by HelpOptions:usageHeader.
What is the expected behavior?
Expand the HelpOptions interface to permit the developer to specify custom headers would be a nice feature. Not only the headers, but all words included in the generated CLI that assumes English being the target idiom, like <value> for flags' values.
Some context
I have a specific use case where my target audience speaks Portuguese and I'm developing the CLI specific for them (it's an internal tool).  So, I want to translate the help output to increase adoption and facilitate user interaction.

If you guys can show me how to circumvent this limitation in the mean time would be much appreciated. Thanks!

@edassis Given the wide variety of needs that people have for their help output, we generally steer away from introducing new features into help and ask people to implement a custom help class instead (see docs).
I'm going to close this issue for now but feel free to re-open if you think there's more that needs to be addressed. Thanks!


Add function to set permission

The installer can check the permission, but not set the permission
Please add a feature so that the permissions can be set on the folders

I believe it's better this way, the user should have control over it.

@rabol I think this could be a good feature to add to the config.
Maybe something like:
force_file_permissions => true,

And if that is set it will try and force the file permissions.
I'll see what I can do to put in a PR for this soon.

Changing those folders permissions may require sudo access and can create security holes in the server. I think this should not handle changing permissions for security reasons.
While I like the idea very much I think this request should be closed because it introduces security flaws.

@rabol You can always make a shell script and then run it manually as elevated sudo to make this process easier for you.
Here is an example file you can call updateperms.sh:
######### Run
updatePermissionsUnix() {
	sudo chgrp -R www-data storage bootstrap/cache
}
updatePermissionsMac() {
	sudo chgrp -R _www storage bootstrap/cache
}

runUpdatePermissions() {
	echo "Attempting to set Unix permissions - www-data read..."
        sudo chmod -R 755 storage/framework/
        sudo chmod -R 755 storage/logs
        sudo chmod -R 755 bootstrap/cache/
	if updatePermissionsUnix; then
		sudo chmod -R ug+rwx storage bootstrap/cache
		echo 'Updated storage access successfully - www-data read allowed.'
		echo $_sep
	else
		echo "Attempt failed - www-data."
		echo $_sep
		echo "Attempting to set Mac permissions - _www read..."
		if updatePermissionsMac; then
			sudo chmod -R ug+rwx storage bootstrap/cache
			echo 'Updated storage access successfully - _www read allowed.'
			echo $_sep
		else
			echo "--- Error updating storage access - www-data failed."
			echo "Updating storage permissions failed - Both www-data and _www."
		    echo $_sep
		    exit 1
		fi
	fi
}
runUpdatePermissions

You can fix this by just running this command in your root terminal
chmod -R ug+rwx storage bootstrap/cache


[fud] Make SSH optional in Xilinx emulation stage

This is one more smaller-scale PR that depends on on #850 and #851 (and should not be reviewed until those are merged).
The gist is basically the same thing as #850, but for the fud stage in emulation.py. This is the stage that compiles a host C++ program as a testbench to run the compiled emulation "bitstream" from the xclbin stage. It previously also required SSH and did so with copied-n-pasted SSH functionality; this does even more refactoring to our SSH utilities to make them generic enough to cover this stage as well. I also added a LocalSandbox utility that both stages can share to make it easy to run identical functionality either locally or remotely, depending on the configuration.
This also extends the documentation to describe how to use this new emulation stage. Unfortunately, I'm still missing a big piece of the puzzle: how to write that aforementioned host C++ program. As will become clear in future issues/PRs, however, I think we should probably not bother trying to address this stage and instead switch to the PyOpenCL-based alternative in execution.py.

OK, this one is rebased now and should be good to go!
Thanks for taking a look, @cgyurgyik. Indeed—I actually think the Python crud itself in these PRs is not all that interesting, so feel free to focus on the English docs. :smiley:

LGTM!

Thanks for taking a look!!


HTML data in clipboard items

when using the clipboard plugin, and copying from word (yes, i know, but i have to use it), text is copied as html data, and hence also pasted as such, which makes it unusable. not very urgent.

@pjrobertson didn't you fix this with your recent clipboard module update?

Closing because 1) it's old 2) I'm not sure what steps the OP was actually following that caused the bug but I can't seem to reproduce and 3) the other "HTML Data" issue looks gone.
Please reopen if the Word thingy still happens.


[top] Add various anchor points to modules

These can be useful for physical design

Signed-off-by: Timothy Chen<EMAIL_ADDRESS>

The addition of these cells are not to "all" signals.

Sounds good, thanks! It will be good to discuss how we can use this info.


D3D12 errors in D3D12 Meshlet Culling sample

When I run D3D12MeshletCull project, I get these D3D12 errors:
D3D12 ERROR: ID3D12Device1::CreateMeshShader_TopologyMismatch: Since the mesh shader specifies output topology of line, if the PSO desc ALSO specifies a primitive topology (even though not necessary to do), it must be D3D12_PRIMITIVE_TOPOLOGY_TYPE_LINE to match the mesh shader.  Since the topologies don't match, behavior is undefined.  Earlier runtimes didn't validate this, so this error isn't explicitly failing PSO create.  But this really should be considered an application error. [ MISCELLANEOUS ERROR #1323: CREATEMESHSHADER_TOPOLOGY_MISMATCH]
D3D12 ERROR: ID3D12Device1::CreateMeshShader_TopologyMismatch: Since the mesh shader specifies output topology of line, if the PSO desc ALSO specifies a primitive topology (even though not necessary to do), it must be D3D12_PRIMITIVE_TOPOLOGY_TYPE_LINE to match the mesh shader.  Since the topologies don't match, behavior is undefined.  Earlier runtimes didn't validate this, so this error isn't explicitly failing PSO create.  But this really should be considered an application error. [ MISCELLANEOUS ERROR #1323: CREATEMESHSHADER_TOPOLOGY_MISMATCH]
OS: Windows 11 22H2
Visual Studio 17.5.4
GPU: Radeon RX 7900 XT, driver 23.4.1

This is a known issue in the debug layer. The sample should be updated to suppress that warning for now.


fixes links to docs and mkdocs build

this should fix and close https://github.com/TidierOrg/Tidier.jl/issues/85

Thanks @lazarusA! I would need to confirm, but I'm pretty sure the documents will deploy to https://TidierOrg.github.io/Tidier.jl/dev/ and not to https://github.com/TidierOrg/Tidier.jl/dev.
This is based on my prior experience with R packages, some of which live in an organization.
If you have a way of checking this on your end, let me konw. Otherwise, I think we should change the documentation links to the other URL before merging.

yes, you are totally right. I will update now.

you can check here as well (this should work now):
https://tidierorg.github.io/Tidier.jl/stable/


Puppeteer-sharp renders pdf  with grey text and small font

Hi
I am using razor html template and puppeteer-sharp to generate a pdf receipt and sending as any attachment to the email.
The pdf rendered shows the grey font and small font size. I have tired changing the css but its not working.
Please find below pdf.

If you open a browser and print that to PDF what does it look like?

If you open a browser and print that to PDF what does it look like?
Its same a above image

So it's something you need to fix on your media print.


Create CryptoProvider abstraction

Add an abstraction over the concrete NaCl implementation. This allows swapping out the pure-java jnacl implementation with another one that has better performance characteristics (e.g. using NaCl native code or with libsodium).
The jnacl library remains vendorized, a JnaclCryptoProvider instance is provided for convenience and testing.
Fixes #92.

Branch updated. Tests now use lazysodium-java with precompiled libsodium builds included. This simplifies testing.
In production, a custom implementation should be used though for performance and target platform reasons.


docs: document chained dvc import behavior

You may disregard these recommendations if you used the Edit on GitHub button from dvc.org to improve a doc in place.

❗ Please read the guidelines in the Contributing to the Documentation list if you make any substantial changes to the documentation or JS engine.
🐛 Please make sure to mention Fix #issue (if applicable) in the description of the PR. This causes GitHub to close it automatically when the PR is merged.
Please choose to allow us to edit your branch when creating the PR.
Thank you for the contribution - we'll try to review it as soon as possible. 🙏
Will close https://github.com/iterative/dvc.org/issues/2610

Thanks @pmrowla !
@iesahin mind taking a look? I'll take over the review at some point since I opened the related issue but it'd be great to get your fresh perspective on the feature and explanation. Thanks

Taking over for copy edits. Thank you Peter.

Thanks @iesahin I can take it over actually 🙂 but can you leave a review please? I'll address it.

The failed check has nothing to do with this PR (strange). I'll fix it separately.
Thanks again @pmrowla 🎉


Unable to customize payment methods

Is your feature request related to a problem? Please describe.
Currently, there's a limitation with Paytrail integration in WooCommerce where merchants cannot select specific payment methods to offer to their customers. This results in a situation where all payment methods defined in the Merchant Dashboard are enforced enabled, leading to a lack of flexibility. For instance, if a merchant manages multiple WooCommerce online stores, they are compelled to provide payment methods that might not be relevant or usable for certain customer groups.
Describe the solution you'd like
To address this issue, i propose adding an option within the plugin's settings that allows merchants to customize the available payment methods. This can be achieved by incorporating checkboxes next to each payment method, enabling merchants to selectively enable or disable them based on their preferences and customer needs.
Potential Benefits:

Enhanced flexibility: Merchants can tailor the payment methods offered to align with their business model and customer preferences.
Improved customer experience: By providing only relevant payment methods, the checkout process becomes smoother and more intuitive for customers.
Better alignment with business goals: Merchants can optimize their payment offerings to encourage desired payment behaviors and streamline operations.

Describe alternatives you've considered

Grouping payment methods: Alternatives such as grouping payment methods into categories like Banks, Cards, Mobile Payments, and Financing can provide additional organization and clarity.
Individual customization: Alternatively, allowing merchants to customize payment methods individually, providing granular control over the available options.

Additional context
By implementing this feature, merchants using Paytrail integration in WooCommerce can efficiently manage their payment methods, enhancing both operational efficiency and customer satisfaction.
This is implemented, for example, in the Paytrail for WHMCS module created by Net9 Oy.

We don't support this approach as it will become hard to keep track of the payment methods when they can enabled/disabled in multiple places. We also regularly roll-out new payment methods, so keeping the list updated is also cumbersome.
If you have multiple stores, we suggest you use multiple Merchant IDs, one for each store, so you can then manage the payment methods per store in the Paytrail Admin Panel.
If you are interested on this approach, do not hesitate to contact our Customer Service at<EMAIL_ADDRESS>


fix(trait): watch for resource versions...

...instead of for their content.
With this PR we fix a potentially risky behavior, as we were inspecting Configmap/Secrets content to address any change. Instead of looking directly the content, we watch for the changing resource version, which should be the way provided by the platform to know when a resource has changed without inspecting its content.

Release Note
fix(trait): watch for resource versions

Note that resourceVersion changes also in case of any of the metadata changes

Note that resourceVersion changes also in case of any of the metadata changes

Thanks. Not sure if there is any better way to deal with this, any idea. At least we remove the inspection of a secret, with the tradeoff to potentially reload an Integration when there is a metadata change as well.

Note that resourceVersion changes also in case of any of the metadata changes

Thanks. Not sure if there is any better way to deal with this, any idea? At least we remove the inspection of a secret, with the tradeoff to potentially reload an Integration when there is a metadata change as well.

I don't think there is a better solution so is a matter of document the behavior.
Maybe, should also honor the mount.hot-reload option ? In some cases, the user may not have full control of the configmap/secrets i.e. when those resources are generated by another controller.

Maybe, should we honor the mount.hot-reload option ? In some cases, the user may not have full control of the configmap/secrets i.e. when those resources are generated by another controller.

The option is already used in the controller to wake up the Integration and kick the logic: https://github.com/apache/camel-k/blob/825f0ce6aaf3a52c2620f8efab31b8167973c5fc/pkg/controller/integration/integration_controller.go#L191 - do you think we need to include this again in the getIntegrationSecretAndConfigmapResourceVersions func? I think it may be a duplicated check, but definetely it's something that should not hurt.

Maybe, should we honor the mount.hot-reload option ? In some cases, the user may not have full control of the configmap/secrets i.e. when those resources are generated by another controller.

The option is already used in the controller to wake up the Integration and kick the logic:
https://github.com/apache/camel-k/blob/825f0ce6aaf3a52c2620f8efab31b8167973c5fc/pkg/controller/integration/integration_controller.go#L191

do you think we need to include this again in the getIntegrationSecretAndConfigmapResourceVersions func? I think it may be a duplicated check, but definetely it's something that should not hurt.

I don't have the full picture but my reasoning is that, the hot reload flag prevents a reconciliation to happen but, in case the reconciliation is triggered by i.e. a non destructive  trait change, then we ends up in the same case as https://github.com/apache/camel-k/issues/5192, which effectively will end up in a restart/reload.

@lburgazzoli I've added a check on the presence of the hot-reload flag and a short documentation notice to warn about the behavior. Thanks.


Reducing cognitive complexity of a function

What this PR does / why we need it:
Which issue(s) this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close the issue(s) when PR gets merged):
Fixes #
Special notes for your reviewer:
Release note:

@Gre8t thanks for your contribution! Would you be so kind and confirm compliance to DCO, please?

@Gre8t also in general every commit should have a description of what the change is about.

/test pull-kubevirt-generate
/test pull-kubevirt-unit-test


Recent 1.3.1 release breaks iOS build if linked with pods

Repro steps
I've created an example app at https://github.com/timmywil/react-native-async-storage-1.3.1
This app was created with react-native init and async-storage included react-native link... && cd ios/ && pod install after creating a Podfile.
Building without pods seems to work fine, but if async-storage is included with pods, you get the error shown above.
Downgrading to 1.3.0 fixes the issue.
Environment

Async Storage version: 1.3.1
React-Native version: 0.59.4
Platform tested: iOS only

Bah, wrong error message. One min.

Ok, error message and repo updated.

Open<EMAIL_ADDRESS>On line 10, change
#import <RNCAsyncStorage/RNCAsyncStorageDelegate.h>
to
#import <RNCAsyncStorageDelegate.h>

Merged and released as 1.3.2: https://github.com/react-native-community/react-native-async-storage/pull/75#issuecomment-482943581.

I have tried to build without this module and it's working. I don't know, what is the fix for this. I am using latest version.
Its working if I am modifying file - RNCAsyncStorage.h. But getting error with other components
#import "RNCAsyncStorageDelegate.h"
I have tried to manual linking and auto linking. Anyone having same issue ?
"@react-native-community/async-storage": "^1.4.1",
"react-native": "0.59.1",
xCode : 10.2.1

@codoffer I am also getting an error when I build without pods -- I get this error
/Users/me/PROJECTNAME/node_modules/@react-native-community/async-storage/ios/RNCAsyncStorage.h:10:9:'RNCAsyncStorage/RNCAsyncStorageDelegate.h' file not found

If i do the changes @dblazeski recommends (except I change the line to import "RNCAsyncStorageDelegate.h"), everything appears to work.
Manual linking and auto linking don't work, only changing that line in<EMAIL_ADDRESS>lets my project build
"@react-native-community/async-storage": "1.4.2",
"react-native": "0.59.3",

Yes, you are right. But its temporary fix. It was working fine before, On update of my node_modules, facing these issues.


Website bug

Some page loads are ok, some has the error above. Chrome 89 on Mac

<ProductCard
                      title={title}
                      description={description}
                      fluid={edge.node.fluid}
                      url={url}
                    />

edge is undefined

Sorry for submitting to the incorrect repo. I duplicated in popper/website


LspInstallInfo always return empty eventhough I've installed some LSP

nvim --version: 0.5.0 nightly
nvim-lsp version(commit hash):   latest nvim-lspconfig, and completion-nvim
:checkhealth result

health#defx#check
defx.nvim

OK: has("python3") was successful
OK: Python 3.6.1+ was successful

health#lspconfig#check
Checking language server protocol configuration
health#completion_nvim#check
general

OK: neovim version is supported

completion source

OK: all completion source are valid

snippet source

INFO: You haven't setup any snippet source.

health#deoplete#check
deoplete.nvim

OK: exists("v:t_list") was successful
OK: has("timers") was successful
OK: has("python3") was successful
OK: Require Python 3.6.1+ was successful
OK: Require msgpack 1.0.0+ was successful
INFO: If you're still having problems, try the following commands:

$ export NVIM_PYTHON_LOG_FILE=/tmp/log
$ export NVIM_PYTHON_LOG_LEVEL=DEBUG
$ nvim
$ cat /tmp/log_{PID}
and then create an issue on github

health#nvim#check
Configuration

OK: no issues found

Performance

OK: Build type: Release

Remote Plugins

OK: Up to date

terminal

INFO: key_backspace (kbs) terminfo entry: key_backspace=^H
INFO: key_dc (kdch1) terminfo entry: key_dc=\E[3~
INFO: $TERM_PROGRAM='iTerm.app'
INFO: $COLORTERM='truecolor'

health#provider#check
Clipboard (optional)

OK: Clipboard tool found: pbcopy

Python 2 provider (optional)

INFO: Disabled (g:loaded_python_provider=0).

Python 3 provider (optional)

INFO: g:python3_host_prog is not set.  Searching for python3 in the environment.
INFO: Multiple python3 executables found.  Set g:python3_host_prog to avoid surprises.
INFO: Executable: /usr/local/bin/python3
INFO: Other python executable: /usr/bin/python3
INFO: Other python executable: /opt/anaconda3/bin/python3
INFO: Python version: 3.9.0
INFO: pynvim version: 0.4.2
OK: Latest pynvim is installed.

Python virtualenv

OK: no $VIRTUAL_ENV

Ruby provider (optional)

INFO: Ruby: ruby 2.6.3p62 (2019-04-16 revision 67580) [universal.x86_64-darwin19]
WARNING: neovim-ruby-host not found.

ADVICE:

Run gem install neovim to ensure the neovim RubyGem is installed.
Run gem environment to ensure the gem bin directory is in $PATH.
If you are using rvm/rbenv/chruby, try "rehashing".
See :help |g:ruby_host_prog| for non-standard gem installations.

Node.js provider (optional)

INFO: Node.js: v15.4.0
INFO: Nvim node.js host: /Users/sheldonl/.config/yarn/global//node_modules/neovim/bin/cli.js
OK: Latest "neovim" npm/yarn package is installed: 4.9.0

Perl provider (optional)

ERROR: perl provider error:

ADVICE:

Perl version is too old, 5.22+ required

What language server(If the problem is related to a specific language server):  tsserver, cssls

Operating system/version: macOS catalina 10.15.7

Terminal name/version: iTerm2

$TERM: zsh

How to reproduce the problem from neovim startup
run :LspInstall cssls or yarn global add cssls
call :LspInstallInfo
It shows:
{
cssls = {
bin_dir = "/Users/sheldonl/.cache/nvim/lspconfig/cssls/node_modules/.bin",
binaries = {
["css-languageserver"] = "/Users/sheldonl/.cache/nvim/lspconfig/cssls/node_modules/.bin/css-languageserver"
},
install_dir = "/Users/sheldonl/.cache/nvim/lspconfig/cssls",
is_installed = true
}
}
Actual behaviour
But, when I leave and restart nvim, run :LspInstallInfo, it returns
{},
And, no lint, no completion is available
Expected behaviour
When I leave and restart nvim, run :LspInstallInfo, it should returns
{
cssls = {
bin_dir = "/Users/sheldonl/.cache/nvim/lspconfig/cssls/node_modules/.bin",
binaries = {
["css-languageserver"] = "/Users/sheldonl/.cache/nvim/lspconfig/cssls/node_modules/.bin/css-languageserver"
},
install_dir = "/Users/sheldonl/.cache/nvim/lspconfig/cssls",
is_installed = true
}
}
either.
And , lint and completion should available

it looked like cssls was not installed. if installed, when checkhealth
it would be shown in health#lspconfig#check section
did you verify it in ~/.cache/nvim/lspconfig/cssls ?

yes, I'm sure
 ~/.cache/nvim/lspconfig/cssls  ls -l
total 8
drwxr-xr-x  13 sheldonl  staff  416 Dec 11 16:37 node_modules
-rw-r--r--   1 sheldonl  staff  219 Dec 11 16:37 package.json

and run :LspInstallInfo
{}

https://github.com/neovim/nvim-lspconfig#cssls
did you set it up?
require'lspconfig'.cssls.setup{}

I don't know if this problem is the same as yours. I upgraded nodejs version 14 to 15 on windows and get {} message. I rolling back to nodejs 14 and its working fine.

yes, I think I'v set everything like the documentation.
Well, maybe it's the node version, because I use version 15 right now. I will try to roll back later

yes, I think I'v set everything like the documentation.
Well, maybe it's the node version, because I use version 15 right now. I will try to roll back later. Thank you @benawas

@sheldonldev Did you try rolling back node? Is this still an issue?

@mjlbach not yet, I'll try it this Sunday or Monday

This time I uninstall my node 15.4, it seems no problem.
run checkhealth:
health#lspconfig#check
========================================================================
## Checking language server protocol configuration
  - INFO: tsserver: configuration checked.
  - INFO: cssls: configuration checked.

health#completion_nvim#check
========================================================================
## general
  - OK: neovim version is supported

## completion source
  - OK: all completion source are valid

## snippet source
  - INFO: You haven't setup any snippet source.
## Node.js provider (optional)
  - WARNING: `node` and `npm` (or `yarn`) must be in $PATH.
    - ADVICE:
      - Install Node.js and verify that `node` and `npm` (or `yarn`) commands work.

run  LspInstallInfo:
{
  cssls = {
    bin_dir = "/Users/sheldonl/.cache/nvim/lspconfig/cssls/node_modules/.bin",
    binaries = {
      ["css-languageserver"] = "/Users/sheldonl/.cache/nvim/lspconfig/cssls/node_modules/.bin/css-languageserver"
    },
    install_dir = "/Users/sheldonl/.cache/nvim/lspconfig/cssls",
    is_installed = true
  },
  tsserver = {
    bin_dir = "/Users/sheldonl/.cache/nvim/lspconfig/tsserver/node_modules/.bin",
    binaries = {
      ["typescript-language-server"] = "/Users/sheldonl/.cache/nvim/lspconfig/tsserver/node_modules/.bin/typescript-language-server"
    },
    install_dir = "/Users/sheldonl/.cache/nvim/lspconfig/tsserver",
    is_installed = true
  }
}

It seems like a lot of language servers are affected negatively by node 15. Is your issue resolved by reverting back then, and can we close?

I'm now using node 14 with nvm. It seems OK now. Sure we can close it. Thank you.

Thank you! If you can isolate the issue to something in particular one of the configuration scripts is doing, file another issue. Otherwise if this is an upstream issue it should be reported to the respective language server.

Alright.  Thank you!


sanitizer html

Hello,
Is it neccessary to add html sanitizer ? For example this here:
https://atmospherejs.com/vazco/universe-html-purifier
Thanks

That's a good idea. I think I will add a 2nd helper that is sanitized so it's optional and the package isn't overstepping it's bounds.

Tried to use from atmospherejs.com  , It did't work until I realized that the helper info here is wrong:
Says {{parseEmoticons "text"}}
but on github says:     {{{parseEmoticons "text"}}}   and this works.


Remove second social media from footer

There are two social media divs as shown in the picture above, and the second one needs to be deleted.

@apu52, please assign this issue to me. I'm confident you'll like my work!

@IshaanXCoder this issue is not too much descriptive & not clear to me .please use the issue templates to raise your new issues which are already present in this issue .
Sorry to close this issue for now


Figure out performance issues

Overview
The Sith have claimed deploys are really slow.
Specification
Figure out where bottlesneck are and if there is anything we can do.
Dependencies
Include links to any open issues that must be resolved before this feature can be implemented.

The bottlenecks are clearly during fixture contract deployments and other interactions with the devnet (like declaration txs). For 2 declarations, 1 contract deployment and 1 simple related test case, a Pytest run currently averages around 3.30 minutes.

Pre-deploying accounts or making tests run faster is not where the bottleneck is to be found

@0xSidius can you paste the contracts here so I can reproduce your system setup? Maybe send over a screenshot of your folder tree? Also, we do have a test or two failing currently on our side that we are working on, and some of it is hanging. Might be the cause of your headaches.

@0xSidius can you paste the contracts here so I can reproduce your system setup? Maybe send over a screenshot of your folder tree? Also, we do have a test or two failing currently on our side that we are working on, and some of it is hanging. Might be the cause of your headaches.

@unparalleled-js has access to our repo, we also talked with her today about where to expect the bottlenecks as well as setting some expectations for how much things can be improved. She can help you on both fronts I think
our contract structures is the following:

@0xSidius Thank you! I'll set up a cairo test and start working through it. Last I checked, we had some issues with cairo and our yaml setup. Could be the root here.

I think this test is good candidate to test against: def test_declare_then_deploy(account, chain, project, provider, factory_contract_container):
It is a very slow test and does declares and deploys in it.

@unparalleled-js I've been searching for the source of this for most of the day, and I can't figure out why. This is running in 25 seconds (on averagish).


fix: DockerCompose@0 now normalises project name

docker compose has started enforcing validation on the project name. As such, the default project when run against github repos is no longer valid (/ is not allowed). This change attempts to normalise the supplied project name in an attempt to keep the existing behaviour "unchanged".

Task name: DockerCompose@0
Description: Fix default project name to ensure it complies with latest docker compose rules
Documentation changes required: (Y/N) N
Added unit tests: (Y/N) N
Attached related issue: (Y/N) #20047
Checklist:

[ ] Task version was bumped - please check instruction how to do it
[ ] Checked that applied changes work as expected

I am closing this PR as the team is working on a proper solution for this.
We cannot modify the project name in the task itself as there are/could be customers dependencies on it further in their process(es)

We cannot modify the project name in the task itself as there are/could be customers dependencies on it further in their process(es)

Indeed - certainly not a perfect fix, but those kinds of customers will have to be taking manual steps to mitigate this problem no matter what as the name with a / will never be acceptable when using the latest release of docker compose.
Thanks for working on it so promptly, though 🙏


Refactor/remove calibration_cathment.py and re-enable explicit strategey.

PR #130 introduced breaking changes which effect the explicit calibration strategy.  As it exists now, the explicit strategy is not very optimal, as it runs the entire calibration look (including model execution) for each calibration_catchment explicitly defined by the realization.  This can be done more efficiently with a many-to-many connection of calibration features with evaluation features and a smarter implementation of the search space semantics, similar to the independent strategy.
The calibration_catchment needs to be deprecated and removed and the explicit strategy refactored to implement the intended semantics via, likely, a list of CalibrationSets of size one.

Just to note here for people who could run into issues, CalibrationSets does not support model plugins at this point in time.


[JENKINS-39756] update to latest config file provider plugin

https://issues.jenkins-ci.org/browse/JENKINS-39756
@olivergondza  please have a look at this...
when I run the tests locally, then I do get one error - but I'm not sure what exactly is failing...

How will the change work for users that upgrade from older versions of config-file-provider plugin?

the data is all migrated to the new form, thats not an issue - the compatibility issue is only from an Java API point of view, therefore I'm changing all the plugins I know of...

Actually, the inherent limitation of Jenkins cloud provisioning is, it has no idea what build will run slave that is provisioning. Therefore, it has no idea in what folder the configuration is.
Are you providing patches for all plugins that depend on config-file-provider or are you interested in openstack-cloud-plugin?

I (try to) provide patches for all the plugins depending on the config-file-provider plugin.

The test failure is exactly that, we are not getting the user-data:
https://jenkins.ci.cloudbees.com/job/plugins/job/openstack-cloud-plugin/org.jenkins-ci.plugins$openstack-cloud/264/testReport/junit/jenkins.plugins.openstack.compute/JCloudsCloudTest/globalConfigMigrationFromV1/

I changed the implementation in a way that it works. The downside of this is, that this plugin will not support configuration files on folder level - I have no idea how this could be changed, how to determine the execution context is something internal to this plugin that I don't know.
I will add an option to the config-file-priovider plugin to allow a plugin to express whether it supports configfiles on folder level and only allow creation of such configfiles on the correct levels.

Well, there is a feature to start auxiliary machines from build itself where this makes sense. The same would make sense if we add pipeline support to do the same or control the agent creation in one-shot-executor kind a way.
For now, I am happy if you review our use of config-file-provider plugin is forward compatible and I will keep in mind this useful feature.

@olivergondza the remaining error in the build has nothing to do with this PR: https://jenkins.ci.cloudbees.com/job/plugins/job/openstack-cloud-plugin/266/findbugsResult/new/
so from my point of view, this is complete

@olivergondza version 2.15 of config-file-provider is now released, feel free to do a release of your plugin to keep compatibility

Hey, we're unable to use this plugin at the moment due to the compatibility break. Do you know whether you'll have time to release a compatible version?

Unfortunately, this rises core version requirement drastically. While working on other things I have prepared https://github.com/jenkinsci/openstack-cloud-plugin/pull/130. @imod, can you have a look? It passes functional and integration test just fine.

Current situation. As soon as we upgrade config-file-provider to 2.15.x, we

loose our OpenStack User Data configuration permanently
get a Stacktrace, when we want to Add a new Config of that type.

Reverting to 2.13 fixed the second problem, restoring the lost config from backup fixed the first.
@imod: As this is a breaking change in your plugin, which requires coordinated effort of several other plugin maintainers to fix, it would have been a good idea to bump version to 3.0, instead of hiding this in a minor release.

@marc-guenther I agree, but the update center does actually warn you about the incompatible configuration changes when you install the new version of the plugin

Well, yes. It warns that you might need to reconfigure. It doesn't say that it will stop working completely... :wink: Which unfortunately is currently the case for every user of this plugin.

I am closing this, the work continues in https://github.com/jenkinsci/openstack-cloud-plugin/pull/131 and https://github.com/jenkinsci/config-file-provider-plugin/pull/29.

@leth, @marc-guenther, I am releasing openstack-cloud 2.16 that, together with upcomming config-file-provider release, will make this plugin compatible with newer versions of that plugin.
For people that upgraded to config-file-provider before the fix, your openstack configuration is not lost, just mangled (you do not see those listed in UI). (In such a nasty way it causes piles of IllegalStateException: class org.jenkinsci.lib.configprovider.model.Config must override 'getDescriptor()' this method!, unfortunately). There are several ways to recover that:
Quick and dangerous:

In your Jenkins home.

    $ sed -e 's~<org.jenkinsci.lib.configprovider.model.Config>~<jenkins.plugins.openstack.compute.UserDataConfig<EMAIL_ADDRESS>-e 's~</org.jenkinsci.lib.configprovider.model.Config>~</jenkins.plugins.openstack.compute.UserDataConfig>~' < org.jenkinsci.plugins.configfiles.GlobalConfigFiles.xml > org.jenkinsci.plugins.configfiles.GlobalConfigFiles.xml.fixed

Verify, replace and restart Jenkins.

Safe but tedious:

From $JENKINS_HOME/org.jenkinsci.plugins.configfiles.GlobalConfigFiles.xml extract all openstack related org.jenkinsci.lib.configprovider.model.Config tags.
Add the files through UI again.
Restart

That's great, thanks!

Upgraded all plugins and now I get:
java.lang.AbstractMethodError: class jenkins.plugins.openstack.compute.UserDataConfig$UserDataConfigProvider MUST implement 'newConfig(String)'
	at org.jenkinsci.lib.configprovider.ConfigProvider.newConfig(ConfigProvider.java:113)
	at org.jenkinsci.plugins.configfiles.ConfigFilesManagement.doAddConfig(ConfigFilesManagement.java:213)

This happens after clicking "Submit" with OpenStack User Data on the Add a new Config page :(

Tracked as https://issues.jenkins-ci.org/browse/JENKINS-41024

Releasing 2.17 with a fix.

2.17 fixed it for us. Everything is working fine now. Even upgrading from the old versions did not loose configuration anymore. 👍
Thanks everyone! :)


Consolidate all App code into Command

What type of PR is this?
(REQUIRED)

bug
cleanup
documentation
feature

What this PR does / why we need it:
(REQUIRED)

Which issue(s) this PR fixes:
(REQUIRED)

Fixes #1586
Special notes for your reviewer:
(fill-in or delete this section)

Testing
(fill-in or delete this section)

Release Notes
(REQUIRED)

@meatballhat Perhaps its better to split this into two separate PRs. One to change Subcommands -> Commands and another to merge App into command.

@meatballhat Perhaps its better to split this into two separate PRs. One to change Subcommands -> Commands and another to merge App into command.

@dearchap that was my intention when I started, but keeping both .Commands and .Subcommands didn't seem feasible 🤔 Are you suggesting I take on the .Subcommands ➡ .Commands rename first?

@meatballhat One thing that may help is removing ctx from Help and using Command params throughout. That way there are no App/Ctx references anywhere on that portion. If you'd like I can work on that.

@meatballhat One thing that may help is removing ctx from Help and using Command params throughout. That way there are no App/Ctx references anywhere on that portion. If you'd like I can work on that.

@dearchap that sounds great to me! :tada:

Superseded by #1746


⚠ Bofrost.fr has degraded performance

In f8cade3, Bofrost.fr (https://www.bofrost.fr) experienced degraded performance:

HTTP code: 200
Response time: 1135 ms

Resolved: Bofrost.fr performance has improved in 6828134 after 9 minutes.


Supporting Video Recording on  WSL2

Base on the last comment here
https://github.com/aerokube/selenoid/issues/1017#issuecomment-1136031378
selenoid does not support video recording on WSL2 for windows. As this is the becoming the the default configuration I'm wondering if there are plans to support his in the future.

@jensstockhausen probably one day we will do this.


Support Document Copy

Couch DB supports a copy operation, which is handy for docs with lots of attachments. Here is a sample implementation:
public HttpResponse copyDoc(org.apache.http.client.HttpClient apacheClient, String dbName, String fromDocID, Revision rev, String toDocID) {
    //RestTemplate restTemplate = new RestTemplate(dbInstance.getConnection());

    try {
        BasicRequestLine requestLine = new BasicRequestLine("COPY", "/" + dbName + "/" + fromDocID, HttpVersion.HTTP_1_1);
        BasicHttpRequest request = new BasicHttpRequest(requestLine);
        String dest = toDocID;
        if (rev != null) {
            dest += "?rev=" + rev.getRev();
        }

        request.addHeader("Destination", dest);
        org.apache.http.HttpResponse response = apacheClient.execute((HttpHost)apacheClient.getParams().getParameter(ClientPNames.DEFAULT_HOST), request);
        return null; // bad bad BAD!!!! need
    } catch (Exception e) {
        throw Exceptions.propagate(e);
    }
}

Any plans to fix this issue in the near future? It think it would be a great feature for all and very important for us ;)
Thanks anyway for all the great work! :)


[Launch] Lincoln quote needed in the comments

Description
VA mission statement needs to be present when a user inspects the page.
We need to add the following comment below the footer
<!-- VA's mission: To fulfill President Lincoln's promise to care for those who have served in our nation's military and for their families, caregivers, and survivors. -->
Additional Notes
There is a utility in next-build that can be used to achieve this.
<HTMLComment position="head" content={comment} />
Acceptance Criteria

[ ] Quote is visible on all pages below the footer.

Install Htmlcomment from yarn add react-html-comment to inject the VA mission comment and added the div logout-modal-root to match prod


Syntax error on WIndows11

I want to use langflow from my local machine, for which I have used the command pip install langflow
The command executed successfully. BUt when I try to run langlow using the command langflow, it throws me the below error:
File "<unknown>", line 1     typing_extensions.['news', 'search', 'places', 'images']                       ^ SyntaxError: invalid syntax
Any leads on this will be helpful.
PS: I have created a completely new virtual env with below packages:
Python =3.10.
langflow =  0.3.3

I am experiencing this issue as well, while trying to debug the langflow backend from VS Code on an M1 Mac.
Python 3.9.6
langflow 0.4.0
Did you make any progress?


multicore

Fixes #57

Thanks for the work snek + jannic, going to merge this now.
I'm looking forward to seeing what folks do with their 2nd core.


[Website update] Partner/External blog highlight feed

Is your feature request related to a problem? Please describe.
We do not currently have a good way to highlight interesting OpenSearch-related content on the site.
Describe the solution you'd like
If external content is published, there is no way for us to highlight and link to it in a meaningful way.
May want to highlight different types on different pages
Ex: Media, News articles on the front page
Ex: Partner blogs on the new Partner page(s)
Ex: Social, Community on appropriate pages

2022-11-4 - RSS Feed SOP ;Question to answer: who will maintain the feed? -- @dtaivpp  has ideas on how this can be pulled into a PR and we pick through before it's pushed live - will add to SOP doc
2022-1028 - Hannah Uselman working on picking some RSS feed generators out. Will meet with @krisfreedain on these.
2022-1025 - Hannah Uselman will work on building out what this feed includes (help from Daryll & @krisfreedain - then we can work to build something that's simple to update. Idea: this is a feed that shows up on the currently unused right hand column in /blog
-Partner Blog
-Contributor blogs

@dtaivpp & @nateynateynate working on solution for this

Idea - this could be added to the /blog page in the unused area on the right-hand column

WIP

Note from @dtaivpp - looked more into RSS parsing and it may be something we want to push farther to the backlog. Its doable but with a fair amount of work. ~20-30 hours
thanks David. We'll have to see where this belongs on priorities. Maybe we can enable a section to manually add links once a week, then longer-term, we look into RSS

@nateynateynate @dimwetoth and @krisfreedain will meet to talk about a simple solution to this (at least for version 1.0)


Debugging Flink CDC

Hi guys,
Flink cdc is a greate framework and useful. Good job ~.
BTW, is anyway to run Flink CDC in debug mode (e.g. in Intelij IDE), so that I can debug some application issue by myself ?
Thanks a lot

You can build the project just like other maven project, and then run the test in the project,
git clone https://github.com/ververica/flink-cdc-connectors.git
cd flink-cdc-connectors
mvn clean install -DskipTests


Slide with variable width's first slide is not positioned properly.

let settings = {
      dots: false,
      arrows: false,
      centerMode: true,
      infinite: true,
      slidesToShow: 1,
      speed: 500,
      variableWidth: true,
    };

Since this is infinite slides last slide should displayed on the left.
initialSlide: 2 is not working too.

+1

I have this problem too, any idea how to fix that? it seems to fix itself when the page resizes or when you navigate through the slides.

+1
Does this mean that variable width is unusable?


docs(menu): fix root-indent default value & typos (enUS)

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Comparison is base (5a48674) 61.08% compared to head (b59e5c6) 61.08%.

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@           Coverage Diff           @@
##             docs    #5689   +/-   ##
=======================================
  Coverage   61.08%   61.08%
=======================================
  Files        1107     1107
  Lines       23618    23618
  Branches     6186     6186
=======================================
  Hits        14428    14428
+ Misses       7598     7596    -2
- Partials     1592     1594    +2

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

| root-indent | number | undefined | The indent of menu's first level children. If not set, menu will use indent in place of it. | |


S3 Bucket naming conventions have changed

The function '_ensure_bucket_exists(s3, bucket, region)' in 'cli.py' fails to create an S3 bucket and raises an exception:

Unexpected error: An error occurred (InvalidBucketName) when calling the CreateBucket operation: The specified bucket is not valid. (ClientError)

I think this happens because one can no longer use capital letters in S3 bucket names, according to the most recent AWS-docs: https://docs.aws.amazon.com/AmazonS3/latest/dev/BucketRestrictions.html

Bucket names can consist only of lowercase letters, numbers, dots (.), and hyphens (-).

In the code (init(), line 119), it says:
random.choice(string.ascii_uppercase + string.digits)
Changing this line to:
random.choice(string.ascii_lowercase + string.digits)
makes the S3-bucket creation operation succeed.

Would you submit a PR with this change?


More variety in prompt support

At the moment, we support chat templates (need to be edited for multichoice), but not CoT. Could be cool to add.

Linked to #38


correct page wrapper top spacing

@cesidio  did a nice consistency clean up of govuk-main-wrapper usage but introduced a little visually unappealling layout  bug at top of page (not just me - cesi pointed it out, kirill agrees)
This gap doesnt look right

Changes

put back the default border at bottom of phase banner which we had overriding because of a previous home page design
govuk-main-wrapper has a default padding top of 40px which is a little large - i have reduced this to 20px as this is the gap i feel works best across pages. otherwise i would have to use page controller css classes which we are all agreed we want to get away from. obviously the point of cesi's work was that there is one page wrapper only in the application template

just as aside but related when we do upcoming css rethink/restructure, it is not out of the question that we might have to have page specific styles for the home page only home_index as it is different that every other page aesthetically


A small bug in the creating_datasets_from_the_pdb.ipynb

Hi @amorehead and @a-r-j,

I am playing with your PDBManager. It's really helpful!
I found a subtle bug in the Jupyter notebook, https://colab.research.google.com/github/a-r-j/graphein/blob/master/notebooks/creating_datasets_from_the_pdb.ipynb?pli=1
You forget to first install graphein and then import it.

from rich import inspect
!pip install graphein
from graphein.ml.datasets import PDBManager

manager = PDBManager(root_dir=".")
inspect(manager, methods=True)

Thanks for spotting that! I will add it :)


Unprofessional Active Link Color in Navigation Bar

The active link in the navigation bar currently displays a blue color, which does not align with the overall design theme and appears unprofessional. This inconsistent styling distracts users and affects the visual flow of the page. It stands out in a way that clashes with the color scheme of the website, leading to a less cohesive and polished user experience.
Expected Behavior- The active link should have a color that matches the website's design, ensuring visual consistency and professionalism. A more subtle or theme-appropriate color (e.g., white or a shade from the palette used in the background) would maintain the brand's visual identity and ensure a smoother user experience.

Proposed Solution- Update the CSS for the active link to match the site’s theme, opting for a more neutral or brand-aligned color rather than default blue. This will enhance the visual consistency and improve the overall aesthetic of the navigation.

@diwakarchaurasiya just share the screenshot of this fix.

I would like to fix the issue

It's gonna be look like this or whichever color is suitable for your brand theme.
I will fix it,Assign me this task to show my development skills and make your ticketify better.
https://github.com/user-attachments/assets/fd7a75ef-fd04-40a9-a05f-3a882c0c0c4e

@diwakarchaurasiya Looks great! However, to add the labels "gssoc-ext" and "hacktoberfest-accepted," you'll need to incorporate additional functionalities.

I can more functionality to ticketify,whenever a user books ticket successfully or he fails to book (some thing happens) then there is no any visual feedback that ticket is booked or not ,I will add toast notification that shows "ticket booked successfully" or "Booking Failed"

Assign me this task i will complete it within 2hrs

Feature Description:
Can make a better UI using Next ui,tailwind css or Magic UI using a better color scheme
Provide a detailed description of the feature
By adding the better active link  color in nav-bar that  enhances the UI and glow of website were website becomes more user friendly.
Please assign this to me , I am ready for this
Thankyou!
By submitting this issue, you agree to
I agree to follow this project's Code of Conduct
I’ve read all the issues in the issue section, and this feature has not been proposed yet.
Other Information

[ ]  I'm a GSSoC '24 Extended contributor
[ ]  I'm a Hacktoberfest '24 contributor
[ ]  I am willing to work on this feature


Modified log.info of "No perm match..." to show more info.

I think this could be fine.

Coverage remained the same at 0.0% when pulling 35e7991550ee7db6562dca90cc7f6fa1a504e01c on apenen:issue-229 into 3db9070948dbb220abdcd1d72aa4c6ae2d9a2918 on floragunncom:master.

merged, thx for your contribution


This issue still exists: https://github.com/FizzleDorf/ComfyUI_FizzNodes/issues/63

I have reviewed the latest code, and there are still errors in BatchFuncs.py. Running the simple example will result in an error. Please make the necessary corrections. Thank you！

When using "Prompt Schedule", the code in BatchFuncs.py should be as follows:
cur_prompt_series[i] = prepare_batch_prompt(cur_prompt_series[i], max_frames, i, prompt_weight_1,
prompt_weight_2, prompt_weight_3, prompt_weight_4)
nxt_prompt_series[i] = prepare_batch_prompt(nxt_prompt_series[i], max_frames, i, prompt_weight_1,
prompt_weight_2, prompt_weight_3, prompt_weight_4)
When using "Batch Prompt Schedule", the code should be handled differently:
cur_prompt_series[i] = prepare_batch_prompt(cur_prompt_series[i], max_frames, i, prompt_weight_1[i],
prompt_weight_2[i], prompt_weight_3[i], prompt_weight_4[i])
nxt_prompt_series[i] = prepare_batch_prompt(nxt_prompt_series[i], max_frames, i, prompt_weight_1[i],
prompt_weight_2[i], prompt_weight_3[i], prompt_weight_4[i])

I've added a fix in 4d34c17. The issue wasn't the prompt weights but the size of the tensors was only checked in addWeighted(). I added a check outside the interpolation loop to set max_size to the largest tensor in the schedule. I'll be doing some cleanup so it isn't as redundant in time. For now, it works.


Simplify EpsNFA and OrderedNFA on no input terminator

Changes

Simplify EpsNFA and OrderedNFA on no input terminator

Codecov Report

Merging #240 (10409df) into main (7a15bc2) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##              main      #240   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files            1         1
  Lines           65        65
  Branches        29        29
=========================================
  Hits            65        65

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 7a15bc2...10409df. Read the comment docs.


naive statement splitter

naive attempt at splitting statements.
implements the splitter as a simple Pratt Parser. The approach now is the opposite of what I tried before: Instead of assuming it works perfectly as long as we cover all possible edge cases, we assume it does not work at all. We want to make all important cases work (mostly DML, a few DDL statements), while asking the user to fallback to a double newline if they are seeing weird things coming from the lsp.

[ ] make it work well for all dml statements and all create (or replace) ddl statements

@juleswritescode I refactored the parser to work with an index into the vector. this comes with a few benefits:

no cloning
no "save last token" anymore
just a single pass over tokens since we do not filter and clone on init
no impact for the user of the parser

@juleswritescode I think this is ready now. dml statements should work good enough.


Alert when host is offline

Dear:
I want to receive alerts when host is offline, is that possible in kapacitor?
As I tested with SNMP plugin, it shows me "Error reading from UDP XXXXX" on STDERR, can kapacitor catch it?
Thanks & Regards!

@qindj A deadman function was added recently which acts as a dead man's switch, with documentation available here. Is that what you are looking for?

@rossmcdonald thanks!

@rossmcdonald  Sorry for reopen this issue!
One more question, can I use variables such as "host" or "ip" in deadman's template?
thanks!

@qindj I personally haven't experimented with it yet, but I believe so. The deadman function returns an alert node, which could then be used to send a custom message about the host that isn't responding (either through message or id).

@qindj Yes, you can use host and ip in the template assuming they are tags on the data points.
For example in the TICKscript
.message('host: {{ index .Tags "host"}} ip: {{ index .Tags "ip"}}')
or in the config:
message = "host: {{ index .Tags \"host\"}} ip: {{ index .Tags \"ip\"}}"

thanks @rossmcdonald @nathanielc
I tested but without success.
I have a db named "test", and using  telegraf to get "sysuptime" from 5 linux machines through SNMP.
I want to monitor these machines, and when kapacitor didn't receive stream in 25s, send an email alert with "host" which can shows me who is offline.
As I tested according to @nathanielc , the "host" is always empty.
The data looks like following, "host" maybe different

select * from sysuptime limit 10
name: sysuptime
time                                    host                   sysuptime
1454394310000000000     <IP_ADDRESS>    189383864
1454394320000000000     <IP_ADDRESS>    189384864
1454394330000000000     <IP_ADDRESS>    189385864
1454394340000000000     <IP_ADDRESS>    189386864
1454394350000000000     <IP_ADDRESS>    189387864
1454394360000000000     <IP_ADDRESS>    189388864
1454394370000000000     <IP_ADDRESS>    189389864
1454394380000000000     <IP_ADDRESS>    189390864
1454394390000000000     <IP_ADDRESS>    189391864
1454394400000000000     <IP_ADDRESS>    189392864

And TICKscript:
`var data = stream
.from()
.database('test')
.measurement('sysuptime')
.groupBy('host')
data.deadman(0.0, 25s)
.message('{{ index .Tags "host" }} is {{ .Level }} value:{{ index .Fields "value" }}')
data.convertSNMPTimeticks()
.field('sysuptime')
.as('uptime')
.influxDBOut()
.database('norgin')
.retentionPolicy('uptime')
.measurement('uptime')   `
and the result is:
is CRITICAL value:<no value>
Did I miss something?
Thanks and regards!

The deadman's switch doesn't work with the groupBy node's the way you are expecting. This is a result of how groups are implemented. But I think your example is valid and should work.
Basically what you want is to be able to watch each individual group for a lack of points. Instead what you have right now is a deadman's switch on all hosts combined and no tag information on any host. This should be a simple addition to how the deadman's switch works.
Unfortunately I can't think of a good workaround at the moment.

Sorry if this is a silly question. Does deadman still work if there is no influx data coming in? I am using procstat from Telegraf and want to be able to alarm if the process is no longer alive. Is this possible with Kapacitor?

@markgoffin yes, that is the purpose of the deadman's switch. It monitors the flow of data through a part of the task, typically the start, and triggers an alert if the data stops flowing.

Ah ok, I can't seem to get it to work. My tick file looks like this:
stream
    .from()
        .measurement('procstat')
        .where(lambda: "process_name" == 'myapp')
    .deadman(0.0, 20s)
        .log('/tmp/deadman.log')

I have Telegraf configured to send every 10s. I perform the following steps:

Start myapp (have confirmed that procstat stats appear in influxDB)
Enable the kapacitor task
Stop myapp (and confirm that the stats stop appearing in influxDB)

And no log file is created in /tmp
Have I done something stupid?

@markgoffin No, your TICKscript is logically correct but Kapacitor's implementation is confusing.
Basically what is happening is there are two values to track for each node:

collected points -- number of points the node  has received
emitted points -- number of points the node has sent to its children

The deadman's switch is watching the collected metric. In your case the node is still receiving data for other processes but not the myapp process so the alert is not triggered. I am looking into how it would effect other uses cases to trigger the alert off the emitted metric which would take into account the where expression.
As a work around for now could add in a dumy node that receives the values from the stream node and trigger the deadman's switch.
Example:
stream
    .from()
        .measurement('procstat')
        .where(lambda: "process_name" == 'myapp')
    //add no op node as workaround
    .eval(lambda: "cpu_user").as('cpu_user')
    .deadman(0.0, 20s)
        .log('/tmp/deadman.log')

The no op node should not be necessary so with the group by fixes i'll see how this can be improved.

Tested and "groupBy" is working perfect , thanks @nathanielc !!

@qindj Could you please let me know how did "group by" work for you?. Below is my script. However, i get "null" in hostname
// Dataframe
var data = batch
|query('''SELECT 100 - (mean(usage_idle) + mean(usage_iowait)) as cpu_usage FROM "telegraf"."default"."cpu" ''')
.period(period)
.every(every)
.groupBy(time(10s), 'host')
// Thresholds
|alert()
.id('{{ index .Tags "host"}}/cpu_used')
.message('{{ .Level}}: {{ .Name }}: {{ index .Tags "host" }} has cpu usage: {{ index .Fields "cpu_usage" }}')
.warn(lambda: "cpu_usage" > warn)
.crit(lambda: "cpu_usage" > crit)
.log('/tmp/cpu_alerts.log')
data
|deadman(0.0, 1m)
.message('{{ index .Tags "host" }} is {{ if eq .Level "OK" }}alive{{ else }}dead{{ end }}.')
.log('/tmp/cpu_deadman_alerts.log')

is there anybody who can reopen this issue?
even though this isse state (and the deadman's message changes) deadman still do NOT got emitted values. here is the output of my kapacitor-1.4.1 and as you can see both before and after node got the emitted values but not the deadman
# kapacitor vars
...
   "f9771a78-60f9-4fef-a224-1f09b6c860b8": {
      "name": "edges",
      "tags": {
        "host": "localhost",
        "task": "a3_sia_hashrate",
        "parent": "from1",
        "child": "window2",
        "type": "stream",
        "cluster_id": "4ece60d6-f44d-4ec1-9485-5a4894af5b60",
        "server_id": "d42a1414-e7fa-4d66-ad3e-4d82f0b94191"
      },
      "values": {
        "collected": 6,
        "emitted": 6
      }
    },
    "ae382e9d-6c06-4cf8-be50-625a4874ab22": {
      "tags": {
        "id": "deadman",
        "cluster_id": "4ece60d6-f44d-4ec1-9485-5a4894af5b60",
        "server_id": "d42a1414-e7fa-4d66-ad3e-4d82f0b94191",
        "host": "localhost"
      },
      "values": {
        "collected": 3
      },
      "name": "topics"
    },
    "d5558e49-9aa0-4455-aa05-1cfef5851f26": {
      "name": "edges",
      "tags": {
        "type": "stream",
        "task": "task_master:main",
        "cluster_id": "4ece60d6-f44d-4ec1-9485-5a4894af5b60",
        "server_id": "d42a1414-e7fa-4d66-ad3e-4d82f0b94191",
        "host": "localhost",
        "parent": "stats",
        "child": "stream"
      },
      "values": {
        "collected": 14650,
        "emitted": 14650
      }
    },
...

With all the confusion and having to write two streams etc, and the group by issue that i have read in every post i have found, couldn't you just allow a collection on point, say cpu =    and trigger no data is returned and has 0 points from the measurement.  not the value 0 but 0 points or a no data returned flag.
I am having the same issues trying to use the Tick Script for deadman on 100+ servers monitoring CPU.   It does not seem to trigger the event for NO DATA RETURNED.
I have tried group by on the Tags,   Group by *,  no group by and the deadman does not seem to trigger.   I really don't have to write a new rule for 100+ servers or databases.   especially don't want to write a new rule each time a server or database is added to the collection
If I could just use a stream collector and trigger my own e-mail / stack etc, saying No metric data collected in the past xx minutes and go from there.   Either Deadman need fixed, or further explained on how to group by, so the event triggers on no data and then data now coming in,   or we need a NO DATA RETURNED flag in Chronograf / Kapacitor  to Simulate what we are trying to accomplish with DEADMAN.


⚠ Bofrost.at has degraded performance

In a82b11b, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 1020 ms

Resolved: Bofrost.at performance has improved in cc047fc.


Keycloak and Storybook

Hello,
has anyone managed to get this library working with an app that utilizes Storybook and that authenticates against Keycloak? I managed to get storybook displaying the Keycloak Login Page but after successfully authenticating I am facing the following error.
"We are sorry... Cookie not found. Please make sure cookies are enabled in your browser."
I assume this is a result of the keycloak login page beeing rendered as an iframe.
I know this issue is rather specific but maybe someone knows a fix/workaround.
Thanks in advance

I'm not sure how recent the Storybook instructions for mocking are, but it worked for us.
The gist is that we had to mock react-odic-context and remap the import in Storybook. Our mock looks like this:
// react-oidc-context.mocks.ts
import { fn } from '@storybook/test';
import {
  AuthProviderUserManagerProps,
  AuthContextProps,
} from 'react-oidc-context';

export const AuthProvider = ({ children }: AuthProviderUserManagerProps) =>
  children;

export const useAuth = fn<[], AuthContextProps>().mockName('useAuth');

Then in our story, we do something like below:
import { useAuth } from './react-oidc-context.mocks';

// removed for brevity

export const Default: Story = {
  async beforeEach({ args }) {
    useAuth.mockReturnValue({
      isAuthenticated: false,
      isLoading: false,
      signinRedirect: fn().mockName('signinRedirect'),
    } as unknown as AuthContextProps);
  },
};

If you use the user object in your components, you'll just need to provide one within the .mockReturnValue. Something like this maybe?
useAuth.mockReturnValue({
  isAuthenticated: true,
  user: {
    scopes: ['openid', 'profile', 'email'],
    profile: {
      family_name: 'Smith',
      given_name: 'John',
      name: 'John Smith',
      preferred_username: 'john.smith',
      email<EMAIL_ADDRESS>      email_verified: true,
    },
  },
} as unknown as AuthContextProps);

Hope this helps.

This issue (question) staled some time ago, closing it for now.


compress: avoid []byte->string penalty conversion for key to hashmap

We periodically do supply chain analyses for code that goes into cosmos/cosmos-sdk and that entails security and performance auditing.
I noticed this code https://github.com/confio/ics23/blob/5a0206f31ac5ccb40757e98a3c86e7beff95793b/go/compress.go#L96-L106
which when examined, if using say 1.50MiB of RAM, consumes about 33% of the memory just from the []byte->string conversion which is as much RAM as invoking step.Marshal()
ROUTINE ======================== github.com/confio/ics23/go.compressStep in /Users/emmanuelodeke/go/src/github.com/confio/ics23/go/compress.go
       1MB     1.50MB (flat, cum)  1.13% of Total
         .          .     87:	}
         .          .     88:	return res
         .          .     89:}
         .          .     90:
         .          .     91:func compressStep(step *InnerOp, lookup *[]*InnerOp, registry map[string]int32) int32 {
         .   512.02kB     92:	bz, err := step.Marshal()
         .          .     93:	if err != nil {
         .          .     94:		panic(err)
         .          .     95:	}
  512.02kB   512.02kB     96:	sig := string(bz)
         .          .     97:
         .          .     98:	// load from cache if there
         .          .     99:	if num, ok := registry[sig]; ok {
         .          .    100:		return num
         .          .    101:	}
         .          .    102:
         .          .    103:	// create new step if not there
         .          .    104:	num := int32(len(*lookup))
  512.12kB   512.12kB    105:	*lookup = append(*lookup, step)
         .          .    106:	registry[sig] = num
         .          .    107:	return num
         .          .    108:}
         .          .    109:
         .          .    110:func decompress(comp *CompressedBatchProof) *BatchProof {

and as you can imagine if this code gets hit a whole lot, that multiplies. The solution is very simple.
Solution
Please use the map key idiom in which that code turns into if num, ok := registry[string(bz)] and registry[string(bz)] = num
/cc @cuonglm @marbar3778 @alexanderbez @ethanfrey to remind us to make a version update to include in the cosmos-sdk when this update is made. Thank you

@odeke-em Note that the optimization is only applied for map get/delete. For map assignment, the compiler must introduce temporary and cannot perform optimization.

@odeke-em Note that the optimization is only applied for map get/delete. For map assignment, the compiler must introduce temporary and cannot perform optimization.

Oh right, I forgot that, the Go compiler is kind of still primitive because it should recognize that that byte slice doesn't escape nor is it used out of the function therefore it should apply that optimization. We can file a bug for this and perhaps improve it in Go1.18. For now I'll actually handle this and mail out the change removing that allocation.

Actually given that the string won't be used anymore, it'll be attached to dangling memory so it has to pay the penalty, never mind :-)

Closing this issue as irrelevant as there is nothing we can do, we have to pay that penalty either way.

So this is expensive code we cannot optimize?
Compress can be called on a client, where decompress must be called on the blockchain node. I'd love to see an analysis of that code. Maybe a Simple pr to mention these issues as godoc?

@odeke-em Note that the optimization is only applied for map get/delete. For map assignment, the compiler must introduce temporary and cannot perform optimization.

Oh right, I forgot that, the Go compiler is kind of still primitive because it should recognize that that byte slice doesn't escape nor is it used out of the function therefore it should apply that optimization. We can file a bug for this and perhaps improve it in Go1.18. For now I'll actually handle this and mail out the change removing that allocation.

No, the thing is that the registry is an argument to the function, so it outlives the function scope. Just the key must be heap allocated.


Added list of maintainers

This PR adds a list of all current and former members of the PrismJS org and their involvement in this project. This list is mainly useful for people that need to contact us privately, e.g. for security reasons (see #3070).
However, this does create some privacy concerns for you guys. Your membership in the PrismJS org will be made public. I also included the full name from your GitHub account and email addresses for some. If you do not wish for this information to be recorded here, please leave a comment.

Regarding the titles/categories: they don't really mean anything.
I only added those titles, so members that aren't as actively involved anymore don't get spam from people contacting the maintainers via email or pinging them on GitHub. These titles basically function as mailing lists for outsiders. They are just a way for people outside the PrismJS org to figure out, "who do I contact when I have/found a problem that needs to be discussed privately?"
If you want a different title, please say so.

Some comments to individuals:

@Golmote If you want to be credited with your full name, please tell me or add it yourself. (If you don't want your name to be known/listed here, that's fine too. Just let me know if you do want it to be added.)
@LeaVerou I took your email from your website. You did not list this email on your GH profile, so please tell me if you do not want to your email to be listed here or wish to use a different address.

I'm a little worried about spambots

Then I'll remove it. Once spammers have your address it's too late, and if somebody really needs to contact you, they'll go to your website. We just need some point of contact.
Gmail has pretty good spam filters, so it shouldn't be a problem for @mAAdhaTTah and me.

@RunDevelopment I'd suggest squashing these commits now so that Lea's email isn't just floating here.

I think I'll just merge this for now to move forward with #3070.


unreadable function/method definition after reflow by black

Operating system:

Python version: 3.6
Black version: ==19.3b0
Does also happen on master: True

on version 19.3b
class Foo(object):
    def get_cludes(
        self, includes: List[str] = None, excludes: List[str] = None
    ) -> List[str]:
        pass

on master
class Foo(object):
    def get_cludes(
        self,
        includes: List[str] = None,
        excludes: List[str] = None,
    ) -> List[str]:
        pass

IMHO this is not really readable and this is borderline highly discussable in terms op opinionation:tm:.  This due to the fact that the code structure is visually 'cluttered' by the fact that the indent of the def is used instead of the underlying 'new' indent by the function/method. We in our office like consistent flow of code however this visually impairs really the clarity that PEP8 is advocating. Through your eyelids you want to see a block indent to determine the structure. Especially when using CodeGlance/Sublime.
oooo OooOoo(ooo):
    ooo oooo_oooooo(ooo  oooooo  ooooooo  ooooo oooooo):
        ooooo ooooooooooooooo ooooo ooooooooo oooo oooo
        ooooooooo oooo oooooooooooooooooooooooooooo
        oooooooooooooooooooooo ooooooo oooooooo ooooo
        oooooooooooo oooooooo ooooooooo oooo

I would suggest to reflow like so:
class Foo(object):
    def get_cludes(
            self, includes: List[str] = None, excludes: List[str] = None
        ) -> List[str]:
        pass

I have watched the screencast of Pycon and understand the mechanics of the reflow of code. Therefore unsure if this type of criticism is acceoted in this project or not, but just wanted to vent it anyway.

Thanks for bringing this up, but this is a fundamental aspect of Black's style and we're unlikely to change it at this point. Many people are already relying on Black for production codebases and few of them have complained about the style decision you've highlighted here.


Showing warning in pm2 log when started in production env.

I used the code NODE_ENV=production pm2 start app.js
then i get the following warning
app-0 (err): --------------------------------------------------------
app-0 (err): Warning: connect.session() MemoryStore is not
app-0 (err): designed for a production environment, as it will leak
app-0 (err): memory, and will not scale past a single process.
app-0 (err): Warning: connect.session() MemoryStore is not
app-0 (err): designed for a production environment, as it will leak
app-0 (err): memory, and will not scale past a single process.
app-0 (err): --------------------------------------------------------
app-0 (err): :: Sat May 02 2015 12:33:50 GMT-0700 (MST)
app-0 (err): Environment : production
app-0 (err): Port        : 4040
app-0 (err): --------------------------------------------------------

Is this gonna affect my server performance?

Are you not using redis or mongo for your session store? We recommend that you not keep session data in RAM, as it's insecure and makes horizontal scalability impossible.

I tried redis, but that gave me connection error which i couldn't find a solution. Didn't tried mongo.  Anyway thank you.

but that gave me connection error

There are millions of possible errors. If you let us know what it is, we might be able to help you work through it.

the controller code i have is as follows
module.exports = {

    index: function(req, res) {
        var uuid = require('node-uuid');
        req.session.sid = uuid.v1();
        return res.view("homepage", {
            userid: req.session.sid
        });
    },

    test: function(req, res){
        return res.send(200, req.session.sid);
    }
}

and i got following error..
debug: --------------------------------------------------------
debug: :: Sat May 02 2015 17:05:11 GMT-0700 (MST)

debug: Environment : development
debug: Port        : 4040
debug: --------------------------------------------------------
error: Error occurred in session middleware :: 'Redis connection gone from close event.'

http.js:689
    throw new Error('Can\'t set headers after they are sent.');
          ^
Error: Can't set headers after they are sent.
    at ServerResponse.OutgoingMessage.setHeader (http.js:689:11)
    at ServerResponse.res.setHeader (/usr/lib/node_modules/sails/node_modules/express/node_modules/connect/lib/patch.js:133:22)
    at ServerResponse.res.set.res.header (/srv/www/nikz_in/subdomains/jwala/node_modules/sails/node_modules/express/lib/response.js:577:10)
    at ServerResponse.res.send (/srv/www/nikz_in/subdomains/jwala/node_modules/sails/node_modules/express/lib/response.js:142:12)
    at Object.<anonymous> (/srv/www/nikz_in/subdomains/jwala/node_modules/sails/lib/hooks/http/middleware/defaults.js:56:24)
    at Object.immediate._onImmediate (timers.js:363:16)
    at processImmediate [as _immediateCallback] (timers.js:345:15)

throw new Error('Can\'t set headers after they are sent.');

This means that somewhere in your code, you are trying to send a response to the client more than once during a single request.

Also, why are you doing any of this to begin with? sails already generates session ids for you.

Im new to sails. And couldn't find any clear doc on setting up sessions
with redis.
Is it "sails.sid" to access session id? Also How can i destroy a session
inside my code? I wanna use this variable for a form submittion. I need to
get a new userid for new form submittion.
On 5:54AM, Sun, May 3, 2015 Travis Webb<EMAIL_ADDRESS>wrote:

Also, why are you doing any of this to begin with? sails already generates
session ids for you.
—
Reply to this email directly or view it on GitHub
https://github.com/balderdashy/sails/issues/2903#issuecomment-98420026.

The second error was solved when i gave a name to the Redis db variable. But first error still persist.
config/session.js
    adapter: 'connect-redis',
    host: 'localhost',
    port: 6379,
    ttl: 84000,
    db: 'jwala',
    pass: '********************************',
    prefix: 'sess:'

config/policies.js
  '*': false,
  main: {
    'index': true,
    'order': true,
    'test': true
  },
  drops:{
    'dropped': true,
    'delete': true,
    'deleteAll': true
  }

config/routes.js
  '/': 'Main.index',
  '/order': 'Main.order',
  '/main/index': {response: 'notFound'},
  '/test': 'Main.test',
  '/main/order': {response: 'notFound'}

api/controllers/MainController.js
    index: function(req, res) {
        var uid ="xxxxxxxxx";
        return res.view("homepage", {
                userid: uid
        });
    }

I reinstalled redis and everything is working fine now. In early redis config i tried to use unix socket to connect the redis server and sails app. i think that was the error responsible for that error.


Unregistered entities are not removed from "Your Starred Entities" Home card

Steps to reproduce
Expected Behavior
Unregistered entities should be removed from the list on the "Your Starred Entities" card.
Actual Behavior
It stays in the list.
In my localStorage, I can see the following:
/starredEntities/entityRefs
["component:default/sample-service-1","component:default/concierge-1"]

concierge-1 is the component which was unregistered.
Steps to Reproduce

Star a component in the catalog.
View the Home plugin Starred Entities card. It should show the component.
Unregister the starred component from the catalog.
View the Home plugin Starred Entities card. It will still show the component.
Click the component. You will see an error saying "Backstage was unable to load the entity."

https://www.loom.com/share/68090d5e80f04bf180c7877721773bc5
Context
Users are confused and think Backstage is broken because they see an error when they click the component. in the list of starred entities.
Your Environment
This is running on Roadie. I'm assuming this is a Backstage bug rather than a Roadie bug because I can't imagine we interfered with the way this card works. Please let me know if there's any chance this is a false assumption.

Yeah, this is kind of tricky to do, as it's not just when you unregister something. It could be when someone else un-registers that component, or things get deleted. I wonder if it makes sense to add some revalidation logic here to validate that they exist. We also want to use the displayName of the entity too, so I wonder if makes sense to wrap that logic up in there when we grab the displayName?

@benjdlambert I put up a PR that implements the logic you mentioned


When Importing I get not a function

Hi there, I'm having a hard time after upgrading from v.3 to v.4.4.1 I keep getting this error when importing Route5 dependencies.
// Imports
import createRouter from 'router5';
import loggerPlugin from 'router5/plugins/logger';
import listenersPlugin from 'router5/plugins/listeners';
import browserPlugin from 'router5/plugins/browser';

// implementation
const routes = [
    { name: 'home',      path: '/'},
    { name: 'section', path: '/:section'},
];

const router = createRouter(routes, {
  defaultRoute: 'home'
})
  .usePlugin(loggerPlugin)
  .usePlugin(browserPlugin({
      useHash: true
  }))
  .usePlugin(listenersPlugin());

ERROR:
Uncaught (in promise) Error: createRouter is not a function

createRouter is an obj so i did import { createRouter } from 'router5';  and now i get :
Uncaught (in promise) Error: factoryFunction.apply is not a function

@DavidStrada createRouter is available as default and named exports. That's weird it would work as a named export and not as default. Can you make sure what you have in node_modules is indeed v4.4.1, and manual delete / re-install if not?
I have not experienced those issues (I always upgrade to the latest patch) and it has not been reported yet.

I forgot to mention I'm using jspm package manager so it appears systemjs is somehow having a problem or not sure ( really ), I'm trying to integrate now using webpack,  given I need to deploy this thing :), Did check you export.default = ...  so it's really weird.
Also I notice on your docs there are some places where ( mainly in plugins part ) they are being imported wrongly ( e.g. ) https://github.com/router5/router5#plugins
import browserPlugin from 'router/plugins/browser';
import listenersPlugin from 'router/plugins/listeners';
import persistentParamsPlugin from 'router/plugins/persistentParams';

missing router5
import browserPlugin from 'router5/plugins/browser';
import listenersPlugin from 'router5/plugins/listeners';
import persistentParamsPlugin from 'router5/plugins/persistentParams';

Your package is by far one of the most advanced / best out there in my opinion so thanks for your hard work.

Thanks for your kind words, and thanks for pointing out issues in the docs (will fix). Do you use babel for transpiling from es2015 to es5? I'm going to look at jspm docs to see if there is anything I need to add in my package.json config.

jspm uses babel transpiler to do es2015 -> es5,
http://jspm.io/0.17-beta-guide/creating-a-project.html
I created ( 9 months ago ) a package you did include it ( at the time on your docs ) using jspm + jquery to have a "client-site" example https://github.com/DavidStrada/router5-example

I don't see anything special I would need to configure for an npm package to work with jspm.
In your jspm.config, dependencies are locked to older versions https://github.com/DavidStrada/router5-example/blob/master/jspm.config.js#L2-L8 (just making sure you don't re-use that config with router5 >= 4).
If you do the following, what do you get?
import * as router5 from 'router5';
import * as browserPlugin from 'router5/plugins/browser';
import * as listenersPlugin from 'router5/plugins/listeners';
import * as persistentParamsPlugin from 'router5/plugins/persistentParams';

console.log(router5);
console.log(browserPlugin);
console.log(listenersPlugin)
console.log(persistentParamsPlugin);


ReferenceError: Can't find variable: assert

Using dpicker.min.js at version 5.0.8, the picker can not be opened. Instead, when clicking on the input field the following error is displayed in the JavaScript console:
ReferenceError: Can't find variable: assert

I managed to bypass this error be defining a global assert object:
window.assert = { equal: () => {} }

unassertify should take care of this :|


Path is created incorrectly.

Let's assume a project structure like the following:

Root

MyProjectRoot

src

MyProject.sln
...

tools

cake

cake.exe
...

scripts

build.cake
build.ps1

My build.ps1 script looks like:
cd ..\tools\cake
.\Cake.exe .\..\..\scripts\build.cake -verbosity=diagnostic

I think my intention is clear: I want to execute my build.cake script.
But it looks like he creates the full-path to the build.cake file incorrectly.
The output is:
Creating script session...
Processing build.cake...
Could not find script "Root/scripts/build.cake".

It looks like he initially found my build.cake file, but later he creates the path incorrectly and obviously can't find it at the new path.
This is one folder too much upwards in the folder hierarchy.
So then I try to remove one \.. from my path to build.cake:
cd ..\tools\cake
.\Cake.exe .\..\scripts\build.cake -verbosity=diagnostic

But sadly, this doesn't help either.
Because now, he fails with another error.
The output is:
Could not find a part of the path "MyProjectRoot/tools/scripts".

Okay, I didn't really expect that to work now, since that path can't be correct, it's one folder too much downwards in the folder hierarchy.
So it looks like, I have no way to get into my "MyProjectRoot" folder, to point the cake.exe to the correct script file.

Hmm, sounds strange. Will take a look at it later tonight.
Thank you for reporting this.

I just tried this and it works as expected here. Would you mind posting your build.ps1 script here? Would help reproduce the behavior.

@haefele I just tried this and it works as expected here. Would you mind posting your build.ps1 script here? Would help reproduce the behavior.

Well, they are exactly like the ones above.
I will try to reproduce it on my end now.

@patriksvensson This is strange, it still doesn't work on my end.
FYI, I have version <IP_ADDRESS>, the latest build I can get of github.
Maybe I can upload my folders somewhere?

@haefele I just used the Cake Bootstrapper to generate a script and edited that one to use the folder structure you have.
Here is the script, try it out and see if it works on your end.
Param(
    [string]$Script = "build.cake",
    [string]$Target = "Default",
    [string]$Configuration = "Release",
    [string]$Verbosity = "Verbose"
)

$TOOLS_DIR = Join-Path $PSScriptRoot "../tools"
$NUGET_EXE = Join-Path $TOOLS_DIR "nuget.exe"
$CAKE_EXE = Join-Path $TOOLS_DIR "Cake/Cake.exe"
$PACKAGES_CONFIG = Join-Path $TOOLS_DIR "packages.config"

# Make sure tools folder exists
if ((Test-Path $PSScriptRoot) -and !(Test-Path $TOOLS_DIR)) {
    New-Item -path $TOOLS_DIR -name logfiles -itemtype directory
}

# Try find NuGet.exe in path if not exists
if (!(Test-Path $NUGET_EXE)) {
    "Trying to find nuget.exe in path"
    $NUGET_EXE_IN_PATH = &where.exe nuget.exe
    if ((Test-Path $NUGET_EXE_IN_PATH)) {
        "Found $($NUGET_EXE_IN_PATH)"
        $NUGET_EXE = $NUGET_EXE_IN_PATH
    }
}

# Try download NuGet.exe if not exists
if (!(Test-Path $NUGET_EXE)) {
    Invoke-WebRequest -Uri http://nuget.org/nuget.exe -OutFile $NUGET_EXE
}

# Make sure NuGet exists where we expect it.
if (!(Test-Path $NUGET_EXE)) {
    Throw "Could not find NuGet.exe"
}

# Save nuget.exe path to environment to be available to child processed
$ENV:NUGET_EXE = $NUGET_EXE

# Restore tools from NuGet.
Push-Location
Set-Location $TOOLS_DIR

# Restore packages
if (Test-Path $PACKAGES_CONFIG)
{
    Invoke-Expression "$NUGET_EXE install -ExcludeVersion"
}
# Install just Cake if missing config
else
{
    Invoke-Expression "$NUGET_EXE install Cake -ExcludeVersion"
}
Pop-Location
if ($LASTEXITCODE -ne 0)
{
    exit $LASTEXITCODE
}

# Make sure that Cake has been installed.
if (!(Test-Path $CAKE_EXE)) {
    Throw "Could not find Cake.exe"
}

# Start Cake
Invoke-Expression "$CAKE_EXE `"$Script`" -target=`"$Target`" -configuration=`"$Configuration`" -verbosity=`"$Verbosity`""
exit $LASTEXITCODE

@patriksvensson Your script seems to work, but I can't tell why mine is not.
Shall I upload my folders and scripts somewhere, so you can easily test my case?

Yes, that would be good. There must be a rational explanation for this :)

I hope you can work with a onedrive file :smiley:.
http://1drv.ms/1Ax3uNX

Perfect. The problem seem to have something to do how Powershell handles working directories when launching a process like that. Maybe @devlead know something about this?
Anyway, you can get your script working correctly by running it like this:
.\..\tools\cake\Cake.exe build.cake -verbosity=diagnostic

This is just so strange, because I can get one folder upwards or downwards of the actual folder I want to get to.
Anyways, that seems to do the trick.
Thank you very much!

Will investigate this further to make sure that this is not a problem with Cake.
Anyways, glad that you got it running!


[HUDI-7934] Fix RocksDBDAO prefixDelete to delete last entry properly

Change Logs
Done this https://github.com/apache/hudi/issues/11075
+
Fix UT:
Accordinly to commented code, all items must be deleted:
// Delete the last entry
getRocksDB().delete(getUTF8Bytes(lastEntry));

I fixed deletion of last entry and fix assertion in UT.
Impact
RocksDBDAO prefixDelete deletes all items
Risk level (write none, low medium or high below)
none
Documentation Update
none

The config description must be updated if new configs are added or the default value of the configs are changed
Any new feature or user-facing change requires updating the Hudi website. Please create a Jira ticket, attach the
ticket number here and follow the instruction to make
changes to the website.

Contributor's checklist

[ ] Read through contributor's guide
[ ] Change Logs and Impact were stated clearly
[ ] Adequate tests were added if applicable
[ ] CI passed

Somebody, please, merge it or close it.


Do not hardcode noLib=true.

Currently typescript option noLib=true is hard-coded, which is unfortunate because in typescript 2.0 there is new lib option which gives the ability to specify set of libs to use:
            "lib": {
              "description": "Specify library file to be included in the compilation. Requires TypeScript version 2.0 or later.",
              "type": "array",
              "items": {
                "type": "string",
                "enum": [ "es5", "es6", "es2015", "es7", "es2016", "es2017", "dom", "webworker", "scripthost", "es2015.core", "es2015.collection", "es2015.generator", "es2015.iterable",
                        "es2015.promise", "es2015.proxy", "es2015.reflect", "es2015.symbol", "es2015.symbol.wellknown", "es2016.array.include", "es2017.object", "es2017.sharedmemory" ]
              }
            },

But it is not possible to use lib with noLib=true. Would be great to have this option supported by the plugin.

Just ran into this as well. It is definitely desirable to be able to use the "lib" option with "jspm bundle" commands, in particular - otherwise we get compiler errors when using ES6 that is well-supported in the browser, such as Promise!


geomorphic unit board restriction?

Can you explain why the hex grain direction must have an odd number of hexes?  I don't see an obvious problem with using a 4 x 4 unit board.

Hi,
The geomorphic board feature is patterned after maps that Avalon Hill created. If the hex grain direction was even the edges wouldn't line up when the boards are laid side-by-side:
https://boardgamegeek.com/image/20100/panzerblitz
https://en.wikipedia.org/wiki/Geomorphic_mapboard
Advanced Squad Leader used them as did a few more AH titles.
-Dale

Hi,
The geomorphic board feature is patterned after maps that Avalon Hill created. If the hex grain direction was even the edges wouldn't line up when the boards are laid side-by-side:
https://boardgamegeek.com/image/20100/panzerblitz https://en.wikipedia.org/wiki/Geomorphic_mapboard
Advanced Squad Leader used them as did a few more AH titles.
-Dale

I'm looking at the BGG image, and it looks to me like it has a width of 10 hexes, which is even.  Do you get a different count?

I'm looking at the BGG image, and it looks to me like it has a width of 10 hexes, which is even. Do you get a different count?

Actually...after looking more closely it seems that it doesn't matter what the width is. They should always join. I can't remember why I said and had code enforce it.
I'll note that after all these years you're the first person to notice this. My guess is very few people must have used this feature.
This is a bug.
-Dale


Energy compensation BSDFs refactor

Introduced base classes for 2D and 3D albedo tables.
Fixed issues with glossy and metal EC tables.
Tables are not computed at startup anymore. They can be re-generated as part of unit tests.
Fixed rare invalid samples when using the Beckmann NDF.
Improved OSL glossy closure sampling weights using the albedo tables.
Started Glass EC (work in progress).

Addressed review comments and rebased

Thanks!