Add support for promises

Are there currently any plans to add promise support in the API clients? It would be very nice for those who like to write promise-style rather than use callbacks.
To use an example from the README, the following code:
var callback = function(err, response, data) {
  // your code here.
};

authedClient.getOrders({'after': 3000}, callback);

…could instead be used as:
authedClient.getOrders({'after': 3000})
  .then(result => {
    let { data, response } = result; // Still expose underlying response object?
    /* do stuff with data */
  })
  .catch(err => { /* handle error */ });

Furthermore, returning a promise would also allow for use with async/await, e.g.
async function myFunction() {
  try {
    let { data, response } = await authedClient.getOrders({'after': 3000});
    /* do stuff with data */
  } catch (err) { /* handle error */ }
}

From an implementation perspective, I think it would be totally possible for the same functions to support callbacks and promises at the same time, without making any breaking changes. For example, existing functions could run callbacks as normal if provided and return a promise if no callback is provided. Or, as the current API call functions don't return anything, they could just always return a promise (but still execute a callback if provided).
I haven't been able to find any documentation about minimum versions of Node that this project must/wants to support, but with PR #40 starting to overhaul and ES6-ify things, I'm guessing that using native ES6 promises would be fine platform-support-wise.
I also haven't seen any contributing guidelines, but I'd be happy to pitch in and help implement this if it's something more people would like.

This would be super ideal!


fix css style issues - responsive navbar fixed, recipes moved out of …

…folder so navbar and footer are in the proper relative directory, color scheme updated to be more blue toned and simpler

pom file updated to have project name as well


libssh2 build error

Hi there. Trying to add SwiftGit2 to my project — running carthage update — I'm getting an error while building libssh2
Building libssh2 for iphonesimulator12.1 x86_64
Please stand by...
/Users/myUser/src/mobile-ios/myProject/Carthage/Checkouts/SwiftGit2/External/libssh2-ios/bin/iphonesimulator12.1-x86_64.sdk/build-libssh2.log
Command PhaseScriptExecution failed with a nonzero exit code

end of build-libssh2.log:
checking for libssl... no
checking for libgcrypt... no
checking for libbcrypt... no
checking for libcrypt32... no
checking for ntdef.h... no
checking for ntstatus.h... no
configure: error: No crypto library found!
Try --with-libssl-prefix=PATH
 or --with-libgcrypt-prefix=PATH
 or --with-wincng on Windows

I have installed the required dependencies cmake libssh2 libtool autoconf automake pkg-config
libssl, libgcrypt, libbcrypt, libcrypt32 all seem to be installed on my machine in /usr/lib
XCode Version: 10.1 (10B61)
SwiftGit2 Version: 0.4.0
Any ideas what I could be doing wrong?

I've no idea, sorry. 😞

I had the same problem

@sidbhar I had a similar issue, and ended up getting it working eventually:
brew install cmake autoconf automake pkg-config libtool libgcrypt openssl libssh2 carthage
carthage update --platform macOS

I am getting the same error
Building for x86_64 i386 armv7 armv7s arm64
Building libssh2 for iphonesimulator14.4 x86_64
Please stand by...
/Users//SwiftGit2/External/libssh2-ios/bin/iphonesimulator14.4-x86_64.sdk/build-libssh2.log
Command PhaseScriptExecution failed with a nonzero exit code


Release 0.7.0

We would like to release promscale 0.7.0. This issue serves to track any outstanding work in that process.
Open Issues

[x] https://github.com/timescale/promscale/issues/889
[x] https://github.com/timescale/promscale/pull/871
[x] https://github.com/timescale/promscale/pull/885
[x] https://github.com/timescale/promscale/pull/915
[x] https://github.com/timescale/promscale/pull/932
[x] https://github.com/timescale/promscale/pull/934
[x] https://github.com/timescale/promscale/pull/935

Release

[x] Prepare release PR #943
[x] Prepare git tag
[x] Export helm charts
[x] Set GitHub release message
[x] Prepare post-release PR

0.7.0 was released on 02.12.2021


Add support for vulnerability data to entities model

To be clear, I am not against this stuff being in the gallery DB, but I wanted to make sure we evaluated other options like an independent database+service or another storage mechanism like Azure Search or in-memory JSON.

@joelverhagen - with this PR we are now modeling "deprecation to CVE/CWE" in a proper many-to-many relationship table and no longer a JSON array. I agree that we should make sure we do our due diligence in investigating all options, but I think it's a huge benefit to this approach that it allows our gallery database to store proper relationships instead of JSON.

@scottbommarito, oops, sorry I missed that part. I think think we should understand whether it is necessary to couple CVE/CWE data with gallery data. A JSON array would be appropriate if you want to refer to data in another system (potentially backed by another SQL database).
Remember we put validation data in its own database. The idea there was that there is some state about validation that gallery will never care about. In the CVE/CWE case, another database would allow us to scale independently and keep details like ingestion state/etags/timestamps/throttles in tables that have nothing to do with gallery DB.
Again, I don't feel strongly but we should give all of these a approaches an honest consideration properly weighting maintenance costs of another DB with the benefit of decoupling unrelated data.

For CVEs, I added a Boolean column Rejected to the entity model, to indicate whether a CVE has been rejected after it was first published (a scenario we may encounter during data refresh, in which case we flag the CVE but don’t delete it - aka "soft-delete").
CVEs available in the NVD database may have another status, but except for REJECT, I don't think we care, so this is all we need to cover for. (this is in fact a “soft-delete” in the NVD source data feed)
I noticed CWEs may have a varying status in the source data as well.
The ‘Development View’ has three types of CWEs in the latest data set:
•	Incomplete
•	Draft
•	Usable
Looking at the StatusEnumeration spec, it’s a bit unclear whether we should reduce the dataset or not…
As the external data source seems to simply list them all, no matter their status, some of these may be used by the public even though they have a status of incomplete or obsolete…
The status enumeration may be subject to change, but it appears that CWE is also taking the same approach of “soft-deleting” CWEs by marking them as Deprecated.
Which leads me to think we don’t care about CWE status at all, except for “Deprecated”, which could be an additional column on the CWE entity (similar to the “Rejected” column on CVE).
From usability point of view, we simply need to be able to hide the CVE/CWE items that are unpublished, without deleting potentially existing references to PackageDeprecation(s). Having a simple Boolean instead of an actual status column that is subject to change seems like the simplest approach here.
Any thoughts? @scottbommarito @skofman1 @anangaur @joelverhagen @loic-sharma

Any thoughts?

Perhaps we can just have a Listed boolean on both tables which controls visibility and this value gets populated by any column or combinations of columns on Cve and Cwe? The reason I think this is beneficial is that it moved the filtering-out logic to the actor that populates the table instead of the temptation of having some complex or domain-specific filtering in the gallery. Gallery could just query for Listed = true .

@joelverhagen that's exactly what I'm aiming for! I could name them both Listed.

@joelverhagen - I think whether or not Listed is a good idea depends on the design of the job that inserts into the table. If we ever change the definition of what should show in the table or not, the actor that inserts into the table will have to be updated to reprocess existing entries to change the listed property or a manual query will need to be run. I would steer away from any approach that requires manual queries.
I think regardless of this, we should store all information that would help us determine whether or not the CVE/CWE is relevant, e.g. StatusEnumeration for CWE, to prevent needing to fetch the entire set of CVEs/CWEs again just to update the listed status.

