Change defer-bootstrap logic

*Bootstrap is done immediately when you call (add/remove/clear)MockModule
*Angular will deal with subsequent bootstrap without pausing for
protractor (and bootstrap)
*browser.get (and other navigation) will be a straight call to wd
*back/forward will start working for protractor (with injected module)
*if another site redirects to Angular (e.g. login), mock modules can now be
injected
Note: testapp/lib/angular_v1.2.9/angular.js is included for reference
and will not be submitted as part of this PR (there will be a PR
for angular)
Breaking changes:
*(add/remove/clear)MockModule will take an addition param (url), which
is the url you are modifying the mock modules for. Injection will
be done immediately.
*browser.get or any action will timeout if you have a $timeout > 10s
in the app. ($timeout with waitForAngular was not supported before,
just that now even page will not load subsequently)
Compatibility:
*bootstrap will not work for subsequent get/navigate if your browser
does not support localSession
*bootstrap will not work for subsequent get/navigate if you are
testing an older version of Angular

After discussions today: - let's rebase this and actually take a look at it! We think it will be backwards compatible so shouldn't introduce problems. Also need to check browser compatibility for localstorage stuff.

@juliemr I need to use addMockModule with manual bootstrap (requirejs) for my E2E tests. Do you know if there is any workaround to resolve this issue?

@juliemr I assume Hank is no longer working on this?

@juliemr @mgiambalvo @cnishina Ping

@juliemr ping ¿hola como estas? this issue hasn't gone away I still keep getting questions about it

We're going to add this to our things to address in Q2.

I think this is out of date enough to just close - we want to look at these issues, but leaving this PR open ain't helping.


Restructure longhorn UI proxy link to contain dynamic namespace

Summary
Fixes #10259

The Longhorn frontend UI would fail to load as the namespace was hard-coded to longhorn-system. Although setting this namespace is the recommended approach when installing Longhorn with Helm, users may still determine their own namespace.
Occurred changes and/or fixed issues

This adds a computed property to find the Longhorn UI based on the label app=longhorn-ui which is defined in the Longhorn Helm chart.
If the service is found, the externalLinks will contain the correct namespace of this service in the link property.
Technical notes summary

I've also added a banner to display an error when no external links have been populated.
Screenshot/Video
https://github.com/rancher/dashboard/assets/40806497/929e5993-c8c2-40d8-9792-1b96624590d0

@jordojordo I had a look and the issue is that findMatching returns an array of matching services, not a single service which your code was looking for.
This worked for me:
  async mounted() {
    if ( this.$store.getters['cluster/schemaFor'](SERVICE) ) {
      await this.$store.dispatch('cluster/findAll', { type: SERVICE });

      const uiServices = await this.$store.dispatch('cluster/findMatching', { type: SERVICE, selector: 'app=longhorn-ui' });

      console.error(uiServices);

      if (uiServices && uiServices.length ===1 && uiServices[0].metadata?.namespace) {
        this.externalLinks = [
          {
            enabled:     true,
            iconSrc:     this.longhornImgSrc,
            label:       'longhorn.overview.linkedList.longhorn.label',
            description: 'longhorn.overview.linkedList.longhorn.description',
            link:        `/k8s/clusters/${ this.currentCluster.id }/api/v1/namespaces/${ uiServices[0].metadata.namespace }/services/http:longhorn-frontend:80/proxy/`
          },
        ];
      }
    }
  },

You might want to use fetch rather than mounted as with this, the red banner flicks up briefly before the service is found.
I would also suggest we use a vertical IconMessage rather than the error banner, eg:

Lastly, if we can avoid using lodash that would be great - generally I think we want to try and get that out of the code base, espcially for things like isEmpty (code above does not use that)

I updated this to use the fetch method rather than the mounted when fetching the services, converted the externalLinks into a computed property, and switched the Banner to an IconMessage component with a more specific message. Also updated the tests to fit this new structure.

Restructured this to use the findMatching action.
https://github.com/rancher/dashboard/assets/40806497/73c6ec8d-0e50-408d-a047-064531850ef3

Hey,
I know this is a bit late as this has been merged for a long time but this change means that users need mors RBAC than before to access longhorn UI. They need to be able to list services in every namespaces, this was not required before


On display the date is not updating.

In the display, the date is not updating. it is fixed at 1999-12-31 . the time is correct, the Lat Long is correct and the Locator is correct. Only date is wrong. (verified on two different trackers)

did you test this more? as this is really strange behavior

Did you had to reset the GPS? If so, it can happen, that the GPS is not sending NMEA message containing the date,

Yes, on both devices, the GPS has been reset with the available tool. Do you know how to recover from this situation?

You've probably used something like the TTGO_T-beam_GPS-reset utility.
I don't have my code at hand right now, but as I remember, the reset utility enables only the NMEA_GGA sentence, which doesn't include the date.
myGPS.enableNMEAMessage(UBX_NMEA_GGA, COM_PORT_UART1);
I had to add to it something like this:
myGPS.enableNMEAMessage(UBX_NMEA_RMC, COM_PORT_UART1);
Then I've got the time displaying correctly. I'll look at my code at home, please QRX.

Yes Willi,  you got the point, I added the RMC sentence after the gps reset and bingo, this unlocked the situation, now the Date appear correctly on the display.

