Remove clipped texts throughout the app when device font size is increased

Details

This PR gives you the ability to increase or decrease the device font size without seeing clipped texts throughout the app.
the App behavior will be :

when the device font size is decreased the App font size will decrease.
when the device font size is increased the App font size will increase.
when the device font size is increased and exceeded a certain larger level PixelRatio.getFontScale() * default value > max value ? max value : default value * PixelRatio.getFontScale() the App font size will not increase because any increasing above this level will show clipped texts throughout the app.
if the device font size is changed while the App is in the background, this change will not affect the App until close and reopen the App again.
this is similar to what YouTube does to handle the device font size change.

Fixed Issues

https://github.com/Expensify/App/issues/7541
Tests

Increase the device font size.
Open the App.
Verify there is no Text clipping throughout the app.

[X] Verify that no errors appear in the JS console

PR Review Checklist

Contributor (PR Author) Checklist

[X] I linked the correct issue in the ### Fixed Issues section above
[X] I wrote clear testing steps that cover the changes made in this PR

[X] I added steps for local testing in the Tests section
[X] I added steps for Staging and/or Production testing in the QA steps section
[X] I added steps to cover failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[X] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)

[X] I included screenshots or videos for tests on all platforms
[X] I ran the tests on all platforms & verified they passed on:

[X] iOS / native
[x] Android / native
[x] iOS / Safari
[ ] Android / Chrome
[x] MacOS / Chrome
[x] MacOS / Desktop

[X] I verified there are no console errors (if there’s a console error not related to the PR, report it or open an issue for it to be fixed)
[X] I followed proper code patterns (see Reviewing the code)

[X] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick)
[X] I verified that comments were added to code that is not self explanatory
[X] I verified that any new or modified comments were clear, correct English, and explained “why” the code was doing something instead of only explaining “what” the code was doing.
[X] I verified any copy / text shown in the product was added in all src/languages/* files
[X] I verified any copy / text that was added to the app is correct English and approved by marketing by tagging the marketing team on the original GH to get the correct copy.
[X] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named “index.js”. All platform-specific files are named for the platform the code supports as outlined in the README.
[X] I verified the JSDocs style guidelines (in STYLE.md) were followed

[X] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[X] I followed the guidelines as stated in the Review Guidelines
[X] I tested other components that can be impacted by my changes (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar are working as expected)
[X] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[X] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[X] If a new component is created I verified that:

[X] A similar component doesn't exist in the codebase
[X] All props are defined accurately and each prop has a /** comment above it */
[X] Any functional components have the displayName property
[X] The file is named correctly
[X] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[X] The only data being stored in the state is data necessary for rendering and nothing else
[X] For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
[X] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
[X] All JSX used for rendering exists in the render method
[X] The component has the minimum amount of code necessary for its purpose and it is

[X] If a new CSS style is added I verified that:

[X] A similar style doesn’t already exist
[X] The style can’t be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG)

[X] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[X] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.

PR Reviewer Checklist

[ ] I verified the correct issue is linked in the ### Fixed Issues section above
[ ] I verified testing steps are clear and they cover the changes made in this PR

[ ] I verified the steps for local testing are in the Tests section
[ ] I verified the steps for Staging and/or Production testing are in the QA steps section
[ ] I verified the steps cover any possible failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[ ] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)

[ ] I checked that screenshots or videos are included for tests on all platforms
[ ] I verified tests pass on all platforms & I tested again on:

[ ] iOS / native
[ ] Android / native
[ ] iOS / Safari
[ ] Android / Chrome
[ ] MacOS / Chrome
[ ] MacOS / Desktop

[ ] I verified there are no console errors (if there’s a console error not related to the PR, report it or open an issue for it to be fixed)
[ ] I verified proper code patterns were followed (see Reviewing the code)

[ ] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick).
[ ] I verified that comments were added to code that is not self explanatory
[ ] I verified that any new or modified comments were clear, correct English, and explained “why” the code was doing something instead of only explaining “what” the code was doing.
[ ] I verified any copy / text shown in the product was added in all src/languages/* files
[ ] I verified any copy / text that was added to the app is correct English and approved by marketing by tagging the marketing team on the original GH to get the correct copy.
[ ] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named “index.js”. All platform-specific files are named for the platform the code supports as outlined in the README.
[ ] I verified the JSDocs style guidelines (in STYLE.md) were followed

[ ] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[ ] I verified that this PR follows the guidelines as stated in the Review Guidelines
[ ] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[ ] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[ ] If a new component is created I verified that:

[ ] A similar component doesn't exist in the codebase
[ ] All props are defined accurately and each prop has a /** comment above it */
[ ] Any functional components have the displayName property
[ ] The file is named correctly
[ ] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[ ] The only data being stored in the state is data necessary for rendering and nothing else
[ ] For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
[ ] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
[ ] All JSX used for rendering exists in the render method
[ ] The component has the minimum amount of code necessary for its purpose and it is broken down into smaller components in order to separate concerns and functions

[ ] If a new CSS style is added I verified that:

[ ] A similar style doesn’t already exist
[ ] The style can’t be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG)

[ ] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[ ] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.

QA Steps

Increase the device font size.
Open the App.
Verify there is no Text clipping throughout the app.

[X] Verify that no errors appear in the JS console

Screenshots

Web

https://user-images.githubusercontent.com/51829206/169549645-50528334-7ffb-444b-ab35-bb8106de083c.mov
Mobile Web

https://user-images.githubusercontent.com/51829206/169549940-31794bff-fe6a-480c-9638-df14c2295561.mov
Desktop
https://user-images.githubusercontent.com/51829206/169550080-0d492ea2-9ef0-460b-ae44-0b752a6b607f.mov

iOS

https://user-images.githubusercontent.com/51829206/169550297-3ae8b630-db4f-4a2a-a436-bb488e9eec13.mov
Android

https://user-images.githubusercontent.com/51829206/169550493-72137556-94f3-4f6b-be31-a28de829a5a3.mov

PR Reviewer Checklist

[x] I verified the correct issue is linked in the ### Fixed Issues section above
[x] I verified testing steps are clear and they cover the changes made in this PR

[x] I verified the steps for local testing are in the Tests section
[x] I verified the steps for Staging and/or Production testing are in the QA steps section
[x] I verified the steps cover any possible failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)

[x] I checked that screenshots or videos are included for tests on all platforms
[ ] I verified tests pass on all platforms & I tested again on:

[ ] iOS / native
[ ] Android / native
[ ] iOS / Safari
[ ] Android / Chrome
[ ] MacOS / Chrome
[ ] MacOS / Desktop

[ ] I verified there are no console errors (if there’s a console error not related to the PR, report it or open an issue for it to be fixed)
[x] I verified proper code patterns were followed (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick).
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained “why” the code was doing something instead of only explaining “what” the code was doing.
[x] I verified any copy / text shown in the product was added in all src/languages/* files
[x] I verified any copy / text that was added to the app is correct English and approved by marketing by tagging the marketing team on the original GH to get the correct copy.
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named “index.js”. All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I verified that this PR follows the guidelines as stated in the Review Guidelines
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] If a new component is created I verified that:

[x] A similar component doesn't exist in the codebase
[x] All props are defined accurately and each prop has a /** comment above it */
[x] Any functional components have the displayName property
[x] The file is named correctly
[x] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[x] The only data being stored in the state is data necessary for rendering and nothing else
[x] For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
[x] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
[x] All JSX used for rendering exists in the render method
[x] The component has the minimum amount of code necessary for its purpose and it is broken down into smaller components in order to separate concerns and functions

[x] If a new CSS style is added I verified that:

[x] A similar style doesn’t already exist
[x] The style can’t be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG)

[ ] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[ ] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.

Issue:
Still the highlighted text is clipped out

Labels are not center-aligned properly

Button some text is clipped & text is not aligned in the center properly,

cc: @osama256 @pecanoro

@Santhosh-Sellavel  I can't produce the first issue on iPhone 13 simulator or Android Pixel 2 emulator.

2nd issue is solved.

3rd issue is solved.

@Santhosh-Sellavel I can't produce the first issue on iPhone 13 simulator or Android Pixel 2 emulator.

Try in android device not in simulator

@osama256 I see in all your PRs work has been done on the main branch of your fork.  The recommended way is always to create a new branch on the fork and work on it.

There are so many unnecessary commit.

@Santhosh-Sellavel 1st issue solved.
here how it looks like on Android Pixel 5
before :

after :

I think this branch is outdated compared to Expensify:main and hence all the weird commits that are showing up. @Santhosh-Sellavel Ready for you once the branch is fixed to show the right changes.

@osama256  Can you check merge changes properly?

Updated

@osama256
I see conflicts now.
But I still see unnecessary commits and changes on this PR.
I request to close this PR and create a new PR.
It would be better if you follow these steps

Create a new fork from Expensify App.
Create a new branch from main on your fork
Please make the changes on the that new branch
Ensure commits are signed
Create PR from the new branch.

It's recommended to leave your fork's main branch untouched and use it only to pull or sync changes from the upstream repository.
cc: @pecanoro


Autofill doesn't work with Java

When using TAB for auto fill the terminal is getting stuck with that command. Precisely problem occurs when pressing a TAB on java  command

Are you just doing java  and then hitting tab? Or do you have some other options on the java command line? What happens if you try to complete an option, like doing java -<TAB>? The non-option argument to java is a class name (with a main definition), so if you don't have anything on your classpath, there may not be a valid completion.

Yes, the problem I am facing is on auto completion of class name. If
didn't worked it's okay to type the class name, but the real problem is Oh
my zsh freezes when I look for auto completion and I have to restart
terminal. I haven't tried with other option, I was simple running
java classname
where I tried to autocomplete the class name, it didn't worked and Oh my
zsh crashed.
On Mon, Aug 22, 2016 at 5:33 AM, Andrew Janke<EMAIL_ADDRESS>wrote:

Are you just doing java and then hitting tab? Or do you have some other
options on the java command line? What happens if you try to complete an
option, like doing java -? The non-option argument to java is a
class name (with a main definition), so if you don't have anything on
your classpath, there may not be a valid completion.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/robbyrussell/oh-my-zsh/issues/5303#issuecomment-241290768,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ADi3Wlccz-w1nsiokxZ3z6FLBhCGPOXQks5qiOdDgaJpZM4Jj7Xp
.

--
Regards,
BHARADHWAJ.C.N
+91-8891184835
https://www.linkedin.com/in/bharadhwajcn

This is a known issue with zsh's Java completion: https://github.com/robbyrussell/oh-my-zsh/issues/2437#issuecomment-32577842. Look there for a workaround.


Middleman? I don't understand it

i was clone in github, but i can't understand next step are "Bundle install" and "Middleman" to get css and html code.

Hey there,
i cant run middleman on windows. Istnt there any possibility to get the html and css files or can someone build it for me please?

please!

Hi @Nico2705 This is only html https://github.com/lab2023/hierapolis/tree/gh-pages