@scottbommarito the data update process for CWE requires us to fetch the entire data set every time anyway... (a CSV file download), so if Status changed, it will be processed (and if visibility logic needs changing, the job can be updated, and it will then be processed on the next iteration).
For CVE, there's a Modified endpoint we can use to query for changes and update only those records.
The CVE data feeds do NOT expose a separate Status column. Instead, they use some prefix in the Description field (e.g. ** REJECT ** Description or ``** DISPUTE ** Description). Which means the Description` will change and be processed accordingly as well. We already store the descriptions for CWE and CVE in the database, so the status is part of the data.
No matter what changes to status or visibility, if the initial import considered the data as relevant at that time, it's going to remain relevant forever (only soft-deletes allowed - aka unlisting).
Once a CWE or CVE ID has been published in the external data sources, it's out there forever too, no matter the status. They only recommend us to hide Rejected/Deprecated status.

@xavierdecoster - perfect. Listed sounds great to me!

Almost there. May need to track CVSS scores provided with CVE data. Once confirmed, I'll add the property and update the migration, and merge this PR.


Improve test quality by either improving or removing unreliable test

This actually looks really bad.  We don't even know it's flaky tests or test failures.

Could maintainers make sure tests pass before merging the PR?
Could maintainers rerun the test for post-submit commits?
is there a way to open rerun permission for PR author?

Every PR will pass all tests before merging. There are a lot of questions in the existing compatibility tests. Some of them are fixed, e.g. #620 and #621. We still need more time to fix all of them.

Is there a way to open rerun permission for PR author?

This is a good idea. We can discuss this in the next community sync.

For short term, I think it's better to rerun the tests for merged commits before the compatibility get fixed

For short term, I think it's better to rerun the tests for merged commits before the compatibility get fixed

Makes sense.
Some other potential actions we considered:
Isolate flaky tests.
Move Fault Tolerance tests to a nightly pipeline.
Consider modifying test timeouts.


🐛 [BUG] : Test Bug Issue with multiple labels for DG

Describe the bug
A clear and concise description of what the bug is.
To Reproduce
Steps to reproduce the behavior:

Go to '...'
Click on '....'
Scroll down to '....'
See error

Expected behavior
A clear and concise description of what you expected to happen.
Screenshots
If applicable, add screenshots to help explain your problem.
Desktop (please complete the following information):

OS: [e.g. iOS]
Browser [e.g. chrome, safari]
Version [e.g. 22]

Smartphone (please complete the following information):

Device: [e.g. iPhone6]
OS: [e.g. iOS8.1]
Browser [e.g. stock browser, safari]
Version [e.g. 22]

Additional context
Add any other context about the problem here.
If you want speed up process of this issue, please send 🚀 as a reaction.

Test Close


Update TESTING_GUIDELINES.md to include instructions on how to run the test suite.

Problem

Reported by @stacimc
TESTING_GUIDELINES should be updated with a small section at the top about how to run the existing test suite.
Implementation

[ ] 🙋 I would be interested in implementing this feature.

Resolved by https://github.com//WordPress/openverse/blob/77e2f6b948b6211882264ad6e79de1f9220d47cf/documentation/frontend/guides/test.md#L1


ProcessException: Process "C:\Users\AGL-COMPUTER\Desktop\darkgnomemedia\android\gradlew.bat" exited abnormally

 Error running Gradle:

ProcessException: Process "C:\Users\AGL-COMPUTER\Desktop\darkgnomemedia\android\gradlew.bat" exited abnormally:

Configure project :app
registerResGeneratingTask is deprecated, use registerGeneratedResFolders(FileCollection)
registerResGeneratingTask is deprecated, use registerGeneratedResFolders(FileCollection)
registerResGeneratingTask is deprecated, use registerGeneratedResFolders(FileCollection)
registerResGeneratingTask is deprecated, use registerGeneratedResFolders(FileCollection)
registerResGeneratingTask is deprecated, use registerGeneratedResFolders(FileCollection)
  Command: C:\Users\AGL-COMPUTER\Desktop\darkgnomemedia\android\gradlew.bat app:properties

Please review your Gradle project setup in the android/ folder.

gradle.properties:
org.gradle.jvmargs=-Xmx1536M
android.useAndroidX=true
android.enableJetifier=true
extra-gen-snapshot-options=--obfuscate

Can anyone help me?

Probably related to #33119

It seems like Flutter is treating these warnings as errors now.
We should probably fix the plugins, but still, it was working fine before.
Temporary workaround: switch to an older (4.x.x) Gradle distribution
distributionUrl=https\://services.gradle.org/distributions/gradle-4.10.3-all.zip

thank you @Zazo032, I think you are right. @chaosfreak93 do you encounter it anymore? the possible fix was landed to v.1.6.3

I doesn't have any Problems more.


Library Architecture Proposal: Separating KMP and Compose for Enhanced Flexibility

I believe this library should be divided into two parts: kmp and compose.
The compose part is only responsible for capturing images and transmitting the images to the kmp part.
The kmp part is responsible for processing and recognizing the code.
Following this architecture can make the library widely used, as there will be users who only use KMP.

I can see the reasoning behind your idea, but in both iOS and Android the image processing is tightly coupled to the UI, which kind of makes sense, because you want a live-preview anyway.
There are no single images passed to some function that we could provide as kmp-only library.
If you do Barcode Scanning in a non-compose KMP-App, there's likely no multiplatform code involved at all until you get the scan result.


Bump org.apache.commons:commons-compress in /packages

Bumps org.apache.commons:commons-compress from 1.15 to 1.26.0.

updated-dependencies:

dependency-name: org.apache.commons:commons-compress dependency-type: direct:production ...

Added on 8th July


Restic initContainer has no limits, can't be restored into namespaces with resource quotas

The restic init container defined at https://github.com/heptio/velero/blob/master/pkg/restore/restic_restore_action.go#L81-L103 is hard code, and restoring pods into namespaces that have quotas enabled results in an error such as this:
    test-namespace:  error restoring /tmp/671807868/resources/pods/namespaces/test-namespace/solr-trigger-test-0.json: pods "solr-trigger-test-0" is forbidden: failed quota: compute-resources: must specify limits.cpu,limits.memory,requests.cpu,requests.memory

I can think of 2 possible solutions off the top of my head:

Allow the administrator to specify spec details for restic's initContainer
Set limits on the initContainer in the code

A workaround, without Velero code changes, is to use a (LimitRange)[https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/memory-constraint-namespace/] on the namespace, which should apply default limits to pods/containers created without limits.

Given the existence of the LimitRange, maybe we should document that instead of (or in addition to) code changes.

Now that we have a configmap for configuring the restic restore action (#1311), we could use that as a way for users to specify requests/limits if we want it to be user-configurable.  Otherwise, we could just add some static limits.

Low, static limits seem reasonable to me, given it's basically a spin-loop.

Currently blocked on #1691


What if the issue is in a .class file?

The below walkthrough gives sample code for understanding how this exploitation may work:
https://nakedsecurity.sophos.com/2022/10/18/dangerous-hole-in-apache-commons-text-like-log4shell-all-over-again/
We'll use this Java code, saved as TryInterp.java:
---cut here---
import org.apache.commons.text.StringSubstitutor;

public class TryInterp {
   static StringSubstitutor interp = StringSubstitutor.createInterpolator();

   public static void main(String... args) {
      interp.setEnableSubstitutionInVariables(true);
      String str = args.length > 0 ? args[0] : "${java:version}";
      String rep = interp.replace(str);
      System.out.printf("str = %s\n",str);
      System.out.printf("rep = %s\n",rep);
   }
}
---cut here---

The instructions compile a .class file.
I do not think this script would pick up the .class file as a problem.

Hey. I compiled the following code sample and ran our script to test detection:
package com.my.test;

import org.apache.commons.text.StringSubstitutor;

public class Sample {

	static StringSubstitutor interp = StringSubstitutor.createInterpolator();

    public static void main(String[] args) {
        interp.setEnableSubstitutionInVariables(true);
        String str = args.length > 0 ? args[0] : "${java:version}";
        String rep = interp.replace(str);
        System.out.printf("str = %s\n",str);
        System.out.printf("rep = %s\n",rep);
    }
}

Looks like everything works:
$ python scan_commons_text_calls_jar.py /tmp/nakedsec/
Precondition grep filter: (StringLookup|StringSubstitutor)
Looking for calls to: class pattern (.*StringSubstitutor|.*StringLookup), method name pattern: (lookup|replace|replaceIn)
Scanning folder for .jar files
Walking /tmp/nakedsec/...

Processing .jar file:
CVE-2022-42889_nakedsec_test.jar

Class: com/my/test/Sample
Vulnerable call | Methods
----------------+---------
replace         | main
100%|███████████████████████████████████████████████████████████████████████| 1/1 [00:00<00:00, 74.06it/s]

I'll close this issue for now, please re-open if you are experiencing issues and I will do my best to help.
Cheers

Hi

Hi, this is on a .jar file though, might there be vulnerabilities in none .jar files? Is it possible to test on a .class file?
Also, wouldn't a grep for StringSubstitutor.createInterpolator work as well as this but not require the additional python libraries?

Ah, now I see what you mean.
Yes you are correct. Raw .class files will not be scanned. As far as I know it's uncommon to have .class files by themselves but maybe this feature will still be useful for some. We will look into it.
Regarding your suggestion to use grep, the problem is the mere existence of a string doesn't necessarily indicate vulnerable code. A similar functionality is already implemented in jar_quickmatch() to make sure we only parse relevant files, but after the RE search is complete, additional code flow analysis is needed for a more accurate result.

Even when compiling the sample code from here:
https://nakedsecurity.sophos.com/2022/10/18/dangerous-hole-in-apache-commons-text-like-log4shell-all-over-again/
import org.apache.commons.text.StringSubstitutor;

public class TryInterp {
   static StringSubstitutor interp = StringSubstitutor.createInterpolator();

   public static void main(String... args) {
      interp.setEnableSubstitutionInVariables(true);
      String str = args.length > 0 ? args[0] : "${java:version}";
      String rep = interp.replace(str);
      System.out.printf("str = %s\n",str);
      System.out.printf("rep = %s\n",rep);
   }
}

So, save it with an editor as TryInterp.java
Then compile:
CLASSPATH=./commons-text-1.9.jar javac TryInterp.java
jar -cvf TryInterp.jar TryInterp.java
Run python check script:
python3 /tmp/text4shell-tools/scan_commons_text_calls_jar/python/scan_commons_text_calls_jar.py .
-- No alerts found:
recondition grep filter: (StringLookup|StringSubstitutor)
Looking for calls to: class pattern (.*StringSubstitutor|.*StringLookup), method name pattern: (lookup|replace|replaceIn)
Scanning folder for .jar files
Walking ....
100%|██

What am I doing wrong, help appreciated with this - Thank you :-)

Looks like you added the original source file instead of the compiled .class file to your jar.
If I repeat your commands but add the .class instead:
$ CLASSPATH=./commons-text-1.8.jar javac TryInterp.java

$ jar -cvf TryInterp.jar TryInterp.class
added manifest
adding: TryInterp.class(in = 1028) (out= 572)(deflated 44%)

$ python /tmp/text4shell-tools/scan_commons_text_calls_jar/python/scan_commons_text_calls_jar.py .
Precondition grep filter: (StringLookup|StringSubstitutor)
Looking for calls to: class pattern (.*StringSubstitutor|.*StringLookup), method name pattern: (lookup|replace|replaceIn)
Scanning folder for .jar files
Walking ....

Processing .jar file:
TryInterp.jar

Class: TryInterp
Vulnerable call | Methods
----------------+---------
replace         | main
100%|█████████████████████████████████████████████████████████████████████████████████████| 3/3 [00:00<00:00, 26.68it/s]


Add termenv's SetWindowTitle to BubbleTea?

In BubbleTea there are wrappers for many of escape sequences that termenv provides (show/hide cursor, enter/exit alt screen, clearScreen).
I think it would be also be nice to include termenvs SetWindowTitle in BubbleTea.
It's easy enough to just output the escape codes to switch the title in your view, but I think adding this one would be in the spirit of the rest of BubbleTea.
"\x1b]2;" + YourTitle + "\a"

Ideally I would like to trigger title changes periodically based on important state changes identified during Update() rather than splicing it into the View.

Yep, this is a feature we’d like to get in. Because of the i/o involved it should be implemented as a Cmd.


[docker] Error with recognai/rubrix:master

When launching docker-compose up, Rubrix server fails with the following trace:
rubrix_1         |     worker.init_process()
rubrix_1         |   File "/usr/local/lib/python3.7/site-packages/uvicorn/workers.py", line 63, in init_process
rubrix_1         |     super(UvicornWorker, self).init_process()
rubrix_1         |   File "/usr/local/lib/python3.7/site-packages/gunicorn/workers/base.py", line 134, in init_process
rubrix_1         |     self.load_wsgi()
rubrix_1         |   File "/usr/local/lib/python3.7/site-packages/gunicorn/workers/base.py", line 146, in load_wsgi
rubrix_1         |     self.wsgi = self.app.wsgi()
rubrix_1         |   File "/usr/local/lib/python3.7/site-packages/gunicorn/app/base.py", line 67, in wsgi
rubrix_1         |     self.callable = self.load()
rubrix_1         |   File "/usr/local/lib/python3.7/site-packages/gunicorn/app/wsgiapp.py", line 58, in load
rubrix_1         |     return self.load_wsgiapp()
rubrix_1         |   File "/usr/local/lib/python3.7/site-packages/gunicorn/app/wsgiapp.py", line 48, in load_wsgiapp
rubrix_1         |     return util.import_app(self.app_uri)
rubrix_1         |   File "/usr/local/lib/python3.7/site-packages/gunicorn/util.py", line 359, in import_app
rubrix_1         |     mod = importlib.import_module(module)
rubrix_1         |   File "/usr/local/lib/python3.7/importlib/__init__.py", line 127, in import_module
rubrix_1         |     return _bootstrap._gcd_import(name[level:], package, level)
rubrix_1         |   File "<frozen importlib._bootstrap>", line 1006, in _gcd_import
rubrix_1         |   File "<frozen importlib._bootstrap>", line 983, in _find_and_load
rubrix_1         |   File "<frozen importlib._bootstrap>", line 967, in _find_and_load_unlocked
rubrix_1         |   File "<frozen importlib._bootstrap>", line 677, in _load_unlocked
rubrix_1         |   File "<frozen importlib._bootstrap_external>", line 728, in exec_module
rubrix_1         |   File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
rubrix_1         |   File "/usr/local/lib/python3.7/site-packages/rubrix/server/server.py", line 36, in <module>
rubrix_1         |     from rubrix.server.datasets.dao import DatasetsDAO, create_datasets_dao
rubrix_1         |   File "/usr/local/lib/python3.7/site-packages/rubrix/server/datasets/dao.py", line 19, in <module>
rubrix_1         |     import deprecated
rubrix_1         | ModuleNotFoundError: No module named 'deprecated'

I imagine you are running master branch version.
Fixed  by #777


Wrap dynamic require in mutex

require is not thread safe in Jruby. For more detail see:
https://github.com/jruby/jruby/wiki/Concurrency-in-jruby#thread_safety

I work on a Rails project where we use jbuilder (https://github.com/rails/jbuilder) to generate JSON responses to XHRs. Jbuilder uses multi_json. On one particular page we issue about 20 or 30 requests in rapid succession. Occasionally the require "multi_json/adapters/#{name.downcase}" line fails (returns false) and we see:
uninitialized constant MultiJson::Adapters
[RAILS_ROOT]/gems/gems/multi_json-1.12.1/lib/multi_json.rb:159:in
`load_adapter_from_string_name'

