text:
Remove generate-user-email-list script

It has moved to digitalmarketplace-scripts.

:+1:

New script works
:+1:

authors: allait pcraig3 robyoung

repo: alphagov/digitalmarketplace-api


text:
Fix bullets in cookies.html

Before:

After:

Interesting, this PR is against alphagov:master for some reason. it should just be aganst master of this repo

How did you create the PR?

I didn't even notice that. I just opened it by editing cookies.html in a browser; I can open another PR via the command line if you like?

source: gharchive/pull-request

authors: bahmady benvand

license: mit

license_type: permissive

license_source: bigquery


text:
Create basic DOS 5 test scenario

Trello: https://trello.com/c/kGmsXWZ1/520-3-find-out-whether-dmp-can-cope-with-dos5-closing
I created a simple test scenario where a user joins the DOS 5 framework, confirms their company details, and then creates and deletes a user research service.
This is a simple proof of concept to show that I can create a Gatling scenario. There are a number of hard-coded things (e.g. the base URL) that I'll need to sort out later. The next step will be to create the other user flows we need (declaration questions, for example).
This works only on my local machine - I have a script to generate the users and suppliers for this test (PR to follow). Submitting it as a PR in the interests of getting fast feedback.

Converting to a draft - this is pretty much unreviewable to those without prior experience of Gatling, which is currently all the other devs...

license_source: github-api


text:
Remove service description text truncation