Thank you @muhammetdilek (+1) What we want. Now "hierapolis" more useful

@tayfunoziserikan I've run the command "middleman build" but there are error :

can you help me to solve this problem?

@azzynugraha use bundle exec middleman build

@muhammetdilek i've run the command and still get error :
C:\Users\bintang\Documents\GitHub\hierapolis-develop>bundle exec middleman build

DL is deprecated, please use Fiddle
DL is deprecated, please use Fiddle
C:/Ruby21/lib/ruby/2.1.0/uri/common.rb:176:in `split': bad URI(is not URI?): ass
ets%5Cimages%5CC:%5CUsers%5Cbintang%5CDocuments%5CGitHub%5Chierapolis-develop%5C
source%5Cassets%5Cimages%5Capple-touch-icon-114x114-precomposed.png (URI::Invali
dURIError)
        from C:/Ruby21/lib/ruby/2.1.0/uri/common.rb:211:in `parse'
        from C:/Ruby21/lib/ruby/2.1.0/uri/common.rb:747:in `parse'
        from C:/Ruby21/lib/ruby/gems/2.1.0/gems/rack-test-0.6.3/lib/rack/test.rb
:193:in `env_for'
        from C:/Ruby21/lib/ruby/gems/2.1.0/gems/rack-test-0.6.3/lib/rack/test.rb
:57:in `get'
        from C:/Ruby21/lib/ruby/gems/2.1.0/gems/middleman-core-3.3.5/lib/middlem
an-more/extensions/asset_hash.rb:47:in `manipulate_single_resource'
        from C:/Ruby21/lib/ruby/gems/2.1.0/gems/middleman-core-3.3.5/lib/middlem
an-more/extensions/asset_hash.rb:38:in `each'
        from C:/Ruby21/lib/ruby/gems/2.1.0/gems/middleman-core-3.3.5/lib/middlem
an-more/extensions/asset_hash.rb:38:in `manipulate_resource_list'
        from C:/Ruby21/lib/ruby/gems/2.1.0/gems/middleman-core-3.3.5/lib/middlem
an-core/sitemap/store.rb:215:in `block (2 levels) in ensure_resource_list_update
d!'
        from C:/Ruby21/lib/ruby/gems/2.1.0/gems/middleman-core-3.3.5/lib/middlem
an-core/sitemap/store.rb:214:in `each'
        from C:/Ruby21/lib/ruby/gems/2.1.0/gems/middleman-core-3.3.5/lib/middlem
an-core/sitemap/store.rb:214:in `reduce'
        from C:/Ruby21/lib/ruby/gems/2.1.0/gems/middleman-core-3.3.5/lib/middlem
an-core/sitemap/store.rb:214:in `block in ensure_resource_list_updated!'
        from C:/Ruby21/lib/ruby/2.1.0/monitor.rb:211:in `mon_synchronize'
        from C:/Ruby21/lib/ruby/gems/2.1.0/gems/middleman-core-3.3.5/lib/middlem
an-core/sitemap/store.rb:208:in `ensure_resource_list_updated!'
        from C:/Ruby21/lib/ruby/gems/2.1.0/gems/middleman-core-3.3.5/lib/middlem
an-core/sitemap/extensions/on_disk.rb:31:in `block in initialize'
        from C:/Ruby21/lib/ruby/gems/2.1.0/gems/uber-0.0.13/lib/uber/options.rb:
80:in `instance_exec'
        from C:/Ruby21/lib/ruby/gems/2.1.0/gems/uber-0.0.13/lib/uber/options.rb:
80:in `proc!'
        from C:/Ruby21/lib/ruby/gems/2.1.0/gems/uber-0.0.13/lib/uber/options.rb:
69:in `evaluate_for'
        from C:/Ruby21/lib/ruby/gems/2.1.0/gems/uber-0.0.13/lib/uber/options.rb:
60:in `evaluate'
        from C:/Ruby21/lib/ruby/gems/2.1.0/gems/hooks-0.4.0/lib/hooks/hook.rb:53
:in `execute_callback'
        from C:/Ruby21/lib/ruby/gems/2.1.0/gems/hooks-0.4.0/lib/hooks/hook.rb:40
:in `block in run'
        from C:/Ruby21/lib/ruby/gems/2.1.0/gems/hooks-0.4.0/lib/hooks/hook.rb:39
:in `each'
        from C:/Ruby21/lib/ruby/gems/2.1.0/gems/hooks-0.4.0/lib/hooks/hook.rb:39
:in `inject'
        from C:/Ruby21/lib/ruby/gems/2.1.0/gems/hooks-0.4.0/lib/hooks/hook.rb:39
:in `run'
        from C:/Ruby21/lib/ruby/gems/2.1.0/gems/hooks-0.4.0/lib/hooks.rb:55:in `
run_hook_for'
        from C:/Ruby21/lib/ruby/gems/2.1.0/gems/hooks-0.4.0/lib/hooks/instance_h
ooks.rb:6:in `run_hook'
        from C:/Ruby21/lib/ruby/gems/2.1.0/gems/middleman-core-3.3.5/lib/middlem
an-core/core_extensions/request.rb:50:in `inst'
        from C:/Ruby21/lib/ruby/gems/2.1.0/gems/middleman-core-3.3.5/lib/middlem
an-core/cli/build.rb:95:in `shared_instance'
        from C:/Ruby21/lib/ruby/gems/2.1.0/gems/middleman-core-3.3.5/lib/middlem
an-core/cli/build.rb:62:in `build'
        from C:/Ruby21/lib/ruby/gems/2.1.0/gems/thor-0.19.1/lib/thor/command.rb:
27:in `run'
        from C:/Ruby21/lib/ruby/gems/2.1.0/gems/thor-0.19.1/lib/thor/invocation.
rb:126:in `invoke_command'
        from C:/Ruby21/lib/ruby/gems/2.1.0/gems/thor-0.19.1/lib/thor.rb:359:in `
dispatch'
        from C:/Ruby21/lib/ruby/gems/2.1.0/gems/thor-0.19.1/lib/thor/base.rb:440
:in `start'
        from C:/Ruby21/lib/ruby/gems/2.1.0/gems/middleman-core-3.3.5/lib/middlem
an-core/cli.rb:72:in `method_missing'
        from C:/Ruby21/lib/ruby/gems/2.1.0/gems/thor-0.19.1/lib/thor/command.rb:
29:in `run'
        from C:/Ruby21/lib/ruby/gems/2.1.0/gems/thor-0.19.1/lib/thor/command.rb:
126:in `run'
        from C:/Ruby21/lib/ruby/gems/2.1.0/gems/thor-0.19.1/lib/thor/invocation.
rb:126:in `invoke_command'
        from C:/Ruby21/lib/ruby/gems/2.1.0/gems/thor-0.19.1/lib/thor.rb:359:in `
dispatch'
        from C:/Ruby21/lib/ruby/gems/2.1.0/gems/thor-0.19.1/lib/thor/base.rb:440
:in `start'
        from C:/Ruby21/lib/ruby/gems/2.1.0/gems/middleman-core-3.3.5/lib/middlem
an-core/cli.rb:20:in `start'
        from C:/Ruby21/lib/ruby/gems/2.1.0/gems/middleman-core-3.3.5/bin/middlem