From the logs we see that it only happens when the adapter load is triggered by two threads simultaneously, so we deduced that it is due to concurrent requires. This PR avoids the failure by wrapping the require in a Mutex.

Can you confirm that this truly fixes your issue?

I'm closing this for now. Will reopen if necessary.

This appears to be fixed by recent JRuby updates. The workaround in this PR is no longer necessary.


Moving repos to datastore

backed by mgo driver
adds Monocular models package

Codecov Report

Merging #366 into master will increase coverage by 3.13%.
The diff coverage is 96.29%.

@@            Coverage Diff             @@
##           master     #366      +/-   ##
==========================================
+ Coverage   87.64%   90.77%   +3.13%
==========================================
  Files          19       18       -1
  Lines         874      748     -126
==========================================
- Hits          766      679      -87
+ Misses         70       45      -25
+ Partials       38       24      -14

Impacted Files
Coverage Δ

src/api/config/repos/repos.go
100% <ø> (ø)
:arrow_up:

src/api/data/cache/cache.go
80% <ø> (-7.88%)
:arrow_down:

src/api/models/repo.go
100% <100%> (ø)

src/api/handlers/charts/charts.go
100% <100%> (ø)
:arrow_up:

src/api/handlers/repos/repos.go
87.3% <91.66%> (+24.14%)
:arrow_up:

Continue to review full report at Codecov.

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


windiff: Add version 2.1.0

Moving from https://github.com/ScoopInstaller/Main/pull/1612

/verify


Question handling skewed data during join

Data skewness is very large for the spatial join from a couple of kb to MB is there something I can do to get more even partitions? Rtre for indexing and kdBtree for partitioning are used

@georgThesis Assume you have two datasets A and B, if A is large and super skewed, you should use first do spatial partitioning on A, then apply the grids from A to B.
In other words, the leading dataset/column in spatial join should be the skewed one.
This applies to both RDD and SQL API.
In http://datasystemslab.github.io/GeoSpark/api/sql/GeoSparkSQL-Parameter/  spatial partition side means the leading side.