Problem description:  Only Date is not updated on the display
Cause: have used the GPS reset tool to force GPS to send again NMEA sentences after Meshstastic was loaded on the TTGO board (it use different protocol)
Solution:  modification of the reset tool to include RMC sentence in addition to the GGA one
do {
if (myGPS.begin(SerialGPS)) {
Serial.println("Connected to GPS");
myGPS.setUART1Output(COM_TYPE_NMEA); //Set the UART port to output NMEA only
myGPS.saveConfiguration(); //Save the current settings to flash and BBR
Serial.println("GPS serial connected, output set to NMEA");
myGPS.disableNMEAMessage(UBX_NMEA_GLL, COM_PORT_UART1);
myGPS.disableNMEAMessage(UBX_NMEA_GSA, COM_PORT_UART1);
myGPS.disableNMEAMessage(UBX_NMEA_GSV, COM_PORT_UART1);
myGPS.disableNMEAMessage(UBX_NMEA_VTG, COM_PORT_UART1);
myGPS.enableNMEAMessage(UBX_NMEA_RMC, COM_PORT_UART1);  <------
myGPS.enableNMEAMessage(UBX_NMEA_GGA, COM_PORT_UART1);
myGPS.saveConfiguration(); //Save the current settings to flash and BBR
Serial.println("Enabled/disabled NMEA sentences");
break;

Yes Willi, you got the point, I added the RMC sentence after the gps reset and bingo, this unlocked the situation, now the Date appear correctly on the display.

I am glad I could help. Enjoy it!

thanks a lot for this!
will try to save the info on the WIKI also!

i had this all missing!! until I needed to reset one T-beam
so i will upload this all new into a new updated repository


Update CHANGEME.md

Co-authored-by: Paranoïd User<EMAIL_ADDRESS>

Thanks for jumping on board! 🚢 Welcome to the YOLO club 👋


[Query] [ballerina search] some endpoints for ballerina central listing as private repo?

Description:
As $subject seems we have listed private repo endpoints as in below image.
I tried as in guide by searching google endpoints and ballerina search listed as below.
But I'm not sure is this correct?

Affected Versions:
0.970.0
OS, DB, other environment details and versions:
Windows 10

You can push packages with any org-name to central. When we search for a package we do a text search on the metadata of the package and show the results. Closing this issue since the behavior is correct.


add table of content to readme

This PR adds a table of content to the readme.
The readme file is quite long, therefore a TOC is helpful for navigation.

@tyler36 I get that it’s nice to see a table of contents front and center, but are you sure it’s worth maintaining when every GitHub repo gets one for free?

... and there is my "Today I learned", thank you. 😄
Valid point. I was viewing the project in VSCode, and not on the web.
In VSCode, I use "Markdown All in One" for all my project which can generate and auto-updates TOCs so maintainence isn't an issue, for me.
Closing.

Another platform lets you pop in a tag that auto-generates the TOC inline. Don’t want to name names, but it rhymes with LitGab. 🙂


Franka Kinematics at Controller Level

Today, the FrankaRobotModel class provides users forward kinematics utility functions which operate at the hardware level. This works when used in ROS 2 controllers which accept true Franka hardware, but does not work for simulated Franka arms. Is there some way to compute Franka kinematics using user-provided positions? I would be interested in helping to contribute this, if not.

Yes currently for the gazebo simulator FrankaRobotModel and FrankaState interfaces are not available. However with Gazebo, you get joint_states(joint_positions, joint_velocities, joint_efforts). Based on these values you could calculate the M,C and G using either KDL or Pinocchio. For the Jacobians you could probably also use the same tools. Here is an example how we calculate the gravity term for the Gazebo simulation in KDL -> https://github.com/frankaemika/franka_ros2/blob/humble/franka_gazebo/franka_ign_ros2_control/src/model_kdl.cpp.
We will support FrankaRobotModel and FrankaState for Gazebo simulation, but the timeline is not clear. You are free to contribute. But currently the supervision from our side could be limited.


fix(Generator): do not show scope outline when missing

Do not show scope outline when missing
see #5
close #5

Changes Unknown when pulling efe4acac6e46d9576bcfc0b55ad7bf5b8f2aac15 on fix/Generator/not-show-scope-outline into ** on master**.


Cd docs fixing links

Harness Developer Pull Request
Thanks for helping us make the Developer Hub better. The PR will be looked at
by the maintainers.
What Type of PR is This?

[ ] Issue
[ ] Feature
[ x] Maintenance/Chore

If tied to an Issue, list the Issue(s) here:

fixing redirects

House Keeping
Some items to keep track of. Screen shots of changes are optional but would help the maintainers review quicker.

[x ] Tested Locally
[ ] Optional Screen Shoot.

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app


Support customizing the tag header link in the changelog

Current behavior: links to the tag page (example)
With standard-version, clicking on the version link in the changelog takes you to a nice diff page (example)
Maybe we should consider supporting both? .versionrc supports customizing the comparison link because it differs between providers. As an example here's the format for Bitbucket:
"compareUrlFormat": "{{host}}/{{owner}}/{{repository}}/compare/{{currentTag}}..{{previousTag}}"

Current and previous tag are reversed for Bitbucket and GitHub.

We would like to also have this feature to overwrite default link to release. Currently in the Azure devops it leads to the unknow page.
Current link
<EMAIL_ADDRESS>Our link to tag
$"https://{_organization}@dev.azure.com/{_organization}/{_repository}?version=GTv{version}";
So it would be grate to provide custom configuration for the link format. And in that case  it will be possible to pass link of comparison between tags


Animation on "Comments" section

Upon clicking on the "dot" the comment should animate carousel-like going back and forth depending on which dot is clicked and which comment is currently displayed.

Any progress on these animations?


SILGen: Simplify curry thunks

Now that methods are the only case where we have a function
with multiple parameter lists, we can remove the logic for
forwarding captures (methods cannot have captures), and
simplify what remains to only deal with the case of a single
'self' argument being curried.

@swift-ci Please smoke test


Add Ramp

https://ramp.com/careers
for more info:
https://www.crunchbase.com/organization/ramp-financial

hey @Kaustubh-Natuskar , Kindly close this issue ( Issue is already solved ) .


Proposal: Ability to restart specific pod/depolyment on specific secret change.

Sometimes we need to ensure that the pod has been restarted to mount recently updated secret (kind of secret rotation)
It will be great if the externl secrets operator will restart automatically specific deployment/pod/sts/daemonset if some secret has been changed.  It could be done , for example by some special annotations defined on the externalsecret object .

https://github.com/stakater/Reloader would probably cover your needs!
This is something we feel is out of scope for KES.


Should query always be a list, even if just single valued?

It works to send single values... is it not safe to assume this will continue to work on the backend? ... or just as a matter of sdk design, would it be better if the type of the parameter is consistent?
These have the same result:
>>> a_b_union_operator = \
...     client.select_cells(where='dataset', has=a_uuid) \
...     | client.select_cells(where='dataset', has=b_uuid)
>>> a_b_union_query = \
...     client.select_cells(where='dataset', has=[a_uuid, b_uuid])

I agree that consistency is desirable in the long term, and I probably wouldn't assume that it will continue to work on the back end.  This is largely a function of the fact that the API and the browser based interface receive inputs as slightly different types, and the functions that process the input do some handling to accommodate this.

I agree that consistency is desirable in the long term, and I probably wouldn't assume that it will continue to work on the back end.  This is largely a function of the fact that the API and the browser based interface receive inputs as slightly different types, and the functions that process the input do some handling to accommodate this.

Ok: I'll validate input on our side and require a list.

Ok: I'll validate input on our side and require a list.


 At the moment if user moves hand from the back or sides of scroll background the scroll engage will also be triggered. This does not match Shell behavior.

Closing as fixed by #8154


GitHub actions: replace python linting

Description
This PR replaces the action used to lint python files, as the one previously used  is affected by a dependency issue and it appears to be unmaintained.

/merge


madge support for typescript 3.6.2

Hi, there is no support for typescript version 3.6.2. Console output:
SUPPORTED TYPESCRIPT VERSIONS: >=3.2.1 <3.6.0
YOUR TYPESCRIPT VERSION: 3.6.2

use madge --dot bin/nest.ts > inline.gv in the root dir of https://github.com/nestjs/nest-cli will reproduce this problem.
So who could solve this problem.

The issues you have is not related to the version of TypeScript @brizer. You've missed to specify the TypeScript config. Try  madge --ts-config=tsconfig.json --dot bin/nest.ts > inline.gv and it should work.


[srml-support] restrict patch version of syn

Rel #2326
Restrict the version of syn because of breaking change in parsing API.

@ascjones could you please backport this?

Fix backported instead


Omnisharp not working in VS Code online (code spaces) for standard dotnet web api application.

Issue Description
In VS Code online (codespaces), Omnisharp seems to not work anymore. It doesn't find any of the system libraries, etc:

Lot's of error messages like:
The type or namespace name 'System' could not be found (are you missing a using directive or an assembly reference?) [TestApi, TestApi]

Steps to Reproduce

Create a new VS code online (codespaces) instance with the standard image.
Create a new web api with dotnet new webapi
Install C# extensions
Open .cs file and look at the highlighting and errors.

Expected Behavior
Omnisharp and C# extensions should work out of the box.
Actual Behavior
As described above. Highlighting and intellisense does not appear to work.
Logs
OmniSharp log
Starting OmniSharp server at 7/15/2020, 4:14:17 PM
Target: /home/codespace/workspace
OmniSharp server started.
Path: /home/codespace/.vscode-remote/extensions/ms-dotnettools.csharp-1.22.1/.omnisharp/1.35.3/run
PID: 1885
    Starting OmniSharp on debian 9.0 (x64)

    DotNetPath set to dotnet

    Located 1 MSBuild instance(s)
        1: StandAlone 16.4 - "/home/codespace/.vscode-remote/extensions/ms-dotnettools.csharp-1.22.1/.omnisharp/1.35.3/omnisharp/.msbuild/Current/Bin"

    MSBUILD_EXE_PATH environment variable set to '/home/codespace/.vscode-remote/extensions/ms-dotnettools.csharp-1.22.1/.omnisharp/1.35.3/omnisharp/.msbuild/Current/Bin/MSBuild.dll'

    Registered MSBuild instance: StandAlone 16.4 - "/home/codespace/.vscode-remote/extensions/ms-dotnettools.csharp-1.22.1/.omnisharp/1.35.3/omnisharp/.msbuild/Current/Bin"
        CscToolExe = csc.exe
        MSBuildToolsPath = /home/codespace/.vscode-remote/extensions/ms-dotnettools.csharp-1.22.1/.omnisharp/1.35.3/omnisharp/.msbuild/Current/Bin
        CscToolPath = /home/codespace/.vscode-remote/extensions/ms-dotnettools.csharp-1.22.1/.omnisharp/1.35.3/omnisharp/.msbuild/Current/Bin/Roslyn
        BypassFrameworkInstallChecks = true
        MSBuildExtensionsPath = /home/codespace/.vscode-remote/extensions/ms-dotnettools.csharp-1.22.1/.omnisharp/1.35.3/omnisharp/.msbuild

    Detecting Cake files in '/home/codespace/workspace'.

    Could not find any Cake files

    No solution files found in '/home/codespace/workspace'

    Queue project update for '/home/codespace/workspace/TestApi/TestApi.csproj'

    Detecting CSX files in '/home/codespace/workspace'.

    Could not find any CSX files

    Invoking Workspace Options Provider: OmniSharp.Roslyn.CSharp.Services.CSharpFormattingWorkspaceOptionsProvider, Order: 0

    Loading project: /home/codespace/workspace/TestApi/TestApi.csproj

    Invoking Workspace Options Provider: OmniSharp.Roslyn.CSharp.Services.RenameWorkspaceOptionsProvider, Order: 100

    Invoking Workspace Options Provider: OmniSharp.Roslyn.CSharp.Services.ImplementTypeWorkspaceOptionsProvider, Order: 110

    Invoking Workspace Options Provider: OmniSharp.Roslyn.CSharp.Services.BlockStructureWorkspaceOptionsProvider, Order: 140

    Configuration finished.

    Omnisharp server running using Stdio at location '/home/codespace/workspace' on host 1783.

    Successfully loaded project file '/home/codespace/workspace/TestApi/TestApi.csproj'.

    Adding project '/home/codespace/workspace/TestApi/TestApi.csproj'

    Update project: TestApi

C# log
It is empty
Environment information
VSCode version: 1.45.1
C# Extension: 1.22.1
Mono Information
        OmniSharp using built-in mono
Dotnet Information
.NET Core SDK (reflecting any global.json):
 Version:   3.1.202
 Commit:    6ea70c8dca
Runtime Environment:
OS Name:     debian
OS Version:  9
OS Platform: Linux
RID:         debian.9-x64
Base Path:   /opt/dotnet/sdks/3.1.202/sdk/3.1.202/
Host (useful for support):
Version: 3.1.4
Commit:  0c2e69caa6
.NET Core SDKs installed:
1.1.14 [/home/codespace/.dotnet/sdk]
2.1.806 [/home/codespace/.dotnet/sdk]
2.2.402 [/home/codespace/.dotnet/sdk]
3.0.103 [/home/codespace/.dotnet/sdk]
3.1.202 [/home/codespace/.dotnet/sdk]
.NET Core runtimes installed:
Microsoft.AspNetCore.All 2.2.7 [/home/codespace/.dotnet/shared/Microsoft.AspNetCore.All]
Microsoft.AspNetCore.App 2.2.7 [/home/codespace/.dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 3.0.3 [/home/codespace/.dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 3.1.4 [/home/codespace/.dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.NETCore.App 1.1.13 [/home/codespace/.dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 2.2.7 [/home/codespace/.dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 3.0.3 [/home/codespace/.dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 3.1.4 [/home/codespace/.dotnet/shared/Microsoft.NETCore.App]
To install additional .NET Core runtimes or SDKs:
https://aka.ms/dotnet-download

Visual Studio Code Extensions

Extension
Author
Version

csharp
ms-dotnettools
1.22.1

vscode-pull-request-github
GitHub
0.16.0

vsonline
ms-vsonline
1.0.2471

@hansenms Thanks for reporting this issue. I was able to reproduce it.
From the command line the project restores and builds fine. The design time build seems to be fine because the project loads and errors are reported. But it seems the sdk reference assemblies are not being added properly to the workspace. Will need some additional investigation to determine where the issue lies.

@JoeRobich I think this is only somewhat new (like, last week or so) as I had had it working recently but it's just stopped. Unsure if there was an omnisharp or codespaces release in that timeframe that could be a point of investigation.

Hi. I have this issue as well and going to C# Extension: 1.22.0 did not help. looks like the issue would be in codespaces.

Hi all,
I have a quite similar problem (but on Mac OS) and filed it at nuget, which may not be the best place it seems...
https://github.com/NuGet/docs.microsoft.com-nuget/issues/2102

Cheers,
Daniel

Just created a new default code space.  Connected via the browser. Ran the following commands:
dotnet new sln
dotnet new web
dotnet sln add workspace.csproj
dotnet restore
dotnet build

Restore and build work.  IDE looks like this:

Currently looking into this. The issue is that, during the design time build, MSBuild is not resolving Framework references in a way that our project system expects.

Is there a work around?  Can we just update SDK to fix the issue?

Hi all,
see here for the solution that worked for me: https://github.com/OmniSharp/omnisharp-vscode/issues/3314#issuecomment-661920494
Uninstalled Mono that was installed by brew. Installed Mono from the official website => No problems any more!

As a workaround you can enter the following into the VS Code terminal:
sudo apt install -y dotnet-sdk-3.1
rm -rf /home/codespace/.dotnet

At this point if you type dotnet --info into the terminal it will be unable to find dotnet.
Kill the terminal by clicking the trash can.

ctrl+~ (or cmd+~) to reopen the terminal.
Enter dotnet --info and you should have the 3.1.301 sdk installed.
Restart OmniSharp by pressing ctrl+p (or cmd+p) and entering >Restart Omnisharp.

OmniSharp should restart and missing type errors should be gone.

I have opened an issue against the dev-containers - see https://github.com/microsoft/vscode-dev-containers/issues/428
This issue seems to be that the .App.Ref packs are missing.
Installed on the default codespaces image:

Delivered in the Linux binaries tar.gz:

I have verified that adding only these missing pack folders fixes the issue with project loading in the C# extension.

Closing this issue. Codespaces has updated to a newer version of the .dev-container used in the default codespaces environment with properly installed .net core SDK.
You will need to either delete and recreate your codespaces environment or follow the workaround in https://github.com/OmniSharp/omnisharp-vscode/issues/3913#issuecomment-663749636 to install a working SDK.


Add grpc-gateway (draft PR)

Add grpc-gateway for stream data model to generate RESTFul API.
the modification in banyand/liasion/http/server.go is uncompleted.

@remGigo
All API endpoints are under /api. for example, to get a named trace stream, one could issue curl http://localhost:17913/api/v1/stream/schema/trace.
UI related assets are under /

Fixes https://github.com/apache/skywalking/issues/9044


Adding PostgreSQL Filer Support

Hello - I've been working on a PostgreSQL filer store. It is based on the existing mysql implementation.
To use it, you use the same filer.confFile configuration file, and add a "postgres" section instead of a "mysql" section.
My golang experience is still weak, but it seems to be working fine.

Thanks!


You modified ... twice on ...

Environment:  Ember 2.15.3
Reproducer:
  model() {
    let foo = Ember.Object.create();
    foo.set('order', 'Second');
    foo.set('freetext', 'Foo Bar');

    return Ember.RSVP.hash({
      foo: foo,
    });

{{#form-for model.foo as |f|}}
  {{f.select-field 'order' 'First Second'}}
{{/form-for}}

After clicking on select box and changing item:
"Assertion Failed: You modified "promptIsSelectable" twice on <reproducer1@component:form-fields/select-field::ember382> in a single render. It was rendered in "component:one-way-select" and modified in "component:one-way-select". This was unreliable and slow in Ember 1.x and is no longer supported. See https://github.com/emberjs/ember.js/issues/13948 for more details."
I'm almost sure that the problem is in upgrading Ember but I did not found a way how to fix it yet.

The second modification of promptIsSelectable (and options) is in didReceiveAttrs() in ./ember-one-way-controls/addon/components/one-way-select.js

Closing the issue because the bug was tracked down to ember-one-way-controls where it should be fixed. https://github.com/DockYard/ember-one-way-controls/pull/176

:( unfortunately this PR was not merged in...
Please see here: https://github.com/DockYard/ember-one-way-controls/blob/v3.1.0/addon/components/one-way-select.js#L67


Minimum character for prefix true option

Is there a way I can specify minimum number of characters for prefix? Right now, it returns even for the first character.
class Toon < ActiveRecord::Base
  include PgSearch

  pg_search_scope :search_by_name,
                  against: :name,
                  tsearch: {
                    prefix: true
                  }
end

cowboy_bebop = Toon.create!(name: 'cowboy bebop')

Toon.search_by_name 'cow' # => [cowboy_bebop]
Toon.search_by_name 'co' # => [cowboy_bebop]
Toon.search_by_name 'c' # => [cowboy_bebop]

I was thinking of something like this (see min_prefix key):
class Toon < ActiveRecord::Base
  include PgSearch

  pg_search_scope :search_by_name,
                  against: :name,
                  tsearch: {
                    prefix: true,
                    min_prefix: 3
                  }
end

which will act like this:
Toon.search_by_name 'cow' # => [cowboy_bebop]
Toon.search_by_name 'co' # => []
Toon.search_by_name 'c' # => []

I have the same problem.
first = Good.create!(title: 'iPhone 5 Battary')
second = Good.create!(title: 'iPhone 5s Battary')
pg_search_scope :search_by_all, associated_against: {
      models: [:title],
      brands: [:title],
      part: [:title]
  }, using: {
      tsearch: { prefix: true }
  }
Good.search_by_all 'iphone 5 batt'

It's return first and second goods if prefix true.

I'v solved this problem, it's not quite beautiful, but it works. If you run the search twice, the first time with the prefix: true parameter, the second time (you can also configure associations for yourself) without it.

params[:search] = 'iPhone 5 battery'

pg_search_scope :search_all, against: [:title, :tag, :barcode], associated_against: {
      models: [:title],
      brands: [:title]
  }, using: {
      tsearch: {prefix: true}
  }
pg_search_scope :search_model, associated_against: {
      models: [:title]
}

The next step in the controller is to search for the length of the word we need in the string that will fit our condition. (greater than 3 or as in my case equal to 1)
model = nil
a = params[:search].split(' ') # transform our string into an array ['iPhone', '5', 'battery']
a.each do |item|
   item.length == 1 ? model = item : nil # search our model (or length > 3 as you want)
end
search = Part.search_all(params[:search]) # First seach method
!model.blank? ? search = search.search_model(model) : nil # If we find a model, we do a second search without the parameter (prefix: true)

return search


Trade

Bot show logo signals trade but not apply in my account

did you verify the api key and secret? Please also note, that in case of paper trading ( Binance testnet) testnet=True parameter needs to be added to Client configuration in server script

did you verify the api key and secret? Please also note, that in case of paper trading ( Binance testnet) testnet=True parameter needs to be added to Client configuration in server script; please also ensure to add "actions": ["notify", "trade"] to config file

I have all config already done i see logs in terminal that post order but in my account no order submitted

please check the collector.log for any error messages

please check the collector.log for any error messages

INFO ===> Start trade task. Timestamp 168255$
2023-04-26 23:54:01,149 ERROR Wrong status value None.
2023-04-26 23:54:01,149 ERROR Task exception was never retrieved
future: <Task finished name='Task-374' coro=<main_trader_task() done$
Traceback (most recent call last):
File "/root/ml/intelligent-trading-bot/service/trader.py", line 12$
print(f"SCORE: {signal.get('score'):+.3f}. PRICE: {signal.get('c$
TypeError: unsupported format string passed to NoneType.format
2023-04-26 23:55:00,059 INFO ===> Start collector task. Timestamp

based on a current error message it is difficult to propose a solution; my recommendation is to pull the latest files from GitHub and start from scratch

It's the last files already,  you test trading or no


Downloads not working

I'm not able to get either executable to work on neither my main computer or my laptop. When attempting to download anything, I just get an error "Download for (videoname here) did not complete, please try again." Both systems are Windows 10
Looking in the error logs I get nothing that shows an error being thrown.
Was unable to get the script to run at all on Kali. The error there is that 'requests' isn't recognized and I was unable to get that installed.
On Ubuntu I get the following traceback:
Traceback (most recent call last):
File "./main.py", line 11, in
class Main():
File "./main.py", line 65, in Main
Lifter(url=args.input[0], resolution=args.highdef, logger=logger, season=args.season,
File "/home/brin/Downloads/wco-dl-2020-01-27/Lifter.py", line 43, in init
self.download_show(url, season, ep_range, exclude, output)
File "/home/brin/Downloads/wco-dl-2020-01-27/Lifter.py", line 147, in download_show
download_url = self.find_download_link(item)
File "/home/brin/Downloads/wco-dl-2020-01-27/Lifter.py", line 85, in find_download_link
ending_number = int(re.search(' - ([0-9]+)', script_url).group(1))
AttributeError: 'NoneType' object has no attribute 'group'
I followed the directions to the letter multiple times and I can't get this to work. I'm at a lost for what I'm doing wrong.

Please try the new release as I just updated the file with patches that should have fixed this.
If it still does not fix it please let me know!


UNR-948: add support for passing in command line flags for local launch

Contributions: We are not currently taking public contributions - see our contributions policy. However, we are accepting issues and we do want your feedback.

Description
This change allows passing in command line flags for spatial local launch by specifying them in Project Settings under  SpatialOS GDK for Unreal:

Flags can be added both with and without --, and get appended to the end of launch command. For instance, adding the flags in the above example would resolve to executing:
spatial.exe local launch DefaultLaunchConfig.json --runtime_log_level debug --enable_jvm_debugging --enable_pre_run_check --experimental_runtime someruntime --snapshot snappy  ^& pause.
Release note
"Feature:" enable passing in command line flags for local launch via Project Settings.
Tests
Locate to SpatialOS GDK for Unreal settings under Project Settings and add some flags under Command line flags for local launch. Then start Spatial runtime by clicking on the green Start button.
Observe that the terminal window that opens up shows the flags being passed in in its header, and that the flags impact the launch (for instance, passing in an invalid flag would cause errors). You can also see the flags added to the launch command logged in the editor logs.

@ieva-improbable is this ready to review?

@Vatyx yup, it's ready to be looked at.

Have we made user-facing documentation for it? If not, we should make a task to document it and let @NotRobSheridan know.


Fixes Issue #129: Stars filter not getting reset on updating the language

This fixed issue #129
@max-programming Please have a look at it.

@NishidhJain I think this is not the right solution. We actually want to keep all the previous query params.
So it's better that when the language is changes, keep all the previous query params (stars as well) and just change the path

@max-programming In my opinion if we are the updating the language, then we should see all the repos for that language and not with the previous filter because the old filters might not be applicable for new language. In that case the user will see 404 page & think that there are no repos for newly selected language until he/she sees that URL contains some filters as well and removing them will show some repos which is hard to detect.
Please share your views on this. Thanks!

Hey @janaSunrise, please share your thoughts on this, would be happy to know what do you think

LGTM! Has it been tested?

Thanks for the review @janaSunrise. Can you let me know the meaning of LGTM?
@max-programming Can we merge this PR now

Thanks @NishidhJain!
Also LGTM means "Looks good to me"


Make size argument of ol.View#calculateExtent() optional

Follow-up to #6264, as suggested by @tschaub (https://github.com/openlayers/ol3/pull/6264#issuecomment-268036472).

The [100, 100] default is completely arbitrary. It's just so we don't bail out and have to throw an exception if no map viewport is found on the page.


'Not counted' remains in stocktake column when same amount is entered

In the latest version, when you're doing a stocktake and you enter an actual amount that is the same as the snapshot amount, the cell automatically reverts to say 'Not Counted'.
Whilst I realise why it's doing this (because it will make no change, so it's literally not doing a stock adjustment with it), it's misleading, particularly when multiple people are working on a stocktake and ESPECIALLY when you're jumping around items (not ideal practice but happens a lot).
It would be better to keep the entered amount appearing in the cell or revert it to 'No Change' rather than jumping back to 'Not Counted'. In our most recent stocktake, people repeatedly got confused, returned to lines and counted them again.

Fixed in https://github.com/sussol/mobile/pull/580
This should have been the default behaviour

Duplicate of #575


K8SPS-237 - Fix running tests on minikube

CHANGE DESCRIPTION
Problem:
Tests currently cannot run on MiniKube because of number of reasons.
Cause:
Resources, LoadBalancer, affinity etc.
Solution:
Set affinity to none just on MiniKube. Lower resources for haproxy pods, fix waiting for cluster consistency, fix timeouts.
Corresponding PR for pipelines is located here: https://github.com/Percona-Lab/jenkins-pipelines/pull/1956
CHECKLIST
Jira

[x] Is the Jira ticket created and referenced properly?
[x] Does the Jira ticket have the proper statuses for documentation (Needs Doc) and QA (Needs QA)?
[x] Does the Jira ticket link to the proper milestone (Fix Version field)?

Tests

[ ] Are E2E tests passing?
[ ] Are unit tests passing?
[ ] Are linting tests passing?
[ ] Is an E2E test/test case added for the new feature/change?
[ ] Are unit tests added where appropriate?

Config/Logging/Testability

[ ] Are all needed new/changed options added to default YAML files?
[ ] Are the manifests (crd/bundle) regenerated if needed?
[ ] Did we add proper logging messages for operator actions?
[ ] Did we ensure compatibility with the previous version or cluster upgrade process?
[ ] Does the change support oldest and newest supported PS version?
[ ] Does the change support oldest and newest supported Kubernetes version?

Test name
Status

demand-backup
passed

init-deploy
passed

auto-config
passed

gr-init-deploy
passed

gr-scaling
passed

monitoring
passed

config
passed

semi-sync
passed

service-per-pod
passed

gr-demand-backup
passed

one-pod
passed

haproxy
passed

sidecars
passed

limits
passed

version-service
passed

scaling
failed

tls-cert-manager
passed

gr-tls-cert-manager
passed

users
failed

async-ignore-annotations
passed

gr-ignore-annotations
passed

We run 21 out of 21

commit: https://github.com/percona/percona-server-mysql-operator/pull/276/commits/4525a0f6f3241b64bc3d338d898a92c9eeaec460
image: perconalab/percona-server-mysql-operator:PR-276-4525a0f

Test name
Status

auto-config
passed

config
passed

one-pod
passed

haproxy
passed

demand-backup
passed

gr-demand-backup
passed

scaling
failed

init-deploy
passed

gr-init-deploy
passed

gr-scaling
passed

monitoring
passed

semi-sync
passed

service-per-pod
passed

sidecars
passed

limits
passed

version-service
passed

tls-cert-manager
passed

gr-tls-cert-manager
passed

users
failed

async-ignore-annotations
passed

gr-ignore-annotations
passed

We run 21 out of 21

commit: https://github.com/percona/percona-server-mysql-operator/pull/276/commits/4525a0f6f3241b64bc3d338d898a92c9eeaec460
image: perconalab/percona-server-mysql-operator:PR-276-4525a0f

Test name
Status

demand-backup
passed

gr-demand-backup
passed

scaling
failed

auto-config
passed

config
passed

one-pod
passed

haproxy
passed

init-deploy
passed

gr-init-deploy
passed

gr-scaling
passed

monitoring
passed

semi-sync
passed

service-per-pod
passed

sidecars
passed

limits
passed

version-service
passed

tls-cert-manager
passed

gr-tls-cert-manager
passed

users
failed

async-ignore-annotations
passed

gr-ignore-annotations
passed

We run 21 out of 21

commit: https://github.com/percona/percona-server-mysql-operator/pull/276/commits/4525a0f6f3241b64bc3d338d898a92c9eeaec460
image: perconalab/percona-server-mysql-operator:PR-276-4525a0f

Test name
Status

demand-backup
passed

init-deploy
passed

auto-config
passed

gr-init-deploy
passed

gr-scaling
passed

monitoring
passed

config
passed

semi-sync
passed

gr-demand-backup
passed

service-per-pod
passed

sidecars
passed

one-pod
passed

limits
passed

haproxy
passed

version-service
passed

scaling
failed

tls-cert-manager
passed

gr-tls-cert-manager
passed

users
failed

async-ignore-annotations
passed

gr-ignore-annotations
passed

We run 21 out of 21

commit: https://github.com/percona/percona-server-mysql-operator/pull/276/commits/0dbccf7eb7717cd1a6d2c2ccb00350b4b00008d7
image: perconalab/percona-server-mysql-operator:PR-276-0dbccf7

Test name
Status

demand-backup
passed

gr-demand-backup
passed

scaling
failed

auto-config
passed

config
passed

one-pod
passed

haproxy
passed

init-deploy
passed

gr-init-deploy
passed

gr-scaling
passed

monitoring
passed

semi-sync
passed

service-per-pod
passed

sidecars
passed

limits
passed

version-service
passed

tls-cert-manager
passed

gr-tls-cert-manager
passed

users
failed

async-ignore-annotations
failed

gr-ignore-annotations
passed

We run 21 out of 21

commit: https://github.com/percona/percona-server-mysql-operator/pull/276/commits/ec25e592d18c36ff169968bc5afc824013643038
image: perconalab/percona-server-mysql-operator:PR-276-ec25e59

Test name
Status

auto-config
passed

config
passed

one-pod
passed

haproxy
passed

demand-backup
passed

gr-demand-backup
passed

scaling
failed

init-deploy
passed

gr-init-deploy
passed

gr-scaling
passed

monitoring
passed

semi-sync
passed

service-per-pod
passed

sidecars
passed

limits
passed

version-service
passed

tls-cert-manager
passed

gr-tls-cert-manager
passed

users
failed

async-ignore-annotations
failed

gr-ignore-annotations
passed

We run 21 out of 21

commit: https://github.com/percona/percona-server-mysql-operator/pull/276/commits/ec25e592d18c36ff169968bc5afc824013643038
image: perconalab/percona-server-mysql-operator:PR-276-ec25e59

Test name
Status

We run 0 out of 21

commit: https://github.com/percona/percona-server-mysql-operator/pull/276/commits/ae3f501d23010beb7784f706cc8a8295eedc9cb0
image: perconalab/percona-server-mysql-operator:PR-276-ae3f501

Test name
Status

We run 0 out of 21

commit: https://github.com/percona/percona-server-mysql-operator/pull/276/commits/9ec56c92a226e5ab0fb8078f8ed4ced8392b1f65
image: perconalab/percona-server-mysql-operator:PR-276-9ec56c9

Test name
Status

auto-config
passed

demand-backup
passed

init-deploy
passed

gr-init-deploy
passed

gr-scaling
passed

config
passed

monitoring
passed

gr-demand-backup
passed

semi-sync
passed

one-pod
passed

service-per-pod
passed

haproxy
passed

sidecars
passed

limits
passed

version-service
passed

scaling
passed

tls-cert-manager
passed

gr-tls-cert-manager
passed

users
failed

async-ignore-annotations
passed

gr-ignore-annotations
passed

We run 21 out of 21

commit: https://github.com/percona/percona-server-mysql-operator/pull/276/commits/6d7f2580b54318fc24a9cd73e8c6005cbbffc433
image: perconalab/percona-server-mysql-operator:PR-276-6d7f258

Test name
Status

auto-config
passed

demand-backup
passed

init-deploy
passed

gr-init-deploy
passed

gr-scaling
passed

monitoring
passed

config
passed

semi-sync
passed

service-per-pod
passed

gr-demand-backup
passed

sidecars
passed

one-pod
passed

limits
passed

haproxy
passed

version-service
passed

scaling
passed

tls-cert-manager
passed

gr-tls-cert-manager
passed

users
passed

async-ignore-annotations
passed

gr-ignore-annotations
passed

We run 21 out of 21

commit: https://github.com/percona/percona-server-mysql-operator/pull/276/commits/50dcb973832f13ad8b3b2ca22601e9c8e0fddbc3
image: perconalab/percona-server-mysql-operator:PR-276-50dcb97

Test name
Status

auto-config
passed

demand-backup
passed

init-deploy
passed

gr-init-deploy
passed

gr-scaling
passed

monitoring
passed

semi-sync
passed

service-per-pod
passed

gr-demand-backup
passed

config
passed

sidecars
passed

limits
passed

version-service
passed

one-pod
passed

scaling
passed

haproxy
passed

tls-cert-manager
passed

users
passed

gr-tls-cert-manager
passed

async-ignore-annotations
passed

gr-ignore-annotations
passed

We run 21 out of 21

commit: https://github.com/percona/percona-server-mysql-operator/pull/276/commits/274dcb998244e721c5a66d07108918ea2981db39
image: perconalab/percona-server-mysql-operator:PR-276-274dcb9


firepicker box hide the half of the color value

Like the title say , the box where i see the color hide the half of the edit color value in firebug...so  it's more difficult to edit it.
Am i alone?

http://www.flickr.com/photos/31792685@N02/6544697623/in/photostream
The color editor obscures the CSS. I fixed it by going to
MAC:
/Users/[user_name]/Library/Application<EMAIL_ADDRESS>WIN7:
<EMAIL_ADDRESS>WIN-XP
C:\Documents and Settings\[user_name]\Application<EMAIL_ADDRESS>and changing the margins on the class .firepicker_color_container
from
margin-top: -10px;
margin-left: 4px;
to: margin:0px;

Hello,
this has been fixed in the newest version.
Thanks!


Generate Excel for flying time

Under #28
Glider and Tow
As maintenance
I want a csv file
... so that they can use the numbers in other systems (AMS) or manual reports.
... use in Excel.

This report is required in both PDF and CSV (excel) formats. PDFs are stored for reference, CSVs are used for data manipulation and stats

Q. What is a connectedAircraftRecord (FlightRecord property of type FlightRecord)? Is it two plane (towplane and glider) "connected" together? Or Twice the same plane doing a connection (transit) between to legs of the flight?

Q. In provided Excel example, numbers are treated as String. This result in "warning" in Excel, plus they are left aligned. Do we want them right aligned and treated as Number by Excel? If yes how important is this? Can we wait till later release?

That relationship links a glider flight to the corresponding flight for the launch vehicle. That's important so that, for example, if you change the takeoff time of a glider it makes sure the towplane takeoff time is also changed to be the same. The relationship is not always used, for example if a towplane flies by itself.

In the timesheets report for the sequence column, there is this code:
                var text = recordBeingExamined.flightSequence

                if recordBeingExamined.flightSequence == "Transit"
                {
                    text += " \(recordBeingExamined.transitRoute)"
                }

                if let connectedRoute = recordBeingExamined.connectedAircraftRecord?.transitRoute,
                    recordBeingExamined.connectedAircraftRecord?.flightSequence == "Transit"
                {
                    text += " \(connectedRoute)"
                }

Which seem to allow two differents transitRoute for the glider and the towplane. How is this possible? Or am I mistaken?

Negative. The issue here is that the sequence for a towplane that is towing is always "towing". This is a throwback to paper timesheets where there was only one "sequence" column and hence only one sequence for each flight. I suppose in a digital world we could design something where flights could have multiple sequence tags, but when I started this project I had to stay pretty close to what works on paper. So recording all tows as "towing", whether they are x-country or not, seemed like the best idea since that means that there will be the same number of tows as glider flights. Always.
So what the code snipped actually does is that if its outputting a glider transit flight or a towplane transit flight without a glider, the first IF statement is triggered. If its outputting a record for a towplane that was doing a transit flight with a glider, the second IF statement is triggered because it checks and sees that there is a connected glider record, that that record is for a x-country, and it then uses the route from the glider record. Therefore, for a joint glider/towplane x-country, only the glider routing is used, for both planes, so the situation where transitRoute is different would not arise.


Fix #16, can't edit child name from the review screen

Fixes #16

Did this get fixed elsewhere?

Code is definitely still needed. I just tested it and it fixes the issue, so I'm okay with merging. Going to bump the version as well, so we can know when this fix gets to prod.


Add default_redirection_url as configuration option

This URL is used when user access the authentication domain without providing
the 'redirect' query parameter. In that case, Authelia does not know
where to redirect the user.
If the parameter is defined, Authelia can redirect the user to a default page
when no redirect parameter is provided.
When user is already authenticated and tries to access the authentication
domain, the "already logged in" page is rendered and it now tells the user he
is to be redirected in few seconds and uses this URL to redirect.
This parameter is optional. If it is not provided, there is only a notification
message at the end of the authentication process, as before, and the user is
not redirected when visiting the authentication domain while already
authenticated.

Hi @clems4ever
I think this has broken something. I've just pulled the latest docker develop (from 9 hours ago which alights to this merge) and I'm getting stuck in a login loop between the first and second stage, first stages succeeds, but the second says I'm not logged in.
Will have to investigate a bit more later, hopefully today.

Hello @jmccoy555 , the integration tests were all green and the feature is definitely tested, this is weird. I'll pay attention to this while developing new features. If you find how to reproduce before I do, it would be awesome if you can open a new ticket to give details on the test case.
What do you think about the feature, btw?
Thank you.

Hi @clems4ever
I've just tried again with the latest develop (just in case there was something odd going on for some reason) and still no luck. Here's my log from a single log in attempt. Any thoughts so I can investigate and open a ticket if necessary, there are a few 'undefined' enteries?
I've checked my Authelia and nginx config against the develop branch and everything looks good to me.
info: date='Fri Oct 20 2017 07:58:54 GMT+0000 (UTC)' message='Listening on port 80...'
debug: date='Fri Oct 20 2017 07:59:38 GMT+0000 (UTC)' method='GET', path='/' requestId='d7180888-a591-4919-9f84-8a7ee3a48003' sessionId='8GD6SmCUaXLAuDoFCXu_zzC1F8sC6oIs' ip='::ffff:<IP_ADDRESS>' message='Headers = {"x-original-uri":"/","host":"auth.my.domain","x-real-ip":"<IP_ADDRESS>","connection":"close","user-agent":"Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.52 Safari/537.36","upgrade-insecure-requests":"1","accept":"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,/;q=0.8","accept-encoding":"gzip, deflate, br","accept-language":"en-US,en;q=0.9","cookie":"connect.sid=s%3AscQ8SHGoXK4tp3R11l_MnuGxK3dSEP7G.WS78Smkz3mxFbweIX1CpC6eWj0E8hPyQR3XooZ8qrrs","if-none-match":"W/"62d-DKKmhxgE4YmdWt2m7kCRHsYI2b4""}'
debug: date='Fri Oct 20 2017 07:59:38 GMT+0000 (UTC)' method='GET', path='/' requestId='d7180888-a591-4919-9f84-8a7ee3a48003' sessionId='8GD6SmCUaXLAuDoFCXu_zzC1F8sC6oIs' ip='::ffff:<IP_ADDRESS>' message='Authentication session 8GD6SmCUaXLAuDoFCXu_zzC1F8sC6oIs was undefined. Resetting.'
debug: date='Fri Oct 20 2017 07:59:40 GMT+0000 (UTC)' method='POST', path='/api/firstfactor' requestId='87a4a48d-d915-4dc8-9beb-81a971fa3473' sessionId='P8InZLsbrStViuY5YgrIOYgI9PDBUIWS' ip='::ffff:<IP_ADDRESS>' message='Headers = {"x-original-uri":"/api/firstfactor","host":"auth.my.domain","x-real-ip":"<IP_ADDRESS>","connection":"close","content-length":"37","accept":"/","origin":"https://auth.my.domain","x-requested-with":"XMLHttpRequest","user-agent":"Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.52 Safari/537.36","content-type":"application/x-www-form-urlencoded; charset=UTF-8","referer":"https://auth.my.domain/","accept-encoding":"gzip, deflate, br","accept-language":"en-US,en;q=0.9","cookie":"connect.sid=s%3AscQ8SHGoXK4tp3R11l_MnuGxK3dSEP7G.WS78Smkz3mxFbweIX1CpC6eWj0E8hPyQR3XooZ8qrrs"}'
info: date='Fri Oct 20 2017 07:59:40 GMT+0000 (UTC)' method='POST', path='/api/firstfactor' requestId='87a4a48d-d915-4dc8-9beb-81a971fa3473' sessionId='P8InZLsbrStViuY5YgrIOYgI9PDBUIWS' ip='::ffff:<IP_ADDRESS>' message='Starting authentication of user "james"'
debug: date='Fri Oct 20 2017 07:59:40 GMT+0000 (UTC)' method='POST', path='/api/firstfactor' requestId='87a4a48d-d915-4dc8-9beb-81a971fa3473' sessionId='P8InZLsbrStViuY5YgrIOYgI9PDBUIWS' ip='::ffff:<IP_ADDRESS>' message='Authentication session P8InZLsbrStViuY5YgrIOYgI9PDBUIWS was undefined. Resetting.'
info: date='Fri Oct 20 2017 07:59:40 GMT+0000 (UTC)' method='POST', path='/api/firstfactor' requestId='87a4a48d-d915-4dc8-9beb-81a971fa3473' sessionId='P8InZLsbrStViuY5YgrIOYgI9PDBUIWS' ip='::ffff:<IP_ADDRESS>' message='No regulation applied.'
debug: LDAP: Bind user 'cn=administrator,cn=users,dc=my,dc=lan'
debug: Computed users filter is sAMAccountName=james
debug: LDAP: searching for user dn of james
debug: LDAP: retrieved user dn is CN=James,CN=Users,DC=my,DC=lan
debug: LDAP: Bind user 'CN=James,CN=Users,DC=my,DC=lan'
debug: LDAP: Unbind user 'CN=James,CN=Users,DC=my,DC=lan'
debug: LDAP: Bind user 'cn=administrator,cn=users,dc=my,dc=lan'
debug: Computed users filter is sAMAccountName=james
debug: LDAP: searching for user dn of james
debug: LDAP: retrieved user dn is CN=James,CN=Users,DC=my,DC=lan
debug: LDAP: emails of user 'james' are<EMAIL_ADDRESS>debug: Computed users filter is sAMAccountName=james
debug: LDAP: searching for user dn of james
debug: LDAP: retrieved user dn is CN=James,CN=Users,DC=my,DC=lan
debug: Computed groups filter is (&(member=CN=James,CN=Users,DC=my,DC=lan)(objectclass=group))
debug: LDAP: groups of user james are [users]
debug: LDAP: Unbind user 'cn=administrator,cn=users,dc=my,dc=lan'
info: date='Fri Oct 20 2017 07:59:40 GMT+0000 (UTC)' method='POST', path='/api/firstfactor' requestId='87a4a48d-d915-4dc8-9beb-81a971fa3473' sessionId='P8InZLsbrStViuY5YgrIOYgI9PDBUIWS' ip='::ffff:<IP_ADDRESS>' message='LDAP binding successful. Retrieved information about user are {"emails":["james@my.domain"],"groups":["users"]}'
debug: date='Fri Oct 20 2017 07:59:40 GMT+0000 (UTC)' method='POST', path='/api/firstfactor' requestId='87a4a48d-d915-4dc8-9beb-81a971fa3473' sessionId='P8InZLsbrStViuY5YgrIOYgI9PDBUIWS' ip='::ffff:<IP_ADDRESS>' message='Authentication method for "" is "two_factor"'
debug: date='Fri Oct 20 2017 07:59:40 GMT+0000 (UTC)' method='POST', path='/api/firstfactor' requestId='87a4a48d-d915-4dc8-9beb-81a971fa3473' sessionId='P8InZLsbrStViuY5YgrIOYgI9PDBUIWS' ip='::ffff:<IP_ADDRESS>' message='Mark successful authentication to regulator.'
debug: date='Fri Oct 20 2017 07:59:40 GMT+0000 (UTC)' method='POST', path='/api/firstfactor' requestId='87a4a48d-d915-4dc8-9beb-81a971fa3473' sessionId='P8InZLsbrStViuY5YgrIOYgI9PDBUIWS' ip='::ffff:<IP_ADDRESS>' message='Redirect to '/secondfactor'' undefined
debug: date='Fri Oct 20 2017 07:59:40 GMT+0000 (UTC)' method='GET', path='/secondfactor' requestId='6c19ed54-e039-4fcb-a33a-708e046f393c' sessionId='GsnX6L7hBYGTptqekr9PWPz033pGQU1_' ip='::ffff:<IP_ADDRESS>' message='Headers = {"x-original-uri":"/secondfactor","host":"auth.my.domain","x-real-ip":"<IP_ADDRESS>","connection":"close","upgrade-insecure-requests":"1","user-agent":"Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.52 Safari/537.36","accept":"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,/;q=0.8","referer":"https://auth.my.domain/","accept-encoding":"gzip, deflate, br","accept-language":"en-US,en;q=0.9","cookie":"connect.sid=s%3AscQ8SHGoXK4tp3R11l_MnuGxK3dSEP7G.WS78Smkz3mxFbweIX1CpC6eWj0E8hPyQR3XooZ8qrrs","if-none-match":"W/"3fa-adkr1eyb1E9jknA0ZIY0Xna0Mss""}'
debug: date='Fri Oct 20 2017 07:59:40 GMT+0000 (UTC)' method='GET', path='/secondfactor' requestId='6c19ed54-e039-4fcb-a33a-708e046f393c' sessionId='GsnX6L7hBYGTptqekr9PWPz033pGQU1_' ip='::ffff:<IP_ADDRESS>' message='Authentication session GsnX6L7hBYGTptqekr9PWPz033pGQU1_ was undefined. Resetting.'
error: date='Fri Oct 20 2017 07:59:40 GMT+0000 (UTC)' method='GET', path='/secondfactor' requestId='6c19ed54-e039-4fcb-a33a-708e046f393c' sessionId='GsnX6L7hBYGTptqekr9PWPz033pGQU1_' ip='::ffff:<IP_ADDRESS>' message='Reply with error 401: First factor has not been validated yet.'
debug: date='Fri Oct 20 2017 07:59:40 GMT+0000 (UTC)' method='GET', path='/secondfactor' requestId='6c19ed54-e039-4fcb-a33a-708e046f393c' sessionId='GsnX6L7hBYGTptqekr9PWPz033pGQU1_' ip='::ffff:<IP_ADDRESS>' message='FirstFactorValidationError: First factor has not been validated yet.
at /usr/src/server/src/lib/FirstFactorValidator.js:10:43
at tryCatcher (/usr/src/node_modules/bluebird/js/release/util.js:16:23)
at Promise._settlePromiseFromHandler (/usr/src/node_modules/bluebird/js/release/promise.js:512:31)
at Promise._settlePromise (/usr/src/node_modules/bluebird/js/release/promise.js:569:18)
at Promise._settlePromiseCtx (/usr/src/node_modules/bluebird/js/release/promise.js:606:10)
at Async._drainQueue (/usr/src/node_modules/bluebird/js/release/async.js:138:12)
at Async._drainQueues (/usr/src/node_modules/bluebird/js/release/async.js:143:10)
at Immediate.Async.drainQueues (/usr/src/node_modules/bluebird/js/release/async.js:17:14)
at runCallback (timers.js:672:20)
at tryOnImmediate (timers.js:645:5)
at processImmediate [as _immediateCallback] (timers.js:617:5)'
debug: date='Fri Oct 20 2017 07:59:40 GMT+0000 (UTC)' method='GET', path='/error/401' requestId='edbf45cb-d136-421e-bd0d-e6d05e4ad175' sessionId='N-D4IViZM1FnG4LUNWcUwpBREDN9psl4' ip='::ffff:<IP_ADDRESS>' message='Headers = {"x-original-uri":"/secondfactor","host":"auth.my.domain","x-real-ip":"<IP_ADDRESS>","connection":"close","upgrade-insecure-requests":"1","user-agent":"Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.52 Safari/537.36","accept":"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,/;q=0.8","referer":"https://auth.my.domain/","accept-encoding":"gzip, deflate, br","accept-language":"en-US,en;q=0.9","cookie":"connect.sid=s%3AscQ8SHGoXK4tp3R11l_MnuGxK3dSEP7G.WS78Smkz3mxFbweIX1CpC6eWj0E8hPyQR3XooZ8qrrs","if-none-match":"W/"3fa-adkr1eyb1E9jknA0ZIY0Xna0Mss""}'

Hi @jmccoy555 , great news! Thanks.


Custom recognizer absent from Recognizer Type list

Describe the bug
The Custom recognizer doesn't appear in the Recognizer Type list.
Version
Version:  2.0.0-nightly.241915.204a82
Electron: 8.2.4
Chrome: 80.0.3987.165
NodeJS: 12.13.0
V8: 8.0.426.27-electron.0
Browser

[x] Electron distribution
[ ] Chrome
[ ] Safari
[ ] Firefox
[ ] Edge

OS

[ ] macOS
[x] Windows
[ ] Ubuntu

To Reproduce
Steps to reproduce the behavior:

Open Composer (latest nightly build)
Create a bot (I'm using the empty bot template)
Go to a dialog/bot project, click the drop-down list under Recognizer Type

Expected behavior
Custom recognizer should appear as an option in the list
Screenshots

Shiproom - lets get a PR then we can assess for R13

Shiproom - approved.  please merge today.


Add flow vscode extension

If the repository has a file with a flow extension, but does not have an extension, syntax of that file is not supported, making it difficult to read.
As a result, developers have to find and install related extensions themselves. To improve this, add it to the extension list.

The bigger issue is that having both TS and Flow causes issues too.

I'm not sure if we necessarily need this as an explicit recommendation for VSCode. We mainly just retain the Flow types for our own internal purposes.


[SPARK-18589] [SQL] Fix Python UDF accessing attributes from both side of join

What changes were proposed in this pull request?
PythonUDF is unevaluable, which can not be used inside a join condition, currently the optimizer will push a PythonUDF which accessing both side of join into the join condition, then the query will fail to plan.
This PR fix this issue by checking the expression is evaluable  or not before pushing it into Join.
How was this patch tested?
Add a regression test.

cc @hvanhovell

Test build #71346 has started for PR 16581 at commit 95d73fc.

Test build #71346 has finished for PR 16581 at commit 95d73fc.

This patch fails Python style tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/71346/
Test FAILed.

Test build #71349 has started for PR 16581 at commit c45126b.

Test build #71349 has finished for PR 16581 at commit c45126b.

This patch fails from timeout after a configured wait of `250m`.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/71349/
Test FAILed.

Test build #71520 has started for PR 16581 at commit e4db820.

Test build #71520 has finished for PR 16581 at commit e4db820.

This patch fails from timeout after a configured wait of `250m`.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/71520/
Test FAILed.

Test build #3541 has started for PR 16581 at commit e4db820.

Test build #3542 has started for PR 16581 at commit d6bba37.

Test build #71671 has started for PR 16581 at commit d6bba37.

Test build #3542 has finished for PR 16581 at commit d6bba37.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Test build #71671 has finished for PR 16581 at commit d6bba37.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/71671/
Test FAILed.

Test build #71681 has started for PR 16581 at commit f720c85.

Test build #71681 has finished for PR 16581 at commit f720c85.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/71681/
Test PASSed.

LGTM - merging to master/2.1.

I cannot backport it, could open a PR for 2.1.


Preloaded maps in new accounts

As part of the improvements in our onboarding process, we're adding two awesome maps to every new account to showcase the capabilities of Builder from the get-go.
We're still working on the maps but I wanted to open this ticket over here to give you all visibility that this is coming. Maybe we could even start the implementation and then just wait until we have the two final .carto files.
[Feature doc]

yes yes yes!

:100:

Issue update!
To-Do

[ ] Preload two maps to every new Builder account

We have our first map: Development.around.Union.Station.zip | @makella will have the second one ready soon!

[ ] Update the initial onboarding tour to reflect these preloaded maps

We'll share the changes as soon as we have them.

[ ] Implement an A/B test for the signup process, in which:

A: After signup, users will be taken directly to the first map, without passing through Dashboard.
B: After signup, users arrive in Dashboard, where they'll see our two preloaded maps.

[ ] Measure the test comparing the number of sessions and time spent per session for each test option (cc @msaenzde11 we have everything in place to measure this, right?)

Plan
@juanignaciosl When do you think you guys could start working on this?

@juanignaciosl When do you think you guys could start working on this?

End of January, if we're lucky U_U
cc @jorgesancha


Derive Reflect for Player

I'm using this in a project while persisting Player so that players can have a consistent name on the leaderboard.

Huh, this seemed to work on my end. Will look closer later.

Ah, I see. It is broken here because the bevy/bevy_asset feature is not included, so bevy_reflect/uuid is also not included.


Windows PowerShell 5.1 profile.ps1 cannot be loaded. A required certificate is not within its validity period

Windows Terminal version
No response
Windows build number
No response
Other Software
No response
Steps to reproduce
This error started yesterday (14 March 2024) after the Windows Update.
Open Windows 10, Windows PowerShell 5.1 using the start menu
Error immediately appears in console
Expected Behavior
Windows PowerShell 5.1 to open normally
Actual Behavior
This error is displayed,
. : File C:\Windows\System32\WindowsPowerShell\v1.0\profile.ps1 cannot be loaded. A required certificate is not within its validity period when verifying against the current system clock or
the timestamp in the signed file.
At line:1 char:3

. 'C:\Windows\System32\WindowsPowerShell\v1.0\profile.ps1'

+ CategoryInfo          : SecurityError: (:) [], PSSecurityException
+ FullyQualifiedErrorId : UnauthorizedAccess

Sounds like something that needs to be filed over on https://github.com/PowerShell/PowerShell/issues. That's the repo for PowerShell. Thanks!

@zadjii-msft thank you.  Filed this issue Windows PowerShell 5.1 profile.ps1 cannot be loaded.


Add validations on MCAS performance levels and other fields

There are many values in there beyond normal academic scores taht I didn't expect, including: PRG, TRN, MED, ABS, INP.  I didn't investigate how this impacts charts or tables of these scores in the product to understand how meaningful this is.

Relatedly, here's some older notes on MCAS validations from StudentAssessment.  These were from July 2018 but are stale now.  Just capturing them here since I'm removing them as code comments in https://github.com/studentinsights/studentinsights/pull/2160:
  # Notes on data quality for MCAS:
    # Looking at Somerville raw data July 2018:
    #   * ~40% of rows have no growth percentile.
    #   * ~5% of rows have no scale score.
    #   * Almost all rows have performance level (only 1 exception).
    # Looking at New Bedford raw data July 2018:
    #   * Zero rows have growth percentile.
    #   * 33% of rows have no scale score.
    #   * 16% of rows have no performance level.

This is

Relatedly, here's some older notes on MCAS validations from StudentAssessment.  These were from July 2018 but are stale now.  Just capturing them here since I'm removing them as code comments in https://github.com/studentinsights/studentinsights/pull/2160:
  # Notes on data quality for MCAS:
    # Looking at Somerville raw data July 2018:
    #   * ~40% of rows have no growth percentile.
    #   * ~5% of rows have no scale score.
    #   * Almost all rows have performance level (only 1 exception).
    # Looking at New Bedford raw data July 2018:
    #   * Zero rows have growth percentile.
    #   * 33% of rows have no scale score.
    #   * 16% of rows have no performance level.

This could use doing, but needs production access.  Helpful tidbit:
  Assessment.all.each do |assessment|
      puts "\n\nAssessment: #{assessment.family}, #{assessment.subject}"
      records = StudentAssessment.where(assessment_id: assessment)
      puts "records=#{records.size}"
      fields = [:scale_score, :growth_percentile, :performance_level, :percentile_rank]
      fields.each do |field|
        all_values = records.map {|r| r.send(field) }
        values = all_values.compact.uniq
        puts "  #{field}: unique=#{values.size}, nils=#{all_values.select(&:nil?).size}  #{values.min} - #{values.max}"
      end
    end
    nil


Compiler should error when encountering invalid regular expressions

In tests/cases/conformance/parser/ecmascript5/RegressionTests/parser579071.ts we have an invalid regex:
var x = /fo(o/;

This is not valid JavaScript, but we don't give any errors. It would be helpful to let users know when their regular expressions are invalid.

I had missed this by only searching for RegExp...
I'm working on a Spec-based RegExp tokenizer written in JS, hopefully you'll be able to make use of it.

Moved from #54744:
Previously worked on #51837, I found that TypeScript gives almost no syntax errors for regular expressions. I would like to file a PR about it, thus I am opening this issue for easier tracking.
But before I work on the issue, I would like to hear some opinions from the Team. I am not sure, but I suppose the job of providing syntax check should not be shirked to linters right?
Something I would like to do are:

Check for duplicated or unknown flags
Check for unbalanced parentheses, which is the most common mistake people make
Check for invalid escapes
But this should be done only for RegExps with u or v flag, i.e. in UnicodeMode, that means if we encounter a u or v flag we will need to rescan the whole RegExp again (!!) (i.e. redoing what is done in the current reScanSlashToken method)
And to check for invalid DecimalEscapes and k<GroupName>s we will also need to count the number of capture groups and record the names of all named capture groups along the way.

Am I doing too much or too less? I know doing too much may cause serious performace regressions (well, luckily regular expression literals are not that common compared with string literals). It should be better than doing nothing after all though.

Imbalanced parens / bracket seems like where 99% of the value is.
Duplicate flags seems like an error no one's ever made before; usually its /g or /m, I can't imagine writing /mgm unless a cat walked on my keyboard.
Erroring on escapes that are invalid regardless of flags seems like a fine compromise.
IMO it's really actually fine if once a year your program unconditionally crashes on startup in the cases where you made an extremely rare mistake. The value is in flagging errors that are made every day.

Yup, duplicate flags checking is valueless 😅, but unknown seems worth a bit (like if someone accidentally typed the Cyrillic у instead of the Latin y for some reason with the "Editor > Unicode Highlight: Ambiguous Characters" config turned off or any of the "Editor > Unicode Highlight: Allowed Locales" permit the character). (Plus, there are no reasons not to show errors if the flag part isn’t really flags (like foo_bar).) So far checking for flag availability according to target language version seems to be the most worthwhile part for flag check.
I am still wondering if a full parse should be done. Doing that does affect performance, but it would be helpful to further TypeScript extensions like #41160. Of course, this requires sub-nodes to be added under RegularExpressionLiteral. The actual implementation is not that tough, as we can take engine262 as a reference. (If we go with this, where should the class be put? scanner.ts? parser.ts? Or a new file?)

Pinging @RyanCavanaugh and @DanielRosenwasser for opinions.

The output are useful to TypeScript API users for creating RegExp-related type utilities. We could make use of the parsed result to make methods like String.prototype.replace safer too.
After all, I think we should at least store the number of capture groups and the names of the named captured groups.

The downstream tools can re-parse if they really need that data.
We're very sensitive to perf papercuts and not likely to accept the feature if the perf cost is nontrivial, and allocating more objects is something that is likely to incur broad perf hits due to slowing down GC, etc..

Surely this is a case of attempting to reserialise the raw regexp to string then back? If it blows up, the string is invalid! That should be fast too.

I see Ryan has suggested the same thing but in CS speak 😛

I actually hadn't thought of it in that much simpler way!

@zm-cttae @RyanCavanaugh There are already attempts like #4387 and #35957 using this approach but was closed. And this is definitely not a good solution, because:

If there are any errors, the whole RegExp expression is underlined, it’s not useful especially when the expression is long. Plus, the platform-specified error messages are not always clear, and we can’t translate them into other locales.
There might be multiple errors in the RegExp, but only the first error is revealed.
TypeScript is not limited by being executed with Node.js, it may also be run, for example, in a web browser via monaco-editor. That means by using the RegExp constructor the behavior is not guaranteed and may differ due to features implemented in the JS engine. Actually, I plan to integrate some Stage 3 proposals into my implementation.

Luckily a simple parser without node generation is not that time consuming, and I plan to make my PR available at the end of this month.
Besides I have a further proposal to further enforce type safety of RegExp-related methods and enhance UX (providing auto-completion) that make use of this implementation, but that would be another separate issue and PR afterwards.

@zm-cttae @RyanCavanaugh There are already attempts like #4387 and #35957 using this approach but was closed. And this is definitely not a good solution, because:

If there are any errors, the whole RegExp expression is underlined, it’s not useful especially when the expression is long. Plus, the platform-specified error messages are not always clear, and we can’t translate them into other locales.
There might be multiple errors in the RegExp, but only the first error is revealed.
TypeScript is not limited to being executed with Node.js. It may also be run, for example, in a web browser via monaco-editor. That means by using the built-in RegExp constructor the behavior is not guaranteed and may differ due to features implemented in the JS engine. Actually, I plan to include some features that are currently Stage 3 proposals into my implementation in advance.

Luckily a simple parser without node generation has little effect on the performance, and I plan to make my PR available at the end of this month.
Besides I have a follow-up proposal to further enforce type safety of RegExp-related methods and enhance UX (providing auto-completion) that make use of the implementation, but that would be another separate issue and PR afterwards.

To be fair there are only two types of error that can be assessed independently of each other - bad escapes, and invalid grouping

I agree however that the error isn't too useful for assessing what broke the regex in the first place

I didn’t manage to finish the implementation within this month due to my work but it’s coming along nicely. I’ll be back on it shortly and make the PR available ASAP.


Created watchers disappeared after re-install

I created some watchers for monitoring our system. After re-creating the server running Kibana and the Sentinl plugin (all v5.4.2) the created watchers didn't show up anymore.
I still can create watchers and do not get any errors. Am I missing something? I would expect the watchers are listed again as the definition is stored in the Elasticsearch index.
I can see the entries in the index 'watcher' but can't see them in the list on the web interface.
Help would be appreciated.
Best, Tom

From which SENTINL/Kibana version were you upgrading?

I didn't do an upgrade - I destroyed the server running Kibana+Sentinl (leaving the ES intact) and rebuild it. Always using Kibana+Sentinl in version 5.4.2

Sentinl only initializes a new index when it can't find one - is the startup log reporting anything interesting?

I restarted it again and this an the sentinl part:
{"type":"log","@timestamp":"2017-07-19T13:53:10Z","tags":["status","info","Sentinl"],"pid":982,"message":"Sentinl Initializing"} {"type":"log","@timestamp":"2017-07-19T13:53:10Z","tags":["status","info","Sentinl"],"pid":982,"message":"Core Index check..."} {"type":"log","@timestamp":"2017-07-19T13:53:10Z","tags":["status","info","Sentinl"],"pid":982,"message":"Alarm Index check..."} {"type":"log","@timestamp":"2017-07-19T13:53:19Z","tags":["status","plugin:timelion@5.4.2","info"],"pid":982,"state":"green","message":"Status changed from uninitialized to green - Ready","prevState":"uninitialized","prevMsg":"uninitialized"} {"type":"log","@timestamp":"2017-07-19T13:53:20Z","tags":["status","info","Sentinl"],"pid":982,"message":"Scheduled Watch: new_watcher_5xpg6vl85 every every 1 mins"} {"type":"log","@timestamp":"2017-07-19T13:53:20Z","tags":["listening","info"],"pid":982,"message":"Server running at http://<IP_ADDRESS>:5601"} {"type":"log","@timestamp":"2017-07-19T13:53:20Z","tags":["status","ui settings","info"],"pid":982,"state":"green","message":"Status changed from uninitialized to green - Ready","prevState":"uninitialized","prevMsg":"uninitialized"} {"type":"log","@timestamp":"2017-07-19T13:53:20Z","tags":["status","error","Sentinl","report"],"pid":982,"message":"Failed to install phantomjs: Error: EACCES: permission denied, mkdir '/usr/share/kibana/plugins/sentinl/phantomjs/phantomjs-2.1.1-linux-x86_64'"}
only issue I can see is phantomjs but this needed for reports only, right?

Wait, I'm confused. There is a watcher picked up and scheduled - is it showing up? or was this a new test?

this watcher 'test' was newly created and is showing up in the list, but the other ones don't.
Those are the indices in the ES cluster:
green open watcher_alarms-2017.07.19 fvO0WdJhTiqhtwiERrhiQg 5 1    61 0 444.2kb 222.1kb green open watcher_alarms-2017.07.17 MQ3xbAV8QliGlXAiRmdzJg 5 1     9 0 134.7kb  67.3kb green open watcher                   vrtCLb9QRZOcc2T5aBCDyg 1 1    25 4 130.1kb    65kb green open watcher_alarms            oOXA-ccfSASfdKrmgvksJw 1 1     0 0    260b    130b
But I can't find the watcher with title 'Test' in the watcher index. What is weitd too is - I created a second watcher and this one isn't in the index 'watcher' as well!

This might sound odd but are you positive you're looking at the right ES server? :)

this is the kibana log of creating the watcher:
{"type":"log","@timestamp":"2017-07-19T14:50:33Z","tags":["status","info","Sentinl"],"pid":982,"message":"Saving Watcher with ID: new_watcher_l4vvbpe q5"} {"type":"response","@timestamp":"2017-07-19T14:50:33Z","tags":[],"pid":982,"method":"post","statusCode":200,"req":{"url":"/api/sentinl/watcher/new_watcher_l4vvbpeq5","method":"post","headers":{"x-forwarded-for":"<IP_ADDRESS>","x-forwarded-proto":"https","x-forwarded-port":"443","host":"co-kibana-staging.xyz.de","x-amzn-trace-id":"Root=1-596f71b9-53e753a9081395f17a6195f8","content-length":"561","accept":"application/json, text/plain, */*","origin":"https://co-kibana-staging.xyz.de","kbn-version":"5.4.2","user-agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/59.0.3071.115 Safari/537.36","content-type":"application/json;charset=UTF-8","dnt":"1","referer":"https://co-kibana-staging.xyz.de/app/sentinl","accept-encoding":"gzip, deflate, br","accept-language":"de-DE,de;q=0.8,en-US;q=0.6,en;q=0.4"},"remoteAddress":"<IP_ADDRESS>","userAgent":"<IP_ADDRESS>","referer":"https://co-kibana-staging.xyz.de/app/sentinl"},"res":{"statusCode":200,"responseTime":51,"contentLength":9},"message":"POST /api/sentinl/watcher/new_watcher_l4vvbpeq5 200 51ms - 9.0B"} {"type":"response","@timestamp":"2017-07-19T14:50:33Z","tags":[],"pid":982,"method":"get","statusCode":200,"req":{"url":"/","method":"get","headers":{"host":"<IP_ADDRESS>:5601","connection":"close","user-agent":"ELB-HealthChecker/2.0"},"remoteAddress":"<IP_ADDRESS>","userAgent":"<IP_ADDRESS>"},"res":{"statusCode":200,"responseTime":1,"contentLength":9},"message":"GET / 200 1ms - 9.0B"}
seem like everything went fine

that came to my mind as well! So I checked it. The count of watchers show with the '_cat' API on ES side is identical querying the index on Kibana side (index 'watcher').
green open watcher                   vrtCLb9QRZOcc2T5aBCDyg 1 1    25 4 130.1kb    65kb
So this should be the ES cluster in use

Found it! In the kibana configuration the default_index changed! And as you have to set an index to search in within kibana discover.
As I tried it in the DevTool (where no index is set) I saw the entry in the wrong index. Shame on me and sorry for bothering you.
Best, Tom

No Shame, and Good Catch! Glad you got it sorted and thanks for the update! :)


Needs update

These instructions are currently incorrect. The 'Mimecast Administration Portal' AAD app from the gallery features input validation controls on form fields which are incompatible with what needs to be entered. We worked around by adding a custom app to our directory and configuring manually. We also had to use https://eu-api.mimecast.com/login/saml for the reply URL in AAD.

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

ID: 3e66e6bf-dfa7-4ed0-3104-0f194a9cfe39
Version Independent ID: 0e095ac3-fcf1-1412-e692-6ef8e2d8ec65
Content: Tutorial: Azure Active Directory integration with Mimecast Admin Console
Content Source: articles/active-directory/saas-apps/mimecast-admin-console-tutorial.md
Service: active-directory
GitHub Login: @jeevansd
Microsoft Alias: jeedes

@sbgillett Thanks for reporting! I have assigned the issue to the content author to investigate and update as appropriate.

@chetansriv and @v-nagta can you please review this and can you get the configuration details from them? then we can update the instructions.

@sbgillett We are working with Mimecast team to get a clarification on the same but not getting enough responses from their side. Once we get it, we'll update the article accordingly.  Closing this request for now.
#please-close


AppOpenAd failed to load:

I/flutter ( 4911): AppOpenAd failed to load: ResponseInfo(responseId: KJ3iYpjPJ4GKid4P97CHwAs, mediationAdapterClassName: , adapterResponses: [AdapterResponseInfo(adapterClassName: com.google.ads.mediation.admob.AdMobAdapter, latencyMillis: 60003), description: {
I/flutter ( 4911):   "Adapter": "com.google.ads.mediation.admob.AdMobAdapter",
I/flutter ( 4911):   "Latency": 60003,
I/flutter ( 4911):   "Ad Source Name": "",
I/flutter ( 4911):   "Ad Source ID": "",
I/flutter ( 4911):   "Ad Source Instance Name": "",
I/flutter ( 4911):   "Ad Source Instance ID": "",
I/flutter ( 4911):   "Credentials": {
I/flutter ( 4911):     "pubid": "ca-app-pub-3940256099942544/3419835294/cak=no_cache&cadc=2b&caqid=KJ3iYqfdJoO88AX24Y6QCA",
I/flutter ( 4911):     "campaign_id": "11324187300"
I/flutter ( 4911):   },
I/flutter ( 4911):   "Ad Error": {
I/flutter ( 4911):     "Code": 0,
I/flutter ( 4911):     "Message": "Internal error.",
I/flutter ( 4911):     "Domain": "com.google.android.gms.ads",
I/flutter ( 4911):     "Cause": "null"
I/flutter ( 4911):   }
I/flutter ( 4911): }, adUnitMapping: {pubid: ca-app-pub-3940256099942544/3419835294/cak=no_cache&cadc=2b&caqid=KJ3iYqfdJoO88AX24Y6QCA, campaign_id:<PHONE_NUMBER>0}, adError: AdError(code: 0, domain: com.google.android.gms.ads, message: Internal error.))])

Hi @wengxianxun
Are you able to reproduce this issue when using this sample code?
https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/app_open_example
And which google_mobile_ads version are you using?

@wengxianxun i have issue with ad's on iOS device ..ad's are not showing on iPhone


Bank: add runepouch contents to bank value

Runepouch contents added to bank calculations for GE/HA

https://github.com/runelite/runelite/pull/8595 basically exactly same issue here

I don't really like cross-plugin dependencies like this. What is the issue you are referring to?

The issue is that pricing for this should be implemented in ItemManager, so it will work also with e.g examine plugin etc

I have moved the pricing into ItemManager although the class depends on an enum from the runepouch plugin.
I assume that you are referring to ItemManager.getItemPrice() to add a quantity parameter and changing the return method to long.
I would like to additionally add an alchprice boolean parameter as currently the alchprice calculation is done inside the plugins.
An issue i have found with this is that a lot of items that can't be alched in game such as crystal shield, arclight etc... are currently displaying an alch price.
The wiki has a list of ~700 items but i'm not 100% sure how accurate this is.
Ideally a full list of all items non-alchable would fix this although i'm not sure the best method of going about this.

Yeah, new method that accepts quantiy. But, I would start with implementing just that and adding runepouch price to it. Also, if it depends on something from RunePouch plugin then that thing should be moved outside of it. Alch price is different issue.


Correct Fabric's string reader injection

This mixin had failed silently at some point.

Do we have any idea how long ago this broke?

We don't plan to make any more v1 releases, and 1.9.0-dev is known working, so I'm going to close this as I haven't tested it


Environment Variables before running FlutterInstall

Regarding the caching #2, it would also be nice to have some task to create the path variable before starting installation/downloading.
The problem I have is, I have to hard code the sub path /Flutter/2.2.3-stable/macos. The version number I can extract and pass also to FlutterInstall but I would rather like to use simply the latest stable version and have the cache work for that too. Same for the platform (macos).
Would it be possible to have a task to create the environment variables FlutterToolPath, FlutterPubCachePath and DartToolPath. With them it would be easier to setup fitting cache-keys

Hi @ChristianNavolskyi, I have updated the extension with a new task Env which will setup all three env vars. In respect to e08880c, I will close this issue. If you find any issue/bug with the new task, feel free to create a new issue regarding that.


switch shim log Windows client/server direction

Switches the client/server direction of the shim-log pipe on Windows so
that the shim is the listener. This allows the containerd client to
reconnect as needed to the log streams.
Signed-off-by: Justin Terry (VM<EMAIL_ADDRESS>

@crosbymichael - PTAL

LGTM


feat: toggle workspace visibility in settings

Description
Implements a confirmation modal that will allow an owner of a workspace to toggle the workspace's visibility between public and private.

What type of PR is this? (check all applicable)

[X] 🍕 Feature
[ ] 🐛 Bug Fix
[ ] 📝 Documentation Update
[ ] 🎨 Style
[ ] 🧑💻 Code Refactor
[ ] 🔥 Performance Improvements
[ ] ✅ Test
[ ] 🤖 Build
[ ] 🔁 CI
[ ] 📦 Chore (Release)
[ ] ⏩ Revert

Related Tickets & Documents
Closes #2700
Needs https://github.com/open-sauced/api/pull/576

Mobile & Desktop Screenshots/Recordings
Confirmation modal:

If available:

If not unlocked:

Steps to QA

Added to documentation?

[ ] 📜 README.md
[ ] 📓 docs.opensauced.pizza
[ ] 🍕 dev.to/opensauced
[ ] 📕 storybook
[ ] 🙅 no documentation needed

[optional] Are there any post-deployment tasks we need to perform?
[optional] What gif best describes this PR or how it makes you feel?

I just tested this and upgraded a workspace, but don't see the "set to private" setting. Only "manage subscription"
I did see the black box stating I needed to upgrade before.

I just tested this and upgraded a workspace, but don't see the "set to private" setting. Only "manage subscription"
I did see the black box stating I needed to upgrade before.

The Stripe checkout is redirecting you back to the beta app, but if you go back to the deploy preview, the toggle should be there.


Is comparing strings faster than comparing chars over and over?

It's possible we could just slice the string, and do one of two things:

Do reversal on the second half, and compare the halves
Construct a fake palindrome using the first half, and compare against the source

i think there would be more overhead in reversing half a string than the current implementation of checking one by one and failing early.


Inconsistent minute output in ticks_to_timestring

Trivially minor, but I noticed that during the first hour of gameplay, single-digit minutes are printed without 0 the prefix (unlike after that).
This should probably be "%02d:%02d":
https://github.com/factoriolib/flib/blob/01f73fbda8764a6a9a385008c6e552ec7afdea89/misc.lua#L33

This is intentional. I will update it so you can specify your own format strings to fit your usecase.

This is intentional. I will update it so you can specify your own format strings to fit your usecase.


Updating a CA policy with: "condition" including "all states" and excluding "Compliant","DomainJoined" generates error

An example policy from the repository to replicate the error is:
"Data protection - All apps No persistent browser session When on untrusted device"
Creating this policy works without any issues.
When deploying the same policy again, it generates the following error:
`
Invoke-RestMethod : {
"error": {
"code": "BadRequest",
"message": "The server could not process the request because it is malformed or incorrect.",
"innerError": {
"message": "1060: 'deviceStates' and 'devices' conditions cannot be set together. For examples, please see API documentation at https://docs.microsoft.com/en-us/graph/api/conditionalaccesspolicy-update?view=graph-rest-beta.",
"request-id": "9bbe13e1-999d-42f9-8d11-448acd907502",
"date": "2020-04-28T10:41:12"
}
}
}
At C:\Source\VSTS\POR\ConditionalAccess-master\Deploy-Policies.ps1:172 char:40

... yResponse = Invoke-RestMethod -Method Patch -Uri $conditionalAccessUR ...

            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

CategoryInfo          : InvalidOperation: (System.Net.HttpWebRequest:HttpWebRequest) [Invoke-RestMethod], WebException
FullyQualifiedErrorId : WebCmdletWebResponseException,Microsoft.PowerShell.Commands.InvokeRestMethodCommand

`
Any idea how to resolve this issue?
Thanks!

@WilliamOverweg Did you make any changes to the JSON? Could you please post the JSON you are trying to import/update and I will take a look

Thanks for the quick response.
This section doesnt allow upload of JSON files so i will post the file as a .txt file.
JSON With Device States.txt

I will take a look this afternoon (after 7PM its 2PM here atm) I am anyways trying to plan a update for the update logic and introduce a option for ring based deployments

Thanks a lot!
Looking forward to your findings and update.

I believe you are using "deviceStates" instead of "devices". I just replicated your policy with the GUI and exported it via Graph Explorer and it looks like this.
JSON.With.Device.States2.json.txt

Actually that might be a recent change to the BETA graph API's the policies in the repository are also using "deviceStates" e.g. https://github.com/AlexFilipin/ConditionalAccess/blob/master/PolicyRepository/Data protection/Data protection - All apps No persistent browser session When on untrusted device.json
I will take more detailed look when i find time this week and keep the issue open - in the meantime give it a try with "devices" instead of "devicestates"

I can confirm proper updating the policy when using the Devices parameters from the JSON you supplied:
"devices": {
"includeDeviceStates": [
"All"
],
"excludeDeviceStates": [
"Compliant",
"DomainJoined"
]
Awesome! Thanks a lot.

Updated the policy repository as part of release V1.1 to switch from "devicestates" to "devices"
https://github.com/AlexFilipin/ConditionalAccess/wiki/Release-History#v11


Youtube Thumnail as Cover and Some Additional Feature

I've done some experimentation and managed to get some of "new features" working that I think would be a good addition to this extension.
Using Youtube thumbnail as cover for rich presence

as you can see from the above screenshot the "playing icon" is replaced by the video author image/channel icon, I think this also would be a great addition

More Settings
To accompanied the additional features that I mentioned above, adding a these type of new settings would be very helpful too

That looks great! I originally thought the thumbnail picture wouldn't feel right because of its rectangular dimensions and never bothered to give it a try, but it seems to look fine.
If you want to show a snippet of the code and have me update YTDP, then I would be more than welcome to do so.
It's getting late on my end, so I'll catch up with everything tomorrow.

Ah apologies for the late respond I've been somewhat busy in the weekend and just happened to remember about this again.
As per your request I will provide you with the necessary code snipped of those new "feature".
Youtube Thumnail
In background.js - generatePresenceData()
	if (currentMessage.applicationType == "youtube") {
		if(settings.useYoutubeThumbnail && currentMessage.videoUrl) {
			var thumbnailURL = "https://img.youtube.com/vi/"+getVideoId(currentMessage.videoUrl)+"/0.jpg"
			console.log("Thumbnail:", thumbnailURL);
			assetsData.large_image = thumbnailURL
		}
	}

This one is self explanatory as I only use your GetVideoId() to retrieve the video id and concatenate it with the default youtube link to get the thumbnail JPG image. For more information about the thumbnail link you can reference to the link below
https://stackoverflow.com/questions/18681788/how-to-get-a-youtube-thumbnail-from-a-youtube-iframe
Channel Icon as "playing icon"
In content.js
This block is located inside the handleYouTubeData() function
       if (documentData.applicationType == "youtube") {
		let authorImg = document.querySelector("#owner #avatar #img");
		if (authorImg && "src" in authorImg && authorImg.src.startsWith("https://yt3.ggpht.com/")) {
                        documentData.authorImgUrl = authorImg.src;
                }
                else {
			documentData.thumbnailUrl = undefined;
                }
      }

This code work exactly the same as the code that you use you pull the youtube music album cover image.
In background.js - generatePresenceData()
        if (settings.enableYTMusicPlayingIcon && currentMessage.applicationType == "youtubeMusic") {
               assetsData.small_image = "playing-icon-6"; //playing-icon-6
               assetsData.small_text = "Playing"
        }
	if (settings.enableYoutubePlayingIcon && currentMessage.applicationType == "youtube") {
		if(settings.useAuthorImageAsPlayingIcon) {
			console.log("Author Image:", currentMessage.authorImgUrl);
			assetsData.small_image = currentMessage.authorImgUrl;
			assetsData.small_text = currentMessage.author;
		} else {
			assetsData.small_image = "playing-icon-6";
			assetsData.small_text = "Playing"
		}
    }

This is pretty simple also, as you can see I have separated the enable playing button into 2 option (for youtube and youtube music) . currentMessage.authorImgUrl this is the only variable that I added to the Presence Data structure.
Overall this is just a simple change, I can also provide you with the popup.html and popup.js file to make your job easier if you so desire. Hopefully you can understand my lackluster explanation since I am not to familiar with these. CHEERS !

Got it! I'll be fine without the other files.
I'll try and implement these features as soon as I have time. Thanks for inspiring this contribution!

No problem, I have been using this for quite sometimes and was somewhat intrigue by it, and I was just thinking it's about time to contribute at least something toward this project.
If you don't mind, I would also add another suggestion and some Feeback
Retrieving YouTube Music Thumbnail
I think it's possible to implement thumbnail for the YouTube music, as you know not all the music in YouTube Music have an album cover. I think it would also be a good idea to provide an option for the user to able to use the YouTube Music thumbnail for those Music that doesn't have an album cover.
The way this work should still be similar to the method that is being used to pull the thumbnail for a YouTube video but instead of calling it using this URL :  _https://img.youtube.com/vi/[video-id]/sddefault.jpg_, YouTube Music would only accept it form this URL : https://i.ytimg.com/vi/[video-id/sddefault.jpg.
The process of parsing the ID for YouTube Music should still remain the same as how you parse a YouTube video ID, you try using the getVideoId() function as I think regex on it should also work for YouTube Music URL.
Feedback
Regarding the Detailed Installation Instruction
"Make sure that the "allowed_origins" key in the JSON file involved in native messaging contains the extension's ID."
Wouldn't it be better if you mentioned where you can find the main.json file by mentioning the directory of it or you can just mention that this could find in the installation directory of the Host application. This is just from my personal as I though you need to compile it into the installer together in order to get it working.
Regarding the Troubleshooting / Known Issues
"If the presence gets stuck at some video at 00:00 left. This is simply a problem with the client socket API in the way that Discord handles presence update requests"
This one can easily fix by simply restarting discord but do take note to avoid using the CTRL+R as that only "refreshes" it, what you want is to completely restart the whole discord client. CTRL + R will only fix this problem temporarily, It will only work for the first video you play then it will get stuck again at 00:00 left and it will start throwing RICH_PRESENCE_TIMEOUT again,
Quick question, what is the reason for omitting idle and pause state on the rich presence, this have been stuck at the back of my mind for quite a while actually. Is this because how the RPC handle request limitation?

A few things-

The reason why I avoided thumbnails in general previously was because the thumbnails' dimensions did not have a 1:1 ratio, meaning that it might look weird trying to fit in the presence image. However, I'll still add it as a feature in the future for those who are okay with empty space.

Yep, I definitely agree that I could make the details a bit more clear for installation instructions. I'll make sure to update that in the future.

I intended this presence to work like the Spotify presence, which disappears when nothing is playing. In fact, I know a lot of others including me who prefer it this way because having an idle presence on my profile constantly is something that I wouldn't enjoy. Displaying pauses, searches, or ad breaks seems a little overboard and it blocks out other rich presences even if YouTube isn't actually being watched. This "feature" doesn't have anything to do with request limitation.

Ah thank you clearing things up for me, definitely better then speculating in my head and best of luck in this project. CHEERS!

Sorry for the delay! I didn't have much time to work on this project until now.
One thing I discovered with the author image is that it doesn't update when YouTube isn't the active tab (i.e. either you are surfing another tab or using another application other than Chrome). This can cause it to display the wrong channel image or no channel image at all.
Therefore, I'll probably be scrapping this idea due to its inconsistency unless a better way for grabbing the channel image can be found.
However, the thumbnail icon idea works just fine. It'll probably get released soon!

Ah thank you for your hard work!
I was experiencing the same issue with the author image previously before I send you the suggestion, but somehow it just manage to fix it self. The only difference is that I am using the "Web Application" version for Youtube and Youtube Music, and never really tried it on the browser page
In the "Web Application" version it seems to be working fine, perhaps it's because how the browser treat the "Web Applicaiton" as an active browser page? well I am not sure my self.
During my testing with the actual browser tab, I discovered that every time it loads a new video where Youtube isn't in the active tab, it wouldn't display the Rich Presence on Discord. The console shows that it went into an "IDLE" state, despite the other video is already playing in the background.
I will definitely try to find a better method for retrieve the author image from a youtube video, I will update you in I found anything of interest .
Overall I really appreciate your work, and I am looking forward for the next release!