an:18:in `<top (required)>'
        from C:/Ruby21/bin/middleman:23:in `load'
        from C:/Ruby21/bin/middleman:23:in `<main>'

Thank you @muhammetdilek (+1) What we want.

Thanks @muhammet (+1) https://github.com/lab2023/hierapolis/tree/gh-pages


https://nvd.nist.gov/feeds/json/cve/1.0/nvdcve-1.0-modified.meta 403 Connection Refused

Describe the bug
[ERROR] Failed to execute goal org.owasp:dependency-check-maven:5.2.2:check (default) on project httpclient: Fatal exception(s) analyzing ecm4u HTTP Client: One or more exceptions occurred during analysis:
[ERROR]         Unable to download meta file: https://nvd.nist.gov/feeds/json/cve/1.0/nvdcve-1.0-modified.meta
[ERROR]         No documents exist

** Version of dependency-check used **
org.owasp:dependency-check-maven:5.2.2
** Log file **
see above
To Reproduce
$ mvn verify

Expected behavior
Maven finished.

duplicate of #2039 2039


Fixed AdapterDescription.Description text with fixing PtrToStringAnsi and PtrToStringUni methods

This is a fix for issues https://github.com/sharpdx/SharpDX/issues/828 and https://github.com/sharpdx/SharpDX/issues/806
The existing code used Marshal.PtrToStringUni(pointer, maxLength) method that did not terminate the string at first null char - see MSDN: https://msdn.microsoft.com/en-us/library/k4x4bfws(v=vs.110).aspx
This resulted in having Adapter description always 128 chars long.
The proposed fix uses Marshal.PtrToStringUni(pointer) method (without maxLength parameter) that correctly terminates the string - see MSDN: https://msdn.microsoft.com/en-us/library/dyf0tzy4(v=vs.110).aspx
The fixed code also truncates the string if it is larger than the specified maxLength.

Thanks, that's a nice workaround!


workspace/symbol only does prefix search for macros

Consider this piece of code:
#define SOMEFOO
#define FOOSOME
#define SOMEFOOOTHER

void func();
void otherFunc();

Doing workspace/symbol for FOO returns only one item, "FOOSOME".
But searching for "func" returns both "func" and "otherFunc". It's unexpected that macros are treated differently with regards to matching.
Output of clangd --version:
clangd version 14.0.0 (https://github.com/llvm/llvm-project.git e2b7aabb57d50a9b16fe71c1f80b983dd61d3fbd)
Features: linux+debug
Platform: x86_64-unknown-linux-gnu

I now see in the code that this is on purpose:
// Macros can be very spammy, so we only support prefix completion.
However, couldn't it be more pragmatic, e.g. by taking the length of the query into account?

cc @sam-mccall
The patch which introduced this is https://reviews.llvm.org/D47936, but I don't see any context (like a bug report) motivating the change other than "macros are terribly spammy at the moment".

Yes, this was probably just an offline discussion (I don't think we had a functioning bug tracker at that time!)
It was around code completion experience though FWIW the same ideas seem to apply to workspace-symbol.

Doing workspace/symbol for FOO returns only one item, "FOOSOME".
But searching for "func" returns both "func" and "otherFunc".

For a fair comparison you should name your macros SOME_FOO etc: clangd does care about word boundaries. func wouldn't match otherfunc either...

It's unexpected that macros are treated differently with regards to matching.

... but it still won't work, because macros are treated differently.

Macros were showing up in completion a lot in irrelevant contexts.

macros are heavily used in the standard library/builtins, so lots are always in scope
lack of namespaces meant we got them all for every query
the majority were implementation details (again because of lack of namespacing)
they tended to have very long multiword names, which caused them to fuzzymatch many short queries

It was very common that a query string that was specific enough to match only one "real" symbol would match several macros as well. Even when we got the ranking right, this was distracting. And ranking was hard: macros are unstructured and lack signals. We couldn't just downrank all macros, because occasionally you really did want one.
Eventually we thought it felt buggy if macros weren't in the list if you specifically looked for them, but we could live without them being suggested. Prefix match felt like a satisfying definition of "looking for them" that was compatible with client-side filtering.

However, couldn't it be more pragmatic, e.g. by taking the length of the query into account?

LSP has this annoying client-side filtering concept: as the user keeps typing an identifier, the editor is allowed to filter down the set of results locally instead of retrieving a new set from the server. Effectively this means that the results for "wxyz" need to be a subset of the results for "wx". Otherwise results end up mysteriously and inconsistently missing in some editors, some of the time.
This means that if we want to return "SOMEFOOOTHER" for a query of "fooother", we also should return it for a query of "f", which is hard to do without attracting spam.

For a fair comparison you should name your macros SOME_FOO etc: clangd does care about word boundaries. func wouldn't match otherfunc either...

Indeed. I did not know that; my assumption was that a generic substring search would be done. I'll close this one then.


OSS Support Grant: Milestone 2 - Add methods to inspect account storage

Work in progress for #205
Description
This PR adds multiple new methods to query storage:

getPaths - returning an object containing paths for public, private and storage domains
getPathsWithType - same as above, but with more detailed info about Capabilities
getStorageValue - returning value at specified storage path
getStorageStats - used and storage capacity info

Jest helpers added:

shallHavePath - checks that account have path on specified domain
shallHaveStorageValue - checks that account have specific value stored

Documentation
Updated documentation:

API reference for newly added functions
Jest Asserts documentation

Tests
All new methods are covered with tests.
Changeset:
Changeset for new minor version is included
For contributor use:

[x] Targeted PR against master branch
[x] Linked to Github issue with discussion and accepted design OR link to spec that describes this work
[x] Code follows the standards mentioned here
[x] Updated relevant documentation
[x] Re-reviewed Files changed in the Github PR explorer
[x] Added appropriate labels

@MaxStalker I'm running the tests locally (with emulator running and npm run test) and some are failing for me. Is there a step I'm missing? If so, can we add it to the readme? And can we hook it up to the CI?

@chasefleming you don't need to run emulator manually - running tests with npm run test is enough as frameworks handles emulator process internally.
And we have GitHub actions setup, which will run tests and report back on a PR - you can see comments from it slightly above.
The error is probably related to new version of Flow CLI, similar to what was reported here:
https://github.com/onflow/flow-js-testing/issues/216
I will investigate what is happening 👀

@chasefleming I've added small change so it would properly catch logs on latest Flow CLI.
Can you take another look? :)


helm: allow annotations to be set for preflight resources

Currently preflight resources, except the serviceaccount, do not allow annotations to be configured at the top level of the resources. This patch adds support for adding annotations.
Adding annotations at the top level of resources (not just in pod templates) will allow for use cases like ArgoCD and helm hooks.
Please ensure your pull request adheres to the following guidelines:

[x] For first time contributors, read Submitting a pull request
[x] All code is covered by unit and/or runtime tests where feasible.
[x] All commits contain a well written commit description including a title,
description and a Fixes: #XXX line if the commit addresses a particular
GitHub issue.
[ ] If your commit description contains a Fixes: <commit-id> tag, then
please add the commit author[s] as reviewer[s] to this issue.
[x] All commits are signed off. See the section Developer’s Certificate of Origin
[x] Provide a title or release-note blurb suitable for the release notes.
[x] Are you a user of Cilium? Please add yourself to the Users doc
[ ] Thanks for contributing!

helm: allow annotations to be set for preflight resources

Thanks for the PR! Travis is failing because some files have not been regenerated:
HINT: to fix this, run 'make -C Documentation update-helm-values'

Thanks, @gandro! I've been focused on getting the diff command to work in the Preflight Clusterrole Check that I missed that. It occurred to me that maybe a better approach for this PR is to include the annotations at the top levels of all resources. It does make the diff easier and I feel like a more consistent experience. Any reason not to just add annotations to everything?

It occurred to me that maybe a better approach for this PR is to include the annotations at the top levels of all resources. It does make the diff easier and I feel like a more consistent experience. Any reason not to just add annotations to everything?

I'm not sure I entirely understand your proposal. Would the idea be to have global annotations value that applies to all resources (preflight and regular deployments?).
I think that's also a fine approach, though there is always a danger that contributors who add new resources might miss that they need to make the annotations customizable. Maybe we should have a CI or lint check for that if we decide to annotate all resources.

So this is part of the diff of what I'm currently working on. I've created an annotations parameter for all of the various templates, if that makes sense.

Ah, thanks for the details! Yeah I think that does make sense too

Apologies for the delay. I've pushed what I came up with. While doing this, I had a couple of notes and questions I wanted to bring up. I can make any changes as needed based on feedback.

tls-cronjob/job.yaml files already had annotations you can control. My thinking is that auto tls should have some sort of annotations across all the resources, so I’m curious to get feedback on how I handled those. For tls-provided resources, I just use the appropriate top-level annotations since you wouldn’t need them to be regenerated in the same way as helm or cert-manager might.
There were a few files that I wasn’t sure the best approach for. Pretty much every file not under template/ folder, I left alone. In my mind, they could either be annotated with the same annotations as the cilium-agent, or they could have unique annotation values. I was initially thinking the first option, but again was curious to get thoughts on that.
In some places where it would have rendered and empty annotations before, I made conditionally generate that field. I can undo this if needed.
Do you want it to be consistent wether labels or annotations are first?

This is excellent work! I'll leave a few minor nits in inline comments.

* `tls-cronjob/job.yaml` files already had annotations you can control. My thinking is that auto tls should have some sort of annotations across all the resources, so I’m curious to get feedback on how I handled those. For `tls-provided` resources, I just use the appropriate top-level annotations since you wouldn’t need them to be regenerated in the same way as helm or cert-manager might.

The current solution looks good to me, though I think it might be simpler to use the top-level annotations for all TLS resources, regardless if provided or not.

* There were a few files that I wasn’t sure the best approach for. Pretty much every file not under `template/` folder, I left alone. In my mind, they could either be annotated with the same annotations as the cilium-agent, or they could have unique annotation values. I was initially thinking the first option, but again was curious to get thoughts on that.

Yeah, I think we can always add more annotations if needed. From what I can tell, your current choice looks good to me.

* In some places where it would have rendered and empty `annotations` before, I made conditionally generate that field. I can undo this if needed.

Yeah, the if guards look good to me overall. I think that's a good solution.

* Do you want it to be consistent wether labels or annotations are first?

The PR is already pretty large. I think that is better done in a follow-up PR, but I don't think it's a must-have.

Thank you for all the feedback! I'm just getting back from being out a few and will work on address this tomorrow.

@bradwhitfield Feel free to move it out of draft once you've addressed all the review comments, and it's ready for review.

It's basically ready. I just need to rebase and clean up the git history but wanted to make sure I understood what it should  ideally look like based on this comment.

I think this is ready. I see that the check failed, but I did amend the commit to fix that. It doesn't appear to have retriggered the build if I'm parsing things correctly. Is there a way I can trigger that?

Review was requested from sig-servicemesh, but no one was specifically assigned for reviews. /cc @cilium/sig-servicemesh
I've marked the PR as ready for merge, but if you have any comments, feel free to post them on the PR.

Let's run CI as well, before we merge

/test

All required tests have passed. The failing tests are not blockers:

checkpatch is complaining about an overly long git commit subject, but that's not a hard requirement
ci-aks timed out https://github.com/cilium/cilium/actions/runs/6323246632/job/17170451500
ci-ipsec-uprade https://github.com/cilium/cilium/actions/runs/6323247394/job/17170446827 hit https://github.com/cilium/cilium/issues/27827

Marking again as ready to merge. There is an outstanding request from sig-servicemesh, but Nick (who is part of that team) has already reviewed.

sig-servicemesh hasn't approved yet?


Integrate open-source embedding models

After I integrated open-source LLMs it would be great to completly be independent of OpenAI.
So implementing embeding models which are open-source would be the next step.
Have a look at huggingface. Keep in mind that the user can't use two different embedding models. So we'd have to also reference the embedding model to the file. If the model x is configured, the user shouldn't be able to user files which are indexed with the y model.
Good reads and references:
https://huggingface.co/blog/mteb
https://huggingface.co/blog/getting-started-with-embeddings
If you have questions, let me know. I am happy to support here or in our discord.

done in #94


is there a way to make this work with custom apps?

just wondering?

The OpenGL fix should work with any existing program or self compiled code as long as its OpenGL requirements don't exceed Intel driver's on Windows versions it supports.
If you want / need to go beyond Intel driver's OpenGL limits at all performance cost, then use Mesa3D llvmpipe driver instead.


Various fixes and improvements

Fixes:

Improved formatting on various data summaries
Presentations are now auto loaded on entering verification section
Added status icons to credentials and presentations

Enabled removal of listings that were grouped by status. Now, each item is all in one list but status is indicated. This significantly simplified code in a few places.

Make sure select inputs have English "no data" warnings instead of Chinese
Add context menus (enables copy/paste through right clicks)
Disable presentation proposal (which is not currently functional)
Visual improvements for Agent List window
Use enter key for triggering form actions where it makes sense

@PeterStrob Your review would be appreciated here (couldn't explicitly request due to github access issues)

Small issues with the display bugging out, though otherwise the changes look good!


Cursor.fast_executemany with SQL Server temporary table mis-handles Unicode under Python3

The Cursor.fast_executemany feature introduced in 4.0.18/19 does not seem to handle Unicode characters correctly under Python3 when working with a SQL Server temporary table. The test code
import pyodbc
import sys
print('Python version ' + sys.version)
print('pyodbc version ' + pyodbc.version)

conn_str = (
    r'DRIVER=ODBC Driver 11 for SQL Server;'
    r'SERVER=(local)\SQLEXPRESS;'
    r'DATABASE=myDb;'
    r'Trusted_Connection=yes;'
)
cnxn = pyodbc.connect(conn_str, autocommit=True)
crsr = cnxn.cursor()
crsr.fast_executemany = False

crsr.execute("CREATE TABLE #tmp (id INT IDENTITY PRIMARY KEY, txt NVARCHAR(1))")

params = [('Ώ',), ('π',), ('α',)]
crsr.executemany("INSERT INTO #tmp (txt) VALUES (?)", params)

print(crsr.execute("SELECT txt FROM #tmp ORDER BY id").fetchall())

works as expected, producing
C:\Users\gord\PycharmVirtualenvs\py3pyodbc\Scripts\python.exe C:/Users/gord/PycharmProjects/py3pyodbc_test/main.py
Python version 3.6.2 (v3.6.2:5fd33b5, Jul  8 2017, 04:14:34) [MSC v.1900 32 bit (Intel)]
pyodbc version 4.0.19
[('Ώ', ), ('π', ), ('α', )]

Process finished with exit code 0

but when I enable the new feature with crsr.fast_executemany = True I get
C:\Users\gord\PycharmVirtualenvs\py3pyodbc\Scripts\python.exe C:/Users/gord/PycharmProjects/py3pyodbc_test/main.py
Python version 3.6.2 (v3.6.2:5fd33b5, Jul  8 2017, 04:14:34) [MSC v.1900 32 bit (Intel)]
pyodbc version 4.0.19
[('?', ), ('p', ), ('a', )]

Process finished with exit code 0

SQL Profiler shows the following
exec sp_describe_undeclared_parameters N'INSERT INTO #tmp (txt) VALUES (@P1)'
exec sp_prepare @p1 output,N'@P1 varchar(255)',N'INSERT INTO #tmp (txt) VALUES (@P1)',1
exec sp_execute 1,'?'
exec sp_execute 1,'p'
exec sp_execute 1,'a'

Notice that the parameter type is mis-identified as varchar(255) when it really should be nvarchar(1).

Update: The same test with a permanent table does not reproduce the issue. Perhaps this is a limitation of sp_describe_undeclared_parameters when working with temporary tables.

Perhaps this is a limitation of  sp_describe_undeclared_parameters  when working with temporary tables.

Yes, it appears that the SP does not support temporary tables. Running the call manually after creating the temp table results in an "invalid object name" error.
Note that this would succeed if you use an older ODBC driver, like SQL Server (SQLSRV32.DLL), since it does not use that SP to implement SQLDescribeParam --- it uses the deprecated-but-working FMTONLY instead.

Yes, it appears that the [sp_describe_undeclared_parameters] SP does not support temporary tables.

Bummer. It seems to me that a common usage case would be to

create a #temporary table,
upload a big bunch of rows to that table, and then
MERGE those rows into an existing permanent table.

Given that we already know the column types when we create the #temporary table, perhaps we can specify them explicitly using .setinputsizes (instead of implicitly relying on SQLDescribeParam) once #280 gets sorted out ...?

As a workaround, you can use a global (i.e. ## prefix)  instead of local temporary table. sp_describe_undeclared_parameters seems to work in that case, at least for your example.

You may also try the preview of the next msodbcsql driver, and set  ColumnEncryption=Enabled in your connection string or DSN, which should also work around the issue with the SP.

Should we close this?

@v-chojas - I see that #280 has been closed because "the functionality is included in the parameter array refactoring". Will that refactoring offer any benefit for this issue, e.g., using .setinputsizes as suggested in my earlier comment?

@v-chojas

You may also try the preview of the next msodbcsql driver, and set ColumnEncryption=Enabled in your connection string or DSN

Now that "ODBC Driver 17 for SQL Server" has been officially released, I tried your suggestion and it seems to be working fine. I have added a tip to the Wiki.


train error

[10/11/2018 09:42:48] <<< Predicting outputs of val set >>>
Sampling 9829/9829  -  ETA: 0s
Total cost of the translations:<PHONE_NUMBER>00   Average cost of the translations: 79.998528
The sampling took: 2894.420971 secs (Speed: 0.294478 sec/sample)
[10/11/2018 10:31:02] Prediction output 0: target_text (text)
[10/11/2018 10:31:02] Decoding beam search prediction ...
[10/11/2018 10:31:02] Using heuristic 0
[10/11/2018 10:31:03] Evaluating on metric coco
Traceback (most recent call last):
File "main.py", line 50, in
train_model(parameters, args.dataset)
File "/home/yz/others/nmt-keras/nmt_keras/training.py", line 159, in train_model
nmt_model.trainNet(dataset, training_params)
File "/home/yz/others/nmt-keras/src/keras-wrapper/keras_wrapper/cnn_model.py", line 915, in trainNet
self.__train(ds, params)
File "/home/yz/others/nmt-keras/src/keras-wrapper/keras_wrapper/cnn_model.py", line 1140, in __train
initial_epoch=params['epoch_offset'])
File "/home/yz/others/nmt-keras/src/keras/keras/legacy/interfaces.py", line 91, in wrapper
return func(*args, **kwargs)
File "/home/yz/others/nmt-keras/src/keras/keras/engine/training.py", line 1481, in fit_generator
initial_epoch=initial_epoch)
File "/home/yz/others/nmt-keras/src/keras/keras/engine/training_generator.py", line 223, in fit_generator
callbacks.on_batch_end(batch_index, batch_logs)
File "/home/yz/others/nmt-keras/src/keras/keras/callbacks.py", line 114, in on_batch_end
callback.on_batch_end(batch, logs)
File "/home/yz/others/nmt-keras/src/keras-wrapper/keras_wrapper/extra/callbacks.py", line 292, in on_batch_end
self.evaluate(self.cum_update, counter_name='iteration', logs=logs)
File "/home/yz/others/nmt-keras/src/keras-wrapper/keras_wrapper/extra/callbacks.py", line 518, in evaluate
split=s)
File "/home/yz/others/nmt-keras/src/keras-wrapper/keras_wrapper/extra/evaluation.py", line 61, in get_coco_score
score, _ = scorer.compute_score(refs, hypo)
File "/home/yz/others/nmt-keras/src/coco-caption/pycocoevalcap/bleu/bleu.py", line 22, in compute_score
assert (list(gts) == list(res))
AssertionError
Exception ignored in: <bound method Ter.del of <pycocoevalcap.ter.ter.Ter object at 0x7f87f4327f60>>
Traceback (most recent call last):
File "/home/yz/others/nmt-keras/src/coco-caption/pycocoevalcap/ter/ter.py", line 70, in del
self.ter_p.kill()
AttributeError: 'Ter' object has no attribute 'ter_p'
help me to solve this.

i use config_rnn.py.

Hi,
do you have java installed? This is required for evaluating the system.

yes . i have installed java, and i find list(res) length = 0.

and how to train quick with 2 million dataset. how to set EVAL_EPOCH and   SAMPLE_EACH_UPDATES. i set EVAL_EPOCH = 3750 and SAMPLE_EACH_UPDATES = 30000. but i feel train slowly.

What is the average time per step?
Do you have Tensorflow or Theano properly installed and configured?
The use of CuDNN improves the speed with the Tensorflow backend.


ROX-17517: Tolerate PSP messages in "suspicious entries" check

Description
The post-e2e-test check which looks for suspicious entries in pod logs is frequently failing due to deprecation warnings about PodSecurityPolicy objects.
However by design, we keep installing PodSecurityPolicy objects as long as the server supports them.
We detect if they are not supported and in that case do not apply them, so these warnings are not useful at this point.
See also ROX-17796 ROX-17766 ROX-17734 for related work.
The original message is 2595:/tmp/postgres-upgrade-test-logs/04_postgres_postgres_rollback/stackrox/pods/sensor-upgrader-5578dbc74-9wpmk-upgrader.log:W0602 14:41:14.496056       1 warnings.go:70] policy/v1beta1 PodSecurityPolicy is deprecated in v1.21+, unavailable in v1.25+ but the check script uses grep -vP (Perl-compatible REs) so I've used a dot in place of the plus.
Checklist

[ ] Investigated and inspected CI test results
[x] Unit test and regression tests added
[x] ~Evaluated and added CHANGELOG entry if required~
[x] ~Determined and documented upgrade steps~
[x] ~Documented user facing changes (create PR based on openshift/openshift-docs and merge into rhacs-docs)~

Testing Performed
CI is sufficient.

/test help

/test gke-upgrade-tests

@kovayur if this LGTY and gke-upgrade-tests job passes by the time you look at this PR, feel free to merge it.

Looks like the upgrade test failed early due to one of the problems tracked in the issues mentioned in PR description.
Up to you @kovayur if you'd prefer to merge it now or wait for the other fixes to merge first.

😮 I missed turning on the automatic merge, but it shouldn't hurt anyway


Extend feature vintage_and_active_years()

This PR extends the features of the function vintage_and_active_years() based on issue #571
How to review

Read the diff and note that the CI checks all pass.
Build the documentation and look at a description of vintage_and_active_years()
Ensure that changes/additions are self-documenting, i.e. that another
developer (someone like the reviewer) will be able to understand what the code
does in the future.

PR checklist

[x] Continuous integration checks all ✅
[x] Add or expand tests; coverage checks both ✅
[x] Add, expand, or update documentation.
[x] Update release notes.

@khaeru I have revised the function vintage_and_active_years() to meet the requirements of existing and new tests. Note that the existing tests for this function have been (temporarily?) carried over to test_feature_vintage_and_active_years.py. Hence it is not unexpected for the core tests to fail until the revisions are complete. I would wait for your feedback on the function revision itself before finalizing the clean-up of tests and adding the remaining documentation to the the function.

@adrivinca yes, the tests if have this use-case as a test.

Thanks! I cloned the branch and tried it, it seems ok and the tests as well.
is there any particular review process needed? or could you @OFR-IIASA please rebase the branch and see if tests on Github pass?

It seems the tests fail on mac, do you understand why? I don't really

@adrivinca the reason for these test failing was because this was a test carried out in test_core and based on the original function. The tests have been moved, adjusted and are included in a separate file. I have now removed the obsolete tests from test_core.

@adrivinca and @khaeru I have made one last adjustment to the PR and added a test for it. Ideally, this function will replicate the behvior of map_tec_lifetime in that the returned activity years for any given vintage wont exceed the maximum technical_lifetime defined for a technology. The documentation has also been updated as have the release notes.

@adrivinca asked me to take a look at this. I can check more extensively perhaps tomorrow or Friday, but at a skim of the thread I'm concerned about this statement:

the reason for these test failing was because this was a test carried out in test_core and based on the original function. The tests have been moved, adjusted and are included in a separate file. I have now removed the obsolete tests from test_core.

Please read:

pandas' deprecation policy, which we essentially follow.
Item 7 in the semantic versioning spec: “[Minor version Y (x.Y.z)] MUST be incremented if any public API functionality is marked as deprecated.”
…which is linked from our own versioning policy, in which we again restate “A minor version increment may fix bugs or add new features, but does not change existing functionality.”

To expand:

A user with code that calls any message_ix function (e.g. vintage_and_active_years()) must experience no surprises when upgrading from a ‘current’ version (e.g. 3.5.0) to the ‘next’ (e.g. 3.6.0 or 4.0.0). That is, their code must not start to produce different results, without prior warning, simply because of an upgrade.
If we plan that the (default) behaviour of a function will change, then the next version must warn about the upcoming change, but not change the behaviour.

This gives the user a clear signal and time (at least one release cycle) to adjust their code. The release notes must describe what the upcoming change will be, and should give tips on how to handle it.

Then, in a subsequent major version (e.g. 4.0.0), the change can become effective/the default, and the warning is removed. (SemVer spec item 8: “Major version X (X.y.z) MUST be incremented if any backwards incompatible changes are introduced to the public API.”)

See some examples in Pandas: https://pandas.pydata.org/pandas-docs/stable/whatsnew/v1.4.0.html#deprecations
Sometimes it takes a little thinking, but it is always possible to introduce new functionality in a non-breaking way; often with an added optional argument. If existing tests fail, that means we are introducing breaking changes, and we can't respond by simply removing the tests.

@khaeru thanks for the comments. The old tests have been moved from the core to a separate file. If you look at the differences, then the check_dtype=False was added to one check and the tests which looks at "# Exception is raised for incorrect arguments" naturally needs to be changed because the message is changed. All the old tests still exist/pass.

Okay, I've streamlined the tests here; about 2:45 of work. Some points plus comments inline.

When using add_horizon(), it's not necessary to manually set duration_period since #286 (August 2020).
The general principle is “DRY” (don't repeat yourself):
A. Some code differs from one test to the next. This represents crucial differences in the invocation and expected outcomes.
B. A lot of the code does not.
The more (B) there is, the harder it is to see (A). So it really helps to hide all the repeated bits away in one or a few utility functions—this makes the tests more legible to oneself and other developers.
In this case the length of the new file is cut by about half, plus see the comments.

I'll next start to look at the actual implementation and the documentation of the method.

@OFR-IIASA in 292edf4 I add some tests/examples showing how the functionality of the added act_lower and vtg_lower arguments can be handled using pandas built-ins.
Kind of like make_df() in #415 (“helpful messages pointing users to existing Python/pandas functions that perform identical functions”), I think it is better to teach users how to use pandas more fully than to give ourselves the burden of maintaining/supporting new functionality. Another advantage is that the user doesn't need to memorize a new argument name; they can just .query() using the usual column names.
Is this acceptable? If so, I'll remove the added arguments.

@OFR-IIASA aside from the persistent dtype issues on Windows, which I will fix, this is complete per our discussion. Please have a look and comment if you agree.

@khaeru thanks for the formidable rework. Everything is as we agreed.


Set a more sane default retention delay on CloudTrailBucket

The default retention duration set on the centralized AWS S3 Bucket for Cloudtrail-generated logs is currently 60 days. It can be changed as this is a parameterized value, but current experience is showing that it was not on some accounts I oversee at DIGIT D1[1].
I suggest incrementing FilesRetentionInDays from 60 days to at least 180 days, ideally 320 days as I've been told "the corporate logging policy, [...] asked to keep the logs for minimum 6 months but no more than one year".
Maybe the retention value could be made different for the different kinds of buckets.
https://github.com/digitc1/AWSLandingZone/blob/8e288a6676b48c91e40ef08ab7e0443330ec0f62/CFN/EC-lz-s3-buckets.yml#L37
[1] More details on Citnet Jira, ticket DATATEAM-10184

I learnt that the argument for that short time is because logs are shipped to a central solution where they are kept for longer. I would argue that:

Way fewer people have access to that audit system (in my case I wasn't aware it existed, and I'm now waiting to have access, if I can)
The cost of storing these CloudTrail logs in s3 is really cheap, it's basically the price of S3. In the 20 AWS accounts I oversee, this would be < 100$ a year
It's really easy and cost-effective to query logs from S3 with Athena : https://docs.aws.amazon.com/athena/latest/ug/cloudtrail-logs.html


setup: search /usr/lib recursively for libMali

When detecting platform 'mali', the current setup code uses a
predefined path to detect the presence of the userspace mali GLES
library, which works on Debian based distros.
Other distros may install the library in a different location. Arch,
for instance, installs it to /usr/lib/mali-egl/libMali.so.
This patch searches /usr/lib/ recursively for the library.

libmali_path defaults to None, and exists(None) raises an exception, shouldn't it default to '' ?

@tshirtman Thanks for the feedback, you are correct.
Looking at this now, I don't think this is the proper fix for this issue. I originally created this PR because Arch Linux ARM installs libMali.so to a different location than Debian, but a recursive search could cause problems for some users, especially if it's on by default. I could see this search taking a long time on a system with a lot of installed libraries, and a slow disk.
I think a better solution here may be to search the common install locations for libMali, and allow the search path to be overridden with an environment variable.
Thoughts?

I'm closing for now until a proper fix can be implemented. I don't think searching the file system is generally a good idea as that would be quite slow.


4.0 findConfiguration() replacement

What is the replacing workflow of findConfiguration()?
I'm using it to load different config in my test.
https://github.com/unional/tslint-config-unional/blob/master/gulpfile.js#L13
Thanks. 🌷

does tslint.Configuration.findConfiguration() work?

Seems like it is not working correctly somehow.
However I do have my problem solved. It turns out now gulp-tslint support passing in path directly to it:
  let config = 'standard'
  return gulp.src(`spec/${config}/*.pass.ts`)
    .pipe(gulpTslint({
      configuration: `./${config}.js`,
      formatter: 'verbose'
    }))
    .pipe(gulpTslint.report())

When I do this, it does not work:
  let config = 'standard'
  return gulp.src(`spec/${config}/*.pass.ts`)
    .pipe(gulpTslint({
      configuration: tslint.Configuration.findConfiguration(`./${config}.js`),
      formatter: 'verbose'
    }))
    .pipe(gulpTslint.report())

cool, will close the issue then


Update .content.xml

Add wrapper client library definition in comments

Pull Request Test Coverage Report for Build 5150

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 54.861%

Totals

Change from base Build 5148:
0.0%

Covered Lines:
14581

Relevant Lines:
26578

💛  - Coveralls

@YentlFrickx why is this added as a comment in the code instead of on the documentation site: https://adobe-consulting-services.github.io/acs-aem-commons/#features
Unless there's a good reason to do so, I would recommend closing this PR and updating the doc site instead: https://github.com/adobe-Consulting-Services/adobe-consulting-services.github.io

Thanks!


Trying to write Stuff with WriteStuff in example_scenes.py

When I try to run WriteStuff in example_scenes.py, I get the following error:
Traceback (most recent call last):
File "extract_scene.py", line 15, in
from scene import Scene
File "/Users/jacob 1/Desktop/manim-master/scene/init.py", line 5, in
from scene import Scene
File "/Users/jacob 1/Desktop/manim-master/scene/scene.py", line 21, in
from animation.continual_animation import ContinualAnimation
File "/Users/jacob 1/Desktop/manim-master/animation/continual_animation.py", line 3, in
from simple_animations import MaintainPositionRelativeTo
File "/Users/jacob 1/Desktop/manim-master/animation/simple_animations.py", line 9, in
from mobject.tex_mobject import TextMobject
File "/Users/jacob 1/Desktop/manim-master/mobject/tex_mobject.py", line 368
exit_code = os.system(" ".join(commands))
^
IndentationError: unexpected indent
shell returned 1
I did all the steps recommended in Issues #64 and #36, before I got the Issue of "Latex Error converting to dvi" (#40). Can somebody help me?

is this issues solved ?

Take a look if you have a correct identation on 15 line of example_scene.py


WIP: Portals subdirectory

This branch holds the WIP to change the portals to work on subdirectories rather than in subdomain.
Remaining things to check:

[x] Uploader - when you upload files, it is trying to do it against the main site, rather than test
[x] Analysis - in the analysis pipeline, when moi creates the job group, something is acting up as it only creates the first job in the analysis (the creation one). All the links in moi look correct so I'm unsure where the source of the issue is in here.
[x] Once the study is created, the link that shows with "study BLA created" is linking to the main site rather than the portal.

:+1:  for the config file updates

:+1:

Coverage decreased (-0.008%) to 82.717% when pulling 4f2450ddc886f3a43175f9f223c16bd663ca6160 on subdir-portals into 98775264d3f98f0da1a8524702fd2c74c406db30 on master.

Coverage increased (+0.03%) to 82.756% when pulling 38c56ae5c3d16c43fede9322daaacf6183d33dc2 on subdir-portals into 98775264d3f98f0da1a8524702fd2c74c406db30 on master.

Coverage increased (+0.03%) to 82.756% when pulling 38c56ae5c3d16c43fede9322daaacf6183d33dc2 on subdir-portals into 98775264d3f98f0da1a8524702fd2c74c406db30 on master.

Coverage increased (+0.03%) to 82.756% when pulling 38c56ae5c3d16c43fede9322daaacf6183d33dc2 on subdir-portals into 98775264d3f98f0da1a8524702fd2c74c406db30 on master.

Coverage increased (+0.03%) to 82.756% when pulling 38c56ae5c3d16c43fede9322daaacf6183d33dc2 on subdir-portals into 98775264d3f98f0da1a8524702fd2c74c406db30 on master.

Coverage increased (+0.03%) to 82.756% when pulling 38c56ae5c3d16c43fede9322daaacf6183d33dc2 on subdir-portals into 98775264d3f98f0da1a8524702fd2c74c406db30 on master.

Coverage increased (+0.03%) to 82.756% when pulling 38c56ae5c3d16c43fede9322daaacf6183d33dc2 on subdir-portals into 98775264d3f98f0da1a8524702fd2c74c406db30 on master.


kill-pod plugin dependency pointing to specific commit

Temporarly pointing to kill-pod plugin specific commit in order to avoid breaking change with new arcaflow lib kubernetes API. This will be removed once the new arcaflow architecture will be fully merged.

/funtest


clang-11: error: linker command failed with exit code 1 (use -v to see invocation) on M1

Describe the bug
Installing quarto package with shell.nix
Steps To Reproduce

shell.nix

{ pkgs ? import <nixpkgs> { } }:

with pkgs;
mkShell {
  buildInputs = with rPackages; [
    R
    quarto
 ];

  shellHook = ''
    # ...
  '';
}
3.
nix-shell

### Expected behavior
quarto should be installed with R

### Screenshots
       > ld: library not found for -latomic
       > clang-11: error: linker command failed with exit code 1 (use -v to see invocation)
       > make: *** [/nix/store/zvpvvi9jm16hca1gi1zf75hli7b9vib5-R-4.1.3/lib/R/share/make/shlib.mk:10: later.so] Error 1
       > ERROR: compilation failed for package 'later'

### Metadata
Please run `nix-shell -p nix-info --run "nix-info -m"` and paste the result.
```console
[user@system:~]$ nix-shell -p nix-info --run "nix-info -m"
output here
 - system: `"aarch64-darwin"`
 - host os: `Darwin 21.4.0, macOS 12.3.1`
 - multi-user?: `yes`
 - sandbox: `no`
 - version: `nix-env (Nix) 2.8.0`
 - channels(user): `"darmast-21.11-darwin.tar.gz, darwin, nixdarw-21.11-darwin, nixpkgs"`
 - channels(root): `"nixdarwro-21.11-darwin.tar.gz, nixpkgs, nixunst"`
 - nixpkgs: `/nix/var/nix/profiles/per-user/root/channels/nixpkgs`

Extra
clang -Xlinker -v results:
@(#)PROGRAM:ld  PROJECT:ld64-762
BUILD 12:49:08 Mar 30 2022
configured to support archs: armv6 armv7 armv7s arm64 arm64e arm64_32 i386 x86_64 x86_64h armv6m armv7k armv7m armv7em
Library search paths:
/usr/local/lib
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/lib
Framework search paths:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/
Undefined symbols for architecture arm64:
"_main", referenced from:
implicit entry/start for main executable
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

This issue has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/nixpkgs-aarch64-darwin-build-m1-uses-wrong-old-clang-how-to-fix/18368/5

I have a similar issue with rPackages.later #173497.

Cannot be reproduced here.
 - system: `"aarch64-darwin"`
 - host os: `Darwin 22.1.0, macOS 13.0.1`
 - multi-user?: `yes`
 - sandbox: `no`
 - version: `nix-env (Nix) 2.11.0`
 - channels(user): `"darwin, home-manager, nixpkgs, nur-packages"`
 - channels(root): `"nixpkgs"`
 - nixpkgs: `/Users/user/.nix-defexpr/channels/nixpkgs`


Enforce globalized text with eslint plugin

This uses the eslint-plugin-i18next plugin to enforce globalized text (i.e. no string literals in a <Text> component).
I set the eslint plugin to warning mode instead of error mode for the time being, mostly because we have a lot of text as placeholders for image assets that won't need to be translated, and we also have a lot of text in screens like CVSuggestions which have had complete design overhauls since we first built these components. I'm thinking we can slowly pick away at these over time, but maybe there's a better approach.
All the Settings components also have text that needs to be translated, and I'm assuming we can tackle that sooner since the text will likely be similar to what's on the web.

Round 2: plugin enforces errors instead of warnings. All 100+ errors were updated either with the new PlaceholderText component, with globalized strings, or with an icon/avatar from react-native-paper.


[Service Bus] Merge DispositionStatus and DispositionType

Removing DispositionStatus enum and keeping DispositionType since the names are more clear w.r.t to the settlement methods.
Updated managementClient's updateDispositionStatus method to take DispositionType as a parameter and internally mapping it as DispositionStatus.

/azp run js - servicebus - tests


[timeline] various updates

plot zero values issue #1030
link to browser page when click on chip issue #1032
make tooltip labeling consistent with legend issue #1032

plot zero values:

make tooltip labelling consistent with legend:

@googlebot: rescan


[Bug]: ESS #1 trigered when Dynamic ESS reach min SOC, value entered to /Settings/DynamicESS/MinSoc is ignored

Contact Details
<EMAIL_ADDRESS>VRM portal ID
d83add68ac9a
Country / region
None
B max
No response
TB max
No response
FB max
No response
TG max
No response
FG max
No response
Battery costs
No response
Buy price
No response
Sell price
No response
feed-in possible
None
feed-in control
None
Version
No response
What happened?
A bug happened!
There is unwanted grid consumption during ESS #1 trigered by reaching min SOC. This is happening frequently during morning hours where Dynamic ESS has scheduled min SOC and feeding to grid. Consuption load is feeded by Grid till SOC reach 2% over min SOC and ESS #1 dissapear. Then is exceeding power handled back to Grid till is ESS #1 trigered again till is scheduled higher SOC than min SOC.
I tried to fill /Settings/DynamicESS/MinSoc with several numbers higher than min SOC, but system ignore its.
Same behavior is in case I switch it to VRM version.
When did it happen?
Every morning
Relevant log output
No response
Screenshots
![DESCRIPTION](LINK.png)

Example from today morning


Import more complete version of OmniPath

@deeenes checks pypath biocypher adapter soon, devising a way to specify the extent of data wanted for import, maybe giving some user-defined options for selection of omnipath subsets


Resolve syncing conflicts from repo_sync_working_branch to master

Pull request opened by OPS to resolve syncing conflicts from repo_sync_working_branch to master.

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

E2E_private_reposync2_1120/index.md
:white_check_mark:Succeeded

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

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

E2E_private_reposync2_1120/index.md
:white_check_mark:Succeeded

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


Feature Request: Bootstrap 4 Support

I am currently developing a single-page app that is using Bootstrap 4 -- in which glyphicon support has been discontinued and replaced with font-awesome.
However, the date picker templates still use glyphicons and as such to get the proper icons to appear I had to manually edit the templates.
Will there be support for v4 anytime soon?
Thanks in advance.

No plans yet, but obviously I need to get to it soon. =)
FWIW, I think font awesome support is better handled with changes to the CSS rather than changes to the templates. Just my opinion.  See #140

I think it works pretty well with bootstrap 4 already, at least in the "Drop-down using text link" user case.

The next major version (for Angular 5+) is built from the ground up with Bootstrap 4.


Support Clair in HA installation

In HA mode we make Clair as Optional.
Currently when setup Harbor HA, it will only include the harbor core service.
We should support setup an standalone Clair instance to work with the Harbor HA cluster.
1> modify Clair db export port ( currently Harbor UI will access clair DB to check vulnerability update info)
2> Clair don't support Auth. So the  Clair instance must be deployed in the management network.
1>We should at least provide an document that instruct user how to setup Clair to work with Harbor HA P0
2> We should make Clair also HA with Harbor core service P1

1> Clair endpoint is hardcode in Harbor code, we need to make the clair endpoint configurable if we want Harbor cluster share the same Clair instance.
2> The PostgreSQL DB address is hard code in Harbor. We need to make it configurable and also expose the DB port so that all the harbor node in the cluster can connect.

Hi everybody,
What and where are the enviroment values to set up and configure an external Clair service?
I mean, I'd like to config a Clair server out of Harbor, but I don't know what and where must I have change to make it. Can some one help me?
I have already a Harbor v1.8.3 installed with a external Database.
Tks
Gunther


libnmstate/nm: Relocate nmclient module under the nm package

Coverage remained the same at 73.874% when pulling a5a4d708be01709fa99a4352a89cdcd068584746 on EdDev:relocate-nmclient into d363cbba22d07e65bc9f243e4680123b8e8eca05 on nmstate:master.


Add query state srv

Built on top of https://github.com/ros-controls/ros2_controllers/pull/75
Also requires https://github.com/ros-controls/control_msgs/pull/49
Feel free to only take at the last commit on this PR, I'd like to get some feedback on how I handled the possible concurrency issues from a call to the query_state service while the controller is running.

Rebase of this incoming tomorrow


Make DumpMachine output configurable in the code

Please describe what you would like the feature to accomplish.
DumpMachine is one of the key features for a person who starts learning quantum computing using Q#. Unfortunately, the little-endian labels and ordering of the basis states gets new learners confused in most of cases. IQ# tries to solve this by introducing different formats of labeling (little endian vs big endian vs bit string), but I'd really like to see a similar feature in regular Q# projects, since I do most Q# coding and debugging in VS.
Describe the solution you'd like
Add a parameter to DumpMachine that would allow user to switch between little endian, big endian and bit string formats and orderings of the basis vectors in the output.
Describe alternatives you've considered
So far I have to stick to explaining the output of DumpMachine in great detail, but it still doesn't help the learners.
Side note
Adding an extra parameter to DumpMachine is going to be a fairly painful breaking change, but it would simplify https://github.com/microsoft/iqsharp/issues/126 - it would allow the user to configure the output of DumpMachine directly rather than by configurations, so that running the same code in Notebooks and in VS Code produces the same results.

As a matter of Q# APIs, I think we shouldn't add an extra parameter to DumpMachine. After all, only the quantum simulator even dumps a state in particular, such that a new parameter for formatted output would expose simulator internals at the level of Q#, when it's really a host program configuration option. That's a large part of why the current design in IQ# allows the use of the %config magic for configuring output, for example.

I've been just reminded of how valuable this capability would be: I had an 8-qubit quantum state that had only 2 non-zero basis states in a Q# unit test project, and the ability to use dump.truncateSmallAmplitudes there would've been priceless (it could've been a 16-qubit state!)
@cgranade, @bettinaheim, any thoughts on how to enable configuring DumpMachine output outside of IQ#, in Q# standalone mode?


Remove lingering serf code

Description

Remove lingering serf code. Serf dependency was previously removed in https://github.com/gravitational/gravity/pull/2329.
Type of change

Internal change (not necessarily a bug fix or a new feature)

Linked tickets and other PRs

Requires https://github.com/gravitational/planet/pull/822, https://github.com/gravitational/satellite/pull/295

TODOs

[x] Self-review the change
[x] Perform manual testing
[x] Address review feedback
[x] Update upstream references / tags / versions after upstream PR merges (linked above)

Testing done

[x] Install cluster
[x] Leave node
[x] Join node

Ah, good catch. I'll remove mentions of those ports in separate PR.


Objects Import

Describe the feature:
The ability to import saved objects like dashboards, index pattern, ... would be most useful.

Maybe you can use: https://github.com/dbsystel/kibana-config-controller


auto install of cabal on windows is not working

i followed the documentation to install the data and latest ghc with install.sh and stack. After that vscode tries to run a command which fails. I just pasted this same command in a terminal and it looks like this:
C:\Users\flip111>C:\Users\flip111\haskell\haskell-ide-engine\.stack-work\install\4259daf8\bin\cabal-helper-wrapper.exe "--with-ghc=C:\\Users\\flip111\\AppData\\Local\\Programs\\stack\\x86_64-windows\\ghc-8.6.5\\bin\\ghc.exe" "--with-ghc-pkg=C:\\Users\\flip111\\AppData\\Local\\Programs\\stack\\x86_64-windows\\ghc-8.6.5\\bin\\ghc-pkg.exe" "--with-cabal=cabal" "v1-style" "C:\\Users\\flip111\\haskell\\pcre2" "C:\\Users\\flip111\\haskell\\pcre2\\.stack-work\\dist\\e626a42b" "package-db-stack" "flags" "compiler-version" "ghc-merged-pkg-options" "config-flags" "non-default-config-flags" "ghc-src-options" "ghc-pkg-options" "ghc-lang-options" "ghc-options" "source-dirs" "entrypoints" "needs-build-output"
cabal-helper-wrapper: Installing a private copy of Cabal because we couldn't
find the right version in your global/user package-db, this might take a
while but will only happen once per Cabal version you're using.

If anything goes horribly wrong just delete this directory and try again:
    C:\Users\flip111\Local Settings\Cache\cabal-helper

If you want to avoid this automatic installation altogether install
version <IP_ADDRESS> of Cabal manually (into your user or global package-db):
    $ cabal install Cabal --constraint "Cabal == <IP_ADDRESS>"

Installing Cabal <IP_ADDRESS> ...
cabal-helper-wrapper.exe: Installing Cabal version <IP_ADDRESS> failed.

You have the following choices to fix this:

- The easiest way to try and fix this is just reconfigure the project and try
  again:
        $ cabal clean && cabal configure

- If that fails you can try to install the version of Cabal mentioned above
  into your global/user package-db somehow, you'll probably have to fix
  something otherwise it wouldn't have failed above:
        $ cabal install Cabal --constraint 'Cabal == <IP_ADDRESS>'

- If you're using `Build-Type: Simple`:
  - You can see if you can reinstall your cabal-install executable while
    having it linked to a version of Cabal that's available in you
    package-dbs or can be built automatically:
        $ ghc-pkg list | grep Cabal  # find an available Cabal version
            Cabal-W.X.Y.Z
        $ cabal install cabal-install --constraint 'Cabal == W.X.*'
    Afterwards you'll have to reconfigure your project:
        $ cabal clean && cabal configure

- If you're using `Build-Type: Custom`:
  - Have cabal-install rebuild your Setup.hs executable with a version of the
    Cabal library that you have available in your global/user package-db:
        $ cabal clean && cabal configure
    You might also have to install some version of the Cabal to do this:
        $ cabal install Cabal

Hi @flip111, thanks for the bug report (run the command directly in a cmd was a good idea).
First i want to mention that there is a incoming change to hie internals that will remove that actual use of cabal-helper-wrapper so hopefully it will fix this issue: https://github.com/haskell/haskell-ide-engine/pull/1126.
I've just test succesfully opening a stack based project (with stack.yaml file) having cabal-<IP_ADDRESS> and ghc-8.6.5 in path: the log of vscode output of Haskell HIE is here.
To get a more verbose output i set the trace level to verbose in the extension config options and i've set globally the environment variable CABAL_HELPER_DEBUG to 1.
Hopefully we'll see the concrete error that cabal-helper is throwing when trying to installing Cabal-<IP_ADDRESS>.
As possible quick and fuzzy workaround: try to remove the directories .stack-work, dist and dist-new-style of the project and the C:\Users\flip111\Local Settings\Cache\cabal-helper dir to force another auto-install.

$ ghc --version
bash: ghc: command not found

$ stack exec -- ghc --version
The Glorious Glasgow Haskell Compilation System, version 8.6.5

$ cabal --version
bash: cabal: command not found

$ stack exec -- cabal --version
Executable named cabal not found on path: [".","C:\\sr\\global-project\\.stack-work\\install\\8e1bcd4f\\bin","C:\\sr\\snapshots\\9be3dfa9\\bin","C:\\sr\\compiler-tools\\x86_64-windows\\ghc-8.6.5\\bin","C:\\Users\\flip111\\AppData\\Local\\Programs\\stack\\x86_64-windows\\ghc-8.6.5\\bin","C:\\Users\\flip111\\AppData\\Local\\Programs\\stack\\x86_64-windows\\ghc-8.6.5\\mingw\\bin","C:\\Users\\flip111\\AppData\\Local\\Programs\\stack\\x86_64-windows\\msys2-20180531\\mingw64\\bin","C:\\Users\\flip111\\AppData\\Local\\Programs\\stack\\x86_64-windows\\msys2-20180531\\usr\\bin","C:\\Users\\flip111\\AppData\\Local\\Programs\\stack\\x86_64-windows\\msys2-20180531\\usr\\local\\bin","C:\\Users\\flip111\\bin","C:\\Program Files\\Git\\mingw64\\bin","C:\\Program Files\\Git\\usr\\local\\bin","C:\\Program Files\\Git\\usr\\bin","C:\\Program Files\\Git\\usr\\bin","C:\\Program Files\\Git\\mingw64\\bin","C:\\Program Files\\Git\\usr\\bin","C:\\Users\\flip111\\bin","C:\\Python38\\Scripts","C:\\Python38","C:\\Program Files (x86)\\Common Files\\Oracle\\Java\\javapath","C:\\Windows\\system32","C:\\Windows","C:\\Windows\\System32\\Wbem","C:\\Windows\\System32\\WindowsPowerShell\\v1.0","C:\\Windows\\System32\\OpenSSH","C:\\ProgramData\\chocolatey\\bin","C:\\Program Files\\Git\\cmd","C:\\tools\\php73","C:\\ProgramData\\ComposerSetup\\bin","C:\\Program Files\\Microsoft VS Code\\bin","C:\\Users\\flip111\\AppData\\Local\\Microsoft\\WindowsApps","C:\\Users\\flip111\\AppData\\Roaming\\Composer\\vendor\\bin","C:\\Users\\flip111\\AppData\\Local\\GitHubDesktop\\bin","C:\\Users\\flip111\\AppData\\Roaming\\local\\bin","C:\\Users\\flip111\\AppData\\Local\\Pandoc","C:\\Program Files\\Git\\usr\\bin\\vendor_perl","C:\\Program Files\\Git\\usr\\bin\\core_perl"]

Hi, with that configuration (with no ghc and cabal in path and a stack project using ghc-8.6.5) cabal-helper-wrapper is installing Cabal-<IP_ADDRESS> succesfully in my windows computers (with win 7 and 10).
Could you share the log of vscode output of the hie extension (in verbose mode as described above) and the project configuration (stack.yaml and .cabal)?

Hello.

set globally the environment variable CABAL_HELPER_DEBUG to 1

Not sure what "globally" means here. I just set it as my windows sytem variable.

set the trace level to verbose in the vscode-hie-server extension config options

Ok i done this, also i set a location for the log file.
I don't get to see any log files though.

and the project configuration (stack.yaml and .cabal)

Which project ?

Ok i done this, also i set a location for the log file.
I don't get to see any log files though.

In the output (menu view > output) view of vscode there should be a log (named Haskell HIE (haskell-ide-engine)) if you unset previously the location in settings
In C:\TEMP there should be a hie.log file too with more info.

Which project ?

The project you are opening with vscode (with menu file > open folder i suppose)

in the output (menu view > output) view of vscode there should be a log

I unset the previous log file and then restarted vscode but i don't see anything in this pane

In C:\TEMP there should be a hie.log

on my system C:\TEMP does not exist

and the project configuration (stack.yaml and .cabal)?

https://gist.github.com/flip111/844034f39155e15a2f7cf1a56a203b3c

Ok, i've reproduced the error tweaking some internal config files inside.stack-work.
In short: you need to put cabal (the executable) in the global PATH to make it work so i would recommend run stack install.hs stack-install-cabal in the haskell-ide-engine dir.
It seems that cabal-helper-wrapper needs (some version of) cabal (the executable) to compile Cabal (the library used by that executable). The call to cabal-helper-wrapper you post at beginning has the argument "--with-cabal=cabal" and it uses a internal call to cabal get Cabal-<IP_ADDRESS> to get the source of the library. As there is no executable cabal in the PATH system variable the call fails.

Hi, i installed cabal with stack install.hs stack-install-cabal, after the compiling messages i saw the following:
Copying from C:\sr\snapshots\9be3dfa9\bin\cabal.exe to C:\Users\flip111\AppData\Roaming\local\bin\cabal.exe

Copied executables to C:\Users\flip111\AppData\Roaming\local\bin:
- cabal.exe

Warning: The cabal.exe executable found on the PATH environment variable is
         C:\sr\snapshots\9be3dfa9\bin\cabal.exe and not the version that was just installed. This
         means that cabal.exe calls on the command line will not use this version.
Build completed in 3m14s

than vscode still gave an error so i ran the failing command again, did an update, and again
https://gist.github.com/flip111/f38582455a1fdd270840af55c6439763
It's a bit strange that the compiling ended with a haskell data type print message
After that i restarted vscode and all seemed to work. thanks a lot !

Some suggestions:
change this line in the documentation:

Although you can use hie for stack based projects (those which have a stack.yaml in the project base directory) without having cabal installed

and modify the install.hs script so that it installs cabal and after updates it too

well, it used to do it! but it's true that in some (most?) cases cabal is not needed (in fact i was not able to trigger the error "normally"). At some point an user proposed remove the automatic install of cabal (for legitimate reasons imo): https://github.com/haskell/haskell-ide-engine/pull/1368
Moreover the incoming refactoring of hie (#1126) definitely will make cabal (or stack) optional for all cases.
So i would modify the docs adding something like: "In some cases cabal is still needed,,,"


finally big graph

TODO:

[ ] schedule_cache!!
[x] find a way to preserve metadata as we're rewriting uops.

back to draft til I fix metadata.

Haven't looked into it in depth but according to git bisect since this commit the sdxl.py demo fails with RecursionError: maximum recursion depth exceeded in
  File "tinygrad/ops.py", line 728, in rewrite
    new_src = tuple(map(self.rewrite, n.src))


binary search without using length function (built-in) in java under GSSOC'22

🚀 Feature
This code is to find a particular element in an sorted array when we do not know the length of the array and are not allowed to use length function. This can be treated as a base code for binary search in an infinite array where we are unaware of the length.
binary search without using arrayname.length using java under GSSOC'22
Have you read the Contributing Guidelines on Pull Requests?
yes
Motivation
(Please outline the motivation for the proposal.)
Pitch
(Please explain why this feature should be implemented and how it would be used.)

please assign me this issue

please assign me this issue @HarshCasper

/assign

/assign

/assign

/assign


onclick add stream: redirect users that can't create streams directly to browse stream

This PR tries to implement issue-20676
Here is the working proof:
(For users that can create streams)

(For users that can't)

I checked out the PR, and it looks good to me! @timabbott FYI

Seems like there is an unused import in popover_menus.js inside of the upstream main branch which is causing the PR check to fail. Should I be updating my PR for that?

I have updated my PR but I am a little confused over the use of .expectOne in #streams_inline_cog onClick event handler as am not entirely aware of it's usage.

exportOne is a function that just asserts that the jQuery selector exists -- useful for catching refactoring bugs where you renamed something in the HTML but not the JS, for example.

I think keeping it wouldn't be a problem then?

Can you please review this PR and specify any further changes if required?

You'll need to rewrite the commit message and commit description to align with our guidelines.

@YashRE42 thank you for responding. I think I have updated the PR as per the requirements. Can you please review this PR and specify any further changes if required?

(I see that you've requested review from me, but I haven't been able to pull and look at this locally yet, so I'll give this a more thorough look ~tomorrow.)

I pulled this locally, it works. The commit history is clean.
I have some feedback on the code though:

I'm not 100% sure that window.location.assign("#streams/all"); is the right way to open the the panel, but if we need to change that someone else will let you know.

I don't like how we've got two handlers and are controlling the behavior between them via e.stopPropogate and early return...
but I also don't like having the logic be in popovers.js....
...I guess the later is the lesser of two evils, so the best thing to do would be to apply the following diff.

diff --git a/static/js/popover_menus.js b/static/js/popover_menus.js
index f59aae8c48..b2562c1a7b 100644
--- a/static/js/popover_menus.js
+++ b/static/js/popover_menus.js
@@ -16,6 +16,7 @@ import * as compose_actions from "./compose_actions";
 import * as giphy from "./giphy";
 import * as narrow_state from "./narrow_state";
 import * as popovers from "./popovers";
+import * as settings_data from "./settings_data";
 import {user_settings} from "./user_settings";

 let left_sidebar_stream_setting_popover_displayed = false;
@@ -61,8 +62,17 @@ export function initialize() {
         target: "#streams_inline_icon",
         onShow(instance) {
             on_show_prep(instance);
+            const can_create_streams = settings_data.user_can_create_private_streams() ||
+                    settings_data.user_can_create_public_streams() ||
+                    settings_data.user_can_create_web_public_streams();
+            if (!can_create_streams) {
+                window.location.assign("#streams/all");
+                // returning false cancels the show.
+                return false;
+            }
             instance.setContent(render_left_sidebar_stream_setting_popover());
             left_sidebar_stream_setting_popover_displayed = true;
+            return true;
         },
         onHidden() {
             left_sidebar_stream_setting_popover_displayed = false;
diff --git a/static/js/stream_list.js b/static/js/stream_list.js
index 7f1eda837b..182afda200 100644
--- a/static/js/stream_list.js
+++ b/static/js/stream_list.js
@@ -14,7 +14,6 @@ import * as narrow_state from "./narrow_state";
 import * as popovers from "./popovers";
 import * as resize from "./resize";
 import * as scroll_util from "./scroll_util";
-import * as settings_data from "./settings_data";
 import * as stream_data from "./stream_data";
 import * as stream_popover from "./stream_popover";
 import * as stream_sort from "./stream_sort";
@@ -530,21 +529,6 @@ export function set_event_handlers() {
             toggle_filter_displayed(e);
         });

-    $("#streams_inline_icon")
-        .expectOne()
-        .on("click", (e) => {
-            e.preventDefault();
-            if (
-                settings_data.user_can_create_private_streams() ||
-                settings_data.user_can_create_public_streams() ||
-                settings_data.user_can_create_web_public_streams()
-            ) {
-                return;
-            }
-            e.stopPropagation();
-            window.location.assign("#streams/all");
-        });
-
     // check for user scrolls on streams list for first time
     ui.get_scroll_element($("#stream-filters-container")).on("scroll", function () {
         has_scrolled = true;

Thank you @YashRE42, this looks much cleaner than my changes. I will update my PR and will let you know.

@YashRE42, I have updated my PR, can you please review it.

Merged, after fixing several things:

Split the commit that renamed the icon to its own commit.
Fixed a missing newline between the title and body of the commit message.
Improved the commit message writing.

Thanks @algo-byte and @YashRE42!   @algo-byte I strongly encourage you to carefully inspect how I did this so that you can improve your other PRs like this; git checkout -p and git rebase -i upstream/main^ make it easy to reorganize changes like I did here.  (Though be sure to carefully re-review and re-test commits after moving changes around like this).


Cannot find type definition file for 'core-js'.

I use this library in Angular 2 project.
but It output these error message.
[default] C:\Develop\ng2-primeng-sample\node_modules\ng2-currency-mask\src\currency-mask.directive.d.ts:1:0
Cannot find type definition file for 'core-js'.
[default] C:\Develop\ng2-primeng-samle\node_modules\ng2-currency-mask\src\input.handler.d.ts:1:0
Cannot find type definition file for 'core-js'.

And When I install core-js by npm i --save types@core-js, there are new errors as followings
ERROR in [default] C:\Develop\ng2-primeng-omine\node_modules\@types\core-js\index.d.ts:21:13
Duplicate identifier 'PropertyKey'.

ERROR in [default] C:\Develop\ng2-primeng-omine\node_modules\@types\core-js\index.d.ts:85:4
All declarations of 'name' must have identical modifiers.

ERROR in [default] C:\Develop\ng2-primeng-omine\node_modules\@types\core-js\index.d.ts:145:4
Subsequent variable declarations must have the same type.  Variable '[Symbol.unscopables]' must be of type '{ copyWithin: boolean;

ERROR in [default] C:\Develop\ng2-primeng-omine\node_modules\@types\core-js\index.d.ts:262:4
All declarations of 'flags' must have identical modifiers.

ERROR in [default] C:\Develop\ng2-primeng-omine\node_modules\@types\core-js\index.d.ts:276:4
All declarations of 'EPSILON' must have identical modifiers.

ERROR in [default] C:\Develop\ng2-primeng-omine\node_modules\@types\core-js\index.d.ts:311:4
All declarations of 'MAX_SAFE_INTEGER' must have identical modifiers.

ERROR in [default] C:\Develop\ng2-primeng-omine\node_modules\@types\core-js\index.d.ts:318:4
All declarations of 'MIN_SAFE_INTEGER' must have identical modifiers.

ERROR in [default] C:\Develop\ng2-primeng-omine\node_modules\@types\core-js\index.d.ts:457:4
Subsequent variable declarations must have the same type.  Variable '[Symbol.toStringTag]' must be of type '"Symbol"', but here has

ERROR in [default] C:\Develop\ng2-primeng-omine\node_modules\@types\core-js\index.d.ts:457:4
All declarations of '[Symbol.toStringTag]' must have identical modifiers.

ERROR in [default] C:\Develop\ng2-primeng-omine\node_modules\@types\core-js\index.d.ts:464:4
All declarations of 'prototype' must have identical modifiers.

ERROR in [default] C:\Develop\ng2-primeng-omine\node_modules\@types\core-js\index.d.ts:492:4
All declarations of 'hasInstance' must have identical modifiers.

ERROR in [default] C:\Develop\ng2-primeng-omine\node_modules\@types\core-js\index.d.ts:498:4
All declarations of 'isConcatSpreadable' must have identical modifiers.

ERROR in [default] C:\Develop\ng2-primeng-omine\node_modules\@types\core-js\index.d.ts:504:4
All declarations of 'iterator' must have identical modifiers.

ERROR in [default] C:\Develop\ng2-primeng-omine\node_modules\@types\core-js\index.d.ts:510:4
All declarations of 'match' must have identical modifiers.

ERROR in [default] C:\Develop\ng2-primeng-omine\node_modules\@types\core-js\index.d.ts:516:4
All declarations of 'replace' must have identical modifiers.

ERROR in [default] C:\Develop\ng2-primeng-omine\node_modules\@types\core-js\index.d.ts:522:4
All declarations of 'search' must have identical modifiers.

ERROR in [default] C:\Develop\ng2-primeng-omine\node_modules\@types\core-js\index.d.ts:528:4
All declarations of 'species' must have identical modifiers.

ERROR in [default] C:\Develop\ng2-primeng-omine\node_modules\@types\core-js\index.d.ts:534:4
All declarations of 'split' must have identical modifiers.

ERROR in [default] C:\Develop\ng2-primeng-omine\node_modules\@types\core-js\index.d.ts:540:4
All declarations of 'toPrimitive' must have identical modifiers.

ERROR in [default] C:\Develop\ng2-primeng-omine\node_modules\@types\core-js\index.d.ts:546:4
All declarations of 'toStringTag' must have identical modifiers.

ERROR in [default] C:\Develop\ng2-primeng-omine\node_modules\@types\core-js\index.d.ts:552:4
All declarations of 'unscopables' must have identical modifiers.

ERROR in [default] C:\Develop\ng2-primeng-omine\node_modules\@types\core-js\index.d.ts:609:4
Subsequent variable declarations must have the same type.  Variable '[Symbol.toStringTag]' must be of type '"Math"', but here has t

ERROR in [default] C:\Develop\ng2-primeng-omine\node_modules\@types\core-js\index.d.ts:609:4
All declarations of '[Symbol.toStringTag]' must have identical modifiers.

ERROR in [default] C:\Develop\ng2-primeng-omine\node_modules\@types\core-js\index.d.ts:613:4
Subsequent variable declarations must have the same type.  Variable '[Symbol.toStringTag]' must be of type '"JSON"', but here has t

ERROR in [default] C:\Develop\ng2-primeng-omine\node_modules\@types\core-js\index.d.ts:613:4
All declarations of '[Symbol.toStringTag]' must have identical modifiers.

ERROR in [default] C:\Develop\ng2-primeng-omine\node_modules\@types\core-js\index.d.ts:628:4
All declarations of 'size' must have identical modifiers.

ERROR in [default] C:\Develop\ng2-primeng-omine\node_modules\@types\core-js\index.d.ts:634:4
All declarations of 'prototype' must have identical modifiers.

ERROR in [default] C:\Develop\ng2-primeng-omine\node_modules\@types\core-js\index.d.ts:645:4
All declarations of 'size' must have identical modifiers.

ERROR in [default] C:\Develop\ng2-primeng-omine\node_modules\@types\core-js\index.d.ts:651:4
All declarations of 'prototype' must have identical modifiers.

ERROR in [default] C:\Develop\ng2-primeng-omine\node_modules\@types\core-js\index.d.ts:666:4
All declarations of 'prototype' must have identical modifiers.

ERROR in [default] C:\Develop\ng2-primeng-omine\node_modules\@types\core-js\index.d.ts:680:4
All declarations of 'prototype' must have identical modifiers.

ERROR in [default] C:\Develop\ng2-primeng-omine\node_modules\@types\core-js\index.d.ts:692:4
All declarations of 'value' must have identical modifiers.

ERROR in [default] C:\Develop\ng2-primeng-omine\node_modules\@types\core-js\index.d.ts:804:4
All declarations of 'prototype' must have identical modifiers.

ERROR in [default] C:\Develop\ng2-primeng-omine\node_modules\typescript\lib\lib.es2015.core.d.ts:17:13

so I tried to delete /// <reference types="core-js" /> from currency-mask.directive.d.ts and input.handler.d.ts.
After this solution, Error isn't appeared, but I think that this solution is not good and will be cause of other error.
but there is no error now.
Is this a correct solution ?
I use angular 2.1.1, PrimeNG 1.0.0 and current of ng2-currency-mask.
Thank you.

I guess that the problem was fixed in version 1.0.6. Could you test it?

Thank you.
I tested and I see that problem has fixed.


Partners Program - swipe tool and map

Need to bring over the swipe tool & map.
http://www.fws.gov/southeast/es/partners/
to
https://docs.google.com/a/doi.gov/document/d/17d2v7kDc2Lb7IvZIfXq1h7KCy63e8FfUAynRdDMBicI/edit?usp=sharing

@jenmstrick do you want me to include any of the supporting text to go along with the swipe tool?  Seems like it doesn't have enough context if it's included by itself.

Moved over swipe and map.
Left to go: 2014 accomplishments.

You must've added some because what you have looks good to me!
We could make the divider the green color so it stands out more too.

@jenmstrick I didn't -- The swipe image kinda comes out of nowhere in the landowner section.  There's no description as to what those images even are.

If it's not included in the page then I don't have that info.

Closed via 3958d6cd81249bc3388a7115a0a9be0b9012bc04


Licensify - Remove deprecated configuration property

As part of the Licensify Play 2.5 to 2.6 migration, we added the new play.http.secret.key parameter, and kept the existing one so that we could seamlessly change version
Now that we're running on newer Play versions, the older play.crypto.secret is no longer needed, and is bringing up deprecation warnings when deploying a new release of Licensify

Confirm that this key was swapped out in https://github.com/alphagov/licensify/commit/a3b2a8af649eb8c33430f12964cb833c310c4963

Have pushed following the docs to kick CI off

Thanks for the tidy up @brandonmoss-99!