vue-router doesn't work on IOS 10.3.2 (14F89) but works on IOS 11.2 (15C114)

Version
3.0.1
Reproduction link
https://jsfiddle.net/fLswsLzh/
Steps to reproduce
1.- Open fiddle
2.- The router links are not available for IOS 10 (ipad mini 4 and ipad pro devices) either on Safari or Chrome browsers but they are available and work as expected on IOS 11 (ipad mini 4)
What is expected?
You should be able to access the router links
What is actually happening?
Router links are not available for IOS 10 (Ipad Mini 4 and Ipad Pro) but they are available on IOS 11 as expected.

Behavior can easily reproduce on both devices using Safari and Chrome browsers.
Do you have this bug confirmed? and, which version is preferred to use on IOS 10 then?

+1
Tested on iOS 10.3 and it's totally broken
It will not display any content in router-view also

Any updates?

Change the name of constant "app" or change id="app" to something else.

'app' in window // true

Hi @c01nd01r I changed the name to "other" and now it's working on IOS 10.3.2 but not on IOS 10.0.1. But at least it now works on 10.3.2, great!
Any explanation for such behavior? why is "app" causing this mess?
Thanks

Anyone that can test on such device could tell me what version broke, please?
you can change the version included with<EMAIL_ADDRESS>(change the last part, you have a list of releases at https://github.com/vuejs/vue-router/releases)

@posva nothing works from the list on iPhone 5 iOS 10.3 simulator
– 0.4.0
– 0.5.0
– 0.7.12
– 2.0.3
– 2.4.0
– 3.0.1

If you manage to find the exact version that broke (between 2 and 3 I imagine) and give us an error we might find where the error comes

@eqApe Can you provide log of console in Safari DevTools?

Console output for vue-router 3.0.1:
SyntaxError: Can't create duplicate variable that shadows a global property: 'app' (anonymous function)
It doesn't provide any link to the issued function

@posva and we have the same error for 0.4.0. So I think it's a global problem

Looks like a Safari bug

Aah, so that's the error
It does come from the variable indeed, because using an id will automatically create a global variable with the same name (in this case app) closing then 🙂

@eqApe I have Chrome installed and running on both Ipad Pro 10.3.2 and Ipad mini 11..2.5

Hi, I'm not sure why, but for me the problem was the Promise.prototype.finally , it works now with a polyfill.

Using Ipad Mini with latest possible IOS 9.3.5
Chrome version 56.xxxx.79
Safari latest version
Both Chrome and Safari are unable to display any vue 2.x with vue-router  (also tested angular.io) and the page is not visible.  However vuejs.org is visible.
These devices are not that outdated, what is the recommend fix/workaround.?

Using Ipad Mini with latest possible IOS 9.3.5
Chrome version 56.xxxx.79
Safari latest version
Both Chrome and Safari are unable to display any vue 2.x with vue-router (also tested angular.io) and the page is not visible. However vuejs.org is visible.
These devices are not that outdated, what is the recommend fix/workaround.?

Were you able to solve this problem?

Using Ipad Mini with latest possible IOS 9.3.5
Chrome version 56.xxxx.79
Safari latest version
Both Chrome and Safari are unable to display any vue 2.x with vue-router (also tested angular.io) and the page is not visible. However vuejs.org is visible.
These devices are not that outdated, what is the recommend fix/workaround.?

Were you able to solve this problem?


Implemented a Time() function on the JSONTimeString and JSONTime objects

Took out a potential panic too!

Will look into this today or tomorrow. Thank you so much!


"Drawing..." text never disappears in offline charts

Just a minor bug, apparently offline HTML still refers to jQuery's $ function...
Also, a related issue is that UUIDs that begin with a digit are invalid selectors and should be prefixed by a character.
Cheers!

Would be nice if "Drawing..." would finally disappear from the offline charts.


Append mode feedback in PyTestLog2DB

I used --append but forgot to provide an UUID.
Result is this error message:
WARN: '--append' argument should be used in combination with '--UUID <UUID> argument.`
This is fine, but even so the application continues with writing results to database.
Here I have doubts. Because I want to add new results (and this means: maybe other results) to already existing ones. But because the append mode is not activated I get my previous results overwritten?
In case of errors in command line the application should stop with an error message.
In case of the application runs in append mode it would be helpful to have the final feedback:
All test results are written to database successfully.
modified in this way:
All test results are written to database successfully (append mode).

Hi Ngoan,
-append, but no UUID must result in an error and abort.
Thank you,
Thomas

merged and solved with#20


Can't track a download using PiwikTracker iOS SDK

Hi guys,
so I want to track if a user using my mobile app starts downloading a file so that the downloaded file name appears as entry under Actions>Downloads in the Piwik backend. I can't seem to do that using the PiwikTracker iOS SDK. I tried using the sendEventWithCategory method but then the entry appears under Events but not under Downloads like where I wanted it to be. How can I achieve it then?
Any help would be appreciated.

Tracked events will be shown under events in Piwik Server, not download.
I just added a new method to the API sendDownload:(NSString)*url for tracking downloads.
It has also been added to the demo project as example.
No release yet but you can pull down the latest version if you like to try it out.

Readme and API documentation updated.
Closing.

does piwik ios sdk support https url?


remove trailing comma from link

Other automatic linkers do not include a trailing comma, say in Look at https://github.com/qadzek/link.vim/, it's great in the link https://github.com/qadzek/link.vim/ itself.
How about doing the same here ?
I tend to forget that this implementation differs and keep sending invalid links.

I think trailing punctuation characters can be flat out removed as in practice such links are less likely than adding a link at the end of sentence


merge package from arlac77/npm-package-template

package.json

chore(package<EMAIL_ADDRESS>chore(scripts): cover@#overwrite c8 --temp-directory build/coverage ava && c8 report -r lcov --temp-directory build/coverage
chore(package): add nyc from template
chore(package): set $.ava.require='esm' as in template
chore(package): set $.ava.files='tests/-test.js,tests/-test.mjs' as in template
chore(package): set $.ava.extensions='js,mjs' as in template

.travis.yml

chore(travis): add node versions -10

:tada: This PR is included in version 2.1.4 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


pokemon showdown app support?

i have the app installed for pokemon showdown is thre a way to add the helper to it?

Sorry, with the current way the battle helper is implemented, this is sadly not going to work.


Data objects should be shallow cloned

https://github.com/psychobunny/templates.js/blob/master/lib/templates.js#L76
Right now all the global vars will be appended to the data object. When the parsed template is returned, the data object will contain all these vars.

I'd almost prefer deep cloning for a sanitize function. Hell, why not just JSON.parse(JSON.stringify()) it to do so. Something like this:
function sanitise(obj) {
  return JSON.parse(JSON.stringify(obj));
}

This wouldn't work for circular structures, and could be slow, but hell, they shouldn't have too much complexity in the first place.

The reason why I left this open is because at some point tjs supported automated data binding (so if you clone the object, it would defeat the purpose)
I do plan on bringing it back in the future, so I'll probably not close this I think

Mmmm, okay. That makes more sense.

No longer relevant


Setup CI/CD Pipelines

Background
Code is more valuable when deployed when it is unit tested and documented. Automatic scheduled and conditional pipelines can run checks for temporal releases to package manager, and upon every merge request.
Procedure

Implement Unit Tests
Build up merge request pipeline
Implement deployment pipeline

Acceptance Criteria
CI/CD pipeline exists to facilitate testing and deployment

Automatically Remove TODO's before release


Problems with migrations

Hello again!
When I try to run the mix test command, I get that error:
12:44:24.198 [error] Could not create schema migrations table. This error usually happens due to the following:

  * The database does not exist
  * The "schema_migrations" table, which Ecto uses for managing
  migrationsns, was defined by another library
  * There is a deadlock while migrating (such as using concurrent
    indexes with a migration_lock)

To fix the first issue, run mix   ecto.create".

To address the second, you can run "mix ecto.drop" followed by
"mix ecto.create". Alternatively you may configure Ecto to use
another table and/or repository for managing migrations:

    config :ravix_test, RavixTest.Repo,
      migration_source: "some_other_table_for_schema_migrations",
      migration_repo: AnotherRepoForSchemaMigrations

The full error report is shown below.

** (UndefinedFunctionError) function Ravix.Ecto.Adapter.execute_ddl/3 is undefined or private. Did you mean:

      * execute/5

    (ravix_ecto 0.2.1) Ravix.Ecto.Adapter.execute_ddl(%{adapter: Ravix.Ecto.Adapter, cache: #Reference<0.1501241443.1897267202.25822>, pid: #PID<0.381.0>, repo: RavixTest.Repo}, {:create_if_not_exists, %Ecto.Migration.Table{comment: nil, engine: nil, name: :schema_migrations, options: nil, prefix: nil, primary_key: true}, [{:add, :version, :bigint, [primary_key: true]}, {:add, :inserted_at, :naive_datetime, []}]}, [timeout: :infinity, log: false, schema_migration: true])
    (ecto_sql 3.8.0) lib/ecto/migrator.ex:696: Ecto.Migrator.verbose_schema_migration/3
    (ecto_sql 3.8.0) lib/ecto/migrator.ex:510: Ecto.Migrator.lock_for_migrations/4
    (ecto_sql 3.8.0) lib/ecto/migrator.ex:422: Ecto.Migrator.run/4
    (ecto_sql 3.8.0) lib/ecto/migrator.ex:146: Ecto.Migrator.with_repo/3
    (ecto_sql 3.8.0) lib/mix/tasks/ecto.migrate.ex:141: anonymous fn/5 in Mix.Tasks.Ecto.Migrate.run/2
    (elixir 1.13.0) lib/enum.ex:2396: Enum."-reduce/3-lists^foldl/2-0-"/3
    (ecto_sql 3.8.0) lib/mix/tasks/ecto.migrate.ex:129: Mix.Tasks.Ecto.Migrate.run/2

Once again I would like to ask for help

Hey! Yep, migrations are not implemented for Raven, please check this repo: https://github.com/YgorCastor/phoenix-ravix-sample.
You can solve this in two ways:
If you are using two repos, one relational and ravendb as secondary you can just remove the EctoRepos configuration of phoenix:
config :phoenix_ravix_example,   ecto_repos: [PhoenixRavixExample.Repo, PhoenixRavixExample.RavenRepo ## DON'T]
If you are using only the Ravix-Ecto repo, you need to disable the repo migration check at the endpoints.ex file
`  # Code reloading can be explicitly enabled under the
:code_reloader configuration of your endpoint.
if code_reloading? do
socket "/phoenix/live_reload/socket", Phoenix.LiveReloader.Socket
plug Phoenix.LiveReloader
plug Phoenix.CodeReloader
plug Phoenix.Ecto.CheckRepoStatus, otp_app: :phoenix_ravix_example <<<<< Remove this one
end`
And remove the ecto.migrate from your mix.exs run:
 defp aliases do     [       setup: ["deps.get", "ecto.setup"],       "ecto.setup": ["ecto.create", "ecto.migrate", "run priv/repo/seeds.exs"],       "ecto.reset": ["ecto.drop", "ecto.setup"],       test: ["ecto.create --quiet", "ecto.migrate --quiet" <<<< This one, "test"],       "assets.deploy": ["esbuild default --minify", "phx.digest"]     ]   end
Remember that the Ravix-Ecto is not SQL, so que SQL sandbox will not work with it. Just check the repo i linked up above for a working config.


Convert regular elem text to a elem path

To work properly the corresponding vector font needs to be already available, otherwise a black rectangle appears as a placeholder.

Included in PR #2430


download: add an option to save a single subset

Summary
This option is similar to the --subset option in the validate command. It was requested by the DL Workbench team.
Note that it only affects saving. TFDS will still download all subsets, even if only one is requested.

How to test

Checklist

[x] I submit my changes into the develop branch
[ ] I have added description of my changes into CHANGELOG
[x] I have updated the documentation accordingly
[x] I have added tests to cover my changes
[ ] I have linked related issues

License

[x] I submit my code changes under the same MIT License that covers the project.
Feel free to contact the maintainers if that's a concern.
[x] I have updated the license header for each file (see an example below)

# Copyright (C) 2021 Intel Corporation
#
# SPDX-License-Identifier: MIT

CC @vgoluben


Add AuthStatus type

Changes

:gift: Add new feature
This PR adds a new AuthStatus type which currently contains the ServiceAccountName attribute, which is used for OIDC authentication

/kind api-change

Fixes https://github.com/knative/eventing/issues/7173

Release Note

Add AuthStatus type

Docs

@pierDipi can you please review this PR?

/ok-to-test

/ok-to-test

@karthikmurali60 you have to run hack/update-codegen.sh as you updated the types

@creydr I ran the script and committed the generated files. Still some of the tests are failing, this is because of the missing functions in auth_types.go file. I am trying to add them

Hey @karthikmurali60,
seems the generated file was not updated in your latest push.
When I run the hack/update-codegen.sh on your branch I see some changes. So I think running it and pushing all the files should fix the build issues.

@creydr I ran hack/update-codegen.sh on this branch and pushed the changes in this commit. However, the same tests are still failing. I am not able to find out why this is happening. Any thoughts ?

Error states
=== Errors
client/injection/ducks/duck/v1/authstatus/authstatus.go:44:37: (&v1.AuthStatus{}).GetFullType undefined (type *"knative.dev/pkg/apis/duck/v1".AuthStatus has no field or method GetFullType)

Error states
=== Errors
client/injection/ducks/duck/v1/authstatus/authstatus.go:44:37: (&v1.AuthStatus{}).GetFullType undefined (type *"knative.dev/pkg/apis/duck/v1".AuthStatus has no field or method GetFullType)

@karthikmurali60 It seems this issue is because you had the +genduck annotation, when you run update-codegen.sh initially (and it seems update-codegen does not update client/injection/... :shrug: ).
I would remove the generated files from client/injection/ducks/duck/v1/authstatus and rerun update-codegen.sh.

@creydr this was the issue, thanks a lot for pointing that out. I have fixed it and pushed the new changes.

Error states
=== Errors
client/injection/ducks/duck/v1/authstatus/authstatus.go:44:37: (&v1.AuthStatus{}).GetFullType undefined (type *"knative.dev/pkg/apis/duck/v1".AuthStatus has no field or method GetFullType)

@karthikmurali60 It seems this issue is because you had the +genduck annotation, when you run update-codegen.sh initially (and it seems update-codegen does not update client/injection/... 🤷 ). I would remove the generated files from client/injection/ducks/duck/v1/authstatus and rerun update-codegen.sh.

@creydr this was the issue, thanks a lot for pointing that out. I have fixed it and pushed the new changes.

Awesome :tada: Lets wait for the other checks to pass and then we should be ready to go :+1:

/rerun


[LGSM] cronjob calls of tf2server monitor, fn_tmuxcheck fails

Hello sir,
Not sure how this should get classified, it isn't really a 'bug' with any of your code, but perhaps some documenting of more prerequisites for users wanting to use cron entries, at least on some systems.
I noticed the following behavior under Ubuntu-14.04.1-LTS-64bit
When setting up cronjobs for the user, the PATH environment is bare for scripts called via cron.  The instance of 'tf2server monitor' was always outputting "Tmux is not installed' messages to my logs and then attempting to restart, even though tmux is installed (/usr/local/bin/tmux) and the server was running.  A quick test showed me that the PATH under cron was only '/usr/bin:/bin', which is quite bare, when the Ubuntu tmux package is installed to /usr/local/bin
The solution I took was when setting up the cron entries, to set the PATH at the top of the crontab file.
So, my crontab entries are now looking like this:
USER=tf2server
PATH=/home/tf2server/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games
0 5 * * *  /home/tf2server/tf2server update-restart > /dev/null 2>&1
*/5 * * * * /home/tf2server/tf2server monitor > /dev/null 2>&1

I suppose setting PATH inside the tf2server script would also work, but since this issue is more of a system related item, I think fixing it in crontab is better than changing the tf2server script unnecessarily. Perhaps some extra documentation .. or a test for tmux that will write out full path to tmux into the fn calls?

This should be easy to resolve within the script itself. Should be a simple if statement. I will write a fix for this soon.

I have made some changes that should reduce the chance of issues.


chore: update colyseus demo

#23  👈
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @NathanFlurry and the rest of your teammates on  Graphite


Got "REF_NOT_FOUND" error when building this doc site

Describe the bug

Steps to reproduce

I followed the tutorial in the readme and run all the commands successfully:

But when running hugo server, I got errors:

➜  daprdocs git:(v1.10) hugo server

Start building sites …
hugo v0.111.3+extended darwin/arm64 BuildDate=unknown
ERROR 2023/04/18 13:05:59 [en] REF_NOT_FOUND: Ref "php": "/Users/xxxxxx/projects/dapr-related/docs/daprdocs/content/en/concepts/overview.md:118:9": page not found
WARN 2023/04/18 13:05:59 .Path when the page is backed by a file is deprecated and will be removed in a future release. We plan to use Path for a canonical source path and you probably want to check the source is a file. To get the current behaviour, you can use a construct similar to the one below:

  {{ $path := "" }}
  {{ with .File }}
        {{ $path = .Path }}
  {{ else }}
        {{ $path = .Path }}
  {{ end }}

Re-run Hugo with the flag --panicOnWarning to get a better error message.
ERROR 2023/04/18 13:06:01 [en] REF_NOT_FOUND: Ref "php": "/Users/xxxxxx/projects/dapr-related/docs/daprdocs/content/en/_index.md:198:16": page not found
ERROR 2023/04/18 13:06:01 [en] REF_NOT_FOUND: Ref "php": "/Users/xxxxxx/projects/dapr-related/docs/daprdocs/content/en/developing-applications/sdks/_index.md:38:9": page not found
Error: Error building site: logged 3 error(s)
Built in 3683 ms

Expected behavior

No error
Screenshots

Desktop (please complete the following information):

OS:

Browser

Version

Additional context

@seeflood looks like the issue is with the php directory. Could you double check that your submodules were correctly downloaded? The php directory is brought in from the php repo. You can run:
git submodule update --init --recursive

@seeflood - I am going to close this issue, based on @AaronCrawfis Comment. Any update?


when opening editor, put cursor on first empty when tile

Currently landing on page navigation which is an advanced feature.

The current behavior lands on the page selection left arrow; my short user testing showed user getting lost in the page stuff.


docs: wal kafka rfc

Which issue does this PR close?
Closes #
Rationale for this change
When using ceresdb of cluster mode, a distributed wal is needed. Although a distributed wal implementation based on oceanbase has existed but the oceanbase cluster is not so easy to build and maintain, I proposal to implement another distributed wal based on kafka.
see rendered
What changes are included in this PR?
None.
Are there any user-facing changes?
None.
How does this change test
Test is not needed.

Codecov Report

:exclamation: No coverage uploaded for pull request base (main@a8fb2c9). Click here to learn what that means.
The diff coverage is n/a.

:exclamation: Current head bd6c838 differs from pull request most recent head 24c2c94. Consider uploading reports for the commit 24c2c94 to get more accurate results

@@           Coverage Diff           @@
##             main     #279   +/-   ##
=======================================
  Coverage        ?   62.67%
=======================================
  Files           ?      321
  Lines           ?    49755
  Branches        ?        0
=======================================
  Hits            ?    31185
  Misses          ?    18570
  Partials        ?        0

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


Signing Key Management - Customize table name?

Hi,
We are trying out the automatic signing key functionality and we're evaluating things to see if it will fit our needs.
I understand you guys likely won't want to offer support until we buy our Duende license, however, I was hoping you could answer this question:
Is there a way to change the default table name from "SigningKeys" to something else? With the PersistedStoreExtension this was possible, but I'm not seeing the option for SigningKeyManagement.
current startup code looks like this
            service.AddSigningKeyManagement(
                    options =>
                    {
                        options.Licensee = "<...>";
                        options.License = "<...>";
                    })
                    .PersistKeysToDatabase(new DatabaseKeyManagementOptions
                    {
                        ConfigureDbContext = b => b.UseSqlServer(connectionString),
                    })
                    .ProtectKeysWithDataProtection();

Hey,
since key management was never part of IdentityServer4 - but is now part of our v5, could you ask the question on our now support forum instead?
https://github.com/DuendeSoftware/IdentityServer/discussions

Sounds good, thanks


[GC Forms UI] Alert style set

Our alert style is a bit heavy and so I have lightened up the background and bumped up the contrast on the content within. Only links and buttons will be the action blue.
All alert colours are associated with tailwind classes, with a consistent split of 700>50

Current state:

@Abi-Nada Isn't this in progress now?


Traceback from agent on max spans

Describe the bug: ...
We are seeing the following traceback coming out of the ElasticAPM agent via Sentry frequently on many of our environments.
KeyError: 'TRANSACTION_MAX_SPANS'
  File "elasticapm/utils/threading.py", line 80, in run
    rval = self._function(*self._args, **self._kwargs)
  File "elasticapm/conf/__init__.py", line 701, in update_config
    self.reset()
  File "elasticapm/conf/__init__.py", line 650, in reset
    if self._config.values[key] != self._first_config.values[key]:

To Reproduce
Unknown. However, Sentry shows a lot of POST requests going to the APM server before this happens. Our assumption is that we are hitting TRANSACTION_MAX_SPANS, but this is not being handled gracefully, and causing this exception instead.
Environment (please complete the following information)

OS: Linux
Python version: 3.8
Framework and version: Django 3.1.7
APM Server version: 7.6
Agent version: 6.0.0

Hey @ccorbacho. Good find! The problem here occurs in our remote configuration updater. Do you per chance set the transaction_max_spans configuration via remote config in Kibana?
Specifically, from the looks of it, this would happen if a setting is configured via Kibana, but then later on removed. If we detect that a remote configuration has been removed, we revert to the original configuration, and hit this buggy code path. Does this sound like something that could have happened in your setup? If not, we'll have to figure out why else this code path could be hit.
The bug itself should be fairly easy to fix. I pushed a test for it in #1068, and will add a fix in a bit.

Yes, we do currently have TRANSACTION_MAX_SPANS set via the remote config as well.


monaco-languageclient doesn't appear to be written in CJS, but also doesn't appear to be a valid ES module

Hey,
Using the latest version of monaco-languageclient (3.0.1) with Vite 3, and this error is spat out when using the package. Seems as though to remove the warning adding "type": "module" to the package.json should do it - everything is working but just adding this here for awareness.

Thanks for making us aware 👍

Sorry, should have put the full message:
monaco-languageclient doesn't appear to be written in CJS, but also doesn't appear to be a valid ES module (i.e. it doesn't have "type": "module" or an .mjs extension for the entry point). Please contact the package author to fix.

@Ehesp I am working on transforming everything to proper ESM. Can you give version 3.1.0-next.0 a try: https://www.npmjs.com/package/monaco-languageclient/v/3.1.0-next.0
Thanks 🙂

Cool will do. I'm away this coming week so will check it out after.


Update :  Add tags & monkey svg to Readme

Added few tags like site status, contributors ,license &  monkey.svg file to README.md.

[x] I have performed a self-review of my code.
[x] Spelling check is done.

After

@MrNikhillyadav Seems there is a build failure...


What are the commands ingame?

What commands do i use ingame do i use like !i and !gen like other servers? Thx

There is no commands.


A JAVASCRIPT PASSWORD GENERATOR

Thanks for the PR. The website looks dope. It has been merged.
I will be glad if you can leave a star on this repository.


[#129] Minimizing Rust Binary Size

Change release profile defaults with values from min-sized-rust
Changes of binary size:
default values: 3.3M
optimized releaseprofile: 1.4M
✔ Checklist:

[x] This PR has been added to CHANGELOG.md (at the top of the list);
[x] Tests for the changes have been added (for bug fixes / features);
[ ] Docs have been added / updated (for bug fixes / features).

Resolve #129

Codecov Report

Merging #132 into master will not change coverage by %.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #132   +/-   ##
=======================================
  Coverage   87.99%   87.99%
=======================================
  Files          11       11
  Lines        1008     1008
=======================================
  Hits          887      887
  Misses        121      121

Continue to review full report at Codecov.

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

@akirill0v 👋Thank you for your contribution! 🚀
I have left a comment. Could you fix it?

@akirill0v Thanks a lot! You're awesome! ❤


Cow: Watch oneclickconverter.com

Cow requests the watch of the watch_keyword oneclickconverter\.com. See the MS search here and the Stack Exchange search in text, in URLs, and in code.

oneclickconverter\.com has been seen in 1 true positive, 0 false positives, and 0 NAAs.

Approved by Cody Gray in Charcoal HQ


Shibboleth special groups are not working

Describe the bug
When you're using shibboleth as authentication method and want to use the special-group functionality, these special groups are not set. I think this might be the same reason why the bug reported in #9226 exits. As reported there, the problem lies in the newly introduced if condition in #9130. I digged a bit deeper into this and found, that if I overwrite the areSpecialGroupsApplicable() method in the ShibAuthentication.java according to the overwrite made in IPAuthentication.java always returning true, it works. I'm still analysing, what is the real cause behind this (so why areSpecialGroupsApplicable() does not return true for shibboleth if needed), but I wanted to post this already.
To Reproduce
Steps to reproduce the behavior:

Activate shibboleth authentication on your backend
Set a group mapping for special-groups as described in the docs.
Login with a user-account via shibboleth, which has the needed affiliation
Check if the special-groups appear in your profile

Expected behavior
The user should be placed in the corresponding special-groups.
Related work

#9226
#9130

It seems as context.getAuthenticationMethod() returns null for the ShibAuthentication in AuthenticationMethod.java:
    public default boolean areSpecialGroupsApplicable(Context context, HttpServletRequest request) {
        return getName().equals(context.getAuthenticationMethod());
    }

Hello everyone.
I am not sure if this thread is still open, but I thought I should share my experience in case anyone faces the same issue.
I stumbled upon the same issue using DSpace 7.6.1, when I tried to add a default special group to users logging in via Shibboleth.
After following the code in Shibbauthentication.java, I realized why this is happening:
When default-roles are detected, they are put in the affiliations array.
Next, there is a for loop where for each affiliation the equivalent authentication-shibboleth.role.{affiliation} is being looked up and its value is added to the groups array.
However, the code doesn't account for the case when an affiliation is equal to a default role, so those roles are ignored.
A pretty simple workaround (at least temporarily) is to add an
authentication-shibboleth.role.{default-role} = <default-role>
entry in the configuration for each default role you use.
I have to point out that this workaround was a solution for us because we only use default-roles.
For more complicated cases where both actual roles and default ones are used, the default will be ignored unless the code is modified.


Add known type checker crasher.

What's in this pull request?

Add another known crasher.

Before merging this pull request to apple/swift repository:

[ ] Test pull request on Swift continuous integration.

Triggering Swift CI
The swift-ci is triggered by writing a comment on this PR addressed to the GitHub user @swift-ci. Different tests will run depending on the specific comment that you use. The currently available comments are:
Smoke Testing
    Platform     | Comment
    ------------ | -------------
    All supported platforms     | @swift-ci Please smoke test
    All supported platforms     | @swift-ci Please smoke test and merge
    OS X platform               | @swift-ci Please smoke test OS X platform
    Linux platform              | @swift-ci Please smoke test Linux platform

A smoke test on macOS does the following:

Builds the compiler incrementally.
Builds the standard library only for macOS. Simulator standard libraries and
device standard libraries are not built.
lldb is not built.
The test and validation-test targets are run only for macOS. The optimized
version of these tests are not run.

A smoke test on Linux does the following:

Builds the compiler incrementally.
Builds the standard library incrementally.
lldb is built incrementally.
The swift test and validation-test targets are run. The optimized version of these
tests are not run.
lldb is tested.

Validation Testing
    Platform     | Comment
    ------------ | -------------
    All supported platforms     | @swift-ci Please test
    All supported platforms     | @swift-ci Please clean test
    All supported platforms     | @swift-ci Please test and merge
    OS X platform               | @swift-ci Please test OS X platform
    OS X platform               | @swift-ci Please clean test OS X platform
    OS X platform               | @swift-ci Please benchmark
    Linux platform              | @swift-ci Please test Linux platform
    Linux platform              | @swift-ci Please clean test Linux platform

Lint Testing
    Language     | Comment
    ------------ | -------------
    Python       | @swift-ci Please Python lint

Note: Only members of the Apple organization can trigger swift-ci.

Add minimized test for rdar://problem/27830834.
In a build with asserts enabled assert with:
(TypeVariables[impl.getGraphIndex()] == typeVar && "Type variable mismatch")

@swift-ci Test and merge.


Settings Page

Closes #15

Changed the OS of the Github Action from 'ubuntu' to 'windows'. The main reason is there is an issue with npm platform-specific packages. Other reason is we are working in a .NET/Microsoft-ish stack and thus we will just stick to windows


Handle Zombie QEMU Processes

What this PR does / why we need it:
Under high load, we've observed that libvirt does not always successfully reap the qemu processes, which leaves them around in a defunc (zombie) state, never cleaning them up. Arguably this is a bug in libvirt, but we can handle it a bit more gracefully on our end as well.
The result is, when this occurs the virt-launcher pod never shuts down because the qemu pid virt-launcher is monitoring never disappears.
Previously, our pid monitoring only checked for the presence of the qemu pid. Now we detect the pid's presence and whether or not the pid is a zombie. When a zombie pid is detected, we exit the monitor loop and raise SIGCHLD to pid 1 (virt-launcher). Virt-launcher already watches for SIGCHLD and will call wait() to reap the process.
related to: https://bugzilla.redhat.com/show_bug.cgi?id=1985083
Handle qemu processes in defunc (zombie) state

/cc @vladikr

/lgtm

/lgtm
nice


Fix CI issue with .NET Core 3.1.300 SDK (#740)

The .NET Core 3.1.300 SDK was released on 2020-05-19, and since then our CI runs have been failing because we use the latest 3.1 SDK. The failure occurs when building our sample projects in parallel (which are placed in different subdirectories but still share the same obj/bin root directory) with the following error: error CS0579: Duplicate 'global::System.Runtime.Versioning.TargetFrameworkAttribute' attribute
To avoid this issue, I've assigned the property GenerateTargetFrameworkAttribute=false property to each of the affected sample projects.

This is just cherry-picking the fix from upstream.

At least one project was missing the fix from the cherry-picked commit.

Various failures in tests are not related to this change, most seem to be timing issues:
2020-06-17T22:08:43.7487216Z   X Datadog.Trace.ClrProfiler.IntegrationTests.SmokeTests.HttpHandlerStackOverflowExceptionSmokeTest.NoExceptions [15s 114ms]
2020-06-17T22:08:44.9356723Z   Error Message:
2020-06-17T22:08:49.6858018Z    System.TimeoutException : The smoke test is running for too long or was lost.
2020-06-17T22:08:54.4367155Z   Stack Trace:
2020-06-17T22:09:06.3131986Z      at Datadog.Trace.ClrProfiler.IntegrationTests.SmokeTests.SmokeTestBase.CheckForSmoke(Boolean shouldDeserializeTraces) in D:\a\1\s\test\Datadog.Trace.ClrProfiler.IntegrationTests\SmokeTests\SmokeTestBase.cs:line 111
2020-06-17T22:09:07.2232523Z    at Datadog.Trace.ClrProfiler.IntegrationTests.SmokeTests.HttpHandlerStackOverflowExceptionSmokeTest.NoExceptions() in D:\a\1\s\test\Datadog.Trace.ClrProfiler.IntegrationTests\SmokeTests\HttpHandlerStackOverflowExceptionSmokeTest.cs:line 17
2020-06-17T22:09:07.2323263Z   Standard Output Messages:
2020-06-17T22:09:07.2326668Z  Application path: D:\a\1\s\reproductions\HttpMessageHandler.StackOverflowException\bin\X64\Debug\net461\HttpMessageHandler.StackOverflowException.exe
2020-06-17T22:09:07.2345631Z  Executable path: D:\a\1\s\reproductions\HttpMessageHandler.StackOverflowException\bin\X64\Debug\net461\HttpMessageHandler.StackOverflowException.exe
2020-06-17T22:09:07.2352757Z  Assigning port 49629 for the agentPort.
2020-06-17T22:09:07.2358850Z  Assigning port 49630 for the aspNetCorePort.
2020-06-17T22:09:07.2361841Z  Found profiler at D:\a\1\s\reproductions\HttpMessageHandler.StackOverflowException\bin\X64\Debug\net461\profiler-lib\SignalFx.Tracing.ClrProfiler.Native.dll.
2020-06-17T22:09:07.2363765Z  Found integrations at D:\a\1\s\reproductions\HttpMessageHandler.StackOverflowException\bin\X64\Debug\net461\profiler-lib\integrations.json.
2020-06-17T22:09:07.2366037Z
2020-06-17T22:09:07.2367266Z
2020-06-17T22:09:12.8072070Z [xUnit.net 00:01:13.2433082]     Datadog.Trace.ClrProfiler.IntegrationTests.SmokeTests.TraceContextSmokeTest.NoExceptions [SKIP]
2020-06-17T22:09:14.3072688Z   ! Datadog.Trace.ClrProfiler.IntegrationTests.SmokeTests.TraceContextSmokeTest.NoExceptions [1ms]
2020-06-17T22:09:44.7072256Z [xUnit.net 00:01:45.1397937]     Datadog.Trace.ClrProfiler.IntegrationTests.GraphQLTests.SubmitsTraces [FAIL]
2020-06-17T22:09:44.9016116Z   X Datadog.Trace.ClrProfiler.IntegrationTests.GraphQLTests.SubmitsTraces [1m 11s]
2020-06-17T22:09:44.9018245Z   Error Message:
2020-06-17T22:09:44.9036649Z    Expected at least 11 spans, received 7
2020-06-17T22:09:44.9038330Z Expected: True
2020-06-17T22:09:44.9039283Z Actual:   False
2020-06-17T22:09:44.9040296Z   Stack Trace:
2020-06-17T22:09:44.9041760Z      at Datadog.Trace.ClrProfiler.IntegrationTests.SpanTestHelpers.AssertExpectationsMet[T](List`1 expectations, List`1 spans) in D:\a\1\s\test\Datadog.Trace.ClrProfiler.IntegrationTests\Helpers\SpanTestHelpers.cs:line 17
2020-06-17T22:09:44.9044808Z    at Datadog.Trace.ClrProfiler.IntegrationTests.GraphQLTests.SubmitsTraces() in D:\a\1\s\test\Datadog.Trace.ClrProfiler.IntegrationTests\GraphQLTests.cs:line 121
2020-06-17T22:09:44.9046340Z   Standard Output Messages:
2020-06-17T22:09:44.9047322Z  Platform: X64
2020-06-17T22:09:44.9048347Z  Configuration: Debug
2020-06-17T22:09:44.9049237Z  TargetFramework: net461
2020-06-17T22:09:44.9051130Z  .NET Core: False
2020-06-17T22:09:44.9052253Z  Application: D:\a\1\s\samples\Samples.GraphQL\bin\X64\Debug\net461\Samples.GraphQL.exe
2020-06-17T22:09:44.9055160Z  Found profiler at D:\a\1\s\samples\Samples.GraphQL\bin\X64\Debug\net461\profiler-lib\SignalFx.Tracing.ClrProfiler.Native.dll.
2020-06-17T22:09:44.9056996Z  Profiler DLL: D:\a\1\s\samples\Samples.GraphQL\bin\X64\Debug\net461\profiler-lib\SignalFx.Tracing.ClrProfiler.Native.dll
2020-06-17T22:09:44.9058656Z  Found integrations at D:\a\1\s\samples\Samples.GraphQL\bin\X64\Debug\net461\profiler-lib\integrations.json.
2020-06-17T22:09:44.9060643Z  [http] exception: System.Net.WebException: Unable to connect to the remote server ---> System.Net.Sockets.SocketException: No connection could be made because the target machine actively refused it <IP_ADDRESS>:49636
2020-06-17T22:09:44.9062331Z     at System.Net.Sockets.Socket.DoConnect(EndPoint endPointSnapshot, SocketAddress socketAddress)
2020-06-17T22:09:44.9064806Z     at System.Net.ServicePoint.ConnectSocketInternal(Boolean connectFailure, Socket s4, Socket s6, Socket& socket, IPAddress& address, ConnectSocketState state, IAsyncResult asyncResult, Exception& exception)
2020-06-17T22:09:44.9066367Z     --- End of inner exception stack trace ---
2020-06-17T22:09:44.9067645Z     at System.Net.HttpWebRequest.GetResponse()
2020-06-17T22:09:44.9069256Z     at Datadog.Trace.ClrProfiler.IntegrationTests.GraphQLTests.SubmitRequests(Int32 aspNetCorePort) in D:\a\1\s\test\Datadog.Trace.ClrProfiler.IntegrationTests\GraphQLTests.cs:line 194
2020-06-17T22:09:44.9071306Z  [http] exception: System.Net.WebException: Unable to connect to the remote server ---> System.Net.Sockets.SocketException: No connection could be made because the target machine actively refused it <IP_ADDRESS>:49636
2020-06-17T22:09:44.9081515Z     at System.Net.Sockets.Socket.DoConnect(EndPoint endPointSnapshot, SocketAddress socketAddress)
2020-06-17T22:09:44.9084203Z     at System.Net.ServicePoint.ConnectSocketInternal(Boolean connectFailure, Socket s4, Socket s6, Socket& socket, IPAddress& address, ConnectSocketState state, IAsyncResult asyncResult, Exception& exception)
2020-06-17T22:09:44.9085680Z     --- End of inner exception stack trace ---
2020-06-17T22:09:44.9087161Z     at System.Net.HttpWebRequest.GetRequestStream(TransportContext& context)
2020-06-17T22:09:44.9088152Z     at System.Net.HttpWebRequest.GetRequestStream()
2020-06-17T22:09:44.9089621Z     at Datadog.Trace.ClrProfiler.IntegrationTests.GraphQLTests.SubmitRequests(Int32 aspNetCorePort) in D:\a\1\s\test\Datadog.Trace.ClrProfiler.IntegrationTests\GraphQLTests.cs:line 188
2020-06-17T22:09:44.9091257Z  [webserver][stdout] info: Samples.GraphQL.Program[0]
2020-06-17T22:09:44.9092493Z  [webserver][stdout]       Instrumentation.ProfilerAttached = True
2020-06-17T22:09:44.9094191Z  [webserver][stdout] info: Samples.GraphQL.Program[0]
2020-06-17T22:09:44.9095431Z  [webserver][stdout]       COR_ENABLE_PROFILING = 1
2020-06-17T22:09:44.9096512Z  [webserver][stdout] info: Samples.GraphQL.Program[0]
2020-06-17T22:09:44.9098865Z  [webserver][stdout]       COR_PROFILER = {B4C89B0F-9908-4F73-9F59-0D77C5A06874}
2020-06-17T22:09:44.9100232Z  [webserver][stdout] info: Samples.GraphQL.Program[0]
2020-06-17T22:09:44.9101513Z  [webserver][stdout]       COR_PROFILER_PATH = D:\a\1\s\samples\Samples.GraphQL\bin\X64\Debug\net461\profiler-lib\SignalFx.Tracing.ClrProfiler.Native.dll
2020-06-17T22:09:44.9103875Z  [webserver][stdout] info: Samples.GraphQL.Program[0]
2020-06-17T22:09:44.9105086Z  [webserver][stdout]       SIGNALFX_API_TYPE = zipkin
2020-06-17T22:09:44.9106174Z  [webserver][stdout] info: Samples.GraphQL.Program[0]
2020-06-17T22:09:45.6711526Z  [webserver][stdout]       SIGNALFX_DOTNET_TRACER_HOME = D:\a\1\s\samples\Samples.GraphQL\bin\X64\Debug\net461\profiler-lib
2020-06-17T22:09:45.6724902Z  [webserver][stdout] info: Samples.GraphQL.Program[0]
2020-06-17T22:09:45.6726690Z  [webserver][stdout]       SIGNALFX_INTEGRATIONS = D:\a\1\s\samples\Samples.GraphQL\bin\X64\Debug\net461\profiler-lib\integrations.json
2020-06-17T22:09:45.6727969Z  [webserver][stdout] info: Samples.GraphQL.Program[0]
2020-06-17T22:09:45.6733874Z  [webserver][stdout]       SIGNALFX_PROFILER_PROCESSES = Samples.GraphQL.exe
2020-06-17T22:09:45.6735190Z  [webserver][stdout] info: Samples.GraphQL.Program[0]
2020-06-17T22:09:45.6735885Z  [webserver][stdout]       SIGNALFX_TRACE_AGENT_HOSTNAME = localhost
2020-06-17T22:09:45.6736877Z  [webserver][stdout] info: Samples.GraphQL.Program[0]
2020-06-17T22:09:45.6737821Z  [webserver][stdout]       SIGNALFX_TRACE_AGENT_PORT = 49635
2020-06-17T22:09:45.6739726Z  [webserver][stdout] Hosting environment: Production
2020-06-17T22:09:45.6741479Z  [webserver][stdout] Content root path: D:\a\1\s\test\Datadog.Trace.ClrProfiler.IntegrationTests\bin\x64\Debug\net461
2020-06-17T22:09:45.6742510Z  [webserver][stdout] Now listening on: http://localhost:49636
2020-06-17T22:09:45.6743457Z  [webserver][stdout] Application started. Press Ctrl+C to shut down.
2020-06-17T22:09:45.6744247Z  [webserver][stdout] info: Microsoft.AspNetCore.Hosting.Internal.WebHost[1]
2020-06-17T22:09:45.6745335Z  [webserver][stdout]       Request starting HTTP/1.1 POST http://localhost:49636/graphql application/json 133
2020-06-17T22:09:45.6746210Z  [http] OK {"data":{"createHuman":{"id":"fa24840d-24b3-4a93-9343-96c7a8c81986","name":"Boba Fett"}}}
2020-06-17T22:09:45.6747287Z  [webserver][stdout] info: Microsoft.AspNetCore.Hosting.Internal.WebHost[2]
2020-06-17T22:09:45.6749962Z  [webserver][stdout]       Request finished in 10407.4555ms 200 application/json
2020-06-17T22:09:45.6751429Z  [webserver][stdout] info: Microsoft.AspNetCore.Hosting.Internal.WebHost[1]
2020-06-17T22:09:45.6752515Z  [webserver][stdout]       Request starting HTTP/1.1 POST http://localhost:49636/graphql application/json 57
2020-06-17T22:09:45.6753554Z  [http] OK {"data":null}
2020-06-17T22:09:45.6754429Z  [webserver][stdout] info: Microsoft.AspNetCore.Hosting.Internal.WebHost[2]
2020-06-17T22:09:45.6755439Z  [webserver][stdout]       Request finished in 714.2579ms 200 application/json
2020-06-17T22:09:45.6756768Z  [webserver][stdout] info: Microsoft.AspNetCore.Hosting.Internal.WebHost[1]
2020-06-17T22:09:45.6757870Z  [webserver][stdout]       Request starting HTTP/1.1 POST http://localhost:49636/graphql application/json 56
2020-06-17T22:09:45.6760023Z  [webserver][stdout] fail: GraphQL.Server.Transports.AspNetCore.GraphQLHttpMiddleware[0]
2020-06-17T22:09:45.6761845Z  [webserver][stdout]       GraphQL execution error(s): GraphQL.Validation.ValidationError: Argument "id" has invalid value 1.
2020-06-17T22:09:45.6763383Z  [webserver][stdout] Expected type "String", found 1., GraphQL.Validation.ValidationError: Cannot query field "apearsIn" on type "Human". Did you mean "appearsIn"?
2020-06-17T22:09:45.6764525Z  [webserver][stdout] info: Microsoft.AspNetCore.Hosting.Internal.WebHost[2]
2020-06-17T22:09:45.6766209Z  [http] OK {"errors":[{"message":"GraphQL.Validation.ValidationError: Argument \"id\" has invalid value 1.\nExpected type \"String\", found 1.","locations":[{"line":1,"column":24}],"extensions":{"code":"<IP_ADDRESS>"}},{"message":"GraphQL.Validation.ValidationError: Cannot query field \"apearsIn\" on type \"Human\". Did you mean \"appearsIn\"?","locations":[{"line":1,"column":35}],"extensions":{"code":"5.2.1"}}]}
2020-06-17T22:09:45.6768185Z  [webserver][stdout]       Request finished in 1517.5184ms 200 application/json
2020-06-17T22:09:45.6769920Z  [webserver][stdout] info: Microsoft.AspNetCore.Hosting.Internal.WebHost[1]
2020-06-17T22:09:45.6772245Z  [webserver][stdout]       Request starting HTTP/1.1 POST http://localhost:49636/graphql application/json 78
2020-06-17T22:09:45.6774846Z  [http] OK {"errors":[{"message":"GraphQL.ExecutionError: Error trying to resolve throwNotImplementedException. ---> System.NotImplementedException: This API purposely throws a NotImplementedException\r\n   at Samples.GraphQL.StarWarsExtensions.StarWarsSubscription.ThrowNotImplementedException(ResolveEventStreamContext context)\r\n   at GraphQL.Resolvers.EventStreamResolver`1.GraphQL.Resolvers.IEventStreamResolver.Subscribe(ResolveEventStreamContext context)\r\n   at GraphQL.Execution.SubscriptionExecutionStrategy.<ResolveEventStreamAsync>d__2.MoveNext()\r\n   --- End of inner exception stack trace ---","locations":[{"line":1,"column":32}],"path":["throwNotImplementedException"],"extensions":{"code":"NOT_IMPLEMENTED"}}]}
2020-06-17T22:09:45.6777450Z  [webserver][stdout] fail: GraphQL.Server.Transports.AspNetCore.GraphQLHttpMiddleware[0]
2020-06-17T22:09:45.6779729Z  [webserver][stdout]       GraphQL execution error(s): GraphQL.ExecutionError: Error trying to resolve throwNotImplementedException. ---> System.NotImplementedException: This API purposely throws a NotImplementedException
2020-06-17T22:09:45.6782489Z  [webserver][stdout]          at Samples.GraphQL.StarWarsExtensions.StarWarsSubscription.ThrowNotImplementedException(ResolveEventStreamContext context)
2020-06-17T22:09:45.6783424Z  [webserver][stdout]          at GraphQL.Resolvers.EventStreamResolver`1.GraphQL.Resolvers.IEventStreamResolver.Subscribe(ResolveEventStreamContext context)
2020-06-17T22:09:45.6784029Z  [webserver][stdout]          at GraphQL.Execution.SubscriptionExecutionStrategy.<ResolveEventStreamAsync>d__2.MoveNext()
2020-06-17T22:09:45.6784517Z  [webserver][stdout]          --- End of inner exception stack trace ---
2020-06-17T22:09:45.6784899Z  [webserver][stdout] info: Microsoft.AspNetCore.Hosting.Internal.WebHost[2]
2020-06-17T22:09:45.6785338Z  [webserver][stdout]       Request finished in 362.3475ms 200 application/json
2020-06-17T22:09:45.6785587Z

More
2020-06-17T21:54:03.8755650Z [xUnit.net 00:00:05.2199061]     Datadog.Trace.Tests.AgentWriterTests.WriteTrace_2Traces_SendToApi [FAIL]
2020-06-17T21:54:03.9002558Z   X Datadog.Trace.Tests.AgentWriterTests.WriteTrace_2Traces_SendToApi [2s 925ms]
2020-06-17T21:54:03.9004510Z   Error Message:
2020-06-17T21:54:03.9005520Z    Moq.MockException :
2020-06-17T21:54:03.9010764Z Expected invocation on the mock once, but was 0 times: x => x.SendTracesAsync(It.Is<Span[][]>(y => y.Single<Span[]>().Equals([TraceId:<PHONE_NUMBER>529563258
2020-06-17T21:54:03.9013583Z ParentId: 0
2020-06-17T21:54:03.9014974Z SpanId:<PHONE_NUMBER>737306820
2020-06-17T21:54:03.9020957Z ServiceName:
2020-06-17T21:54:03.9022031Z OperationName:
2020-06-17T21:54:03.9022831Z Resource:
2020-06-17T21:54:03.9024045Z Type:
2020-06-17T21:54:03.9024840Z Start: 1/1/0001 12:00:00 AM +00:00
2020-06-17T21:54:03.9025680Z Duration: 00:00:00
2020-06-17T21:54:03.9026423Z Error: False
2020-06-17T21:54:03.9029398Z Meta:
2020-06-17T21:54:03.9030271Z Logs:
2020-06-17T21:54:03.9032962Z Metrics:
2020-06-17T21:54:03.9033898Z ])))
2020-06-17T21:54:03.9034904Z No setups configured.
2020-06-17T21:54:03.9035582Z No invocations performed.
2020-06-17T21:54:03.9036232Z   Stack Trace:
2020-06-17T21:54:03.9072447Z      at Moq.Mock.ThrowVerifyException(MethodCall expected, IEnumerable`1 setups, IEnumerable`1 actualCalls, Expression expression, Times times, Int32 callCount) in C:\projects\moq4\Source\Mock.cs:line 473
2020-06-17T21:54:03.9074396Z    at Moq.Mock.VerifyCalls(Mock targetMock, MethodCall expected, Expression expression, Times times) in C:\projects\moq4\Source\Mock.cs:line 451
2020-06-17T21:54:03.9076310Z    at Moq.Mock.Verify[T,TResult](Mock`1 mock, Expression`1 expression, Times times, String failMessage) in C:\projects\moq4\Source\Mock.cs:line 340
2020-06-17T21:54:03.9078362Z    at Moq.Mock`1.Verify[TResult](Expression`1 expression, Func`1 times) in C:\projects\moq4\Source\Mock.Generic.cs:line 508
2020-06-17T21:54:03.9080039Z    at Datadog.Trace.Tests.AgentWriterTests.WriteTrace_2Traces_SendToApi() in D:\a\1\s\test\Datadog.Trace.Tests\AgentWriterTests.cs:line 36
2020-06-17T21:54:03.9081325Z --- End of stack trace from previous location where exception was thrown ---
2020-06-17T21:54:11.3966001Z Results File: D:\a\_temp\VssAdministrator_WIN-BR6KN88E3KR_2020-06-17_21_54_00.trx
2020-06-17T21:54:11.3967677Z


fix(markdown): allow relative paths

Description
Now markdown will work with both Absolute and Relative paths to allow for offline capabilities
What's included?

Accept Relative paths as well as Absolute paths

Test Steps

[ ] npm run start
[ ] then this
[ ] finally this

General Tests for Every PR

[ ] npm run start still works.
[ ] npm run lint passes.
[ ] npm run stylelint passes.
[ ] npm test passes and code coverage is not lower.
[ ] npm run build still works.

Screenshots or link to StackBlitz/Plunker

Create PR against wrong branch, closing this PR.


Year 2 updates and eligibility changes

Year 2 updates and eligibility changes
Trello card
Context
Changes proposed in this pull request
Guidance to review

Hi @philspray could you take a look? Something has gone wrong with the yellow box and it could be better formatted with spaces, but I don't know how...

I've added spacing into the yellow box. It does make it very long though @laurahermionetennant92. Might need to consider if all that info is really needed at the top of the page? I've also fixed a few of the links.


[ENHANCEMENT] - Add custom headers support while sending response

Feature Description
Currently, there is no way to control the headers that are being sent in the response. Adding support for that would be a nice feature that many other features could benefit from.
Possible Implementation
Create a new ApplicationResponse which can take custom headers and attach them to the HttpResponse.
Have you spent some time to check if this feature request has been raised before?

[X] I checked and didn't find similar issue

Have you read the Contributing Guidelines?

[X] I have read the Contributing Guidelines

Are you willing to submit a PR?
Yes I am willing to submit a PR!

Closing this as we don't have any requirement for this currently.


Support for device ISIS routing protocol

View the proposed changes using the redocly API viewer
# sample code for configuring a device with ISIS routing protocol enabled
cfg = api.config()
p1 = cfg.port.append(name='p1')
d1 = cfg.devices.append(name='d1')

is = d1.ethernet.isis
is.name = 'i1'
is.interface.system_id = '00000000'
is.interface.metric = 10

Few places the required field is removed and updated with default values like eth_mac, ipv4_addr, gateway
Why two arrays of bgp_peers , this will be overhead from the user POV, if one device(router) instance will be having one ipv4 interface, we can't add multiple (bgp_ipv4_peers). Instead of keeping it as a list, can it be a single object?

  r1 = cfg.routers.router(name='r1')[-1]
  bgp = r1.bgp_ipv4_peers.bgpv4peerlist()[-1]
  bgp.ipv4_name = ip1.name
  bgp.bgp_peers.bgpv4(name='bgp1')[-1]

routers:

bgp_ipv4_peers:

bgp_peers:

active: true
as_number: 1
as_number_set_mode: do_not_include_as
as_number_width: four
as_type: ibgp
dut_address: <IP_ADDRESS>
name: bgp1
router_id: <IP_ADDRESS>
ipv4_name: ip1
name: r1

Few places the required field is removed and updated with default values like eth_mac, ipv4_addr, gateway
Why two arrays of bgp_peers , this will be overhead from the user POV, if one device(router) instance will be having one ipv4 interface, we can't add multiple (bgp_ipv4_peers). Instead of keeping it as a list, can it be a single object?

  r1 = cfg.routers.router(name='r1')[-1]
  bgp = r1.bgp_ipv4_peers.bgpv4peerlist()[-1]
  bgp.ipv4_name = ip1.name
  bgp.bgp_peers.bgpv4(name='bgp1')[-1]

routers:

bgp_ipv4_peers:

bgp_peers:

active: true
as_number: 1
as_number_set_mode: do_not_include_as
as_number_width: four
as_type: ibgp
dut_address: <IP_ADDRESS>
name: bgp1
router_id: <IP_ADDRESS>
ipv4_name: ip1
name: r1

It was not our intention to change fields for Ethernet or IPv4. They should be same as before. I could not find any diffs for the three fields mentioned i.e. eth_mac, ipv4_addr, gateway
The intention is to support the scenario where one device has multiple interfaces ( very possible ) and each interface has BGP sessions configured to peer with multiple DUTs.   Hence these need to be arrays of arrays to handle both planes .

dividing of interfaces and routers, might introduce client side validation
ex:
router.isis()[-1].interfaces = [eth1.name, eth2.name]
router.isis()[-1].interfaces = [eth2.name, eth3.name]
this is a one erroneous senario which we might end up adding such validation.

Yes, that is true.
The question is what we want to support in future.

Every router can have single interface only ( then how do we emulate even simple use-cases that need a connected interface and a loopback --> advanced use-cases might be one router having 2 interfaces )
We decide that this model can support multiple sub-interfaces on same port only . Then array of interface config can be kept  within router but cannot ever have a router with 2 interfaces on 2 different test ports (e.g. backup/active links) i.e. interface  or device list can be removed.
Have set of interfaces per port.
Allow users to have most generic future options while creating routers/devices from these set of interfaces:
a) Multiple routers , each with one connected and one loopback ( with connected = subinterface on some test port.)
b) Multiple routers , each with multiple connected ,  each connected = subinterface in same test port. ( Possible to support today , supported in some Classic use-cases only)
c) One router , with 2 interfaces , each interface on a different physical test port. ( Cant model this today in our existing test tools)
-> if we decide we never want to do this : Then we can have Port --> Router --> [ interface list , isis router ]  i.e. no separate Device or Interface object is needed but in future we should never look for one protocol instance spanning multiple physical test ports ]

converged with #154?
can close?

yes it can be closed

closing as we converged on #154


Calling apls.gather_files() function would raise errors

Please help on this issue.
Gathering files...
Creating networkx graph from downloaded OSM data...
Added edge lengths to graph in 0.01 seconds
Created graph with 94 nodes and 230 edges in 0.28 seconds
Begin topologically simplifying the graph...
Identified 71 edge endpoints in 0.00 seconds
Constructed all paths to simplify in 0.00 seconds
Simplified graph (from 94 to 71 nodes and from 230 to 184 edges) in 0.01 seconds
Retrieve proposal graph...
Running wkt_list_to_nodes_edges()...
Time to run wkt_list_to_nodes_egdes(): 0.014730691909790039 seconds
Creating G...
  len(G.nodes(): 142
  len(G.edges(): 166
Time to run nodes_edges_to_G(): 0.011862039566040039 seconds
Clean out short subgraphs
---------------------------------------------------------------------------
AttributeError                            Traceback (most recent call last)
<ipython-input-24-3a2f4f5cb49d> in <module>
      3                   prop_dir='/Users/an.tran/Desktop/map-workspace/code/apls/apls/data/gt_json_prop_wkt/proposal',
      4                   im_dir='/Users/an.tran/Desktop/map-workspace/code/apls/apls/data/images',
----> 5                  wkt_file='/Users/an.tran/Desktop/map-workspace/code/apls/apls/data/gt_json_prop_wkt/proposal/sn3_sample_submission_albu.csv')

/usr/local/lib/python3.7/site-packages/apls/apls.py in gather_files(test_method, truth_dir, prop_dir, im_dir, im_prefix, wkt_file, max_files, gt_subgraph_filter_weight, gt_min_subgraph_length, prop_subgraph_filter_weight, prop_min_subgraph_length, use_pix_coords, speed_key, travel_time_key, default_speed, verbose, super_verbose)
   2305                 node_iter=node_iter,
   2306                 edge_iter=edge_iter,
-> 2307                 verbose=super_verbose)
   2308
   2309             t2 = time.time()

/usr/local/lib/python3.7/site-packages/apls/wkt_to_G.py in wkt_to_G(wkt_list, im_file, prop_subgraph_filter_weight, min_subgraph_length, node_iter, edge_iter, simplify_graph, verbose)
    299
    300     print("Clean out short subgraphs")
--> 301     G0 = apls._clean_sub_graphs(G0, min_length=min_subgraph_length,
    302                           weight=prop_subgraph_filter_weight,
    303                           max_nodes_to_skip=30,

AttributeError: module 'apls' has no attribute '_clean_sub_graphs'

_clean_sub_graphs() is indeed a function within apls.py, so I'm not sure of the source of this error.  Try the updated version of apls to see if this is resolved.

Hi @avanetten,
I tried the latest version of apls when it has this error. I think the problem related to the underscore _clean_sub_graphs(). And python3 cannot import the underscore function.