Until now, we've truncated the search summary text for each search result to 400 characters. Now there are no G5 services on production there is now reason to do so.
https://www.pivotaltracker.com/story/show/109270496
Notes
no_match_size is set because elasticsearch will only return highlight data if a match is found in one of the fields searched (set in mappings/services.json).
We need the summary text for each search result to be a copy of the searchSummary field in the highlights data so any HTML it contains is escaped (by setting the encoder to 'html').
(See https://github.com/alphagov/digitalmarketplace-search-api/blob/master/app/main/services/query_builder.py#L34)
Setting no_match_size means highlight data is always returned so the searchSummary field is always escaped.

Not been able to test this locally because my elasticsearch is borked. But considering the remaining tests still pass, I think it’s a :+1:.

authors: quis tombye

repo: alphagov/digitalmarketplace-search-api


text:
Switch on PROD feature flag to turn off clarification questions

This needs to be deployed at 5pm today.

:+1:

authors: TheDoubleK robyoung


text:
Add the ability to delete a signature from the admin

An increasing number of people want to remove their signature from a
petition so to make life easier add a feature to the search results
page in the admin to remove a signature. Note that petition creators
can't have their signature removed.
https://www.pivotaltracker.com/n/projects/307301/stories/102570760

LGTM

repo: alphagov/e-petitions

license: MIT


text:
if object is 404, serve govuk 404 body rather than backend 404 body

Context
There is a fallback to mirrors if page not found on origin website and if the page is not found in the mirrors, the mirror response body is sent to the client. We actually want the response body to be the govuk customize message.
Decisions
If an object is 404 and comes from the mirrors, send the govuk 404 custom response body.

Sorry to drag this one back out of the past @fredericfran-gds. Do you remember any more detail about what happened here? My reading of this comment is that this shouldn't be necessary.

I think what this means is we want mirrors to return either 200 or 503 but some mirrors do return other http codes and if they do, we force them to 503 and display a nice message to the public user that we are experiencing technical difficulties.

So this is the interesting bit: do we know when the mirrors might return another error code?

They send 404 not found because not all stuff are mirrored. For e.g. we put this in place because when licensify was experiencing some issues, users were getting some custom s3 messages back.

Do you have an example of the problem? I'm still not sure why sometimes we return a 503, but other times an actual 404.

I guess mirrors can behave in many ways: e.g. 503 for some internal error, 404 if the data is not there, 401 if authentication was misconfigured. We want all these errors to be 503 because there is a specially handling later to make them be a custom 503 govuk error.

Oh, I think I see now. The comment is talking about "errors from the mirrors" in the sense that "the mirror is broken". So if we failed over to mirrors, and the page wasn't there, we would return a 404 response (from S3), and we'd need this change to render it nicely.
I guess we only saw it for licensify because that has a lot of 5xx issues, so we rely on mirrors more than we do for most of the rest of GOV.UK. Does that sound right?

Yes, this is correct. Apologies if we did not convey this clearly. Feel free to raise a PR so that the comments can be more clear.

Ah, but now I'm confused again. We never do an "error 404" in our VCL, like we do for 503, so how do we get into vcl_error in the first place?
I tried to reproduce some kind of 404 with licensing apps with the origin down, but I couldn't get it to work. Maybe that's because "backend down" is different to "a single 5xx".
Let me know if there's someone else you'd prefer me to ask 😄

I updated the description here, it should have referred to a 503 govuk body.

authors: benthorner fredericfran-gds

repo: alphagov/govuk-cdn-config


text:
Add Emma Beynon manifest

Adding new starter Emma Beynon

Welcome to GOV.UK Emma!

authors: alexmuller emmabeynon

repo: alphagov/govuk-puppet


text:
Google Analytics date regex is very specific

Hi, I was just testing out the date regex that strips PII from Google Analytics events. It seems like the regex only captures dates in the format: XXXX-XX-XX
My initial test was XX/XX/XXXX, which wasn't being caught. It might be worth making the regex a bit more flexible?

Related conversation about flexibility: https://github.com/alphagov/govuk_frontend_toolkit/pull/466#issuecomment-405517391

Following the launch of the GOV.UK Design System, GOV.UK Frontend Toolkit will now only get major bug fixes and security patches, so I'm going to close this.
GOV.UK Design System (and GOV.UK Frontend) does not provide any analytics functionality, and as far as I know there are currently no plans to provide this either as part of Frontend nor as a separate library.

source: gharchive/issue

authors: 36degrees lewisnyman nickcolley


text:
Date of birth component should have autocomplete attributes

The date of birth component could have the following autocomplete attributes automatically added:

"bday-day"
"bday-month"
"bday-year"

Reference: https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete

Having a cursory glance at this, I'm presuming we're talking about this? It doesn't look like date of birth is the most common use for this component presently, however there also aren't any other autocomplete attributes that we could apply here. I see 2 approaches:

Apply the autocomplete attributes regardless of use, just so that something is there
Add an API attribute that adds the attributes if the component is being used as a DOB field

I'm leaning towards 2 but I'm interested to know your thoughts.

That is a fair and true point - it's a date component, not a date of birth component.
I think option 2 is a better solution, as it'd be optional. My personal thought would be something that would turn it off and on with a boolean rather than setting each autocomplete attribute; for example:
<%= render "govuk_publishing_components/components/date_input", {
  date_of_birth_autocomplete: true,
} %>

This was also what I was thinking! Whoever finds the time first can have a go at this.

Worth flagging that it only makes sense to use those autocomplete values if the date you're asking for is the date of birth of the person filling the form in – not if you're asking for someone else's date of birth.
Might be worth thinking about when documenting it.

The Design System suggests using the autocomplete attribute for things like date of birth.

authors: 36degrees alex-ju injms owenatgov


text:
Accept new framework defaults

This PR toggles the boolean flags in config/initializers/new_framework_defaults.rb so that our application has the same behaviour, with regards to these settings, as a new Rails 5.0.3 application. The only parameter that has not been toggled is Rails.application.config.raise_on_unfiltered_parameters which was already set to the default true in 4d2b4931.

Fixing typo, rebasing and force-pushing. Thanks @floehopper

repo: alphagov/manuals-publisher


text:
Remove Google Analytics tracking code

The tech-docs-gem includes analytics conditionally based on testing the ga_tracking_id option:
https://github.com/alphagov/tech-docs-gem/blob/master/lib/source/layouts/_analytics.erb#L1
This sets it to an empty string which stops it being included.
Part of https://www.pivotaltracker.com/n/projects/1443052/stories/170379929

Closing this to re-open as a different PR to give concourse a jump-start.

repo: alphagov/notifications-tech-docs


text:
Unpublish edition edit

Trello
Add unpublish functionality for new design system edit page to allow unpublishing of published edition.
When edition is draft, does not shows unpublish tab

When edition is published, shows unpublish tab

Confirm unpublish

⚠ This repo is Continuously Deployed: make sure you follow the guidance ⚠
Follow these steps if you are doing a Rails upgrade.

Just added a couple of small comments regarding the UI but otherwise this looks good to me.
I would prefer someone with more Rails knowledge to look at it as well before approving for best practice etc. though it seems fine to me as well.

authors: davidtrussler syed-ali-tw

repo: alphagov/publisher


text:
Downtime manager

www.agileplannerapp.com/boards/173808/cards/8805
As a content designer
I want a better way to indicate on start pages when a service is down for planned maintenance
So that I don't have to re-edition multiple pages and push these through workflow, then repeat the process again once the downtime is over
related:
https://github.com/alphagov/govuk_content_models/pull/277
https://github.com/alphagov/govuk_content_api/pull/209
https://github.com/alphagov/frontend/pull/728

:fireworks: :tada: :+1:

authors: fofr vinayvinay


text:
Add script to cleanup old sitemaps

Currently we are keeping all sitemaps ever created. It would be good to
clean then up after a couple of days so that we don't have hundreds of
them saved on disk.
This lets you set a number of days to clean up and then deletes all
sitemaps which aren't the number of days most recent. If the sitemaps
are not created on a particular day this will still maintain at least
the right number of days worth of sitemaps not just the last number of
calendar days worth.
https://www.pivotaltracker.com/story/show/90087288

This code looks fine, and I like that it's well tested.
Did you consider instead using something external like logrotate, or just a shell script to delete the oldest files in the directory?  This is a fair chunk of code, that I'd rather avoid having to maintain if we could use something already written.
As an example of the kind of shell script I'm thinking of
ls -1tr *.xml | head -n -4 | xargs -d '\n' rm -f`

will delete all but the newest 4 files matching *.xml.  I'm not sure if the sitemap files are organised into directories - if so, this command could be pointed at the directories instead of directly at the *.xml files

Due the the fact that we split the sitemap into chunks of 50,000 urls the number of files per day is not a constant, and could grow in the future (and has grown in the past). For example in the past there were 4 files (one index and 3 files full of URLs). Now that we have more than 150,000 urls there are 5 files (one index and 4 files full or urls). This will probably grown in the future to be more files once we have more than 200,000 unique pages on the site. So something naive like just deleting all but the n most recent files won't scale with the site.
I have no experience using anything which would be able to do it based on creation dates of the files, something might exist but I just have no knowledge. This just seemed like an easy way of achieving it reliably.

Ah, so the files are all in a single directory, but there are varying numbers of them per day.  That does make things more awkward - not intractable, but the shell scripting required would get impenetrable quickly.
In the interests of this being robust, tested, and in a language that all our developers understand, this is probably the best approach then.  Thanks for the explanation.

The main reason we didn't want to use logrotate was that the files are produced by the app, so it's in a better position to know what's still useful to it or not. The best we could do with logrotate was probably delete any files older than 30 days.

authors: bradleywright edds rboulton

repo: alphagov/rummager


text:
Return all available fields by default

Rummager used to do field filtering by default when no fields were
specified.  I found that behaviour a bit confusing when working on a
feature that touched this functionality. The difference in output
between search-admin and the search API was also a bit confusing,
making it harder to get up to speed with how rummager filters fields.
This change aims at simplifying things by always returning all fields
from ElasticSearch when no specific fields have been requested.
When specific fields have been requested, we fetch all fields from
ElasticSearch and only keep the fields we are interested in, which is
the current behaviour.
This means we don't need to add extra fields such as title and
description to make sure virtual fields (e.g. highlights) work. Because
each result includes all fields, we are able to enrich the response and
further down the line remove unwanted fields.
What do you think?

A few brief thoughts:
I'd be concerned about performance impacts of fetching all fields from elasticsearch even when they're not needed.  Some of the fields can be very large (eg, the indexable_text field), so this could be a significant impact; both due to network transfer, and also due to forcing elasticsearch to look up more data from its index.  It would need to be measured, but I think this could be significant.
In terms of API design, I'm happy to see the default set of fields going away.  This default was set to work with existing frontends which expected to be able to get a specific set of fields returned; and it was too hard to remove the default set.
However, I'd advise against making all the fields be returned as a default, even without performance concerns, because I think it would make future modifications to the indexing schema harder to make without risking breaking existing applications.  Currently, if you need to remove a field (other than those in the default fields list), you can look through the codebase, or through requests in kibana, for search requests which ask for that field to be returned.  This will show all requests using that field, so you can ensure that the field isn't being used before removing or renaming it.  With a default of all fields being returned, this wouldn't be possible.  Being able to do this was very useful in a few cases in the past.
I'd actually advocate one of two options:

If no fields are requested, don't return any fields.  The search may still return useful information (facet information, or counts of results), so this can be a useful state.

Make a list of fields be a required parameter, so any use of the search API without specifying the fields to return returns an error, explaining what the problem is.  Most of the search API is designed to be fussy about invalid requests, to make it easier to make changes behind the scenes, so this would be consistent with the existing API design - but might be annoying for casual users.

Finally: what's missing from the search API at the moment is a way to list all the existing fields.  This can be inspected in the source code, but there's no way to get it from the API.

Thanks for your comments, @rboulton !
Those are all fair points. I didn't consider performance issues in as I wasn't quite sure how to measure them. My assumption was that saving developer time would yield more benefits, but that's not a good way to put this.
I quite like your suggestion of enforcing the fields parameter. That would give a much more granular control over what fields are used or not, and in all cases we would only fetch fields that are necessary, which is a good thing. From a consumer perspective, it would be instantly clear what parameters are needed (by seeing an error message), rather than trying to figure out why the search results have no fields whatsoever.
Furthermore, we could solve the issue of listing what fields are possible to fetch by:

adding a new endpoint that lists what fields are possible to fetch;
or include them in the search results based on a query param (e.g. list_fields=true)

Would you have a recommendations on that?

authors: carvil rboulton


text:
Fix the value-sample test Smart Answer Flow

The "escape user input interpolated into outcome ERB template" test in
html_escaping_user_input_test.rb wasn't testing anything particularly useful.
The body in the ERB template was never being rendered (because it was still
using the old style of a single template for each of the title and body
sections) which meant that refuting the presence of the malicious input would
always succeed.
I've renamed outcome_with_template_body.govspeak.erb to
outcome_with_template.govspeak.erb and added the content_for :body container.
I've also added text within that container so that I can assert for the
presence of that text in the test. If the text isn't there then the test will
fail fast.
NOTE. I believe the previous assertion for the h2 was attempting to fail fast
in a similar way. Unfortunately, that would always succeed because
NodePresenter#title falls back to humanising the outcome name ("Outcome with
template" in this case) if no other title exists.

LGTM :+1:

Thanks @tadast.

authors: chrisroos tadast

repo: alphagov/smart-answers


text:
Apply working pattern to linked period of sickness in calculate-statuatory-sick-pay

Supersedes #1998.
Motivation
The calculator is not applying the employee's working pattern to the optional linked sickness period. The working pattern is the days of the week that the employee works e.g. Monday to Friday.
In order to fix this problem we first have to move the question which asks for the employee's usual work days to an earlier point in the process.
After moving the question, we then need to take the working pattern into account when calculating the number of valid sick days in the linked period of sickness i.e. ignoring days on which the employee would not have been working.
Minor changes
The following came up during the fact-checking process:-

Extra validation on the "linked sickness end date" question
Remove the word 'Ordinary' from 'Ordinary Statutory Paternity Pay'

Technical details
The "usual work days" question is the last question and incorporates all the logic to route the user to one of four outcomes. Unfortunately, moving the "usual work days" question means that there will now be three questions each of which could go to one of four outcomes. Furthermore the outcome routing logic is all contained within the "usual work days" question.
So before moving the question, we extract the logic into a nested OutcomeDecision class so we can more easily reuse it across the three new "last" questions.
Note: This highlights the fact that the routing logic should probably be modelled as being between nodes and not part of a node. But that's a job for another day.
Unfortunately, a number of the changes in this PR require big changes to the huge number of regression test artefacts. The majority of the changes should be simple path renames due to changes in the sequence of responses, but in many cases it looks as if git's rename heuristics aren't correctly identifying all the renames. Hence it's going to be very difficult for someone to review those commits.
To give myself some reassurance, I've generated the visualisation of the flow before and after the change in the order of the questions:
Before

After

Note: The significant renames mentioned above also correspond to changes in public URLs. Ideally we'd redirect the old URLs to the new ones, but I think this would be a big undertaking and I'm not sure whether there's a precedent for doing for changes like this in Smart Answers.
Expected changes
Take working pattern into account when calculating days of sick pay paid for linked period of sickness
This is the main change and I believe was the original motivation behind the ZenDesk ticket. In order to do this we had to move the 'Which days of the week do they usually work?' question from being the last question to the 4th question. And then we had to fix the calculation.
Previously the calculator had incorrectly assumed that the employee was paid sick pay for every calendar day of the linked period of sickness. The new version of the calculator applies the employee's working pattern to the linked period of sickness to work out how many days of sick pay were paid.
In the following scenario the linked period of sickness is two days (Saturday & Sunday) and the employee works Wednesdays & Saturdays. Previously it was assumed that sick pay was paid for both these days; whereas now only the Saturday is included.
Thus previously the linked period of sickness accounted for 2 of the 3 waiting days (leaving 1 waiting day); whereas now it only accounts for 1 of the 3 waiting days (leaving 2 waiting days). Therefore where previously the 9 days was reduced by 1 day to 8 days, now the 9 days is reduced by 2 days to 7 days; and the SSP amount for the week ending 4th July 2015 is reduced by half accordingly.

Old: https://www.gov.uk/calculate-statutory-sick-pay/y/ordinary_statutory_paternity_pay/yes/no/2015-06-27/2015-07-25/yes/2015-05-09/2015-05-10/eight_weeks_more/monthly/2015-04-24/2015-02-27/1600.0/3,6 # => entitled to 8 days of sick pay out of 9
New: https://www.gov.uk/calculate-statutory-sick-pay/y/statutory_paternity_pay/yes/no/3,6/2015-06-27/2015-07-25/yes/2015-05-09/2015-05-10/eight_weeks_more/monthly/2015-04-24/2015-02-27/1600.0 # => entitled to 7 days sick pay out of 9

Prevent linked period of sickness overlapping the current period of sickness
During the fact-check process, you pointed out that the linked period of sickness should never overlap the current period of sickness, because then the two periods ought to be considered as a single period of sickness.
We've introduced new validation on the 'Enter the end date for this linked period of sickness?' question such that the date entered must be before the beginning of the current period of sickness. In the following examples, the old version shows a page where an invalid date has been accepted; whereas the new example shows the new error message:

Old: https://www.gov.uk/calculate-statutory-sick-pay/y/ordinary_statutory_paternity_pay/yes/no/2015-01-07/2015-05-03/yes/2015-01-01/2015-01-07 # => 7 January 2015 appears in previous answers against 'Enter the end date for this linked period of sickness' question
New: https://www.gov.uk/calculate-statutory-sick-pay/y/statutory_paternity_pay/yes/no/1,2,3,4/2015-01-07/2015-05-03/yes/2015-01-01/2015-01-07 # => Date not accepted and error message displayed: 'You need to enter a date before the start of the current period of sickness or it isn't a separate linked period of sickness'

Remove the word 'Ordinary' from 'Ordinary Statutory Paternity Pay'
During the fact-checking process, you pointed out that the 'Ordinary' prefix is no longer used. I've removed it from everywhere it occurs in this calculator:
In the 'Is your employee getting any of the following?' question

Old: https://www.gov.uk/calculate-statutory-sick-pay/y
New: https://www.gov.uk/calculate-statutory-sick-pay/y

In the URL when the above option is selected

Old: https://www.gov.uk/calculate-statutory-sick-pay/y/ordinary_statutory_paternity_pay
New: https://www.gov.uk/calculate-statutory-sick-pay/y/statutory_paternity_pay

On the outcome page when the above options is selected and employee is entitled to sick pay
In the 'What you need to know' section:

Old: https://www.gov.uk/calculate-statutory-sick-pay/y/additional_statutory_paternity_pay,ordinary_statutory_paternity_pay/no/no/2013-04-02/2013-04-10/yes/2013-01-01/2013-02-15/before_payday/fortnightly/2000.0/30/0,6
New: https://www.gov.uk/calculate-statutory-sick-pay/y/additional_statutory_paternity_pay,statutory_paternity_pay/no/no/0,6/2013-04-02/2013-04-10/yes/2013-01-01/2013-02-15/before_payday/fortnightly/2000.0/30

No change
Calculations with no linked period of sickness should be unaffected by the changes in the new version.

Old: https://www.gov.uk/calculate-statutory-sick-pay/y/ordinary_statutory_paternity_pay/yes/no/2013-01-07/2013-05-03/no/eight_weeks_more/irregularly/2012-12-28/2012-10-26/3000.0/1,2,3,4
New: https://www.gov.uk/calculate-statutory-sick-pay/y/statutory_paternity_pay/yes/no/1,2,3,4/2013-01-07/2013-05-03/no/eight_weeks_more/irregularly/2012-12-28/2012-10-26/3000.0

This PR is still awaiting the final go-ahead from the fact-check process, so I'm going to mark it as being in fact-check and not-mergeable. However, it would be good if someone can review it, because I'm pretty confident it's ready for publication.

I've spent quite a while reviewing this PR and chatting to @floehopper about it.
Since reviewing it we've come to the conclusion that the usual_work_days? question was moved in order to update/fix the calculation in the must_be_sick_for_4_days outcome. That fix hasn't happened yet and may now happen as a separate pull request. Presumably that also means that the movement of the question wasn't actually required for the fixes in this PR but I don't think it's worth trying to untangle it.
We also spoke about manually renaming regression test artefacts in order to make it easier to see the important differences in regression test output. I'm not convinced it's worth the effort of retroactively doing that in this PR but it can be a useful technique when a large number of artefacts are changed.
Aside from the comments, as far as I can tell this all looks good to me.

Superseded by #2051.

authors: chrisroos floehopper


text:
[CLOSED] Publish schemas to content store

 Issue by tommyp
Monday 05 January 2015 at 14:33 GMT
Originally opened as https://github.com/alphagov/specialist-publisher/pull/369

As we want to remove Finder API from the stack we needed to find some other way of publishing Finders to the Content Store. Placing them into Specialist Publisher seemed like the most natural approach so this PR takes the steps required for this to happen. The following is contained within this PR:

Move the schemas and metadata from Finder API to a /finders folder and remove the old schemas
Change the file paths in the Wiring
Treat old style single select values as multi select
Add presenters for Finder Content Items
Add a publishing_api_finder_publisher class
Add a rake task to publish the Finders
Explain new finders and presenters folders in README

tommyp included the following code: https://github.com/alphagov/specialist-publisher/pull/369/commits

 Comment by tommyp
Monday 05 January 2015 at 17:35 GMT

Amended based on @evilstreak's comments. We now use the file modified time as the timestamp for the content item.

repo: alphagov/specialist-publisher-rebuild


text:
Some users were confused not to see ‘bus passes’ in the list of Verify services provided in the hub.

Impact: These users were then more confused about why they were being asked to use Verify.
Evidence: When trying to understand the role of Verify, some users looked into the list of services provided in the hub, but were unable to find anything relating to concessionary travel.

Note: As far as I know only 1 person has said this so far.

Yes, only one reported incidence of this so far

When it's live we can add it...?

authors: lizziebruce petegale sanjaypoyzer

repo: alphagov/verify-local-patterns


text:
Extra page to be deleted – "Add a photo..."

This page needs to be deleted –

This is the mobile page which still exists in the design:
https://verify-local-patterns.herokuapp.com/service-patterns/concessionary-travel/example-service/take-photo
We are awaiting mobile detection functionality from Firmstep

I've added a button in the form now so you can pretend to be on mobile until the functionality exists.

authors: BeckiBorastonBucks sanjaypoyzer


text:
BAU: Upgrade dropwizard due to vulnerability found by snyk

synk: https://snyk.io/vuln/SNYK-JAVA-IODROPWIZARD-552147

It's probably worth bumping the version in the build.gradle for common-utils and security-utils too I think.

authors: AmritSidhu Wynndow

repo: alphagov/verify-utils-libs


text:
Adding onScrollToX and onScrollToY callbacks.

The current onScroll method is not sufficient in the
ember-scrollable that supports both horizontal and vertical
scrolling since there is no way of determining what direction
was scrolled without forcing clients to keeping state and detect
the scroll direction (something that is already done by ember-scrollable).
As such, we should deprecate the old usage, and add new callbacks.

👍

authors: alexander-alvarez offirgolan

repo: alphasights/ember-scrollable


text:
Merge upstream 20211223

Alpine related upstream rosdep diffs:
 bison:
+  alpine: [bison]
 --
+e2fsprogs:
+  alpine: [e2fsprogs]
 --
 libatomic:
+  alpine: [libatomic]
 --
+libcurl:
+  alpine: [libcurl]
 --
+libcurl-dev:
+  alpine: [curl-dev]
 --
+libext2fs-dev:
+  alpine: [e2fsprogs-dev]
 --
+libgnutls28-dev:
+  alpine: [gnutls-dev]
 --
+libmnl-dev:
+  alpine: [libmnl-dev]
 --
 libqt5-serialport:
-  alpine: [qt5-qtserialport-dev]
+  alpine: [qt5-qtserialport]
 --
+libqt5-serialport-dev:
+  alpine: [qt5-qtserialport-dev]
 --
+libtins-dev:
+  alpine: [libtins-dev]
 --
+libwebsockets-dev:
+  alpine: [libwebsockets-dev]
 --
 python3:
-  alpine: [python3-dev]
+  alpine: [python3]
 --
+python3-alembic:
+  alpine: [py3-alembic]
 --
 python3-dev:
+  alpine: [python3-dev]
 --
 python3-importlib-metadata:
+  alpine: [py3-importlib-metadata]
 --
 python3-packaging:
+  alpine: [py3-packaging]
 --
+python3-pygments:
+  alpine: [py3-pygments]
 --
+python3-pytest-asyncio:
+  alpine: [py3-pytest-asyncio]
 --
+python3-sqlalchemy-utils:
+  alpine: [py3-sqlalchemy-utils]

@f-fl0 please take a look
Diffs not from upstream: https://github.com/alpine-ros/rosdistro/compare/1b7d208..461c66f

repo: alpine-ros/rosdistro


text:
Support servant-0.15

WIP, CI will fail until servant-0.15 is released

green

repo: alpmestan/servant-generate


text:
add  cRonstrue, parses a cron expression and outputs a human readable…

… description of the cron schedule

hello @alseambusher

Thanks @hasanbasri1993. This is now merged.

repo: alseambusher/crontab-ui


text:
🛑 roothouse-3 is down

In 1bc9c7f, roothouse-3 (https://rhstatus-proxy.alterine0101.id/?deviceId=roothouse-3) was down:

HTTP code: 404
Response time: 244 ms

Resolved: roothouse-3 is back up in adb3ed0.


text:
confusion_matrix can raise ValueError: Mix type of y not allowed, got types {'unknown', 'multiclass'} when nullable types used

The following block of code will raise ValueError: Mix type of y not allowed, got types {'unknown', 'multiclass'}:
def test_nullable_types(make_data_type):
    y_true = np.array([2, 0, 2, 2, 0, 1, 1, 0, 2])
    y_predicted = np.array([0, 0, 2, 2, 0, 2, 1, 1, 1])

    y_true = make_data_type('ww', y_true, nullable=False)
    y_predicted = make_data_type('ww', y_predicted, nullable=True)

    conf_mat = confusion_matrix(y_true, y_predicted, normalize_method=None)

It's worth noting that making y_true nullable and y_predicted not nullable does work, because we use _convert_ww_series_to_np_array that has nullable-specific handling. We should consider using _convert_ww_series_to_np_array for y_pridicted as well, but we could instead consider removing our usage of unique_labels and handling that logic ourselves, since it's the source of this error, and we're only using it to create the matrix dataframe. I'm not sure if the nullable type handling in _convert_ww_series_to_np_array might be needed for other reasons that I'm not seeing right now, though, so we should be careful about removing it.
This issue is connected to #3910 and #3922 since it is getting the unknown type of target from sklearn's type_of_target, resulting in this error.

Note: this'll also impact the CostBenefitMatrix class, which uses the confusion matrix in its objective funtion

The confusion matrix can also produce the error 'int' object has no attribute 'sum' if the normalize method is 'all'

Closing, because we never expect to see nullable y_predicted

repo: alteryx/evalml


text:
WIP: Rita price-setting

This PR introduces the local_fee option which lets the user set their node's
forwarding price. The option is now also available on the /info dashboard endpoint.

oh yeha @drozdziak1  we need a way to adjust the adjustment factor.


text:
Add missing arg into connectionQueueInfo.decline

https://github.com/altmp/altv-js-module/blob/rc/server/src/bindings/ConnectionInfo.cpp#L118-L122

Thanks

@C0kkie maybe it would be better to rename all the interfaces in the same style? i mean like IInterfaceName

repo: altmp/altv-types


text:
Add beta tag to new methods & add setPassword description

Add beta tag to
getClothes
setClothes
isEntityInStreamRange
setPassword
Add description to
setPassword

The tags need to be alpha, not beta. They are still only in dev, not rc.

The tags need to be alpha, not beta. They are still only in dev, not rc.

Should be done

Should be done

Thanks for the contribution

Thanks for the contribution


text:
Highlight selection not working in mobile

@altmshfkgudtjr ,Can you please check this.

Sorry. I've been busy with other work lately, so I haven't been paying attention.
I will check the issue.

repo: altmshfkgudtjr/react-epub-viewer


text:
Text is blurred in electron

Operating system:
Messenger for Desktop version:

duplicate

repo: aluxian/Messenger-for-Desktop


text:
2024, The cheat is NOT working anymore / crashing when injected

Hi, so currently I am using extreme injector manual map. The console says everything is loaded, it doesn't crash when im in the lobby. But as soon as i go into a match, it crashes the entire game.
Could we maybe get an update?

u have to update offsets manually
PS [check unknowncheats post for this cheat u fill find offsets in comments]

u have to update offsets manually
PS [check unknowncheats post for this cheat u fill find offsets in comments]
yes if found the offsets, but i don't know where to put these offsets in order for the code to work!

u have to update offsets manually
PS [check unknowncheats post for this cheat u fill find offsets in comments]

could u plz give me a link?

    CGameEntitySystem::GetLocalPlayerController();

authors: Cyk-Fad DefusingDz Jopro1990 sourabhbeni


text:
Tensorflow 2.1 "MemoryError" during Ktrain installation on Ubuntu instance of AWS EC2

Hello,
I was trying to deploy a model trained using Ktrain on AWS EC2 instance having Ubuntu 16.04.6 (Xenial Xerus) version. Following your advice from an earlier issue, I updated to pip3. Python3 is also installed.
Although, the independent installation of  pip3 install tensorflow is working fine, the installation of Ktrain using pip3 install ktrain is giving MemoryError when Ktrain starts installing the dependency of tensorflow (2.1.0)

MemoryError at the end:

I would be grateful if you could inspect and kindly advise. Thanks.

This is more of a pip issue rather than a ktrain issue.  If you google it, there are solutions here, here, and here, which all point to the same solution:
pip install --no-cache-dir packagename

authors: amaiya katreparitosh

repo: amaiya/ktrain


text:
Text preprocessing - Bert Classification

Hello @amaiya, is text preprocessing (expanding contraction, stopwords, punctuation, spell correction, HTML tags, links, tags, mention, emoticons, stemming, or lemmatization) is already done in the ktrain if yes then where is the code? , or do we have to pass preprocesses text to ktrain bert model.

The text must be preprocessed in a specific way for use with BERT. This is accomplished by setting preprocess_mode to ‘bert’. - Medium article
What is that argument doing? How it preprocesses the data?

Please help, Thank you :)

The way things are handled depends on the model.  For transformers models, see this guide for how text is preprocessed and tokenized.  For non-transformers models (e.g., NBSVM), see the documentation on Keras tokenizers, where you can see what punctuation is being filtered out.
Most of the things you mentioned might be important for sklearn bag-of-words models, but may be less important (and even detrimental in some cases) for transformers models that are sequential and contextual.  Note that many of things you mentioned (e.g., punctuation, lemmatization, stopwords, etc.) do not need to be explicitly handled by you -  most especially with transformers-based models.  For instance, pretrained models include learning representations for punctuation so they shouldn't be filtered out when fine-tuning and can provide important context that improves results.  You should also avoid filtering out stopwords for the same reasons.  See the references I mentioned above for more information.  Filtering out HTML tags before calling texts_from_folder and fine-tuning may or may not be a good idea, so you'll have to experiment with that.


text:
Create a contributors page

create the avatar of the contributor like we have on github at the end of each repo, a card would make it look more attarctive.
we could implement the github api to fetch the contributors data dynamically, we could make it into a card with the view profile button that would redirect you to their github profile

I would like to work on this issue under gssoc'23

Will get working asap

@karthiknadar1204  1week more?

Yes, started work yesterday only after exams.have design layout in my mind,implementing it

Ohk then

I'm a contributor for GSSoC '23, I want to contribute to this issue. Please assign me.


text:
Create 2006.cpp

Fixes #1697

My code sample is in :

[x] CPP
[ ] Java

Screenshot of working code sample  :

Checklist

[x] I read the Contributor Guide and followed the process outlined there for submitting PRs.
[x] My code sample is formatted and works correctly

Duplicate of #1833


text:
Feature/53 add loading animation

Fixes #53

Current coverage is 0.00% (diff: 100%)

Merging #62 into develop will not change coverage

@@           develop   #62   diff @@
====================================
  Files            1     1
  Lines           25    25
  Methods          0     0
  Messages         0     0
  Branches         0     0
====================================
  Hits             0     0
  Misses          25    25
  Partials         0     0

Powered by Codecov. Last update b440a60...bedff67

authors: amardeshbd codecov-io

repo: amardeshbd/android-daily-headlines


text:
update main from master

Checklist

[ ] Affected Issues have been mentioned in the Closing issues section
[ ] Documentation has been written/updated
[ ] PR title is ready for changelog and subsystem label(s) applied

Explain the details for making this change. What existing problem does the pull request solve?

Closing issues
Put closes #XXXX in your comment to auto-close the issue that your PR fixes (if such).

To remove the complexity here, we'll regenerate main from the constituent original PRs instead of merging across

authors: Schnitzel tobybellwood

repo: amazeeio/lagoon


text:
Weekly scrum - [March 13 - 20]

Please comment on this issue with answers the following questions:

what have I done this week?
what will I do next week?
what is holding me back? (if applicable)

Expected length: 1-2 sentences per item.

This week:

Added Travis CI to README
Created application Logo and added it to readme and navbar
fixed styling bugs
fixed logo location
Almost finished the implementation of s3 storage of pictures

Next week:

finish s3 storage implementation

what have I done this week? Searching for books (back-end)

what will I do next week? Add more integration tests and TBD

what is holding me back? N/A

what have I done this week: UI fixes, styling, pull request reviews and testing, initial user login authenticaiton in the backend and connection with the frontend login pages
what will I do next week: Add more integration tests, unit tests, add support for forgot-password, and admin-registration

This week:

Integrated postgresql
Next week:
Book recommendations
Depends:
User model and oauth

repo: amazin-team/Amazin-online-bookstore


text:
Fix use of VMToEmailDefaultFrom -> VMToEmailDefaultTo in CloudFormation stack parameter

Issue #, if available: N/A
Description of changes:

Fixed incorrect use of VMToEmailDefaultFrom where VMToEmailDefaultTo should be used.
Part change from #110

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

ping @dougjaso

Thanks Jason. 👍


text:
Free Open Source GitHub Security Engineer plugin

Pixeebot fixes vulnerabilities, hardens code, squashes bugs, and gives engineers more time to focus on the work that counts.
More Details:
https://github.com/apps/pixeebot

This was a helpful recommendation your project has already merged that was generated from @pixeebot

https://github.com/amazon-science/chronos-forecasting/pull/34

repo: amazon-science/chronos-forecasting


text:
/usage endpoint fails with an internal server error

All other endpoints working well except the /usage - unless I'm using it incorrectly

How are you using it?

was just hitting it like all the other endpoints, authenticated GET request using startDate and endDate parameters along with my siteID in then request URL

Can you give me an example request? Just the site id and query params will be fine

https://api.amber.com.au/v1/sites/01EEATYEG8B3N6TMR2T95NJ7A9/usage?startDate=2021-01-01&endDate=2021-06-22

Returns a 502 error

It'll be a timeout - that's quite a large query. I'll
Check the logs when I'm back

oh, wow, yeah I see the usage data coming back now over a smaller 7 day window - I should have expected it would be in 30 min blocks - yes, that's a lot of data!

Might be worth thinking about pagination on this endpoint to allow incremental exports of full usage data

You just change the start and end date. The results will be continuous.

What's the guidance on maximum window to query for?

90 days is probably a good range. I have a card to implement that server side

Awesome, thanks 👍

authors: madpilot mikemortimer

repo: amberelectric/public-api


text:
Update RoutedResult for compatibility with Crystal master

SSIA

Thanks @Sija

authors: Sija robacarp

repo: amberframework/amber-router


text:
output dense dictionary

...in formation format
{
  "global_properties":{
    "missing_value: ":"NA"
  },
  "entity_id":{
    "encoding":"string",
    "index":0
  },
  "attributes":[
    {
      "name":"expression_count_by_string",
      "encoding":{
        "listof":{
          "pairof":[
            {
              "primitive":"string"
            },
            {
              "primitive":"int"
            }
          ]
        }
      },
      "index":0
    },
    {
      "name":"expression_latest_two",
      "encoding":{
        "listof":{
          "primitive":"string"
        }
      },
      "index":1
    },
    {
      "name":"halibut_cherry_pie",
      "encoding":{
        "pairof":[
          {
            "primitive":"double"
          },
          {
            "primitive":"double"
          }
        ]
      },
      "index":2
    }
  ],
  "version":"1",
  "encoding_version":"1"
}

which describes this icicle dense snapshot
ID00000003|NA|[["a",1],["d",1]]|["a","d"]
ID00000002|NA|[["c",1]]|["c"]
ID00000001|[113.0,12.0]|[["c",2],["d",1]]|["d","c"]
ID00000000|[13.0,2.0]|[["a",1],["b",1]]|["a","b"]

note Icicle has a different format w.r.t to structs than Ivory. [["a",1],["d",1]] would be {"a":1,"d":1} in Ivory. Perhaps we should use a different EncodingVersion to indicate this

@domdere does the example output looks ok?

@tranma format looks :+1:

@tranma off by 1 in index, entity id and first feature are both index 0?

off by 1 in index, entity id and first feature are both index 0?

@markhibberd @tranma oh whoops yes thats true

also fix the wrong ordering of attributes, now looks like
{
  "global_properties":{
    "missing_value: ":"NA"
  },
  "entity_id":{
    "encoding":"string",
    "index":0
  },
  "attributes":[
    {
      "name":"halibut_cherry_pie",
      "encoding":{
        "pairof":[
          {
            "primitive":"double"
          },
          {
            "primitive":"double"
          }
        ]
      },
      "index":1
    },
    {
      "name":"expression_count_by_string",
      "encoding":{
        "listof":{
          "pairof":[
            {
              "primitive":"string"
            },
            {
              "primitive":"int"
            }
          ]
        }
      },
      "index":2
    },
    {
      "name":"expression_latest_two",
      "encoding":{
        "listof":{
          "primitive":"string"
        }
      },
      "index":3
    }
  ],
  "version":"1",
  "encoding_version":"1"
}

values
ID00000003|NA|[["a",1],["d",1]]|["a","d"]

gonna move this to ice

authors: domdere markhibberd tranma

repo: ambiata/icicle


text:
Nested arrays

! @tranma @jystic
/jury approved @tranma

:eye:'d the C
👍

👍 seems to working in production

authors: amosr jystic tranma


text:
Added Django 1.7 App Config

Django 1.7 App config
Version 0.2
Small project cleanup

@micahhausler looks good to me

authors: micahhausler wesleykendall

repo: ambitioninc/django-kmatch


text:
self.variance = cfg['variance'], TypeError: 'module' object is not subscriptable

when I train the model, the 'train.py' tell me this error, How can I solve it?

from data.config import coco, voc
Add this at the top of python files.

from data.config import coco, voc
将其添加到python文件的顶部。

添加后仍然报错，请问该如何解决

HI it seems like my current situation. I use my custom data and modified config.py. Did this(from data.config import custom_voc as cfg) worked? When I run eval.py after adding this on the top of python files, the error shows up like this. What should I do to solve it? Please, let me know the way to solve it
Traceback (most recent call last):
File "eval.py", line 437, in
test_net(args.save_folder, net, args.cuda, dataset,
File "eval.py", line 386, in test_net
detections = net(x).data
File "/opt/conda/envs/prac/lib/python3.8/site-packages/torch/nn/modules/module.py", line 889, in _call_impl
result = self.forward(*input, **kwargs)
File "/data/SSD.Pytorch/ssd.py", line 105, in forward
output = self.detect.apply(17, 0, 200, 0.01, 0.45,
File "/data/SSD.Pytorch/layers/functions/detection.py", line 111, in forward
self.variance = cfg['variance']
KeyError: 'variance'


text:
Update release-0.9.md

Some small grammar and punctuation fixes

bors r+

authors: LucioFranco gardrek

repo: amethyst/website


text:
can not insert duplicate key in endorsement

solved

authors: aminsharifi tabaee

repo: aminsharifi/Cheetah


text:
wana help  to reduce file size

Is your feature request related to a problem? Please describe.
no
Describe the solution you'd like
hi , at first thank you for share your code
i have problem with size of files that converted to DRM (.ts files ), i mean , for example , file that used to stream have 10MB size , after generating .ts files , key ,...  generated file have 22 MB
file size , is it natural ? (it is 2x grather than none stream file )
if it is not natural , how can i use other option to reduce this files size ?
Additional context
this is code that i  used to generate file
$save_to = 'C:\xampp\htdocs\hls\key';
//A URL (or a path) to access the key on your website
$url = 'http://localhost/hls/key';
//$r_360p  = (new Representation)->setKiloBitrate(276)->setResize(640, 360);
//$r_480p  = (new Representation)->setKiloBitrate(750)->setResize(854, 480);
//$r_720p  = (new Representation)->setKiloBitrate(2048)->setResize(1280, 720);
$format = new Streaming\Format\X264();
$format->on('progress', function ($video, $format, $percentage){
echo sprintf("\r Transcoding... (%s%%)[%s%s]", $percentage, str_repeat('#', $percentage), str_repeat('-', (100 - $percentage)));
});
//var_dump($video->hls()->getHlsListSize());
$video->hls()
->encryption($save_to, $url)
->setFormat($format)
->x264()
->autoGenerateRepresentations([])
->save(base_path.'/files/test2.m3u8');
thank you again for you help

If source file in 720p then output ts files is sum of 720p + 480p + 360p = 720 + 840 = 1560
720 / 1560 ≈ 10 / 22

The size of your stream content depends on various factors(e.g. how many representations your stream does have, the value of the bitrate for each stream, format of the video, and so on).
If you want to compress content files, you can change the value of the bitrate. Also, you can change the format of video. For instance, you can use the HEVC codec which is a great library for data compression(You can also use VP9 that is only utilized for DASH packaging).
NOTE: You cannot use the HEVC codec for HLS packaging in the MpegTS format but it can be utilized for fragmented Mp4. See HLS docs for more information.

If source file in 720p then output ts files is sum of 720p + 480p + 360p = 720 + 840 = 1560
720 / 1560 ≈ 10 / 22

i used autoGenerateRepresentations() , so i think this generate one format only ... its correct ?

i used autoGenerateRepresentations() , so i think this generate one format only ... its correct ?

If you use empty list of sizes or don't use this parameter, by default use this list:
// src/AutoReps.php

    /**
     * regular video's heights
     *
     * @var array side_values
     */
    private $sides = [144, 240, 360, 480, 720, 1080, 1440, 2160];

AutoReps

thank you , could you help me to write a simple code to special size only ?
this is is sample that i used to proccess :
$video->hls()
->encryption($save_to, $url)
->setFormat($format)
->x264()
->autoGenerateRepresentations([])
->save(base_path.'/files/test2.m3u8');

->autoGenerateRepresentations([])

Set here one of sizes like ->autoGenerateRepresentations([720])

authors: aminyazdanpanah finagin jarooghe


text:
visibility in gitlab is a bit too broad

Greetings,
In gitlab's API, visibility toggles what repos you can see across all of gitlab, not just your projects.  So, a public visibility will iterate (and backup) ALL public projects in gitlab, probably not what you want.  internal will backup all projects available to anyone that is logged into gitlab, etc.
Gitlab has the same construct as github, with member and owner.  Could we get the same setting for gitlab as github (i.e. gitlab.repoType [all, owner, membership]?

Release 0.4 introduces a new option for project membership. https://github.com/amitsaha/gitbackup/releases/tag/0.4
Thanks for reporting this issue and suggesting the solution @liljenstolpe

authors: amitsaha liljenstolpe

repo: amitsaha/gitbackup


text:
Pending deletion notification updates

AMLOS-490
Description
"Pend for deletion" request should launch notification to org steward.
Acceptance Criteria
Steps to verify:
Pre-req- set jones as owner of Chart Course App
Log on as jones
Edit Chart Course and set to pend for deletion
Log on as org steward ( julia)
RESULTS - Should have a notification that mentions the pending for deletion request.
How to test code
Pull this branch. Pull  pending_deletion_notification_updates from react commons.
As jones, pend a listing for delete. Bigbrother and julia should receive notification.
As jones, cancel the request. Bigbrother and julia should receive notification.
As jones, pend a listing for delete.
As bigbrother and julia, return the request. Jones should receive a notification
As jones, pend a listing for delete.
As bigbrother and julia, approve the request. Jones, bigbrother, and julia should receive a notification that the listing was deleted.
Please Review
@aml-development/ozp-backend-team
Checklist

[x] Read CONTRIBUTING.md
[x] Write code to complete task
[x] Python Code is PEP8 Compliant
[x] Add unit tests for new code
[x] All tests must pass before merging the pull request
[ ] At least 2 people reviewed code

You get a notification, you get a notification, everyone gets a notification!
All use cases pass
👍
Note for other reviewers: Current center branch doesn't match with this backend when pending for delete (dialog popup with the reason stops with missing endpoint)

repo: aml-development/ozp-backend


text:
Update verifier for recent changes to MMB format

This updates second_opinion to reflect changes to the MMB format in digama0/mm0@18b1940. I recompiled the mmb files in the test directory as well, but they didn't change, presumably because nothing in those files is complicated enough to use the affected commands ConvRef and Unfold.
This PR builds on #1, which is needed to verify mmb files produced by recent versions of mm0-rs.

Thanks for getting me up to speed (and for finding a bug). I'm still sitting on a local fork of second_opinion that uses the official mmb parser; when summer starts I'll take some time to clean it up and merge it into master and move the current setup into a different branch.
I'll merge these into the mmb debugger as well.


text:
match_fbconfig returns NULL on nvidia-352

Not sure if I'm the only one, but I've got a laptop with a 940M and I'm on Linux Mint Mate 17.  Bumblebee runs great, optirun -b virtualgl works just fine, but, primusrun or optirun -b primus both crash, pretty hard.
I ended up tracking it down to match_fbconfig.  Something about the flags being passed in cause it to return 0.  If, however, I modify the list to only include
int ncfg, attrs[] = {
GLX_DOUBLEBUFFER, 0, None
};
Everything works well.  Not sure what's going on here, or if this is an acceptable longer-term solution.

Please check that normal (Mesa/Intel) libGL is correctly set up, there's glsanity to help with that (provide output of glsanity-bbee here if unsure).

I am thoroughly confused.  It seems that this is not needed if I compile with -m32 on my 64-bit system.  No idea why.
With 64-bit, stock: won't run glxgears
Checking native (usually Mesa/i965) GL Running 32-bit tests info:  libGL.so.1:	loaded from: /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1 info:  libGL.so.1:	symlink to:  /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1.2.0 info:  X display:	:0.0 info:  X Ext. "GLX":	present info:  X Ext. "NV-GLX":	not present; OK for non-nVidia drivers info:  GLX server:	SGI info:  GLX client:	Mesa Project and SGI info:  GL vendor:	VMware, Inc. info:  GL renderer:	Gallium 0.4 on llvmpipe (LLVM 3.4, 256 bits) info:  GL version:	2.1 Mesa 10.1.3 info:  GL hw accelerated:	no Running 64-bit tests info:  libGL.so.1:	loaded from: /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1 info:  libGL.so.1:	symlink to:  /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1.2.0 info:  X display:	:0.0 info:  X Ext. "GLX":	present info:  X Ext. "NV-GLX":	not present; OK for non-nVidia drivers info:  GLX server:	SGI info:  GLX client:	Mesa Project and SGI info:  GL vendor:	VMware, Inc. info:  GL renderer:	Gallium 0.4 on llvmpipe (LLVM 3.4, 256 bits) info:  GL version:	2.1 Mesa 10.1.3 info:  GL hw accelerated:	no Checking secondary (usually NVIDIA) GL Running 32-bit tests info:  libGL.so.1:	loaded from: /usr/lib/nvidia-352/libGL.so.1 info:  libGL.so.1:	symlink to:  /usr/lib/nvidia-352/libGL.so.352.79 info:  X display:	:8 info:  X Ext. "GLX":	present info:  X Ext. "NV-GLX":	present info:  GLX server:	NVIDIA Corporation info:  GLX client:	NVIDIA Corporation info:  GL vendor:	NVIDIA Corporation info:  GL renderer:	GeForce 940M/PCIe/SSE2 info:  GL version:	4.5.0 NVIDIA 352.79 Running 64-bit tests info:  libGL.so.1:	loaded from: /usr/lib/nvidia-352/libGL.so.1 info:  libGL.so.1:	symlink to:  /usr/lib/nvidia-352/libGL.so.352.79 info:  X display:	:8 info:  X Ext. "GLX":	present info:  X Ext. "NV-GLX":	present info:  GLX server:	NVIDIA Corporation info:  GLX client:	NVIDIA Corporation info:  GL vendor:	NVIDIA Corporation info:  GL renderer:	GeForce 940M/PCIe/SSE2 info:  GL version:	4.5.0 NVIDIA 352.79 Testing offloading with primus Running 32-bit tests info:  libGL.so.1:	loaded from: /usr/lib/x86_64-linux-gnu/primus/libGL.so.1 info:  X display:	:0.0 info:  X Ext. "GLX":	present info:  X Ext. "NV-GLX":	not present; OK for non-nVidia drivers info:  GLX server:	NVIDIA Corporation info:  GLX client:	primus info:  GL vendor:	NVIDIA Corporation info:  GL renderer:	GeForce 940M/PCIe/SSE2 info:  GL version:	4.5.0 NVIDIA 352.79 Running 64-bit tests info:  libGL.so.1:	loaded from: /usr/lib/x86_64-linux-gnu/primus/libGL.so.1 info:  X display:	:0.0 info:  X Ext. "GLX":	present info:  X Ext. "NV-GLX":	not present; OK for non-nVidia drivers info:  GLX server:	NVIDIA Corporation info:  GLX client:	primus info:  GL vendor:	NVIDIA Corporation info:  GL renderer:	GeForce 940M/PCIe/SSE2 info:  GL version:	4.5.0 NVIDIA 352.79
With stock, 32-bit, WILL run glxgears:
Checking native (usually Mesa/i965) GL Running 32-bit tests info:  libGL.so.1:	loaded from: /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1 info:  libGL.so.1:	symlink to:  /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1.2.0 info:  X display:	:0.0 info:  X Ext. "GLX":	present info:  X Ext. "NV-GLX":	not present; OK for non-nVidia drivers info:  GLX server:	SGI info:  GLX client:	Mesa Project and SGI info:  GL vendor:	VMware, Inc. info:  GL renderer:	Gallium 0.4 on llvmpipe (LLVM 3.4, 256 bits) info:  GL version:	2.1 Mesa 10.1.3 info:  GL hw accelerated:	no Running 64-bit tests info:  libGL.so.1:	loaded from: /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1 info:  libGL.so.1:	symlink to:  /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1.2.0 info:  X display:	:0.0 info:  X Ext. "GLX":	present info:  X Ext. "NV-GLX":	not present; OK for non-nVidia drivers info:  GLX server:	SGI info:  GLX client:	Mesa Project and SGI info:  GL vendor:	VMware, Inc. info:  GL renderer:	Gallium 0.4 on llvmpipe (LLVM 3.4, 256 bits) info:  GL version:	2.1 Mesa 10.1.3 info:  GL hw accelerated:	no Checking secondary (usually NVIDIA) GL Running 32-bit tests info:  libGL.so.1:	loaded from: /usr/lib/nvidia-352/libGL.so.1 info:  libGL.so.1:	symlink to:  /usr/lib/nvidia-352/libGL.so.352.79 info:  X display:	:8 info:  X Ext. "GLX":	present info:  X Ext. "NV-GLX":	present info:  GLX server:	NVIDIA Corporation info:  GLX client:	NVIDIA Corporation info:  GL vendor:	NVIDIA Corporation info:  GL renderer:	GeForce 940M/PCIe/SSE2 info:  GL version:	4.5.0 NVIDIA 352.79 Running 64-bit tests info:  libGL.so.1:	loaded from: /usr/lib/nvidia-352/libGL.so.1 info:  libGL.so.1:	symlink to:  /usr/lib/nvidia-352/libGL.so.352.79 info:  X display:	:8 info:  X Ext. "GLX":	present info:  X Ext. "NV-GLX":	present info:  GLX server:	NVIDIA Corporation info:  GLX client:	NVIDIA Corporation info:  GL vendor:	NVIDIA Corporation info:  GL renderer:	GeForce 940M/PCIe/SSE2 info:  GL version:	4.5.0 NVIDIA 352.79 Testing offloading with primus Running 32-bit tests info:  libGL.so.1:	loaded from: /usr/lib/nvidia-352/libGL.so.1 info:  libGL.so.1:	symlink to:  /usr/lib/nvidia-352/libGL.so.352.79 info:  X display:	:0.0 info:  X Ext. "GLX":	present info:  X Ext. "NV-GLX":	not present; OK for non-nVidia drivers info:  GLX server:	SGI info:  GLX client:	NVIDIA Corporation info:  GLX Context:	direct rendering not available info:  GL vendor:	VMware, Inc. info:  GL renderer:	Gallium 0.4 on llvmpipe (LLVM 3.4, 256 bits) info:  GL version:	1.4 (2.1 Mesa 10.1.3) info:  GL hw accelerated:	no Running 64-bit tests info:  libGL.so.1:	loaded from: /usr/lib/nvidia-352/libGL.so.1 info:  libGL.so.1:	symlink to:  /usr/lib/nvidia-352/libGL.so.352.79 info:  X display:	:0.0 info:  X Ext. "GLX":	present info:  X Ext. "NV-GLX":	not present; OK for non-nVidia drivers info:  GLX server:	SGI info:  GLX client:	NVIDIA Corporation info:  GLX Context:	direct rendering not available info:  GL vendor:	VMware, Inc. info:  GL renderer:	Gallium 0.4 on llvmpipe (LLVM 3.4, 256 bits) info:  GL version:	1.4 (2.1 Mesa 10.1.3) info:  GL hw accelerated:	no
64-bit, my version (Will run glxgears):
Checking native (usually Mesa/i965) GL Running 32-bit tests info:  libGL.so.1:	loaded from: /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1 info:  libGL.so.1:	symlink to:  /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1.2.0 info:  X display:	:0.0 info:  X Ext. "GLX":	present info:  X Ext. "NV-GLX":	not present; OK for non-nVidia drivers info:  GLX server:	SGI info:  GLX client:	Mesa Project and SGI info:  GL vendor:	VMware, Inc. info:  GL renderer:	Gallium 0.4 on llvmpipe (LLVM 3.4, 256 bits) info:  GL version:	2.1 Mesa 10.1.3 info:  GL hw accelerated:	no Running 64-bit tests info:  libGL.so.1:	loaded from: /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1 info:  libGL.so.1:	symlink to:  /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1.2.0 info:  X display:	:0.0 info:  X Ext. "GLX":	present info:  X Ext. "NV-GLX":	not present; OK for non-nVidia drivers info:  GLX server:	SGI info:  GLX client:	Mesa Project and SGI info:  GL vendor:	VMware, Inc. info:  GL renderer:	Gallium 0.4 on llvmpipe (LLVM 3.4, 256 bits) info:  GL version:	2.1 Mesa 10.1.3 info:  GL hw accelerated:	no Checking secondary (usually NVIDIA) GL Running 32-bit tests info:  libGL.so.1:	loaded from: /usr/lib/nvidia-352/libGL.so.1 info:  libGL.so.1:	symlink to:  /usr/lib/nvidia-352/libGL.so.352.79 info:  X display:	:8 info:  X Ext. "GLX":	present info:  X Ext. "NV-GLX":	present info:  GLX server:	NVIDIA Corporation info:  GLX client:	NVIDIA Corporation info:  GL vendor:	NVIDIA Corporation info:  GL renderer:	GeForce 940M/PCIe/SSE2 info:  GL version:	4.5.0 NVIDIA 352.79 Running 64-bit tests info:  libGL.so.1:	loaded from: /usr/lib/nvidia-352/libGL.so.1 info:  libGL.so.1:	symlink to:  /usr/lib/nvidia-352/libGL.so.352.79 info:  X display:	:8 info:  X Ext. "GLX":	present info:  X Ext. "NV-GLX":	present info:  GLX server:	NVIDIA Corporation info:  GLX client:	NVIDIA Corporation info:  GL vendor:	NVIDIA Corporation info:  GL renderer:	GeForce 940M/PCIe/SSE2 info:  GL version:	4.5.0 NVIDIA 352.79 Testing offloading with primus Running 32-bit tests info:  libGL.so.1:	loaded from: /usr/lib/x86_64-linux-gnu/primus/libGL.so.1 info:  X display:	:0.0 info:  X Ext. "GLX":	present info:  X Ext. "NV-GLX":	not present; OK for non-nVidia drivers info:  GLX server:	NVIDIA Corporation info:  GLX client:	primus info:  GL vendor:	NVIDIA Corporation info:  GL renderer:	GeForce 940M/PCIe/SSE2 info:  GL version:	4.5.0 NVIDIA 352.79 Running 64-bit tests info:  libGL.so.1:	loaded from: /usr/lib/x86_64-linux-gnu/primus/libGL.so.1 info:  X display:	:0.0 info:  X Ext. "GLX":	present info:  X Ext. "NV-GLX":	not present; OK for non-nVidia drivers info:  GLX server:	NVIDIA Corporation info:  GLX client:	primus info:  GL vendor:	NVIDIA Corporation info:  GL renderer:	GeForce 940M/PCIe/SSE2 info:  GL version:	4.5.0 NVIDIA 352.79
32-bit version, my changes... Also runs fine.
Checking native (usually Mesa/i965) GL Running 32-bit tests info:  libGL.so.1:	loaded from: /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1 info:  libGL.so.1:	symlink to:  /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1.2.0 info:  X display:	:0.0 info:  X Ext. "GLX":	present info:  X Ext. "NV-GLX":	not present; OK for non-nVidia drivers info:  GLX server:	SGI info:  GLX client:	Mesa Project and SGI info:  GL vendor:	VMware, Inc. info:  GL renderer:	Gallium 0.4 on llvmpipe (LLVM 3.4, 256 bits) info:  GL version:	2.1 Mesa 10.1.3 info:  GL hw accelerated:	no Running 64-bit tests info:  libGL.so.1:	loaded from: /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1 info:  libGL.so.1:	symlink to:  /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1.2.0 info:  X display:	:0.0 info:  X Ext. "GLX":	present info:  X Ext. "NV-GLX":	not present; OK for non-nVidia drivers info:  GLX server:	SGI info:  GLX client:	Mesa Project and SGI info:  GL vendor:	VMware, Inc. info:  GL renderer:	Gallium 0.4 on llvmpipe (LLVM 3.4, 256 bits) info:  GL version:	2.1 Mesa 10.1.3 info:  GL hw accelerated:	no Checking secondary (usually NVIDIA) GL Running 32-bit tests info:  libGL.so.1:	loaded from: /usr/lib/nvidia-352/libGL.so.1 info:  libGL.so.1:	symlink to:  /usr/lib/nvidia-352/libGL.so.352.79 info:  X display:	:8 info:  X Ext. "GLX":	present info:  X Ext. "NV-GLX":	present info:  GLX server:	NVIDIA Corporation info:  GLX client:	NVIDIA Corporation info:  GL vendor:	NVIDIA Corporation info:  GL renderer:	GeForce 940M/PCIe/SSE2 info:  GL version:	4.5.0 NVIDIA 352.79 Running 64-bit tests info:  libGL.so.1:	loaded from: /usr/lib/nvidia-352/libGL.so.1 info:  libGL.so.1:	symlink to:  /usr/lib/nvidia-352/libGL.so.352.79 info:  X display:	:8 info:  X Ext. "GLX":	present info:  X Ext. "NV-GLX":	present info:  GLX server:	NVIDIA Corporation info:  GLX client:	NVIDIA Corporation info:  GL vendor:	NVIDIA Corporation info:  GL renderer:	GeForce 940M/PCIe/SSE2 info:  GL version:	4.5.0 NVIDIA 352.79 Testing offloading with primus Running 32-bit tests info:  libGL.so.1:	loaded from: /usr/lib/nvidia-352/libGL.so.1 info:  libGL.so.1:	symlink to:  /usr/lib/nvidia-352/libGL.so.352.79 info:  X display:	:0.0 info:  X Ext. "GLX":	present info:  X Ext. "NV-GLX":	not present; OK for non-nVidia drivers info:  GLX server:	SGI info:  GLX client:	NVIDIA Corporation info:  GLX Context:	direct rendering not available info:  GL vendor:	VMware, Inc. info:  GL renderer:	Gallium 0.4 on llvmpipe (LLVM 3.4, 256 bits) info:  GL version:	1.4 (2.1 Mesa 10.1.3) info:  GL hw accelerated:	no Running 64-bit tests info:  libGL.so.1:	loaded from: /usr/lib/nvidia-352/libGL.so.1 info:  libGL.so.1:	symlink to:  /usr/lib/nvidia-352/libGL.so.352.79 info:  X display:	:0.0 info:  X Ext. "GLX":	present info:  X Ext. "NV-GLX":	not present; OK for non-nVidia drivers info:  GLX server:	SGI info:  GLX client:	NVIDIA Corporation info:  GLX Context:	direct rendering not available info:  GL vendor:	VMware, Inc. info:  GL renderer:	Gallium 0.4 on llvmpipe (LLVM 3.4, 256 bits) info:  GL version:	1.4 (2.1 Mesa 10.1.3) info:  GL hw accelerated:	no
The key differences between 'works' and 'doesn't work' (32- and 64- stock differences)
`diff /tmp/glstuff32 /tmp/glstuff64
51,52c51
< info:  libGL.so.1:    loaded from: /usr/lib/nvidia-352/libGL.so.1
< info:  libGL.so.1:    symlink to:  /usr/lib/nvidia-352/libGL.so.352.79

info:  libGL.so.1:    loaded from: /usr/lib/x86_64-linux-gnu/primus/libGL.so.1
56,62c55,59
< info:  GLX server:    SGI
< info:  GLX client:    NVIDIA Corporation
< info:  GLX Context:   direct rendering not available
< info:  GL vendor:     VMware, Inc.
< info:  GL renderer:   Gallium 0.4 on llvmpipe (LLVM 3.4, 256 bits)
< info:  GL version:    1.4 (2.1 Mesa 10.1.3)
< info:  GL hw accelerated:     no

info:  GLX server:    NVIDIA Corporation
info:  GLX client:    primus
info:  GL vendor:     NVIDIA Corporation
info:  GL renderer:   GeForce 940M/PCIe/SSE2
info:  GL version:    4.5.0 NVIDIA 352.79
64,65c61
< info:  libGL.so.1:    loaded from: /usr/lib/nvidia-352/libGL.so.1
< info:  libGL.so.1:    symlink to:  /usr/lib/nvidia-352/libGL.so.352.79

info:  libGL.so.1:    loaded from: /usr/lib/x86_64-linux-gnu/primus/libGL.so.1
69,75c65,69
< info:  GLX server:    SGI
< info:  GLX client:    NVIDIA Corporation
< info:  GLX Context:   direct rendering not available
< info:  GL vendor:     VMware, Inc.
< info:  GL renderer:   Gallium 0.4 on llvmpipe (LLVM 3.4, 256 bits)
< info:  GL version:    1.4 (2.1 Mesa 10.1.3)
< info:  GL hw accelerated:     no

info:  GLX server:    NVIDIA Corporation
info:  GLX client:    primus
info:  GL vendor:     NVIDIA Corporation
info:  GL renderer:   GeForce 940M/PCIe/SSE2
info:  GL version:    4.5.0 NVIDIA 352.79
`

On your system Mesa is using software llvmpipe driver for the integrated card instead of the proper i965 DRI driver. You can run LIBGL_DEBUG=verbose glxgears (or any other OpenGL test like glsanity-glx) to find out why the i965 driver is not used.

You are correct about my system not using the intel card drivers...
libGL: screen 0 does not appear to be DRI3 capable
libGL error: pci id for fd 4: 8086:191b, driver (null)
libGL: OpenDriver: trying /usr/lib/x86_64-linux-gnu/dri/tls/i965_dri.so
libGL: OpenDriver: trying /usr/lib/x86_64-linux-gnu/dri/i965_dri.so
i965_dri.so does not support the 0x191b PCI ID.
libGL error: failed to create dri screen
libGL error: failed to load driver: i965
libGL: OpenDriver: trying /usr/lib/x86_64-linux-gnu/dri/tls/swrast_dri.so
libGL: OpenDriver: trying /usr/lib/x86_64-linux-gnu/dri/swrast_dri.so
libGL: driver does not expose __driDriverGetExtensions_swrast(): /usr/lib/x86_64
Apparently my GPU is unspported till a much later version. When I do upgrade my intel card drivers to support my GPU, which does work it breaks primus, etc... this is all I can get out of optimus/primus/bumblebee.
[  187.869605] [ERROR]Cannot access secondary GPU - error: [XORG] (EE) intel(0): [drm] failed to set drm interface version: Permission denied [13].
... Bumblebee's log shows:
rmmod: ERROR: Module nvidia_uvm is not currently loaded
modprobe: FATAL: Error running remove command for nvidia
Seems that the new libdrm-nouveau.so.2 (Which is required for the new intel video drivers - why they did this awful things is well beyond me, but they definitely link to nouveau_drm_new) breaks a fair bit of the functionality in bumblebee/primus/optimus.  To add more frustration, the packages seem to be even more of a rats nest now than they used to be, so trying different versions of things is harder than it used to be.
All of this aside, why would you not allow support in primus for older GPU APIs?  Or at least detect when a 'null' is returned there.  Perhaps by looking for the failure condition, it could fall back to getting just a basic window context?

Errr... okay... I got it working again by adding the following to /etc/bumblebee/xorg.conf.nvidia
Section "Screen"
Identifier "Default Screen"
Device "DiscreteNvidia"
EndSection
Optimus works with glxgears.  But... primus is now super stuttery. Though it claims 60 FPS even, only about 4FPS makes it to the display.  :-/ I don't even know how to begin debugging this, now.

Hi, sorry for being away,

But... primus is now super stuttery. Though it claims 60 FPS even, only about 4FPS makes it to the display. :-/ I don't even know how to begin debugging this, now.

Have you been able to do any analysis on your end? This seems quite unusual. Does normal glxgears look ok? I'd try prepending PRIMUS_VERBOSE=2 to the command line for some profiling info. Perhaps also with LIBGL_DRI3_DISABLE=1.

I did give this a shot.  It is a pretty big hastle to switch back and forth between video drivers.  Though my current combination results in animated gifs and videos not working in Chrome.  I don't know if it's worth getting back around to this.  If anyone else runs into this bug, they should probably re-open the task, otherwise I guess we can call it close, since I may be the only person in the world who's got this bizarre bug.

authors: amonakov cnlohr

repo: amonakov/primus

license: isc


text:
Added amp-iframe title attribute & indentation

PR addresses issue #679  - updating examples in code base:

Added title attribute to <amp-iframe> example to describe its content.

Video of Sintel, an independently produced short film

W3C H64: Using the title attribute of the frame and iframe elements:
"title attribute of the frame or iframe element to describe the contents of each frame. This provides a label for the frame so users can determine which frame to enter and explore in detail. It does not label the individual page (frame) or inline frame (iframe) in the frameset."
WCAG 2.4.1 Bypass Blocks: A mechanism is available to bypass blocks of content that are repeated on multiple Web pages. (Level A)

Modified indentation for amp components

Thanks for also fixing indentation

authors: lisaychuang sebastianbenz

repo: ampproject/amp-by-example


text:
[owners] Add support for requiring multiple owners approvals

/cc @kristoferbaxter

@rsimha

repo: ampproject/amp-github-apps


text:
Fix Validation Error on example

close #874

oops I deleted my repo instead of rebase it, so I create this new PR, sorry
/ping @torch2424

repo: ampproject/ampstart


text:
Use gevent in sample docker-compose files, schemas updated

@amr-cossi this was meant to be a minor PR, but a bunch of schemas seem to have changed in the submodules as well - do we need to worry about these? Seems like a good idea to use the latest schemas, but I haven't thoroughly tested yet.

No problem with this update of the schemas, it adds a property "extensions" to all SDOs. This doesn't break any transform on my side. It does modify the STIX entities, so this should let you think wbout how to update them client side when they will be available in the hub.
Any bigger change in STIX schema will have to be reviewed carefully.
I add to the TODOs an item about the extension usage as well because the way the STIX schema is customized by OpenCTI is not STIX compliant today.

authors: amr-cossi phdowling


text:
🛑 misskey.rest is down

In 28a3011, misskey.rest (https://misskey.rest) was down:

HTTP code: 503
Response time: 415 ms

Resolved: misskey.rest is back up in 6d2adea after 26 days, 14 hours, 50 minutes.

repo: amsc-tech/amskey-status


text:
Day selection lost on month/year change

Hi, I noticed with some user tests it's annoying behaviour: when I click on a day then I change month or year I loose the day choice, it's possible keep the day selected?
I have another issue too:  The standard behaviour should be close the datepicker on day selection, am I right? Why I have to click on close button?
PS: I use materialize pickadate https://github.com/dogfalo/materialize/

Hi, this might be a little late and you might have come up with a solution, ut this might be useful to anyone else that runs into the same problem.
`var dp = $('.datepicker').pickadate({
min: [1940,1,1],
max: true,
selectMonths: true,
selectYears: 65,
onSet: function(e){
if(e.highlight != null){
var picker = dp.pickadate('picker');
picker.set('select', new Date(Number(e.highlight[0]), Number(e.highlight[1]), Number(e.highlight[2])));
}
				}
			  });`

it's late for that project, but I can totally reuse this code for the next one :+1:

Hi, I am using the amsul.ca/pickadate.js and have a similar problem where the year selection is lost if the user does not select the 'DAY' last. Can anyone advise of a fix? I thought the above might have helped but sadly not. Any advice would be appreciated

I tried using this fix but it breaks the selection via prev/next month selectors. I think that is due to #948.
As the highlight object seems to have changed I adjusted the callback accordingly:
if(e.highlight != null){
  picker.set('select', [e.highlight.year, e.highlight.month, e.highlight.date]);
}

Thank you @fredula the code working excelent!

@burka so right now this fix doesn't work anymore because the highlight object holds the values of the previous selection? Or how are you using this @romanlezama ?

Hello @fabyeah this is my example code https://jsfiddle.net/romanlezama/2gotaobp/ for me is working very good!!

@romanlezama thanks for the fiddle. Selecting a year or month from the dropdown works, but the arrow buttons for previous and next month don't work properly anymore. Also when you have selected the 31st and choose a month with only 30 days, it will jump to the 1st of the next month.

@fabyeah I don't remember exactly, Finally the fix was incomplete for me. Something about previos/next or pre-selection or .... . I don't remember exactly, I stopped trying after some attempts.

Still an issue. Fixed with:
var $input = jQuery( "#datepicker" ).pickadate({
	selectYears: true,
	selectMonths: true,
	clear: '',
	format: "d mmmm yyyy",
	onSet: function(e){
		var picker = $input.pickadate('picker');
		if(e.highlight!=null){
			picker.set('select', new Date(e.highlight.year+" "+e.highlight.month+" "+e.highlight.date));
		}
	},
	max: new Date()
});

@tohirsolomons  can you create a PR so we can merge this fix and test it further?

authors: DanielRuf R-R-M alfredopacino antonioaltamura burka fabyeah fredula romanlezama tohirsolomons


text:
feat: Merge feature discovery work into protected branch

Summary of Changes

Tests

Documentation

CheckList
Make sure you have checked all steps below to ensure a timely review.

[ ] PR title addresses the issue accurately and concisely. Example: "Updates the version of Flask to v1.0.2"

In case you are adding a dependency, check if the license complies with the ASF 3rd Party License Policy.

[ ] PR includes a summary of changes.
[ ] PR adds unit tests, updates existing unit tests, OR documents why no test additions or modifications are needed.
[ ] In case of new functionality, my PR adds documentation that describes how to use it.

All the public functions and the classes in the PR contain docstrings that explain what it does

@allisonsuarez let's merge into this protected branch

repo: amundsen-io/amundsen


text:
Fix: Remove inheritance error due to missing function in NeptuneGremlinProxy

Summary of Changes
NeptuneGremlinProxy inherits AbstractGremlinProxy class which doesn't contain get_popular_resources() function. Hence the following error is produced:
  File "/app/metadata_service/proxy/__init__.py", line 47, in get_proxy_client
    client_kwargs=client_kwargs)
TypeError: Can't instantiate abstract class NeptuneGremlinProxy with abstract methods get_popular_resources

Tests

Documentation

CheckList
Make sure you have checked all steps below to ensure a timely review.

[x] PR title addresses the issue accurately and concisely. Example: "Updates the version of Flask to v1.0.2"

In case you are adding a dependency, check if the license complies with the ASF 3rd Party License Policy.

[x] PR includes a summary of changes.
[x] PR adds unit tests, updates existing unit tests, OR documents why no test additions or modifications are needed.
[x] In case of new functionality, my PR adds documentation that describes how to use it.

All the public functions and the classes in the PR contain docstrings that explain what it does

@rajat499 we already have a PR to fix this: https://github.com/amundsen-io/amundsen/pull/1289

@rajat499 seems like you also need to fix the build.

@rajat499 seems like you also need to fix the build.

@verdan Yes. Fixed it.


text:
perf: Neo4j csv publisher using apoc library for performance improvements

Summary of Changes
New Neo4JCsvPublisher impementation using the APOC library for 5x performance improvement.
Tests
I didn't see any automated tests for Neo4JCsvPublisher. This PR was tested manually by several community members.
Documentation
CheckList
Make sure you have checked all steps below to ensure a timely review.

[ ] PR title addresses the issue accurately and concisely. Example: "Updates the version of Flask to v1.0.2"

In case you are adding a dependency, check if the license complies with the ASF 3rd Party License Policy.

[ ] PR includes a summary of changes.
[ ] PR adds unit tests, updates existing unit tests, OR documents why no test additions or modifications are needed.
[ ] In case of new functionality, my PR adds documentation that describes how to use it.

All the public functions and the classes in the PR contain docstrings that explain what it does

this is good! thanks for the contribution. cc @allisonsuarez @dkunitsk wonder whether you two could test it out with lyft env

There's a small issue here when specifying CREATE_ONLY_NODES - seems to fail with KeyError w.r.t LABEL. I have a suspicion that it might be to do with converting the pandas columns to lowercase, will take a look later today.
Will also update the docker compose and relative config settings to include APOC by default (as this requires APOC to run). ETA mid next week should have the changes done so please don't deploy until then!

@feng-tao this requires APOC to be installed (which it isn't by default on the docker-compose). Did you want me to create a PR with the updated docker compose files to include APOC by default?

@akiratwang Oops, I hope i didn't mess anything up. I followed the instructions here: https://github.com/amundsen-io/amundsen/pull/1836/checks but maybe I shouldn't have.

could you rebase with master?

@feng-tao I started to rebase but there were so many merge conflicts and a few of them I wasn't sure about. Since this PR is just one file, maybe I should just create a new branch off latest master and create a PR there?

@feng-tao @akiratwang I fixed up my fork of amundsen and re-created this PR on a clean main branch. https://github.com/amundsen-io/amundsen/pull/1877

@zacr could you sign your commits here?

Closing as dup of https://github.com/amundsen-io/amundsen/pull/1877

authors: Golodhros akiratwang feng-tao zacr


text:
particles attributes now return reference instead of copy

ce7207c5da1b25103eecda7104628b65646f8270 has changed p.x from returning a copy to returning a reference to data. This introduces different behaviour for in-memory sets and in-code sets, difference between grids and Particles, and issues with subsets:
p=Particles(5)

p.x=range(5)
tmp=p.x
print tmp is p.x

#behaviour of index expressions
tmp=p[::2].x

p.x=p.x+1

print tmp == p[::2].x

tmp=p.x[::2]
p.x=p.x+1

print tmp == p[::2].x

# behaviour of grids
p=Grid(5)
p.x=range(5) | units.m
tmp=p.x
print tmp is p.x

gives on 4168ed99b8ccc163a5f9311722c6f28b7c1aeee4:
False
[False False False]
[False False False]
False

while on ce7207c5da1b25103eecda7104628b65646f8270:
True
[False False False]
[ True  True  True]
False

Which of the two is the desired behaviour?

for me consistency between in-memory and code sets is most important..

still relevant

authors: ipelupessy rieder

repo: amusecode/amuse


text:
Issue Connecting to Anafi

Hi All,
I new to drone programming and having issue connecting to the Anafi drone.  I'm trying to test my installation by connect to the Anafi but I'm getting the below error.  I have  already tried downgrading zereconf, so I'm not sure if I need to set a param somewhere in a script.
Any help is greatly appreciated.
Thanks

Issue closed.  I was not running code in conda  environment.

repo: amymcgovern/pyparrot


text:
a method for requesting reports that goes all the way through the process

My code here is an absolute hackjob, and I really don't have time to try to incorporate it into the lib to do a PR, but maybe someone else can use this for inspiration before I get the time to do that, who knows when? :D
            const result = await spapi.callAPI({
                operation: 'reports.createReport',
                body: {
                    reportType: id,
                    marketplaceIds: ['ATVPDKIKX0DER'], // TODO: support multiple marketplaces
                },
            });
            console.warn('* result=', result);
            // poll reports.getReport until it's done or failed
            const report = await new Promise((resolve, reject) => {
                function checkStatus() {
                    spapi.callAPI({
                        operation: 'reports.getReport',
                        path: {
                            reportId: result.reportId,
                        },
                    }).then(reportInfo => {
                        console.warn('* checkStatus', reportInfo.processingStatus);
                        switch (reportInfo.processingStatus) {
                            case 'DONE':
                                resolve(reportInfo);
                                break;
                            case 'CANCELLED':
                            case 'FATAL':
                                reject(reportInfo);
                                break;
                            case 'IN_PROGRESS':
                            case 'IN_QUEUE':
                            default:
                                setTimeout(checkStatus, 1000);
                                break;
                        }
                    }).catch(reject);
                }
                setTimeout(checkStatus, 1000);
            });
            // then call getReportDocument with the returned reportDocumentId
            const reportDocument = await spapi.callAPI({
                operation: 'reports.getReportDocument',
                path: {
                    reportDocumentId: report.reportDocumentId,
                },
            });
            /*
                returns {
                  reportDocumentId,
                  encryptionDetails: { standard, initializationVector, key },
                  url
                }
            */
            // download the url and decrypt it
            const { encryptionDetails, url } = reportDocument;
            const { standard, initializationVector, key } = encryptionDetails;
            const iv = Buffer.from(initializationVector, 'base64');
            const k = Buffer.from(key, 'base64');
            const decipher = crypto.createDecipheriv(standard === 'AES' ? 'aes-256-cbc' : '', k, iv);
            const reportData = await new Promise((resolve, reject) => {
                const chunks = [];
                const req = require('https').get(url, res => {
                    res.on('data', chunk => {
                        chunks.push(chunk);
                    });
                    res.on('end', () => {
                        const buffer = Buffer.concat(chunks);
                        const decrypted = Buffer.concat([decipher.update(buffer), decipher.final()]);
                        resolve(decrypted.toString());
                    });
                });
                req.on('error', reject);
            });
            console.warn('* reportData=', reportData);

@ericblade We just added a .downloadReport() function in new version v0.8.2 that will wrap up all operations to request and retrieve a report. Feel free to check it out.

@amz-tools thank you!

authors: amz-tools ericblade

repo: amz-tools/amazon-sp-api


text:
cURL using IPv6

In some cases (exactly 2 that I have encountered so far) cURL will try to resolve using IPv6 which results in an exception stating that it cannot resolve "mws.amazonservices.com".
The fix was to add the following cURL option to lib/OffAmazonPaymentsService/Client.php.
curl_setopt($ch, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4);
I did not want to submit a pull request since I am not sure if this will break (or be ignored) PHP prior to 5.3.

Might be a doc bug in that we want to just call it out, but can you take a look @jonahellison

Resolved in 1.4 branch.

authors: dbrent-amazon jonahellison ngrices

repo: amzn/amazon-payments-magento-plugin


text:
Optimize not working in CLI

For some reason, --optimize on a low-confidence-overall file prints "Error: Confidence threshold not high enough for any known license", even though it clearly found a license header shown in RUST_LOG=debug. This is probably just a print/format issue.
A unit/integration test to prevent this from regressing again would be awesome.

Never mind -- I was testing this on our own source headers and it's actually not an 0.8 spdx match for the header; it's 0.79. askalono is correct.
There's a bigger issue here in collecting different kinds of license headers. I'm not sure this project should be the curators of that. That's a bit out-of-scope though.

repo: amzn/askalono


text:
Framework-wide C++ exception handler

Is your feature request related to a problem? Please describe.
I found myself alway putting a try... catch block around handlers a lot.
inline void handle_exception(const HttpRequestPtr& req, HttpCallback callback, const std::exception& except)
{
	// Log the exception
	if(g_log_exception) {
		logger::error("Exception thrown in {}, what: {}. Request sent by IP: {}"
			, req->path() , except.what(), req->peerAddr().toIpPort());
	}

	// Also notify the client
	json resp;
	resp["success"] = 0;
	resp["what"] = std::string(except.what());
	auto res = make_http_response(resp); // A helper I create to translate between JSON libs
	res->setStatusCode((HttpStatusCode)500);
	callback(res);
}

app().registerHandler("/find", [&](const HttpRequestPtr& req, HttpCallback &&callback) { try {
		api::some_complicated_api(req, callback);
	} catch(const std::exception& except) { handle_exception(req, callback, except); }}, {Post});

This enables easy exception handling using C++ exceptions:
void api::some_complicated_api(const HttpRequestPtr& req, const HttpCallback &callback) {
	if(something_goes_wrong())
		throw std::runtime_error("I'll explain what goes wrong");
}

Which is a lot cleaner than the best I can do without it:
void api::some_complicated_api(const HttpRequestPtr& req, const HttpCallback &callback) {
	if(something_goes_wrong()) {
		auto resp = ...
		resp->setStatusCode((HttpStatusCode)500);
		callback(resp);
		return;
	}
}

However this only works if I wrap a try... catch block around all handlers. And it doesn't work if the handler makes a async DB/HTTP call.
Describe the solution you'd like
Would it be possible to make a framework wide exception handler? For example:
app().registerExceptionHandler(handle_exception);

Then handle_exception would be invoked if any HTTP handler or DB callbacks throws an exception.
I'll also try my best to assist if this is a possible feature. I think I know enough of drogon to build it but not knowing enough about trantor to make sure it fully works. Thanks.

I have thought about this problem before, but I found that asynchronous frameworks have natural difficulties in handling exceptions, so exception callbacks are used in the asynchronous interface of the database.
@rbugajewski What do you think about this?

I have thought about this problem before, but I found that asynchronous frameworks have natural difficulties in handling exceptions, so exception callbacks are used in the asynchronous interface of the database.

I have similar thoughts and I think we already discussed something similar in another thread a couple of months ago. It’s unfortunate that it is as it is, but this limitation is a direct byproduct of asynchronous programming in general.
I welcome this discussion about exception handling, but I think that it would be confusing to have a half-baked solution that doesn’t work where the framework has its strengths: asynchronously handling many requests. While it is possible (and also great for small sites / services) to write synchronous code, where the proposed solution would give us a nicer syntax, I feel that Drogon really shines when using its asynchronous interfaces.

I have thought about this problem before, but I found that asynchronous frameworks have natural difficulties in handling exceptions, so exception callbacks are used in the asynchronous interface of the database.

I have similar thoughts and I think we already discussed something similar in another thread a couple of months ago. It’s unfortunate that it is as it is, but this limitation is a direct byproduct of asynchronous programming in general.
I welcome this discussion about exception handling, but I think that it would be confusing to have a half-baked solution that doesn’t work where the framework has its strengths: asynchronously handling many requests. While it is possible (and also great for small sites / services) to write synchronous code, where the proposed solution would give us a nicer syntax, I feel that Drogon really shines when using its asynchronous interfaces.

I agree with you. basically, all asynchronous interfaces in drogon don't throw exceptions (excludes exceptions that cannot be handled, such as std::bad_alloc).

It think it's me not thinking through. What's stopping it from working? Couldn't we wrap a try.. catch block around the event loop(s)? I think it doesn't matter how the exception is propagated as long it reaches the handler. At least as a last ditch effort before any exception escapes and creches the entire program. Like how express.js logs exceptions.

In  asynchronous frameworks, it's hard to find a place to handle all exceptions which is thowed by users. for example:
void Test::handler(const HttpRequestPtr &req, std::function<void(const HttpResponsePtr &)> &&callback)
{
     std::thread([callback=std::move(callback)](){
         auto success=doSomething();
         if(success)
         {
              callback(...);
         }
         else
         {
             throw ....;
         }
     }).detach();
}

Yes, we could add a try... catch block around the event loops runing in the framework, but the above exception can't be handled by this way.
And IMO, you could implement a general error handler without exceptions, such as:
inline void handle_error(const HttpRequestPtr& req, HttpCallback callback, const std::string& errorMsg)
{
	// Log the exception
	if(g_log_exception) {
		logger::error("error in {}, what: {}. Request sent by IP: {}"
			, req->path() , except.what(), req->peerAddr().toIpPort());
	}

	// Also notify the client
	json resp;
	resp["success"] = 0;
	resp["what"] = errorMsg;
	auto res = make_http_response(resp); // A helper I create to translate between JSON libs
	res->setStatusCode((HttpStatusCode)500);
	callback(res);
}

app().registerHandler("/find", [&](const HttpRequestPtr& req, HttpCallback &&callback) {
		api::some_complicated_api(req, callback);
	}, {Post});
void api::some_complicated_api(const HttpRequestPtr& req, const HttpCallback &callback) {
	if(something_goes_wrong()) {
		handle_error(req,callback,"I'll explain what goes wrong");
		return;
	}
}

In addition, exeptions handling breaks working flow of a program, if we throw an exception in custom code and catch it outside the event loop, I think it will cause serious problems because the IO processing on this event loop is interrupted.

Ahh... I see. Thanks

At least as a last ditch effort before any exception escapes and creches the entire program.

True. We can catch our own exceptions, but if something happened like unexpected user input and some third-party throw an exception, it will crash the whole program.

repo: an-tao/drogon


text:
TOFCMOS-710

Tof-Viewer: the temperature and frame counter in some cases showed unrelated values

Might need some additional changes, working on it, don't merge

Rest solved here: https://github.com/analogdevicesinc/ToF/pull/676
Mergin this

repo: analogdevicesinc/ToF


text:
{{run_start_at}}

tristan [9:33 PM]
dude you know what we need another set of parameters
[9:33]
in the environment
[9:33]
timestamps--especially, {{run_start_at}}
[9:33]
i'm just thinking about in a streaming enviroment where you have a big build, you don't want later tables to pick up shit that earlier tables didn't get to see...
[9:34]
so you'd always do where created_at < {{run_start_at}}
[9:35]
although that wouldn't work in all cases. they'd still see updated records. hmm. ok well thoughts for another day.
drew [9:35 PM]
it would probably be where fivetran_synced_at < {{run_start_at}}
tristan [9:35 PM]
oh. hm yeah i could see that.

0.5.1 release

authors: drewbanin jthandy

repo: analyst-collective/dbt


text:
一个worker退出,zk监听报错

环境:1个worker、1个api、1个master都在同一台机器上。
问题:每次关闭worker,在master的zk监听中都会报错：org.apache.zookeeper.KeeperException$NodeExistsException: KeeperErrorCode = NodeExists for /escheduler/dead-servers/worker_xxxxxxxx
详情请见图片

I don't understand why exceptions are thrown. The code has already been judged.
which version do you use?

Probably because there is a concurrency issue and multiple master triggers will have problems

Probably because there is a concurrency issue and multiple master triggers will have problems

Probably because there is a concurrency issue and multiple master triggers will have problems
可能是因为存在并发问题，同时多个master触发就会有问题

This single mster and single worker test situation：
[INFO] 2019-07-06 02:27:43.330 cn.escheduler.server.zk.ZKMasterClient:[354] - node deleted : /escheduler/workers/172.17.0.2_0000000000
[INFO] 2019-07-06 02:27:43.334 cn.escheduler.common.zk.AbstractZKClient:[288] - worker server dead , and /escheduler/workers/172.17.0.2_0000000000 added to zk dead server path success
[INFO] 2019-07-06 02:27:43.347 cn.escheduler.server.zk.ZKMasterClient:[372] - start worker failover ...
[INFO] 2019-07-06 02:27:43.351 cn.escheduler.server.zk.ZKMasterClient:[388] - worker failover end
[INFO] 2019-07-06 02:29:30.938 cn.escheduler.server.zk.ZKMasterClient:[349] - node added : /escheduler/workers/172.17.0.2_0000000001
[INFO] 2019-07-06 02:30:04.593 cn.escheduler.server.zk.ZKMasterClient:[354] - node deleted : /escheduler/workers/172.17.0.2_0000000001
[INFO] 2019-07-06 02:30:04.594 cn.escheduler.common.zk.AbstractZKClient:[288] - worker server dead , and /escheduler/workers/172.17.0.2_0000000001 added to zk dead server path success
[INFO] 2019-07-06 02:30:04.600 cn.escheduler.server.zk.ZKMasterClient:[372] - start worker failover ...
[INFO] 2019-07-06 02:30:04.601 cn.escheduler.server.zk.ZKMasterClient:[388] - worker failover end
以上是单mster和单worker的测试结果，但是没有发现兄弟说的情况，我测试了两个master的情况，由于同时两个master监听到worker掉，然后存在并发情况，判断哪里出现了并发判断，所以出现以上问题

authors: boandai hujiang75277381 qiaozhanwei

repo: analysys/EasyScheduler


text:
Add hipBLAS L1 support

Hi @anaruse, this is to cover your PR cupy/cupy#4205 for HIP builds. I tested locally that all tests in tests/cupy_tests/test_cublas.py passed. Are there any other tests that I should run to confirm?

Thanks, @leofang !
LGTM.

Thanks!

authors: anaruse leofang

repo: anaruse/cupy


text:
同時に使われるblendshapeをまとめる

表情アニメーションで使われてる複数のblendshapeを一つにすると計算不可が減るはず

考慮しないといけないこと: 複数レイヤでBlendShapeをいじってるとき、どっちもweight = 100のときに何も考えずにまとめるとweight = 200状態になる。