Can you be more specific on which parameters to specify in this link: http://datasystemslab.github.io/GeoSpark/api/sql/GeoSparkSQL-Parameter/
I am also experiencing some kind of skewness where (likely) during a join something like 498/500 tasks are complete pretty quickly and the last 2 tasks take forever to complete (sometimes failing due to memory issues). I'm using geospark sql and all default geospark sql parameters.
Here's the list of tables I'm joining and the geometries that are within each table (I'm using a very big cluster and each table is partitioned to about 4000 partitions before/after joining):
Big Table A (simple points geometry) (Base Table)
Big Table B (simple polygons geometry (4 points each))
Small Table C (complex polygons geometry (ranging from 20 points each to 100+ points each))
Small Table D (polygons, 20 pts each)
Small Table E (polygons, < 10 pts each)
Here is the gist of the join plan (i join them all together in a loop, with BigTableA being the 'base' table and I'm basically filtering points geometries that are contained in polygon geometries):

TempResult = BigTableA join SmallTableD where ST_CONTAINS(points in polygons)
TempResult = TempResult join SmallTableC where ST_CONTAINS(points in polygons)
TempResult = TempResult join BigTableB where ST_CONTAINS(points in polygons)
FinalResult = TempResult join SmallTableE where ST_CONTAINS(points in polygons)

I think in step 2, I experience significant skewness where I'm joining a big table (points) with a small table (both simple polygons and really complex polygons). And just in general overall, I notice a scenario where the last 1 or 2 tasks out of many take hours to complete in comparison to the previous tasks, where the meat of the join seems to be assigned to a single executor.
I am using geopsark version 1.1.3 and again I have all default geospark sql settings. Please let me know changing which parameters would provide the most benefit for me.
Thanks!

Switch spatial partitioning to kdbtree and increase the parallelism.
This both might help you to solve the issue.
jhamiltonpro<EMAIL_ADDRESS>schrieb am Fr. 15. März 2019 um
22:16:

Can you be more specific on which parameters to specify in this link:
http://datasystemslab.github.io/GeoSpark/api/sql/GeoSparkSQL-Parameter/
I am also experiencing some kind of skewness where (likely) during a join
something like 498/500 tasks are complete pretty quickly and the last 2
tasks take forever to complete (sometimes failing due to memory issues).
I'm using geospark sql and all default geospark sql parameters.
Here's the list of tables I'm joining and the geometries that are within
each table (I'm using a very big cluster and each table is partitioned to
about 4000 partitions before/after joining):
Big Table A (simple points geometry) (Base Table)
Big Table B (simple polygons geometry (4 points each))
Small Table C (complex polygons geometry (ranging from 20 points each to
100+ points each))
Small Table D (polygons, 20 pts each)
Small Table E (polygons, < 10 pts each)
Here is the gist of the join plan (i join them all together in a loop,
with BigTableA being the 'base' table and I'm basically filtering points
geometries that are contained in polygon geometries):

TempResult = BigTableA join SmallTableD where ST_CONTAINS(points in
polygons)
TempResult = TempResult join SmallTableC where ST_CONTAINS(points
in polygons)
TempResult = TempResult join BigTableB where ST_CONTAINS(points in
polygons)
FinalResult = TempResult join SmallTableE where ST_CONTAINS(points
in polygons)

I think in step 2, I experience significant skewness where I'm joining a
big table (points) with a small table (both simple polygons and really
complex polygons). And just in general overall, I notice a scenario where
the last 1 or 2 tasks out of many take hours to complete in comparison to
the previous tasks, where the meat of the join seems to be assigned to a
single executor.
I am using geopsark version 1.1.3 and again I have all default geospark
sql settings. Please let me know changing which parameters would provide
the most benefit for me.
Thanks!
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/DataSystemsLab/GeoSpark/issues/249#issuecomment-473443663,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AT0yBvurW6JNtovhDYcLBHSnQBR-AYrFks5vXA2SgaJpZM4VF3my
.

Using quadtree and kdbtree definitely helped - thanks for the suggestions!
By increasing the parallelism, do you mean setting spark.default.parallelism, repartitioning the dataframes to have even more partitions or something else? I currently already repartition to around 4000 after each join and it seems like this should do the job in spreading the work out evenly, but even with quadtree and kdbtree specified, there's still significant skew in execution time.

@jhamiltonpro, have you managed to improve your join query? How?


How to train a wav2vec 2.0 pretrain model from scratch ?

🚀 The feature
There is an example for hubert training here, but  has no example aboult wav2vec 2.0.
Motivation, pitch
I'm woking on ssl with/without a pretrained model to continue train the pretrained model like wav2vec  2.0 on other dataset,
Alternatives
No response
Additional context
No response

Hi @kobenaxie, we currently do not have plans to release a wav2vec 2.0 training example. If you're interested in one, SpeechBrain recently published theirs here.

Thank~


[KOGITO-8298] Retrieving Kaniko task only if it is present into the P…

…latform CR
See: KOGITO-8298
Signed-off-by: Davide Salerno<EMAIL_ADDRESS>
Description of the change:
Motivation for the change:
Checklist

[ ] Add or Modify a unit test for your change
[ ] Have you verified that tall the tests are passing?

How to backport a pull request to a different branch?

In order to automatically create a backporting pull request please add one or more labels having the following format backport-<branch-name>, where <branch-name> is the name of the branch where the pull request must be backported to (e.g., backport-7.67.x to backport the original PR to the 7.67.x branch).

NOTE: backporting is an action aiming to move a change (usually a commit) from a branch (usually the main one) to another one, which is generally referring to a still maintained release branch. Keeping it simple: it is about to move a specific change or a set of them from one branch to another.

Once the original pull request is successfully merged, the automated action will create one backporting pull request per each label (with the previous format) that has been added.
If something goes wrong, the author will be notified and at this point a manual backporting is needed.

NOTE: this automated backporting is triggered whenever a pull request on main branch is labeled or closed, but both conditions must be satisfied to get the new PR created.

@radtriste do you want to take a look before we merge it?


Doesn't Work on Internet Explorer 10+

Yes. We are in 2020. I know.

This should be resolved with be30152dbfd2fd1adf5602e4974574100481ffeb but not tested


Deployment to Google App Engine not working

Deployment goes though but opening app url gives below error...
Error: Server Error
The server encountered an error and could not complete your request.
Please try again in 30 seconds.

Is this still an issue?


Allow setting the ip of DRMAACluster, fixes #75

Fixes #75.

No, it's just the ip.
The cluster as several ports, you can set them using the kwargs described here:
http://distributed.readthedocs.io/en/latest/local-cluster.html#api

@MaxNoe I edited you message to put "Fix #issueNumber" in your PR description (it was only in your title). This way the associated issue gets closed automatically when the PR is merged. For more details, look at this.

Is there a way to test this? Minimal test seems to pass an ip to DRMAACluster and to check that the ip of the LocalCluster is the same. Not sure how easy this is to do in practice though.

I use this script:
from dask_drmaa import DRMAACluster
from dask.distributed import Client, as_completed
import time
import pandas as pd
import numpy as np

def do_work(i):
    df = pd.DataFrame()
    df['x'] = np.random.normal(size=1000)
    df['y'] = np.random.normal(size=1000)
    return df

cluster = DRMAACluster(
    ip='<IP_ADDRESS>',
    scheduler_port=0,
    diagnostics_port=None,
    template={'nativeSpecification': '-l walltime=03:59:59,vmem=6G'}
)

client = Client(cluster)
cluster.start_workers(2)

while not client.ncores():
    print('Waiting for workers to connect')
    time.sleep(5)

futures = client.map(do_work, range(100))

with pd.HDFStore('test.hdf5', mode='w') as hdf:
    for i, result in enumerate(as_completed(futures), start=1):
        print(f'Job #{i} of 100 done')
        mode = 'w' if i == 1 else 'a'
        hdf.append('events', client.gather(result))

client.close()
cluster.close()

the 10.146.x.x is the internal network of the nodes.

OK
On Thu, Apr 12, 2018 at 11:39 AM, Maximilian Nöthe<EMAIL_ADDRESS>
wrote:

@MaxNoe commented on this pull request.
In dask_drmaa/core.py
https://github.com/dask/dask-drmaa/pull/77#discussion_r181146796:

@@ -125,7 +129,7 @@ def init(self, template=None, cleanup_interval=1000, hostname=None,
"""
self.hostname = hostname or socket.gethostname()
logger.info("Start local scheduler at %s", self.hostname)

   self.local_cluster = LocalCluster(n_workers=0, ip='', **kwargs)

   self.local_cluster = LocalCluster(n_workers=0, ip=ip, **kwargs)

Deleting it would only listen on '<IP_ADDRESS>' per default. The '' makes
more sense as a default for DRMAACluster imho.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/dask/dask-drmaa/pull/77#discussion_r181146796, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AASszPVr2O8BSdc3ZWCn99s72sf1B5hMks5tn4MxgaJpZM4TOyaC
.

Is there a way to test this?

I tested it on our Torque cluster, without it it does not work at all, because the wrong ip address is taken and workers cannot reach the scheduler. With this option, everything works fine.

Great that you tested it on your cluster and thanks for your test script! What I had in mind was more is there a way to add a unit test for this fix. This way we make it less likely that this bug reappears inadvertently in the future.

Actually, isses are closed by "fixes #" in the commit message. I included this. As the PR title lands in the Merge commit message, this also works indirectly.

Good point! Not super important at all, but I still prefer the issue number in the PR description, it adds a link to the issue in the PR and a link to the PR in the issue. Also bear in mind that your message can be edited when squash+merging.

Unit Testing this is Kind of hard, as it involves  several pieces of non standard hardware/system setup

Maybe you could test that the ip passed at the DRMAACluster reaches the LocalCluster level as I was alluding to in https://github.com/dask/dask-drmaa/pull/77#issuecomment-380820118?

Ah, ok. Yes that sounds like a good first step

I added a simple test case for the ip

Merging, thanks a lot @MaxNoe!


Misleading message about exported nupkg file name

Describe the bug
When attempting to do vcpkg export with overriding a --nuget-version with something shorter than 3 dot-separated numbers (as per semver standard), vcpkg silently fixes that to match "X.Y.Z" semver schema by adding zeroes, and then shows a very misleading message about a file generated, which uses whatever a user has passed on the command line rather than what vcpkg used in reality while writing a file.
Environment

OS: Windows
Compiler: MSVC 2019

To Reproduce
Steps to reproduce the behavior:

Run ./vcpkg export gtest  --nuget --nuget-id=gtest --nuget-version=1.2
vcpkg reports this:NuGet package exported at: X:\vcpkg\gtest.1.2.nupkg

However, in reality, exported file is found in X:\vcpkg\gtest.1.2.0.nupkg, not X:\vcpkg\gtest.1.2.nupkg.

Expected behavior
vcpkg message should report correct file name, matching what it exports.

@GreyCat, thanks for reporting this issue!


Use object destructuring, rather than the merge helper, in the gulpfile

This helper function was originally added in PR #1953, eleven years ago, at which point object destructuring didn't exist.

/botio test


Fix new rules

After using the new v2.0 config in real world projects, we found that some of the new rules caused problems. This MR fixes those configurations.

I fixed the commit message typos.

I like that there was an "arror" error. 😆


MRPHS-5456: Enabling nested hardware virtualization for VMs

Jira Id
MRPHS-5456
Problem
Nested Hardware Virtualization is not enabled for VMs created on vsphere through Halo
Resolution
Setting flag to enable Nested Hardware Virtualization before creating VM
Testing
Tested with Halo dummy client and checked it in Vsphere web client.

Please check if we need to set this parameter conditionally. For eg if not required in infra vm or vmware cluster.

Have updated code and added a flag to enable Nested Hardware Virtualization so that we it can be configured as needed.


fix(introduction): improve some phrasing

A very few small improvements to my point of view ^^

@MdechampG Is this okay?

@ad2ien The branch now conflicts 😞 Can you rebase it? we'll try to pass it in a row.


Vue.js Support?

Would you plan to support vue.js as an alternative to react?

Maybe we should start it from the Vue side @yyx990803 @defcc

I'm actually checking out this project for inspiration as we think about how to improve the SSR experience with Vue. 🙂  I think next.js is probably better off staying focused on React, but it's likely we'll be stealing some ideas.

Vue2 it now much more similar to React because of the heavy use of virtual DOM, except for some stateful code to initialize a Vue app, you can read the docs and some of my repos since I was working on building static sites with Vue2 in the past weeks:
https://github.com/coffee-js/vue-coffee-workflow
https://github.com/ElemeFE/vue-pages-workflow

We have the idea of allowing the use of different renderers. The first that we had in mind were preact and inferno because those try to be as close as they can to react but it would be great to opem the game to frameworks like vue too
This is the issue/thread on topic #20

@impronunciable Sounds rad. 😄  I can foresee a few differences that would make a custom renderer on its own insufficient, but when/if you get to the point of exploring Vue integration, we'd be happy to collaborate.

Nuxt has appeared for Vue. It could be cool if bits were cross-pollinated back into Next.

Given the current momentum of vue on Github (40 000 stars) it seems it could be the successor of react (50 000 stars). So: yes please. Vue is awesome!

@obiwarn one reason for the high number of stars of vue is that vue is created by chinese people and it has great chinese docs, so it appeals to many chinese, and, you know, the population of China is so large.
Vue is good, right, but I don't think react will be defeated by vue. (IMO, vue is much like a template sugar for react).

@zhaoyao91 Not completely sure if that first sentence should be taken seriously lol, Vue definitely has seen good usage and support from Chinese companies but I don't think that's necessarily what drives the Vue community.
Even if Vue doesn't "defeat" react, which shouldnt matter anyway, because both are tools that do a similar job while accomplishing a different DX, Vue is still a good framework for the front-end, and saying it's simply "template sugar for react" is a huge understatement.
Nonetheless, Nuxt.js is awesome but would definitely would love to see Vue support in Next.js.
Next.js tagline could eventually become "Framework for server-rendered Javascript apps"

@FrancosLab sorry if my words lead to some misunderstanding :(. With the first sentene, which seems fail to be funny, I just want to express that there are many Chinese programmers who stick to Chinese docs and don't like to read any English docs, and it's not a good phenomenon. "template sugar for react" is indeed an understatement, sorry, I should say it offers a template layer compared with react.
BTW, both react and vue are good, hope them compete and evolve into better stages.
Now let's turn back to this issue. As I see nuxt is much like a vue version of next. if it will continuously follow the next.js way, do we really need to support vue in next.js?

Nuxt.js started as a copy of next.js for vue.js. Actually, even with the version 0.9.7, nuxt can do everything that next.js does.
With the time, we started to add more features and differentiate each other while keeping the same philosophy.
Few of the features

Generate static application server-rendered on build time (see https://nuxtjs.org/guide#static-generated)
Possibility to create dynamic routes via the filesystem API
Custom layouts
Middleware (coming this week)
Store integration (Vuex)
Using nuxt.js programmatically (I believe next.js was inspired by us for this one, see Guillermo tweet)

I really love next.js and the team behind zeit and we will keep improving nuxt.js the maximum we can.

Since nuxt.js it's a strong project and next opened the game for other renderers I think I can close this one. It will be interesting to see a next example with vue as the component renderer but nuxt it's a pretty good place to redirect to :)

Nuxt.js seems to have some AMAZING docs. I think we can do a little better with Next.js on this front. Should I make a new issue for this? If we decide to get some revamped docs, I would love to contribute to that.

@adrianmcli I think that would be amazing 👍 And once it's up it could also host a proper gallery of examples together with a link to a live demo on Now for each of them

It goes without saying that these docs should be built on top of Next.js 😝  I'll see if I have some time later this week, I could get the ball rolling on this.

🎉🎉

In what ways are the docs lacking @adrianmcli? I usually have a harder time with custom docs websites than GitHub. Is it just me?

@rauchg the content of the current README is great, but its presentation leaves something to be desired.
To me, the most important thing with large docs is quick access to the TOC (typically via a persistent side-nav) so you have a good sense of context and where you are in the document. It also provides the user with more confidence in jumping around. The current TOC is starting to get long because of how much information we have to convey, and it makes it a little unwieldy.
Overall, the Nuxt.js docs feel more structured and organized. The trade-off is that not all the information is on one page which will make it hard to grep/cmd+f.

In case you are interested, I made unvue which is similar to Next.js/Nuxt.js but without using file system as the router API, you can control all the things, and it's totally fine if you want to use it to build your own Nuxt.js on the top of it.


corrected description for ignore-error attribute

Previous description explains the behavior of "ignore-error" based on "response-variable-name" attribute is specified or not. response-variable-name is required attribute. But current description gives meaning that "response-variable-name" non-required attribute.
Tested the functionality and corrected the description as per design.

@karthik-ramasamy : Thanks for your contribution! The author(s) have been notified to review your proposed change.

#label:"aq-pr-triaged"

@karthik-ramasamy - Thanks for submitting. Just to confirm: I notice existing description of response-required-attribute shows that the attribute is required, and that it will be created if not specified. Does that change your proposed update?  That is, if APIM creates response-required-attribute, will its value be null when ignore-error is true? Thanks

@karthik-ramasamy - Thanks for submitting. Just to confirm: I notice existing description of response-required-attribute shows that the attribute is required, and that it will be created if not specified. Does that change your proposed update? That is, if APIM creates response-required-attribute, will its value be null when ignore-error is true? Thanks

@dlepow  Thanks for checking.
Looking at the desc for "response-variable-name", my understand is that response-variable-name attribute must be specified and will be initialized(in case not used before in current execution context) upon successful execution of send-request. It doesn't mean that we can skip and it will be created automatically.
So i believe my change request still holds good. Please let me know if i'm missing anything here.

Sounds good @karthik-ramasamy, the misunderstanding was mine and I appreciate the clarification.
#sign-off

@jborsecnik : Thanks for your contribution! The author(s) have been notified to review your proposed change.


No longer starts up: "private method `load' called for Psych:Module"

I get this error when executing rubocop without options. I do get help output without crashing, for the --help option. I have no rubocop config file.
$ rubocop -V
0.28.0 (using Parser 2.2.0.pre.8, running on ruby 2.1.5 x86_64-darwin14.0)

$ rubocop
private method `load' called for Psych:Module
/Users/robb/.rvm/gems/ruby-2.1.5/gems/rubocop-0.28.0/lib/rubocop/config_loader.rb:34:in `load_file'
/Users/robb/.rvm/gems/ruby-2.1.5/gems/rubocop-0.28.0/lib/rubocop/config_loader.rb:93:in `configuration_from_file'
/Users/robb/.rvm/gems/ruby-2.1.5/gems/rubocop-0.28.0/lib/rubocop/config_store.rb:40:in `for'
/Users/robb/.rvm/gems/ruby-2.1.5/gems/rubocop-0.28.0/lib/rubocop/target_finder.rb:111:in `excluded_dirs'
/Users/robb/.rvm/gems/ruby-2.1.5/gems/rubocop-0.28.0/lib/rubocop/target_finder.rb:90:in `find_files'
/Users/robb/.rvm/gems/ruby-2.1.5/gems/rubocop-0.28.0/lib/rubocop/target_finder.rb:60:in `target_files_in_dir'
/Users/robb/.rvm/gems/ruby-2.1.5/gems/rubocop-0.28.0/lib/rubocop/target_finder.rb:31:in `find'
/Users/robb/.rvm/gems/ruby-2.1.5/gems/rubocop-0.28.0/lib/rubocop/runner.rb:47:in `find_target_files'
/Users/robb/.rvm/gems/ruby-2.1.5/gems/rubocop-0.28.0/lib/rubocop/runner.rb:18:in `run'
/Users/robb/.rvm/gems/ruby-2.1.5/gems/rubocop-0.28.0/lib/rubocop/cli.rb:24:in `run'
/Users/robb/.rvm/gems/ruby-2.1.5/gems/rubocop-0.28.0/bin/rubocop:13:in `block in <top (required)>'
/Users/robb/.rvm/rubies/ruby-2.1.5/lib/ruby/2.1.0/benchmark.rb:294:in `realtime'
/Users/robb/.rvm/gems/ruby-2.1.5/gems/rubocop-0.28.0/bin/rubocop:12:in `<top (required)>'
/Users/robb/.rvm/gems/ruby-2.1.5/bin/rubocop:23:in `load'
/Users/robb/.rvm/gems/ruby-2.1.5/bin/rubocop:23:in `<main>'
/Users/robb/.rvm/gems/ruby-2.1.5/bin/ruby_executable_hooks:15:in `eval'
/Users/robb/.rvm/gems/ruby-2.1.5/bin/ruby_executable_hooks:15:in `<main>'

Just to add, I'm getting this same error:
warning: parser/current is loading parser/ruby21, which recognizes
warning: 2.1.5-compliant syntax, but you are running 2.1.2.
private method `load' called for Psych:Module
/Users/wilsor31/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/rubocop-0.28.0/lib/rubocop/config_loader.rb:34:in `load_file'
/Users/wilsor31/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/rubocop-0.28.0/lib/rubocop/config_loader.rb:93:in `configuration_from_file'
/Users/wilsor31/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/rubocop-0.28.0/lib/rubocop/config_store.rb:40:in `for'
/Users/wilsor31/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/rubocop-0.28.0/lib/rubocop/target_finder.rb:111:in `excluded_dirs'
/Users/wilsor31/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/rubocop-0.28.0/lib/rubocop/target_finder.rb:90:in `find_files'
/Users/wilsor31/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/rubocop-0.28.0/lib/rubocop/target_finder.rb:60:in `target_files_in_dir'
/Users/wilsor31/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/rubocop-0.28.0/lib/rubocop/target_finder.rb:31:in `find'
/Users/wilsor31/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/rubocop-0.28.0/lib/rubocop/runner.rb:47:in `find_target_files'
/Users/wilsor31/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/rubocop-0.28.0/lib/rubocop/runner.rb:18:in `run'
/Users/wilsor31/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/rubocop-0.28.0/lib/rubocop/cli.rb:24:in `run'
/Users/wilsor31/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/rubocop-0.28.0/bin/rubocop:13:in `block in <top (required)>'
/Users/wilsor31/.rbenv/versions/2.1.2/lib/ruby/2.1.0/benchmark.rb:294:in `realtime'
/Users/wilsor31/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/rubocop-0.28.0/bin/rubocop:12:in `<top (required)>'
/Users/wilsor31/.rbenv/versions/2.1.2/bin/rubocop:23:in `load'
/Users/wilsor31/.rbenv/versions/2.1.2/bin/rubocop:23:in `<main>'

This sounds like an rbenv/rvm error. Could one of you please try this line:
ruby -e "require 'yaml'; puts Psych::VERSION; puts Psych.load('a: b')"

My output is
2.0.8
{"a"=>"b"}

Unfortunately I tried upgrading to Ruby 2.2 (using rbenv) and reinstalling my Gem dependenies for my Rails app using bundler fixed the issue.
However, I can run the command under 2.2 and perhaps we can compare to one of the other guys who still have the issue:
2.0.8
{"a"=>"b"}

I will try downgrading back to Ruby 2.1.2 later today if that'll help.

So I ran into this problem with another gem (lolcommits) under ruby 2.2 (was not able to repro under 2.1.x) and was able to create a simple test case after much debugging. It appears to be a problem with ruby as its fixed in ruby 2.2-head.
https://github.com/chetan/psych_load_bug

I have a problem with rubocop, this may be related:
pak@:~///-$ ruby -v
ruby 2.1.4p265 (2014-10-27 revision 48166) [x86_64-linux]
pak@:~///-$ rubocop -v
0.23.0
pak@:~///-$ rvm use 2.1.5
Using /home/pak/.rvm/gems/ruby-2.1.5
pak@:~///-$ rubocop -v
rubocop: command not found

Confirm bug with Psych > 2.0.8.
On another gem it only works if the "require 'yaml'" is on the same module where you use YAML.something.

Obviously there's some problem, but I'm not sure how should we approach it.

Just in case this helps any other person googling this, I was getting this error when using Ruby 2.0 but when I changed to Ruby 2.1 it disappeared. shrugs

I put require 'yaml' into /usr/lib/ruby/2.2.0/rubygems.rb

Two installed psych gems causes this bug:
/home/user/.gem/ruby/2.2.0/gems/psych-2.0.13
/usr/lib/ruby/2.2.0/psych.rb
Solution:
gem uninstall psych

FYI: this is a rubygems bug.  gem update --system will help you.

Thanks @mame! Works.

thanks , xzo.  this helps me.

I have the same problem trying to use YAML. I stumbled on this page.
Ruby version "ruby 2.2.3p173"
Initially Psych 2.0.8 then I tried Psych 2.0.5 which didn't fix it. I confirmed the version of Psych ruby uses with
ruby -e "require 'yaml'; puts Psych::VERSION"
To make sure the install of 2.0.5 worked and that 2.0.8 was initially present. I tried to use 2.0.15 but Ruby didn't pick it up.

@bquorning and others. Thanks for sharing your troubleshooting tips. I ran into this with scss-lint today and solved it by:

gem uninstall psych
gem install scss-lint

Which was kind of strange, since I already was running most recent versions of psych (currently 2.0.15), sass (3.4.19), scss-lint (0.38.0).
Doing gem install to override was not enough... Had to uninstall psych to make it work :+1:


[BACKLOG-5360] Applied import logic to JobFileListener

@dkincade Backport of #1831 to 6.0

We will not be pulling this in to the <IP_ADDRESS> build. We will need to get this in the <IP_ADDRESS> SP.
@jgrajewski


Doesn't work while playing GAMES!!!

The media control doesn't work when in game or using any other app that goes full-screen and doesn't allow macros to work

The Issue has been solved the macro's has been updated check the new controls and download the latest version of the application
MediaController New-Controls


Default port for connection when URL has no port specified

I am frustrated to admit it took me entirely too long to figure out why my server example was broken despite all my unit tests succeeding. In simplifying my code, I removed part of the code where it would set a default port if the URL didn't specify one. I'm not sure how you're picking a port, but you're not picking the port I want :)
This is a question, not a request: Should we add a way to set the default port for a client fabruic connection, or should I modify the URL before passing it along?

Fabruic is not picking a port, in fact if you don't give it a port, it will return an error.
But because of a limitation in URL, there is always gonna be a default port for known schema unless you define otherwise.
Known schemas are http, https, ws, wss and ftp.
What did you do exactly to trigger that behavior? I am assuming that you just didn't specify a port at all? But that should have failed. If you did specify a port and it picked a different one, that would be a bug in Fabruic.

Potentially one way to help out library consumers, an idea would be to provide a mapping interface for schemas to ports in the builder configuration.


Add clickhouse_keeper and default replica params

Description of the Change
Added Clickhouse Keeper and default replica parameters to config generation.

I believe it should also include the Keeper nodes config in config.xml.j2 so all CH nodes know where Keeper is, similar to what's doing with ZK

The Clickhouse Keeper config section only goes in the config for the nodes which are running keeper (not all the nodes like the zoo keeper config).
E.g., if you have a cluster of 4 data nodes and separately run 3 nodes with keeper on them then the zoo keeper config goes in all 7 nodes configs, but the keeper config only goes in the 3 keeper nodes.

Yes, I see there is an alternative config using  tags , so both configs are valid https://github.com/ClickHouse/ClickHouse/blob/master/tests/integration/test_alternative_keeper_config/test.py


Dec 948 - update the publishing options for dec

I removed the preview option.  All collections are viewable with a link at all times.  This is actually how it already was so it just needed to update the UI.

I updated the left nav to have a copy url feature same as zuchetto.  And a link to preview the site.

I updated the settings to have a publish options section.  This has UI to allow the collection to appear on collections.library.nd.edu.  I reused the published field for this.

Coverage remained the same at 96.213% when pulling 3fec1b4ffecf87e63a6ad56dc39598c8cdba46a2 on DEC-948 into 621d9637050e42b0f946bdee8486882d097c9d7b on master.

:+1:

I like the copy link feature.

@danthewolfe i should hope so you wrote the original code!!

That's probably why I like it so much.

👍


Please Fix the bots! How did raga.pw fixed it?

Hello Guys, i wonder how raga.pw fixed their bots i wish u can fix this too!

bots working on ogar


CMP route get/list

Hello everyone,
I'd like to ask whether there's some way to retrieve (or list) all routes currently configured on a node. There's the route set command, so it almost seems "natural" it could have a get counterpart.
Is this something that's planned for the future, or is it intentionally not included?
Thanks!

Hello,
Good question. The route set came from a time with CSP 1 where there was only 32 addresses. And it only supports specific routes to a single node. There was no need for a list back tjen.
Next came the CIDR notation with netmask. Now it started to make sense to talk about a routing table. The way we chose to handle that was through the init API and let the user handle the routing setup at boot. We added a helper for parsing a string into a routing table. Cmp route set still remained as an emergency method of creating a route back out from any node back to the sender. This could be used if the routing table was misconfigured. But not as s primary configuration interface.
CSP does not handle configuration management. In general. There is no storage backend to write configuration to, other than RAM. So the best way to manipulate the routing table is to change the init parameters CSP is started with and reboot. Or write your own function/command to change it runtime.
In version 2.1 of CSP things are going to change drastically. Now a system is capable of having multiple network adresses. One per interface. And each interface had its own netmask too. This pretty much means the routing table isn't needed because it can calculate on which interface a node belongs.
CSP has the ifstat method. Buy you need to know the name of the interface to request it.
We ought to make a full interface list and routing table list as an output.
There is an active issue on how to manage routing tables on 2.1 and onwards.

Thanks for the detailed response!

The route set came from a time with CSP 1 where there was only 32 addresses.

Probably should have specified, but yes, the question was concerned with CSP 1, as that's the version I'm familiar with.

Cmp route set still remained as an emergency method of creating a route back out from any node back to the sender

That's exactly what I like most about route_set, it can be used to manually re-route traffic in case of an emergency, which I think is one of the "killer features" of CSP in general.
However, I'm not sure about the statement that "CSP does not handle configuration management". I would argue that:
a) it requires some configuration to be stored
b) it provides read (if stats; clock) and write (cmp route set; clock) access to parts of said configuration - I don't think it matters that the changes done via cmp route set are volatile.
c) there is already a common command set in place (CMP, ping, reboot etc.)
I think all of it combined leads to some configuration management being performed by CSP. Following further, perhaps configuration management of CSP should be handled by CSP itself (or a protocol/command set above it, much like CMP). Otherwise, users have no choice but to implement their own configuration methods, and naturally, those will differ. That might not be a bad thing (some users will choose to handle configuration management on their own, even given the choice), however, I still like the idea of CSP being a completely self-contained package.
The above still applies to CSP 1 - I'm not familiar (yet) with CSP 2.x, so it might no longer be applicable.
Feel free to close this issue, it's just random thoughts on using CSP anyway ;)

"CSP does not handle configuration management"

What i mean by this is that, CSP relies on csp_init() and the csp_config struct being passed into the library at startup. Naturally you cannot configure every aspect of CSP over the air / network interface itself. Because if the list of interfaces wasn't setup there would be no method for talking to it.
After init, i think we have basically two configuration options:

routing (we have cmp_route set only, at the moment)
RDP options for new RDP connections (this should be moved into the API of the caller btw)

B) It provides read access  + C) there is already a common command set in place.
Yes, but ping, buffree, reboot etc. are not examples of configuration management. That's telemetry output. Which is not what i am talking about.

Clock
This is a chapter on its own. I would rather make a separation of the network library, and the time keeping functions. As a separate app that runs on top of CSP. This means it will also be decoupled from the release cycles of CSP, and allow for faster development of CSP apps.

a) Any configuration that requires storage CSP expects to receive on csp_init()
I can recommend github.com/spaceinventor/libparam as a configuration management library :)

Hello,
I believe this is solved by this related issue:
#334
I don't feel like we need a network faced interface for dynamic route configuration to be part of CSP right now. I mean, whats next, the address, network interface setup and deduplication? There are a lot of configuration and as i have mentioned before it should not be CSP's task to manage its own configuration.
One could argue that for parameters which needs to change after csp_init have been calleed. Like inserting a new route is an example of, it makes sense. And i tend to agree, this is why we will have csp route_set, because its part of a recovery method to always be able to configure a reverse route. So it's a kind of special function.
For normal operation, the routing table should be changed, and then CSP init called again. We typically configure our systems and reboot them once they are setup as we want them. And we don't touch routing tables while in operation.
We have multiple satellite radios, and the way we manage which one is active is not by CSP routing tables, so we always route packets to both radio interfaces. But we have a flag on each radio, to turn off or inhibit its transmitter. That we use for downlink selection.
Btw. here is an example on how we do some remote debugging of CSP configuration by using the csp_print feature
#if (CSP_HAVE_STDIO)
static uint8_t _csp_print_cnf;
void csp_print_cnf_cb(struct param_s * param, int offset) {
	csp_iflist_print();
	csp_rtable_print();
	csp_iface_t * iface = csp_iflist_get_default();
	if (iface) {
		printf("  dfl if %s\n", iface->name);
	}
}
PARAM_DEFINE_STATIC_RAM(PARAMID_CSP_PRINT_CNF,    csp_print_cnf,     PARAM_TYPE_UINT8, 0, 0, PM_SYSCONF, csp_print_cnf_cb, "", &_csp_print_cnf, NULL);
#endif


botkit should respond to multiple hears events

It seems that botkit will only respond to the first pattern matched in a 'hears' callback.  I contend it should match all of them and fire all the callbacks accordingly.
Is there some reason this doesn't work?

FWIW, I agree - just ran into the same issue and looking into a workaround.
A flag, or a done callback (or whatever) to handle multiple hears matching would be great - it's an awesome library.


For cell cycle gene clustering, plot out count distribution across cells for each interesting gene

For iPSC data


Initial attempt at blocking queue (WIP)

I have more test cases to cover but here is the general idea in addressing #117  . You might have some feedback already but please do not merge yet.

thanks for implementing this really important feature. With cursory glance I have noticed few points which need to be improved


How to use this in ejabberd 17.04

Hi,
I want to know how to use this in ejabberd 17.04.
I wrote it as instructed and added following lines in ejabberd.yml
auth_method: external
extauth_program: "node ~/ejabberd-auth/index.js"

But it does not seem to work. In ejabberd logs i see error from external script and it says
No Response.
Can you give me an example to use this in ejabberd?

Also ejabber logs show the following lines
2017-04-25 10:28:26.064 [critical] <0.25618.0>@extauth:loop:141 extauth script has exitted abruptly with reason 'normal'
2017-04-25 10:28:26.276 [critical] <0.25619.0>@extauth:loop:141 extauth script has exitted abruptly with reason 'normal'

Can anyone tell what's the issue?

Hi,
it seems that you tried to execute the library itself instead of using it in your own project.
ejabberd-auth is not meant to be used directly. Instead, you have to provide your own authentication methods and run ejabberd-auth with it. Like stated in the readme, use
require('ejabberd-auth').run({
    actions: {
        auth: function(done, userName, domain, password) {
            // Some auth to be done here
            done(true); // or done(false) if the authentification has failed
        }
    }
});

from your code to run ejabberd-auth providing your own functions for auth, isuser and setpass.


Release version with merged code?

We are wanting to use json options in one of our projects, however it looks like https://github.com/thephpleague/fractal/pull/365 has been merged to master, but no new release version has been created.
Due to some dependencies, we are unable to define a dev-master version in our composer.json file. Is there a plan for an upcoming release with new merges?

Same issue here. Please make a release.

Same here, but I'm hoping to use the Primitive resource type. Thanks!

https://github.com/thephpleague/fractal/releases/tag/0.17.0 Done! Sorry for the delay


Log in page

Changes:

Switch fabric-UI  with Fluent UI
Update manifest file
Log-in page

Would be cool if you could add a screenshot whenever you do some UI changes, so we can easily see what has changed


Fix minor issues with GH project creation

This PR :

Creates correct type of cards in a project based on whether it's an issue or a PR
Fixes <br> tag in project issues report
Marks new project as public by default

@pranavgaikwad Hey Pranav should we merge this?


It's possible to make compatible with switch?

It's possible to make compatible with switch?

This port is for the Wii U and will not work on the Switch. It is probably possible to get 2ship running on the Switch in theory, but no one has done it yet.


lnrpc: add new WalletKit sub-RPC server

In this PR, we add a new sub-RPC server to the existing set of gRPC
servers. This new sub-RPC server is the WalletKit. It's a utility
toolkit that contains method which allow clients to perform common
interactions with a wallet such as getting a new address, or sending a
transaction. It also includes some supplementary actions such as fee
estimation.
One thing to note in the RPC file is that we import the existing
signer.proto file in order to get at some existing proto definitions
which are useful in our use case.
Depends on #2081.

Need a way to persist the SendOutputs tx before it is published, to make sure we never accidentally pay to the same output again.

Addressed all lingering comments, PTAL!

Didn't you want to add signer permission to the admin macaroon in this pr too?


UTM Virtual Machines folder

It should be in the user folder as Parallels, VMware or VirtualBox, the UTM Virtual Machines folder is inside the user Library and difficult to find.
Also, if we right click in a Virtual machine list, it should have the option to “show in Finder”
Thanks.

Sandboxed apps cannot access user directories by default. The share options are designed for this reason.


Thumbnail doesn't use designated header image by default

Instead the page thumbnail selection (when not specified) will default to using the default header image, which is the 1st image of the page.
It should fall back to the following:

Use the designated header image, if available.
Use the default header image, if available.

e.g. This does not work as you'd think it would.

Fixed with the last build.


Updated readme and removed the local user guide - for 3.19.0 release

Updated readme and removed the local user guide - for 3.19.0 release.
Readme now has links referencing the public GKO docs.

haha, We can add in contributing :
This repo use conventional commit and semantic release
Thats why the ci ⬆ failed

This repo use conventional commit and semantic release

Indeed, let me add it:)

@ivan-gravitee would you mind squashing the commits into one semantic commit in order to get the PR pass the checks ?
something like
docs: update readme and remove user guide

:tada: This PR is included in version 0.1.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Bug: prototype declaration is incorrect for some functions into eth_sw.h

Product: (OC-SDR, OC-LTE, OC-LTE, OC-Power, others)
Category: (Hardware, Software/stack, Firmware/bootloader, Documentation)
Describe the issue found
prototype declaration is incorrect for eth_sw_prob(), eth_sw_init() and eth_enable_interrupt() into /ec/inc/devices/eth_sw.h
*Please provide all necessary steps to reproduce the issue
NA

Code is merged into master.


SymbolTable: update incrementally ?

Given a large file list with only a few files changed and the need to update the SymbolTable: can we do it without having to re-index everything, but just update symbols incrementally ?
This could help for larger projects, in particular when we have to wait in the language server when calling 'go to definition' / 'find references'.
There are multiple parts to this question

How big of a problem is this ? Given a huge project, what percentage of time is spent on parsing vs. SymbolTable update.
Given a large project, what is the absolute time in each of these spent ? (Ideally, we would like to minimize 99% time for user queries to < 500ms).
How much complexity would this add - is it worthwhile vs. maintenance overhead ?

CC @fangism in case he has some ideas w.r.t. complexity as he implemented the symbol table.

Asked David, and his first assessment is that it might be a larger task, probably requires some careful measurement first how much this is a problem.

One difficulty with this is that the symbol table is a monolithic accumulated structure, whose result is the accumulation of changes from processing multiple files.  There could be interactions between files as a result of one file being updated, one moved definition could alter the implicit dependency graph (of files).  For this idea to work, you would need some well-defined state of the symbol-table between processing each translation unit, and either transitions between states have to be reversible, or you'd keep around copies of old state for reversibility.  This problem maps naturally to incremental builds systems, whose primary purpose is to know precisely what subgraph needs to be redone for any update.


Markdown: shades of blue in dark theme when using lists

This is in the Dark+ theme. In the Dark theme we only color the character used as bullet.

This is even worse when you have the following (our smoke test):

In stable:

@kieferrm thanks. please also update the tests, otherwise our builds are failing (https://travis-ci.org/Microsoft/vscode/builds/141740263)

To unblock our CI, I pushed https://github.com/Microsoft/vscode/commit/4e72dcc35954ae36a277983922926f3f5a971d0c

@bpasero thanks for fixing this.

Looks ok in dark theme, but in light theme it still has lots of blue:

What about every other theme? Now, dark+ is the only theme that has proper lists, every other theme is broken.


build are slow because binaries are rebuilt even if no changes

Maybe related to the versioning stuff?

yeah, probably because version.py gets updated every build.


SVGs stretch

/duplicate of #140400
Marking as duplicate as @joaomoreno already interacted with that issue and set assignment/release.


Print external test information

export test related environment variables in generated docker files
print them during the test

Signed-off-by: renfeiw<EMAIL_ADDRESS>

tomee test in grinder: https://ci.adoptopenjdk.net/view/Test_grinder/job/Grinder/3543/
all tests in internal grinder: Grinder/8841 and Grinder/8840


Develop

Coverage decreased (-0.3%) to 81.743% when pulling d9ecc19e6561a5e648c8824c32a7e1623c0465fd on develop into cb613329480b6e1d41a60c42ecb34bde5037b941 on qa.


The condition of HasAttachment should be "true", not "True".

I tested the tutorial and I found that if the condition of HasAttachment is set to "True" when you create the condition, it will not be triggered. If we check the raw outputs of the trigger, we can found this:
"HasAttachment": true,

I also found some UI elements have been changed in the latest version but only this setting made me confused. Please fix it, thanks.

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

ID: 771c44cc-a284-0c97-dae3-218e7319018f
Version Independent ID: e4b73a57-0c44-2453-2baa-7652bbbafc51
Content: Build workflows that process emails and attachments - Azure Logic Apps
Content Source: articles/logic-apps/tutorial-process-email-attachments-workflow.md
Service: logic-apps
GitHub Login: @ecfan
Microsoft Alias: estfan

Hi @yanxiaodi Thank you for your feedback! We have assigned this issue to the author to review further and take the right course of action.

@yanxiaodi Hi Yan, this issue is now fixed.
@mike-urnun-msft Mike, #please-close, thanks!


Multilingual issue with select fields and radio buttons on create and edit

Laravel Version: 5.5.20
Voyager Version: 1.0
PHP Version: 7.0.0
Database Driver & Version: MySql 5.7

Description:
We activated Multilingual but there is an issue with select fields and radio buttons.
By compiling a select field (or a radio button) in a language (value A), then changing tab and selecting a different value (value B) on the same field, the first tab shows the new value (value A) but passes the correct value on submit (value B).
Steps To Reproduce:

Activate multilingual with at least two languages
Compile "status" field in the post creation in default language
Switch to another language
Compile the same field with another value
Switch to default language
The field doesn't show the right value (also if its submitted value is correct)

Most probably this has been already resolved since currently selects don't change while switching language and I can't reproduce it.
I'm closing it but we can reopen it if it's still a problem.


Patchset of chrony and NTP related fixes

This PR contains three patches, addressing issues related to NTP and chrony.

Use waitsync command for initial NTP sync: The first patch also modifies the device-steps.sh script, replacing the chronyd -q command with the waitsync command from the chronyc client for the initial NTP synchronization. This change simplifies the process by avoiding the need to parse the configuration file.

Reload NTP sources without restarting daemon: The second patch updates the device-steps.sh script to reload NTP sources directly, instead of restarting the chronyd daemon. This change avoids issues with the watchdog detecting the absence of the chronyd process and firing incorrectly. The patch includes a loop to delete old sources and add new ones, due to the lack of a single command in chronyc to clear all sources. This should help to fix the #4014

Remove Unix socket on error path: The third patch modifies the handlentp.go to ensure that the Unix socket file is deleted if net.DialUnix() encounters an error, preventing "address already in use" errors.

I don't see any chronyd.pid watchdogs during 24 hours of runs with these fixes.


[Task] Accessibility improvements

Closed in favor of: https://github.com/cfpb/sbl-frontend/issues/303


ignore null/undefined className

Before submitting a PR please:

Make sure you have based your branch off the dev branch.
Submit your PR against the dev branch.
Run npm run build and check that the build succeeds.
Ensure that the PR hasn't been submitted before.

PR Template
ignore null/undefined className

Great catch!


Bluetooth: ISO: Introduce bt_iso_chan_send_ts

The bt_iso_chan_send function could take an optional timestamp by using 0 as an indicator. The issue with this approach was that a timestamp value of 0 is valid, and could cause potential issue with syncing streams in a group.
To fully support transmitting with and without timestamp, bt_iso_chan_send_ts has been introduced, which is the only function of the two (bt_iso_chan_send being the other) that supports timestamps.
A new function, rather than adding a boolean to the existing, was chosen as it simplifies the individual functions as well as making it more explicit what the function does.
Since the bt_iso_chan_send function is used by LE audio, both the BAP and CAP send functions have similarly been updated. Likewise, all tests and samples have been updated to use the updated function(s), and BT_ISO_TIMESTAMP_NONE has been removed.
Fixes https://github.com/zephyrproject-rtos/zephyr/issues/68293

For reviewers: The alternative would have been something like
bt_iso_chan_send(struct bt_iso_chan *chan, struct net_buf *buf, uint16_t seq_num,
		 uint32_t ts, bool has_ts)

@fabiobaltieri Should this not have the 3.6 milestone? It fixes a bug

@fabiobaltieri Should this not have the 3.6 milestone? It fixes a bug

Yeah probably, IIRC I was batch triaging, read the title "introduce XXXX", sounded like a feature and hit the 3.7 tag -- but it still got your attention so in the end it worked out :-)
Feel free to tag these yourself, I periodically go through approved+untagged and take a guess or ask but if you tag them for us it's going to make everyone's life easier.

@jhedberg Please review.

@jhedberg Please review.

Approved. I generally don't pay much attention to Bluetooth Audio PRs, since that's @Thalley 's area of responsibility, but I now noticed that this one was assigned to me for some reason.

@jhedberg Please review.

Approved. I generally don't pay much attention to Bluetooth Audio PRs, since that's @Thalley 's area of responsibility, but I now noticed that this one was assigned to me for some reason.

That is because this is (mainly) ISO, which is under the host directory, and not Audio specific :)


Detroying Slick (Unslick) Removes External Events

hey there,
Using slick with Knockout, when i add/edit new elements I prefer to just reset the carousel rather than deal with the logic of adding them via individual functions.
Anyway, the 'unslick' command also removes bindings associated with Knockout rendering this technique impossible in my case.
Ap

Hey, thanks for contributing @arpowers  :)
Of course removing slick deletes the slick nodes and puts your code back to pre-slick state... so the DOM nodes you were binding to are gone. -- perhaps call your knockout data-binds from a function and call that function on slick-init? (I have extremely limited knowledge of knockout.) :smile:
This question is better suited for www.stackoverflow.com where there are thousands of people with knockout.js knowledge and can help you with your code theory/architecture... this doesn't seem like a slick issue/bug. :smile:
If you really don't want to go there, create a JSFiddle as asked for in the https://github.com/kenwheeler/slick/blob/master/CONTRIBUTING.markdown and set it up in your example and we might be able to help.
Simon.

Well, aren't you just supposed to namespace your events and return to the same state as when you start?
I got around it using .clone() so I'm ok either way

Slick events are namespaced. Without a JSFiddle I can't see what exactly is going on with Knockout.

I think this might be a simplified example of the problem, but if not, I can open a separate issue: http://jsfiddle.net/woL708Lz/2/

Click a link (event target is logged in console).
Click 'slick' to make the slider.
Click a link (event target is still logged).
Click 'unslick' to destroy the slider.
Click a link and the event target is no longer logged in console.

Am having this issue as well... #1199 fixes the addressed issue but it creates more problems and is unusable


POSTing large raw JSON packets

Describe the bug
Given huge packets, PW throws a URI too long HTTP error, and won't finish the request.
To Reproduce
Steps to reproduce the behavior:

Have an endpoint that can receive a request (node + JS, other).
On PW send POST with RAW input, with excess of 4000 characters or so.
Send.

Expected behavior
Should POST without error.
Suggested fixes

Send content as raw bytes in request body, as per the Volley API and others.

Desktop (please complete the following information):

OS: Win10
Browser Opera | Chrome | Firefox | Edge
Version latest

Additional context
Trying to test my own API with heavy loads,  PW can't handle it for the moment, sadly.

Just tried a POST to an endpoint with 6000+ and 12K+ chars and couldn't reproduce. Are you still having this issue?

@AtomicNicos have you tried reproducing the issue after #292 ? If issue is is fixed, feel free to this.

https://stackoverflow.com/questions/55631057/axios-post-data-as-form-data-instead-of-as-json-in-payload

From https://stackoverflow.com/questions/2891574/how-do-i-resolve-a-http-414-request-uri-too-long-error it is clearly evident that this error is a  limitation from the server side and got nothing to do with PW - hence closing the issue.


some navigation/structure of docs is weird

There's a 'properties' section, but not all the properties are in it, and properties.md isn't in it

fixed


 The keyboard shortcut works as expected.
Found on these levels (very incomplete list):
Dungeon/Signals and Portents
Dungeon/True Names
Dungeon/The Raised Sword
When it's missing:

Normally:

By design: we hide as many interface elements as we can at first to make the interface simpler for players just getting started. This is controlled by the hidesRunShortcut option in the level/campaign.


Serialize create orders

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

8 of 8 (100.0%)  changed or added relevant lines in 2 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.8%) to 78.24%

Totals

Change from base Build<PHONE_NUMBER>:
0.8%

Covered Lines:
188

Relevant Lines:
242

💛  - Coveralls


Update README.md

Summary

Type of change

[ ] Bug fix (added a non-breaking change which fixes an issue)
[ ] New feature (added a non-breaking change which adds functionality)
[x] Updated documentation (updated the readme, templates, or other repo files)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)

How Has This Been Tested?

[ ] Ran tests with composer test
[x] Added or updated test cases to test new features

hi, i'm new here


NME - Expose to frame option appears after node removed from frame

Enhancement

A node that has an exposable port (like the scale node) that is dragged to the canvas will not show an option to expose port to frame if it is not in a frame.
If the node is then placed within a frame, the node will now display an option to expose the port to the frame when the port is selected
Moving that node outside the frame again should remove the option to expose the port to the frame since the node is no longer in a frame, but the port options still contain "expose port to frame"

We should check the state of a node (within a frame or not) when we populate the options when selected a port so that we aren't allowing the user to assign a port to a frame when there is no parent frame.

Will be in the next nightly tomorrow :-) as fixed by PR above thanks @msDestiny14


Monthly payment calculation is incorrect in LT modal

It seems that after the modal re-render fix (00d0bed4ca2ca29164335f24da5adfe21f98f375), the calculation for the monthly payment started not working correctly?
Using the old jsfiddle which still has the modal re-render issue, I see that on page load for the default selected item "Item 1" which has a price of $3,291.20, the widget text says the lowest monthly payment is $603.33 and when you open the modal, it correctly shows the same lowest monthly payment amount.
https://jsfiddle.net/1beqy2nh/2/

But for this updated jsfiddle with the latest fix as of today (d9021fbaf358920ca62cc6aa72f3a129c2df12b3), I see that the widget text says the lowest monthly payment is $603.33 but in the modal the lowest monthly payment is $75.42.
https://jsfiddle.net/3b61z9dg/

Sorry for the delay - this should be fixed now!

@aholdahl, thanks for the update. But I don't see any commits? The latest commit was from yesterday for the 13px font-size fix.

Sorry about that - seems my commit didn't go through. It is up now.

Thanks @aholdahl. The fix works.

@aholdahl, I tested your fix but it seems like it just partially fixes the issue.
I updated the jsfiddle with your latest commits at the new link below.
https://jsfiddle.net/92ecdxz4/
When you choose Item 1 with price of $750, it shows lowest monthly payment of $68.74 in the widget text but the modal shows $137.49.
When you choose Item 2 with price of $2,000, it shows lowest monthly payment of $366.63 in the widget text and the modal shows the same lowest monthly payment.

@aholdahl, thanks for the fix. But the bundle JS seems to be not updated yet.
https://github.com/sezzle/static-widgets/blob/production/dist/bundle.js
It says the latest commit was from yesterday.

Ugh, TGIF! Sorry about that, it is pushed now.

@aholdahl , thanks!


Added Spicy Potato Tacos, yum

Added the a full taco recipe for Spicy Potato Tacos.

GitHubhttps://github.com/sinker/tacofancy/issues/94#issuecomment-28347764


Automate Zap scans

Currently Zap is run manually on the users laptop, this takes resources away from the Engineer/Operator. It is preferred that these scans be run in a pipeline either manually or based on date.
Acceptance Criteria
GIVEN Zap scans are run in a pipeline and/or a standalone container
THEN Zap scans can be set to run without impacting the users local machine
Security considerations
This will require that credentials be supplied to the Zap automation in order to authenticate to the various sites being scanned. This is mitigated by using interpolation and CredHub to store the credentials.
Implementation sketch

[ ] First get an example Zap instance running locally either via a Container or automation scripts
[ ] Set the credentials in this local container for testing
[ ] Run tests against the container and make the necessary changes to the scripts or configurations
[ ] Decide where/how the reports for html and xml are delivered
[ ] Deploy the scripts/container into a Dev environment for remote testing
[ ] Verify the Dev instance of Zap produces correct results in the reports received by running Zap locally as before and comparing the reports
[ ] Promote to Tooling for automated runs

I started looking at the existing automation framework that Zap currently includes:
https://www.zaproxy.org/docs/desktop/addons/automation-framework/
In the framework it talks about setting up a config file with the key value pairs needed for basic and advanced configuration.
There is a replacer add-on that uses a regex to swap out header contents in requests and responses:
https://www.zaproxy.org/docs/desktop/addons/replacer/
I was looking at that as a way to intercept the token once authenticated, to be used in further requests.
I also looked at how to start zap with the correct switches to see if there was a way to run it scripted locally to cut down on mousing while this automated solution is being researched:
https://www.zaproxy.org/docs/desktop/cmdline/
For the overall authentication model I looked at this authentication example that is in the community provided scripts for Zap. This is a repo of scripts that can be used with the scripting environment offered by Zap:
https://github.com/zaproxy/community-scripts/tree/main/authentication
Zap uses Selenium to control the browser of choice (Firefox in our case). I looked into this example to see if it could somehow automate scans:
https://www.swtestacademy.com/security-testing-using-owasp-zap/
The issue with this code is that it doesn't take into account the use of an IdP. If someone could figure out how to make that work it could be the answer to getting past the authentication hurdle.
Per a suggestion from Bret I looked at this Github Action example:
https://github.com/zaproxy/action-full-scan/issues/5#issuecomment-816101503
This example uses the Zap Container and a builtin full scan. It may be the closest to what we end up using, i.e. the container instead of a deployment of Zap itself.
I ran out of time in the IP sprint, so this will need to be picked up by someone else or I'll try to pick it back up when I can.


Added -busybox switch to handle busybox/alpine containers

Habitus will now correctly run commands in a busybox or an Alpine container as they use /bin/sh for the shell rather than /bin/bash. In addition updated the stat command to get perms of artifacts to execute correctly under busybox.

Also, how does one join your Slack channel? I can not find a link anywhere on habitus.io to allow one to get an invitation to the Slack channel. Might be something you want to put up there if you want to build a community.

Hi @hickey
Thank you very much for the PR. I updated the link to our Slack channel in the github repo's README.
As for the PR content, I think it's better to remove the explicit reference to Busybox and instead allow overriding the shell command with default being /bin/bash while the option would allow the user to switch it to something like /bin/sh if they need. This way we'd have a more inclusive approach.
Would you be able to make that minor adjustment please?

Well, I started out that way by first starting to write a --shell switch to just override the shell being used. That worked until I hit the stat call that was being made and I had to put some more conditional logic to account for the two different arguments that need to be sent to stat. That is when I changed the switch over to --busybox. I can also foresee where there may be another time or two that there will need to be other conditional logic put in place depending on what features Habitus develops.
I briefly considered using --alpine as it was Alpine images that I was working with when I discovered the issue. But the more that I thought about it and started to realize that the common element that was driving the change was Busybox, it made sense to create the switch as --busybox.  This also give a pretty good indication to others as to when the switch is needed.
Maybe you have a suggestion that is escaping me. One thing I would want to avoid (and I would think you would too) is to have 6 different command line switches needing various settings to configure for a specific OS.

I completely agree with your point about not having to configure 6 different things for each OS permutation.
How about making things a bit more generic by introducing a param called --os with a valid value of busybox for now and extending later? This way we won't have to keep adding new params for each of the permutations.

Oh, that would work pretty well.
How about I engineer it so that there is a default of 'linux' (I would like a better label, but can not think of one right now) that has the current functionality and then one can specify busybox or alpine to customize for that style of OS. A similar idea is instead of using 'linux' actually specify the family type of debian or redhat (proably default to debian since it is the most widely used base image) so that if at some point Habitus does use a OS specific command like yum or apt then the changes down the road would be easier and less disruptive.
I will wait to hear back before making any changes. No use having to continually revise code :-)

I like your idea of using the OS type (ie debian or suse). Let's go with that. Thanks!

Hi @hickey have you made any progress on this one? Would love to have it in the next release if we can.

Sorry, I have been retasked on a bunch of things and it got put to the side. I have a good portion of it done. Let me see if I can get it finalized for the early part of next week. Does that work for your schedule?

Absolutely! Thank you for the help @hickey

Sorry, I forget what I was doing that weekend, but never even thought about getting the changes complete. It occurred to me this weekend that there was work to be done. In any event, here is the final changes for the --os switch.


Remove the *** All *** choice when asking the user for something

Inquirer now enables to choose everything.

Done as of 39df6dc.


Try/Except to handle strict-transport-security header

Since 02:00 UTC this morning we started to receive the following ValueError from the ServiceBus API:
'could not convert string to float: max-age=31536000'
It appears that a change within the API has appended the strict-transport-security header which the SDK cannot serialise.
I'm not sure if there's a better way of achieving this, I've just copied the try block from the if statement above.

Coverage decreased (-0.0006%) to 41.861% when pulling fc1ec687744f4c110b16556581b2cb7b0534c758 on JamieCressey:sts_header into 3e80c20b0008ba6004753004be1462f0295c4b1b on Azure:master.

I think the pull-request https://github.com/Azure/azure-sdk-for-python/pull/658 is doing this in a better way

As long as a fix is implemented I'm not precious on which method is merged.

Hi @JamieCressey , I merged the PR #658 which was the best way to fix this.
Thank you for your report and your PR!

@JamieCressey just released ServiceBus 0.20.2, should work now, let me know if you still have a problem.
Thank you!