Feature/#518

Fix for brickPi3 and Raspberry Pi 3 B+. Also fixes some gradle issues for OpenJdk10.

Hi @mingan666, I merged the PR.
I like so much your work with the file build.gradle. It was necessary anyway, I suspect that current version is possible to be refactored a bit more.
I added Lombok dependency which it was missed.
I am thinking to create a repository for testing purposes. The idea could be to create some examples to tests with the physical device.
Do you have to time to test BrickPi with some sensors and Motors please?
Cheers
Juan Antonio

If you'd create a repository with tests for target system that would be great. I will run them on my hardware.

I also had a look at your lombok fix. Is it really needed?
Have a look at patch Refactored build.gradle for openjdk-10
Those lines caused issues when using openJdk10 in my development as the annotationProcessor does not seem to work anymore. Instead I changed to using the gradle-lombok plugin to accomplish the same. Also, now we point to 2 different lombok versions: line 46 (version = '1.18.2') and line 56-58 (lombok:1.16.20).
As I wrote in that particular comment, I did test the new solution with both java 8 and java 10... Please check it out once more :)

I did not really recall what happens in which case... But I reset my local branch to before my changes for the lombok issue and got the following issue:
shark:~/git/ev3dev-lang-java$ gradle test
> Task :compileJava FAILED

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':compileJava'.
> java.lang.ExceptionInInitializerError

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

Deprecated Gradle features were used in this build, making it incompatible with Gradle 5.0.
Use '--warning-mode all' to show the individual deprecation warnings.
See https://docs.gradle.org/4.9/userguide/command_line_interface.html#sec:command_line_warnings

BUILD FAILED in 1s
1 actionable task: 1 executed
shark:~/git/ev3dev-lang-java$

As you can see, the issue I'm trying to show you is not related to IntelliJ. It's when running gradle from the cmd line. In this example its on the linux subsystem and simular problems exists when running gradle within IntelliJ. Just for clarity: this happens only when changing from jdk8 to openjdk10 during the gradle build.
These issues are resolved by changing to the gradle-lombok plugin.
------------------------------------------------------------
Gradle 4.9
------------------------------------------------------------

Build time:   2018-07-16 08:14:03 UTC
Revision:     efcf8c1cf533b03c70f394f270f46a174c738efc

Kotlin DSL:   0.18.4
Kotlin:       1.2.41
Groovy:       2.4.12
Ant:          Apache Ant(TM) version 1.9.11 compiled on March 23 2018
JVM:          10.0.1 (Oracle Corporation 10.0.1+10-Ubuntu-3ubuntu1)
OS:           Linux 4.4.0-17134-Microsoft amd64

Also I need to be able run the tests from the linux subsystem since some of the test cases do not play well with windows. The fake ev3dev path seems to contain illegal characters for windows.
java.nio.file.InvalidPathException: Illegal char <:> at index......

Sorry I didn´t want to annoy you @mingan666 :)
I am trying to test in local with the same configuration than you.
In my idea, I was compiling with Java 8, but by command line I executed the tests with Java 10.
I am configuring IntelliJ with OpenJDK 10.
Give me a hour to have the same scenario than you.
One moment :)

Hi @mingan666,
I am using OSX, to replicate your scenario, I upgraded my IntelliJ CE to version 2018.2. later I installed Oracle OpenJDK10 with Brew. Previously I installed from brew OpenJDK10 from AdoptOpenJDK 10 but for some reason, I could not set that Installation as a valid JDK inside of IntelliJ so, now I have latest IntelliJ with latest JVM from Oracle. :)
When I opened IntelliJ, I imported the project and I replicated your scenario, IntelliJ doesn´t recognise LOGGER object.
To solve it, I enabled "Annotation processors" and Lombok plugin on IntelliJ. With that settings I could execute tests from IntelliJ context menu and by terminal.
This explanation is better for you?
Juan Antonio

In relation to the fake ev3dev, I developed on OSX and tested on Linux with Travis and I didn´t have any problem. Maybe exist the problem that you say, we could fix it :)

Tell me if you fixed your local issue.
In my computer and in Travis CI with latest commit:
Commit:
b9c6cf53a5741244dcb00c965a287d78082ba5f7 [b9c6cf5]

I can compile and execute the tests.
Good night from Spain
Cheers
Juan Antonio

Not really... For me it also works fine to run the tests from intellij, but it should be possible to run from the cmd-line also right?
Just to be clear... what version of ev3dev-lang-java are you testing? To get to the issue, make sure you are on version prior to my fix called 'Refactored build.gradle for openjdk-10'. Then go to a terminal and write 'gradle test'. Alternative, open the gradle window in intellij (for me its in the right panel in intellij) and run test task from there.
To solve that problem (after a lot of googling...) I figured the correct way to use later versions of lombok together with gradle is as I did it in my patch; e.g. changing from the annotationProcessor to using the gradle-lombok plugin.
Now we mix both options, which doesn't seem good to me....
See also https://projectlombok.org/setup/gradle. The plugin seems to be the recommended way.

I don't see a simple solution for the 'fake ev3dev' problem. It fake path must match the path on the target system and it seems to be using the colon (:) in some cases. This is not a valid character in a windows path so it will not be allowed.
Its not a problem for me, as long as I can run the tests from the cmd line using the linux subsystem (a windows 10 app running linux on top of windows).

Hi @mingan666,
I am testing in local with you branch #518 and latest commit (Your patch). Previously, maybe I was testing with OpenJDK 8 and this is the reason to not have that behaviour.
I followed your comment and I disabled "Annotation processor" and I Uninstalled "Lombok Plugin". Finally I restarted the IDE and from the contextual menu and from the terminal everything run fine.
Many thanks for this conversation :)

Just to be sure... you still need the lombok plugin in intellij - this makes the normal intellij testing possible.
the gradle plugin is just fixing it for gradle runs...

mmm, I am testing with IDEA menu and from the idea terminal and everything goes fine from my side.

In relation to the question about paths, now I understand your comment.
If you observe in the file: jessie:properties you will see some path with that problem:
ev3.led.left.red=/sys/class/leds/ev3:left:red:ev3dev/brightness
This is a path designed for a Linux environment (EV3Dev) so as you say, possible developers for this library should code on Linux or OSX. Another workaround, is the usage of the Docker container which we have and we use for Travis:
 ./gradlew clean dockerTest

I didn't realize that we still haven't come to an understanding regarding the build.gradle file until I turned of my computer yesterday...
I deliberately removed the following lines (the manual way of configuring lombok):
    annotationProcessor("org.projectlombok:lombok:1.18.2")
    compileOnly("org.projectlombok:lombok:1.18.2")
    testCompileOnly("org.projectlombok:lombok:1.18.2")

since they are obsolete since I replaced them with these lines (the plugin way):
plugins {
    id 'io.franzbecker.gradle-lombok' version '1.14'
}

lombok {
    version = '1.18.2'
    sha256 = ""
}

Now you have added them back, which means there are now mixing these two ways of configuring the dependencies, which is never a good idea...
Now, what I wondered yesterday  was if you had run into any problem causing you to add them back? My changes worked on both windows and linux and with both jdk8 and openjdk10....

Good morning @mingan666,
This morning, I read your last comment and I understood your idea. I removed the dependency in the way that I was used to add for Lombok and it run nice but in the IntelliJ, I observe that in the class BaseElement.java appear the line:
LOGGER.info("Reset EV3Dev testing infrastructure");
In red so, I suppose that although now, the compilation is ok with the way that you introduced, I appreciate it, we should use the Lombok plugin from IntelliJ point of view to disappear that side effect from the code visualization, the execution by contextual menu and by terminal was fixed.
What is your opinion?
Juan Antonio

That's about right.
For the gradle task/cmd line, the updated gradle.build file works as intended.
For Intellij nothing has changed, it still needs the specific lombok configuration exactly as before.

What is your Full Name?
I would like to add you in the file:
https://github.com/ev3dev-lang-java/ev3dev-lang-java/blob/develop/CONTRIBUTORS.md
Juan Antonio


Drug entry currently broken in add/edit evidence form

Drug entry is currently broken in the add/edit evidence form.

There is an 'Add Drug' button now, but when I use it to add a drug and then hit Submit Revision for Review, nothing happens.  If I hit Apply I get a message that it was successfully applied.  But I don't think it propagates correctly.

The drug multi-input field now works as expected, and Adam is working on modifying the backend to handle the requests it now sends. Currently, you'll get a 400 Bad Request error if you attempt to add a drug that isn't currently in the civic db, and if you delete all of the drugs, the server will return an error as well. These should be fixed shortly. I'm closing this as the remaining issues with this features relate to the server.


Python 3.5 compatibility

Removes a couple of f-strings which had snuck in (because they're great).
Also updates package metadata to only support python >= 3.5 (because 3.4 is EOL).

Resolves #583

Thanks!


Fail to run cypress-tags when features dir is not in cypress/integrations

Current behavior
running the command cypress-tags run -e TAGS='@final'
or cypress-tags run -e TAGS='@final' -d 'features/final/*.feature'
fails with the output:
Failed to read cypress.json, using default configuration
Spec files:  cypress/integration/**/*.feature
No matching tags found

Desired behavior
scenarios with the tag @final should be run

Test code to reproduce
Feature files are not inside the directory cypress/integration, they are in the directory features outside the directory cypress
package.json has the part:
"cypress-cucumber-preprocessor": {
    "nonGlobalStepDefinitions": false,
    "stepDefinitions": "step_definitions/**"
  }

cypress.json is in the root of the project:
{
  "integrationFolder": "features",
  "testFiles": "**/*.{feature,features}",
  "chromeWebSecurity": false,
  "video": true,
  "screenshotsFolder": "dist/screenshots",
  "videosFolder": "dist/videos",
  "videoUploadOnPasses": false,
  "baseUrl": "http://local.xxxxxxxxxxx.xxx",
  "viewportHeight": 1000,
  "viewportWidth": 1280,
  "projectId": "xxxxxxx",
  "ignoreTestFiles": "*.js",
  "trashAssetsBeforeRuns": true,
  "env":
  {
    "FAIL_FAST_PLUGIN": false
  }
}

tsconfig.json:
{
  "compileOnSave": true,
  "compilerOptions": {
    "sourceMap": false,
    "allowSyntheticDefaultImports": true,
    "types": [
      "cypress", "node"
    ],
    "target": "es6",
    "strict": true,
    "moduleResolution": "node",
    "resolveJsonModule": true,
    "experimentalDecorators": true,
    "strictPropertyInitialization": false
  },
  "exclude": [
    "node_modules"
  ],
  "include": [
    "**/*.ts"
  ]
}

cypress/plugins/index.js:
/**
 * @type {Cypress.PluginConfig}
 */
const cucumber = require("cypress-cucumber-preprocessor").default;
const browserify = require("@cypress/browserify-preprocessor");
const { downloadFile } = require('cypress-downloadfile/lib/addPlugin')

module.exports = (on, config) => {
  const options = browserify.defaultOptions;

  options.browserifyOptions.plugin.unshift(['tsify'])
  // Or, if you need a custom tsconfig.json for your test files:
  // options.browserifyOptions.plugin.unshift(['tsify', {project: 'path/to/other/tsconfig.json'}]);
  if (process.env.BROWSER_LOG && process.env.BROWSER_LOG === 'yes') {
    require('cypress-log-to-output').install(on)
  }
  on("file:preprocessor", cucumber(options));
  on('task', { downloadFile })

  on('task', { isFileExists })

  createConfig(config)

  require("cypress-fail-fast/plugin")(on, config)
  return config
}

Versions

Cypress version: 8.7.0
Preprocessor version: 4.3.0
Node version: 16.13.0

Due to personal reasons, the previous maintainers of this package are stepping down and handing the reigns over to me, a long-time contributor to the project and a user of it myself. This is a responsibility I'm very excited about. Furthermore, I'd like to thank @lgandecki ++ for all the work that they've done so far.
Read more about the transfer of ownership here.
The repository has however moved and all outstanding issues are being closed. This is not a reflection of the perceived importance of your reported issue. However, if after upgrading to the new version, you still find there to be an issue, feel free to open up another ticket or comment below. Please make sure to read CONTRIBUTING.md before doing so.


supplemental: update removed  UnnecessaryParentheses to not violate c…

supplemental: update removed  UnnecessaryParentheses to not violate checkstyle

As per https://github.com/checkstyle/checkstyle/pull/12579  checkstyle is updating the UnnecessaryParenthesesCheck https://checkstyle.org/config_coding.html#UnnecessaryParentheses.
the updation of rules are violated at line 304 which parentheses are Unnecessary so removed thanks


Issue #9: Improve Factory method

Only accept the position of the marker so the onCreateAnnotation is
clearer and does not duplicate the work that should be done in
onBindAnnotation. That simplifies the adapter and avoid possible
duplication of work and resources.

Hi, thanks for the pull request.
I completely agree with you - it is a little confusing. I'll have a bit more of a think around onCreate vs onBind.
One thing I will say in the meantime is that we'll need to maintain backwards compatibility, so rather than removing methods from the annotation factory, can you deprecate them instead?

Ok I thought that you were still under beta so no need of backward compatibility. I will try to refactor it.
Actually, I have some doubts on the need of the AnnotationFactory to create markers. Why not let the user create the markers without need of the factory.
Another point is that MapAnnotation exposes addToMap, remove and annotate, this might lead to misusage of it.

The factory is there as an abstraction on top of the underlying map. By using the factory, it makes it really easy to swap out the map provider by just changing the parent adapter class.
Good point about those public methods though!


[SIP-45] Proposal for improved UX for dashboard filter eligibility

[SIP] Proposal for improved UX for dashboard filter eligibility
Motivation
Currently a user can configure dashboard filters to either apply (enabled; the chart is non-immune to the filter) or not apply (disabled; the chart is immune to the filter) to specific charts. For the former there is no validation on whether the filter is eligible, i.e., can be applied to the datasource, for the specific chart and currently if the filter is deemed irrelevant it is simply ignored by the chart. The issue with this approach is there is no visual indication that the chart has ignored said filter(s) and thus the viewer could be misguided into believing a set of filters have been applied, thus making an incorrect conclusion.
This SIP proposes a couple of visual treatments to provide more clarify with regards to filter viability.
Proposed Change
The root problem is there is no validation if enabled filters are actually eligible for said charts. We propose two (somewhat related) approaches. We prefer the first approach from a simplicity and consistency standpoint as immunity is treated in a consistent manner.
1. Ensuring eligibility when configuring filter scopes [Preferred]
The first (pseudo-proactive) approach is ensuring filters can only be enabled for the charts which are eligible. Figure 1 shows how scoped filters are currently enabled by the user. A modification could be to only allow filters to be selected if they relate to said chart, i.e., if the "region" filter is deemed ineligible for the "Treemap" chart the checkbox would be disabled and thus the green filter pill will not appear next to the "Treemap" chart in the dashboard.

Figure 1: Configuring filter scopes.
The dashboard UX is relatively intuitive as users can easily determine which filters are being applied to said chart based on the filter pills knowing that by construction all the defined filters for said chart are eligible.
Note for this option a migration would be required in order to uncheck any existing enabled filters which do not apply to the chart.
2. Ensuring eligibility at the chart
The second (retroactive) approach would be to modify the UI treatment based on the filter eligibility. There are two different states/scenarios we need to consider in order to provide the appropriate UX:

A user is interacting with a dashboard chart where during a prior state the chart was deemed correct however after applying an ineligible filter the chart is deemed incorrect.
A user is interacting with a dashboard chart where an existing (possibly saved) ineligible filter has been applied where the chart is deemed incorrect. Note there is no prior valid state for the chart.

The lefthand portion of Figure 2 illustrates these two states. The upper-left corner shows the treatment for (1) where the previously rendered chart is greyed out (via an opacity layer) and a message is show. The lower-left corner shows the treatment for (2) where since there was no prior valid state only the message is shown.
The upper-right portion of the figure provides context as to which filters don't apply (which contain an exclamation point), and the lower-right portion shows the message treatment being applied to a smaller chart.

Figure 2: The various visual treatments for handling filters which do not apply to a chart. The lefthand portion illustrates the the two different states, the upper-right portion provides context as to which filters don't apply (which contain an exclamation point), and the lower-right portion shows the message treatment being applied to a smaller chart.
Note the issue will this approach is we treat charts which are immune to a filter and charts which have the filter enabled though not eligible differently, i.e., the former will be rendered where as the later will have the error message. The inconsistent UX is why we prefer the former approach.
New or Changed Public Interfaces
For both approaches, in order for the frontend to know if a filter can be applied a new RESTful endpoint needs to be added which would leverage the metadata of the underlying datasource. The endpoint should have the ability to handle multiple charts in bulk.
For the first approach if the bulk RESTful API request was made by the dashboard this would be a blocking request during the dashboard mount and would add a speculative 0.5s to the dashboard load time. An alternative non-blocking approach would be for each chart to perform said check as part of the data fetch and propagate the response to the frontend which would then retroactively disable the filter scopes. This is somewhat akin to option two but with different messaging, i.e., rather than the filter pill containing an exclamation point, the pill simply wouldn't exits as said filter doesn’t apply to the ineligible chart.
The one caveat of this approach is the filter_values Jinja macro, which per the documentation states:

This is useful if:

you want to use a filter box to filter a query where the name of filter box
column doesn't match the one in the select statement
you want to have the ability for filter inside the main query for speed
purposes

This could be problematic because it is not viable to determine whether the filter is applicable by simply inspecting the column/metric metadata of the underlying datasource. There are two approaches to remedying this problem:

Extend the metadata to include the SQL for virtual datasources which needs to be parsed.
Deprecate the filter_values Jinja macro. The first point can be circumvented by adding a virtual column (alias) to a SQL datasource which adheres to the filter where the expression is merely the name of the corresponding column. The second point cannot be circumvented resulting in sub-optimal queries.

Note for context < 0.1% of SQL datasources and < 0.1% of slices at Airbnb use the filter_values macro.
New dependencies
N/A.
Migration Plan and Compatibility
The first option would require a one off database migration to retroactively remove all filters which have been enabled for a chart even though said chart is ineligible.
Rejected Alternatives
N/A.

Two immediate issues come to my mind:

IIRC, filter indicators do not show up for non-applicable charts. If we are to adopt this design, does that mean all charts will have all filters indicators? That might turn problematic when a dashboard has many filters, especially if filters and charts are in different tabs. (Although this is solvable by redesign the indicators.)
Blocking users from viewing a chart when not all filters are applicable sounds too strict. Sometimes it makes sense to include charts using different datasources in the same dashboard, but they may not share the same filter columns.

I've used filter scopes extensively in Tableau yet never felt the need for Tableau to make it clearer what filters apply to which charts in my dashboards. Overall I feel it should be dashboard designers' responsibility to make filter usage unambiguous and clear---which can be achieved via adding sep lines, subsections, etc.

@ktmud

IIRC, filter indicators do not show up for non-applicable charts. If we are to adopt this design, does that mean all charts will have all filters indicators? That might turn problematic when a dashboard has many filters, especially if filters and charts are in different tabs. (Although this is solvable by redesign the indicators.)

This only impacts non-immune charts, i.e., those charts where said filter is said to apply. Note as mentioned previously there is no eligibility check on whether a filter can be applied or not.

Blocking users from viewing a chart when not all filters are applicable sounds too strict. Sometimes it makes sense to include charts using different datasources in the same dashboard, but they may not share the same filter columns.

I updated the "Rejected Alternatives" section to include an option which would provide an eligibility check and thus ensure that a filter can only be enabled on a chart if it is supported by the underlying datasource.

This looks great!
I wonder whether we can also add a shortcut near filter control themselves to quickly change the filter scope like in Tableau:

Thank you very much this SIP. ❤
May i know what are possible technical solution to implement this feature?
When a user creates a filter and added to dashboard, how do we know which charts are applicable? I assume each chart may have complicated sub queries, Jinja macro, so a query has to hit query engine to know if the filter is valid or not?

@graceguo-supercat in the "New or Changed Public Interfaces" section there would need to be a new RESTful API endpoint which checks the datasource metadata. The request should be relatively efficient (we could add a bulk option to check multiple charts) though it would be more complex if we need to handle the filter_values Jinja macro.

@ktmud Actually show a control in the filter_box to define its own scope was one of filter scope design.
The problem is right now Superset allow filter apply, and allow chart to immune.
If we offer a control for filter be global or tab, then each chart also need a control to set which filter to immune. User needs to go through each filter to set scope, and each chart to set immune. It seems not efficient for large dashboard with large number of filter fields and charts. So this design was rejected pretty early.

Tableau also allows applying filters to select worksheets (charts):
https://help.tableau.com/current/pro/desktop/en-us/filtering_global.htm#apply-filters-to-select-worksheets-tableau-desktop-only
It doesn't conflict with having a shortcurt control to quickly change filter scopes between the two most used modes: charts with the same datasource, and charts with related datasource (those having the same filter column).
I don't think we need to add filter selectors to charts, just a quick switch to filter charts is enough. For large dashboard, users can always go back to use the  all-in-one modal, but having a quick switch would make life easier for other dashboards, which are probably more common.

Allow filter only applicable to charts from same datasource, probably is a quick win? @john-bodley
But you know Superset has virtual datasource, a dashboard generally contains a few different datasources. So we still need a more general solution like John proposed.

@ktmud I wonder if your suggestions are probably a nice to have (for improved UX) but not required in order to implement the filter eligibility.

Yeah, it's a nice-to-have and could be implemented separately.

Based on previous offline discussions with @graceguo-supercat and @john-bodley, here's what needs to be done in the near term:
1. Present more accurate filter indicators for charts
Pass all in-scope filter fields and values to charts (together with the extraFilers field), the chart slice API returns whether a field is valid (exists in datasource) or not (could be another field activeFilers in the payload). The frontend then have a way to display only actual activeFilers for a chart.
2. Clarify applicable scopes for filters in filter scope editor modal
We could take either approach below:

Add a help text explaining filters can only apply to charts whose datasources have corresponding fields
(Optional) Create an endpoint that given a list of filter field names and charts returns applicable charts for each filter field. The backend will query database schema for all associated charts and check whether they contain columns that match the filter fields. The the frontend will use this information to disable any charts in the filter scope tree that do not match certain filter.

I prefer option (2) as I think that relates to the first (and preferred) solution proposed.

This is similar work we did before (but was reverted) https://github.com/apache/incubator-superset/pull/7888

https://github.com/apache/incubator-superset/issues/12148
dashboard native filter and cascading filter are available for testing!! thanks in advance for feedback, comments, and critics

Closing  this given that filters have been redesigned and many of these issues have been resolved.


Reply ussd error in multi steps

Dear,
I try to use ussd_service to send ussd code and reply to messages by many steps.
This lib looks like doesn't support the ussd reply feature.
It returns the error USSD_RETURN_FAILURE
Please support ussd reply feature.
Thank you so much!

Hello,
I will need more information to be able to help you. Could you explain more
in details what you have done?
And have you tried the example application as shown in
https://pub.dev/packages/ussd_service#-example-tab- ?
On Sun, Feb 23, 2020, 5:52 AM Bùi Gia Thịnh<EMAIL_ADDRESS>wrote:

Dear,
I try to use ussd_service to send ussd code and reply to messages by many
steps.
This lib looks like doesn't support the ussd reply feature.
It returns the error USSD_RETURN_FAILURE
Please support ussd reply feature.
Thank you so much!
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/vkammerer/ussd_service/issues/1?email_source=notifications&email_token=AAI7PC5JPINOLRQ4AMINKQLREFJ5DA5CNFSM4KZS3AF2YY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4IPPYFGQ,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAI7PC7JFLJKY3CBFQ2SYRDREFJ5DANCNFSM4KZS3AFQ
.

Thank you for your reply.
You can see the images, the first image I use the app call *101#  it shows the response message and waits for me to reply.
The 2nd image I test with your lib and it show the error.

I found the error when building the apk but the folder outputs/apk/release have app-release.apk
Here the log
$ flutter build apk
You are building a fat APK that includes binaries for android-arm,
android-arm64, android-x64.
If you are deploying the app to the Play Store, it's recommended to use app
bundles or split the APK to reduce the APK size.
    To generate an app bundle, run:
        flutter build appbundle --target-platform
        android-arm,android-arm64,android-x64
        Learn more on: https://developer.android.com/guide/app-bundle
    To split the APKs per ABI, run:
        flutter build apk --target-platform
        android-arm,android-arm64,android-x64 --split-per-abi
        Learn more on:
        https://developer.android.com/studio/build/configure-apk-splits#configur
        e-abi-split

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':sim_service:verifyReleaseResources'.
> A failure occurred while executing com.android.build.gradle.internal.tasks.Workers$ActionFacade
   > Android resource linking failed
     /Users/gith/.gradle/caches/transforms-2/files-2.1/7faf2ad74a0b9932e38d86e684646e95/core-1.0.0/res/values/values.xml:57:5-88:25: AAPT: error: resource android:attr/fontVariationSettings not found.

     /Users/gith/.gradle/caches/transforms-2/files-2.1/7faf2ad74a0b9932e38d86e684646e95/core-1.0.0/res/values/values.xml:57:5-88:25: AAPT: error: resource android:attr/ttcIndex not found.

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 7s
Running Gradle task 'assembleRelease'...
Running Gradle task 'assembleRelease'... Done                       7.6s
The built failed likely due to AndroidX incompatibilities in a plugin. The tool
is about to try using Jetfier to solve the incompatibility.
Building plugin permission_handler...
Running Gradle task 'assembleAarRelease'...
Running Gradle task 'assembleAarRelease'... Done                    1.6s

FAILURE: Build failed with an exception.

* What went wrong:
Task 'assembleAarRelease' not found in root project 'permission_handler'.

* Try:
Run gradlew tasks to get a list of available tasks. Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 1s

The plugin permission_handler could not be built due to the issue above.

Thank you for your reply, that helps a lot. I have never tested my plugin for an interactive / multi steps session, but I have been wondering wether it would work or not..
This plugin is only a wrapper over Android's sendUssdRequest , and it looks like it isn't handling well a multi session: as you can see at https://github.com/vkammerer/ussd_service/blob/master/android/src/main/java/com/vincentkammerer/ussd_service/UssdServicePlugin.java#L65 , the response you are getting from my plugin is only a propagation from Android's own response.
Are you able to make sure that the arguments you pass to makeRequest are correct? maybe with the following steps:

launch a debug session of the example app on your real device
set a breakpoint at https://github.com/vkammerer/ussd_service/blob/master/example/lib/main.dart#L40
and make sure that simData.cards.first.subscriptionId evaluates to an int and that _requestCode evaluates to a correct String

I added 2 fields in UI and it show the arguments are correct.
 dynamic _subscriptionId;
 dynamic _requestedCode;

 setState(() {
        _subscriptionId = simData.cards.first.subscriptionId;
        _requestedCode = _requestCode;
 });

 Text("\n_subscriptionId: ${_subscriptionId} type: ${_subscriptionId.runtimeType}"),
 Text("\n_requestedCode: ${_requestedCode} type: ${_requestedCode.runtimeType}"),

I used _subscriptionId.runtimeType to determine the type of variable and it shows the arguments are correct.

Ok thank you, your debugging steps help a lot. As far as I can see, it looks like Android's sendUssdRequest method doesn't handle well multi steps sessions, since the error code you are getting is returned only at https://github.com/vkammerer/ussd_service/blob/master/android/src/main/java/com/vincentkammerer/ussd_service/UssdServicePlugin.java#L65 .
I have done some googling in the meantime and can't find any official documentation explaining wether this is supported, but this thread is very interesting: https://androidforums.com/threads/how-to-use-api-27-telephony-manager-ussd-feature.1271192/ . According to comment #10, it looks like Android is executing the correct initial request but that it is incapable of interpreting the response as valid. And according to comment #13, it looks like setting all the parameters in the initial request can be a good solution: https://androidforums.com/threads/how-to-use-api-27-telephony-manager-ussd-feature.1271192/#post-7762499
So a potential solution could maybe be to execute the USSD request with all the parameters at once? Is that something that suit your use case? If yes, I guess that one first step could be to try it out in the call app first, and then to try it using my plugin.

@vkammerer thank you because of your links.
I try and founf the syntax ussd for multi steps like that firstCode2ndCode3rdCode4thCode*....#
Start with "" then code and * code .. and ẻm with "#"

Ok great, so your application is working like that?
On Sun, Feb 23, 2020, 11:45 AM Bùi Gia Thịnh<EMAIL_ADDRESS>wrote:

@vkammerer https://github.com/vkammerer thank you because of your links.
I try and founf the syntax ussd for multi steps like that firstCode
2ndCode3rdCode4thCode*..
..# Start with "" then code and * code .. and ẻm with "#"
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/vkammerer/ussd_service/issues/1?email_source=notifications&email_token=AAI7PC4XR2DGDCM3MJ7IDILREGTIDA5CNFSM4KZS3AF2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEMVMKZA#issuecomment-590005604,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAI7PC2AKSAR5WLRNHLZJYLREGTIDANCNFSM4KZS3AFQ
.

whether its silent USSD requests or not I won't mind, I want to make ussd request and get a response that works on both android and ios can you please please please help me?

does this plugin work for dual sim? i tried to use simData.cards.last.subscriptionId but it run only in SIM 1. any help? please.

@yonas1104 this plugin does not plan to implement a non silent way to make USSD requests so you may have to do some research to find out how to implement it on iOS.
@john-github-2020 I believe your issue applies to the sim_data so your question would ideally be asked in its repository. At first sight it seems that you make assumptions about the order of your cards in simData.cards but what you call SIM 1 may be the last in that list? I may be able to help more if you create an issue in the sim_data repo.

i am using the request code that needs a user confirmation , how can i passed this confirmation number by inputting appropriate value automatically

is there any way to display the result in alert dialog?

is there any way to display the result in alert dialog?

I guess you will handle It your self

i am using the request code that needs a user confirmation , how can i passed this confirmation number by inputting appropriate value automatically

i have the same probleme. do you find solution?

Ok thank you, your debugging steps help a lot. As far as I can see, it looks like Android's sendUssdRequest method doesn't handle well multi steps sessions, since the error code you are getting is returned only at https://github.com/vkammerer/ussd_service/blob/master/android/src/main/java/com/vincentkammerer/ussd_service/UssdServicePlugin.java#L65 .
I have done some googling in the meantime and can't find any official documentation explaining wether this is supported, but this thread is very interesting: https://androidforums.com/threads/how-to-use-api-27-telephony-manager-ussd-feature.1271192/ . According to comment #10, it looks like Android is executing the correct initial request but that it is incapable of interpreting the response as valid. And according to comment #13, it looks like setting all the parameters in the initial request can be a good solution: https://androidforums.com/threads/how-to-use-api-27-telephony-manager-ussd-feature.1271192/#post-7762499
So a potential solution could maybe be to execute the USSD request with all the parameters at once? Is that something that suit your use case? If yes, I guess that one first step could be to try it out in the call app first, and then to try it using my plugin.

hello! hope you are fine. do you find solution for the ussd multi step please?

I added 2 fields in UI and it show the arguments are correct.
 dynamic _subscriptionId;
 dynamic _requestedCode;

setState(() {
       _subscriptionId = simData.cards.first.subscriptionId;
       _requestedCode = _requestCode;
});

Text("\n_subscriptionId: ${_subscriptionId} type: ${_subscriptionId.runtimeType}"),
Text("\n_requestedCode: ${_requestedCode} type: ${_requestedCode.runtimeType}"),

I used _subscriptionId.runtimeType to determine the type of variable and it shows the arguments are correct.

hello! hope you are fine. do you find solution for the ussd multi step please?


chore(deps): updates

🧰 Changes
Updates dependencies and addresses some lint and style changes.
Okay, I've been ignoring updating packages for awhile, and it's come back to haunt me. This includes a bunch of updates as a result.

some small lint and style changes
puppeteer seems to be doing something funcky with icons, looks fine locally
can't get one visual test to pass at the moment
trim is supported now
we were building the bundles with an old node version

🧬 QA & Testing

Broken on production.
Working in this PR app.

This PR was released!
🚀 Changes included in v6.74.3


WIP: Generate null-safe Java code

coverage: 89.598% (-1.2%) from 90.778%
when pulling 848b6c54c12bf3992605aa1cfdf439fbd2b7bca5 on jnull
into 2ff68a9c9edfe6df3673026b397a36f427fc0b99 on main.


Migrate to Swift 3

After this is merged to master, the plan is to tag 2.0.0. Going forward, future development will likely be for Swift 3 unless there's a compelling reason to backport the change to Swift 2.

It's a bummer that CocoaPods 1.1.0 (which adds support for Xcode 8) is still in rc. I think it's probably fine to merge this to master anyway.


Forward rel/7.0 to rel/7.1

Forward from rel/7.0 to rel/7.1

@ironman-machine r+

Hello @nicolas2bert
"r+": Success

This pull request isn't mergeable:
CONFLICT (content): Merge conflict in package.json

@alexanderchan-scality, just wondering why has it never been merged?


Token isn't passed in the Donor Portal

Is your feature request related to a problem? Please describe.
Some requests that require the token to be passed don't seem to pass the token in request headers.
Describe the solution you'd like
Check Admin-portal Asgardeo config and append the token to donor portal requests.

aidpackages/{packageId} request fails with status 404 in the donor portal as it's an admin API, unless security is turned of from Choreo?

I don't notice any difference between the donor & admin portals. Hope @anjula-sack can take a look into this and try to find any difference.


SESSION_DOMAIN changes the domain for all cokkies

Laravel Version
11.27.2
PHP Version
8.3.12
Database Driver & Version
SQLite 3.43.2
Description
I'm trying to share the session between subdomains, and one of the step is to change SESSION_DOMAIN. This has also the effect to set the domain for the XSRF-TOKEN cookie too, which I think it's wrong.
Steps To Reproduce
To replicate the issue follow these steps:

create a brand new Laravel app with laravel new example and choose to add Breeze
change SESSION_DOMAIN=null to SESSION_DOMAIN=".test" in your .env file (Im using Herd, which is why the domain is .test)
add a new user

php artisan tinker
User::factory()->create(['email' => 'test@example.com']);

go to http://example.test/login and enter the following credentials

Email<EMAIL_ADDRESS>Password: password

click on Login

If you inspect the request you will see that the response's headers contain a Set-Cookie instruction for the XSRF-TOKEN cookie with a domain of .test.

The CSRF token is tied to your session, so if you're sharing a session across subdomains, I'm pretty sure the same CSRF token will apply on both too.
Do you use the XSRF-TOKEN cookie? It might be an option to just disable that if you don't want it shared.

Hi there,
Thanks for reporting the problem you are encountering, but it looks like this is a question which may be better suited for a support channel. We only use this issue tracker for reporting bugs with the library itself. If you have a question on how to use functionality provided by this repository you can try one of the following channels:

Laracasts Forums
Laravel.io Forums
StackOverflow
Discord
Larachat
IRC

However, this issue will not be locked and everyone is still free to discuss solutions to your problem!
Thanks.


Upstream RN macOS Hermes integration bits

Summary
Microsoft’s RN for macOS fork supports the Hermes engine nowadays https://github.com/microsoft/react-native-macos/pull/473. As a longer term work item, we’ve started moving bits that are not invasive for iOS but are a maintenance burden on us—mostly when merging—upstream. Seeing as this one is a recent addition, it seemed like a good candidate to start with.
As to the actual changes, these include:

Sharing Android’s Hermes executor with the objc side of the codebase.
Adding a CocoaPods subspec to build the Hermes inspector source and its dependencies (Folly/Futures, libevent).
Adding the bits to the Xcode build phase script that creates the JS bundle for release builds to compile Hermes bytecode and source-maps…
…coincidentally it turns out that the Xcode build phase script did not by default output source-maps for iOS, which is now fixed too.

All of the Hermes bits are automatically enabled, on macOS, when providing the hermes-engine-darwin npm package and enabling the Hermes pods.
Changelog
[General] [Added] - Upstream RN macOS Hermes integration bits
Test Plan
Building RNTester for iOS and Android still works as before.
To test the actual changes themselves, you’ll have to use the macOS target in RNTester in the macOS fork, or create a new application from master:

@appden Can you give this a review? 🙏


Open files from Google Drive

The HXL Proxy's URL munging currently works only for Google Sheets, not for actual binary files hosted on Google Drive (e.g. CSV, XLSX).
Originally reported by @macarans in https://humanitarian.atlassian.net/browse/HDX-5944

Links of the form below (created when sharing xls from Google Drive) do not work in QuickCharts or data check:
https://drive.google.com/open?id=1Dc3nkxPKjBTFtYTDR490ZjXZtP46yF9g
https://drive.google.com/file/d/1Dc3nkxPKjBTFtYTDR490ZjXZtP46yF9g/view?usp=sharing
They need to be converted into this form: https://drive.google.com/uc?authuser=0&id=1Dc3nkxPKjBTFtYTDR490ZjXZtP46yF9g&export=download

From chat with Dan:
The use case is this. Elliot created a dataset on Google Drive and then shared the link to it to me - I can imagine that it might be a use case other humanitarians could use
Although there is a download button, you cannot get the url behind it in Chrome eg. see: https://drive.google.com/file/d/1Dc3nkxPKjBTFtYTDR490ZjXZtP46yF9g/view?usp=sharing
This means the downloadable link is not easily shareable.

Agreed. If this becomes a high priority (e.g. because a key HDX user needs it), we can hotfix earlier; otherwise, it will be in the 4.9 release on 29 June.

The "open" link will be problematic, because it can redirect to anything (not just a file download). In release 4.8, libhxl is assuming that it will always redirect to a Google Sheet, but we're going to actually have to get the redirect URL from Google.

Hotfix/interim release requested.

Check for redirects with Google Drive "open" URLs. Munge Google Drive "file" URLs to get a direct download link.

Original problem link now opening in beta Proxy: https://beta.proxy.hxlstandard.org/data?url=https%3A%2F%2Fdrive.google.com%2Fopen%3Fid%3D1Dc3nkxPKjBTFtYTDR490ZjXZtP46yF9g


Document that the sum in the examples is a parallel reduction

Ping @marmistrz, did you get another chance to look?  If we don't hear from you, I may try to reword this myself in a new PR.


Usage of deprecated \TYPO3\Flow\Package\PackageManager::getPackageByClassName

https://github.com/neos/Neos.Cqrs/blob/master/Classes/EventStore/StreamNameResolver.php#L56
https://github.com/neos/Neos.Cqrs/blob/master/Classes/Projection/ProjectionManager.php#L235

Closing as duplicate of #86


Migrate recipe generation and calculations fns to .cljc

Is your feature request related to a problem? Please describe.
N/A
Describe the solution you'd like
Currently, all code is bundled as .cljs files, which is great for working on the UI; however, it locks the code in somewhat. If this code was migrated to .cljc, the core functionality of brew-bot could be deployed to clojars for others to use while still making it accessible to the UI.
Describe alternatives you've considered
The alternative is creating a separate repository, deploying that, and including it as a dependency here; however, since the UI is tightly coupled to that code, it doesn't make much sense.
Additional context
This is a nice-to-have that may lead into config hell.

Fixed by: https://github.com/nnichols/brew-bot/pull/16


Infer Pipelines Project and repo-name from Pre-defined variables

fixes https://github.com/microsoft/coe-starter-kit/issues/3538
The assumptions stated in the comment shown below turns out to be false. There is no issue when using $(System.TeamProject) as the value is correct when the pipeline run. Even if the pipeline repo is located in the different project than the target repository of the solution, the pipeline still executes the pipeline-yaml from the selected pipelines-repo. In other words: the magic repository resource self in this pipeline will always be the pipelineProject/pipeline-repo, therefore $(System.TeamProject) will yield the correct project name.
https://github.com/microsoft/coe-alm-accelerator-templates/blob/db8ca5df01275cb366807d030b91d722de46cf07/Pipelines/Templates/update-deployment-settings.yml#L23-L30

Hey @fredrikhr thanks again for all of the feedback and for working with us on this. The code in question here is for a specific setup of the pipelines whereby

The pipeline templates live in a project / repo of their own.
The export pipeline and all of the other pipelines are running in a separate project but pointing to the YAML in the 1st repo.

In this setup System.TeamProject is always the repo in which the pipelines are running and not the template pipeline project.
However, in a standard setup where everything lives in the same project this isn't an issue and using System.TeamProject is fine. It's also fine if you have the export pipeline running in the same repo as the templates.
So, there are 3 scenarios

Templates and pipelines all running in a single project (foo). System.TeamProject = foo. This is good
Templates and the export pipeline all running in the same project (foo), but solutions stored in a separate project (bar). System.TeamProject = foo. Also good
Templates are in a single project (foo). Export Pipeline running in another project (bar). System.TeamProject = bar. This will fail when the branch and the deployment pipelines are generated.

I've tested the update you submitted in my environment with setup number 3 and it does fail to generate the deployment pipelines due to the incorrect pipeline project

All that being said. I do understand the underlying issue of the legacy url causing problems with the latest released pipelines so if possible we should try to fix that in the context of what was released to provide the flexibility we introduced for the different project configurations.

Ah! Okay thanks for the explanation, I'll amend the PR so that the extra scenario you describe also works with legacy style DevOps URLs

@mikefactorial okay, so I concluded that actually parsing the Repo URI is not needed, we want values for Project and Repo and we get those reliably from $(System.TeamProject) and $(Build.Repository.Name).
After that we use the provided override variables if they are defined.

@fredrikhr thanks for the updates. Agree with where you landed on this. I've created a new PR #220 based on this PR in order to run our integration tests which require an internal contributor to author the PR. Closing this out will follow on #220 if necessary.

@fredrikhr reviewed this internally and we have clients who are relying on the existing functionality to parse the url that can't be forced into using the overrides via the pipeline variables. So, the url parsing will need to remain. I've created a new PR that I believe should work for the legacy url and new url format if you can help verify the change.
https://github.com/microsoft/coe-alm-accelerator-templates/pull/227
The PR assumes that the format of $(Build.Repository.Uri) are
Current URL<EMAIL_ADDRESS>Legacy URL: https://[ORGNAME].visualstudio.com/[PROJECTNAME]/_git/[REPONAME]
Unfortunately, it's difficult for us to test the legacy urls internally since we don't have any available environments using the legacy url. I
If you could assist with validating what we've been able to glean from the docs that would be much appreciated.
@jenschristianschroder for visibility.


Send merge commit flag

Adds the MERGE_COMMIT flag for merge commits on the DevInfo bulk push operation.
fixes: #345

I haven't writen tests for this change and I really appreciate some help on that area :-)
My changes are 100% based on documentation about probot and GitHub Api.
Those are the assumptions I've made:

github.repos.getCommit returns a promise wrapping an object of type GitGetCommitResponse
the list of parents obtained by the parents properties returns an array of the commit's parents
a commit with 2 parents is a merge commit

Hey @felipe-gdr. Just started looking into your PR. Will update you shortly.

Hey @felipe-gdr. Thanks for this PR. I've made some additions to your work (but from your branch so you'll still get the cred) and opened a new PR.. Going to close this one out. My team will merge mine in over the next few days and you should see your changes in prod next week.

Thanks @rachellerathbone !


feat: enhance API to inject specific tracer instance into

Currently java-jdbc only supports tracer instance distribution through static GlobalTracer mechanism.
To support distribution by injection API has been enhanced. In case no tracer is injected backward compatibility is kept by fallback to GlobalTracer.get().
This allows to write unittests, for java-jdbc and components that use this lib, without usage of reflection to reset GlobalTracer registration.
Furthermore it allows to use this integration lib within software where GlobalTracer.get() can't be used.
(limitation: the component has to have access to connection creation code)

Pull Request Test Coverage Report for Build 64

32 of 50 (64.0%)  changed or added relevant lines in 5 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+1.07%) to 24.309%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

src/main/java/io/opentracing/contrib/jdbc/JdbcTracingUtils.java
17
19
89.47%

src/main/java/io/opentracing/contrib/jdbc/TracingCallableStatement.java
0
3
0.0%

src/main/java/io/opentracing/contrib/jdbc/TracingPreparedStatement.java
3
6
50.0%

src/main/java/io/opentracing/contrib/jdbc/TracingStatement.java
7
17
41.18%

Totals

Change from base Build 63:
1.07%

Covered Lines:
132

Relevant Lines:
543

💛  - Coveralls


Problem

Hello. Is the script not working at the moment? can't login to download from s3
Anyway I get 403 error
And how I can download directory?

Hi! I think the script is working for other people but you haven't really given enough information to be able to give you any help.
s3simple is deliberately very simple and doesn't handle extra features like downloading a directory. I'd suggest using the AWS CLI if you want something that downloads a directory.
I'm going to close this issue because I don't know what else to do. If you have more information on your error feel free to reopen it with more details.


Error while Creating new component

i got an error while creating a new component using ng g component
W
D:\vega\ClientApp\app\components>ng g component newform

installing component
Error locating module for declaration
SilentError: No module files found

It's looking for app.module.ts and you've renamed the file.

i got the same situation, use command "dotnet new angular" reference from Hanselman (https://www.hanselman.com/blog/dotnetNewAngularAndDotnetNewReact.aspx), whatever macOS or Windows, default to split into three module like @dani32112 post picture(client, server and shared), if i add typescript file(app.module.ts), the command "ng g c newComponent" will success

AngularCLI has support for multiple apps in angular-cli.json. You might want to use that instead. You can then use the --app argument while using the ng command.

The suggestion for multiple apps is a good one by @grizzm0.
For the short-term you can use --skip-import which will prevent the CLI for looking for the closest module. Or you can specify which module you would like to import into by using --module.
Both of those options are documented here.


Remove orca as URL is 410 (Gone). Fixes #459

Moved it to https://r15ch13.keybase.pub/scoop/orca/Orca.Msi
Add this notes:
"notes": "Orca is now part of Windows SDK. https://developer.microsoft.com/en-us/windows/downloads/windows-10-sdk"


Configurable max network

As of now Matter only supports one network. The aim of the PR is to make the max network value configurable. This will unlock tests that need more that 1 networks testing removing networks, reordering networks and connecting to a different network.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

This is an old PR with changes requested. Assuming stale and closing.

This is an old PR with changes requested. Assuming stale and closing.

@andy31415 The change will help to unblock a couple of test that require 4 networks to be stored. Happy to open it again, feel like a good change to have to unblock a couple of tests and switch between networks.

@Kshitijjain21 this change has not been updated for many months and has a status of "changes requested" from Boris.
What is the current state for it? Is it reviewable/workable? Are you able to actively maintain it and see it go through? If so, we can re-open.

@Kshitijjain21 this change has not been updated for many months and has a status of "changes requested" from Boris. What is the current state for it? Is it reviewable/workable? Are you able to actively maintain it and see it go through? If so, we can re-open.

Apologies about keeping this change in PR for long. I  will reopen this again and actively monitor it to see it go through. I checked the changes with the resent master and it's in workable state.


Build Swift 5.1 Release on Docker amazonlinux:2018.03

Provide a Docker file to build Swift 5.1 on Docker amazonlinux:2018.03
The AWS Lambda Custom Runtime for Swift should be built on Docker amazonlinux:2018.03, the current solution uses the Swift docker images based on Ubuntu.
Solving this could help to:

Reduce AWS Lambda Custom Runtime for Swift size
Could solve the HTTPS issue with the CURL library
Improve the debugging
Improve the deployment

The solution is a fix to this broken Dockerfile:
Dockerfile:
FROM amazonlinux:2018.03 as builder

RUN yum update && yum -y group install "development tools" && \
    yum -y install ninja-build clang python \
    libuuid-devel libicu-devel libicu-devel libstdc++-devel \
    libedit-devel libxml2-devel sqlite-devel swig python26-devel ncurses-devel \
    pkgconfig openssl-devel systemtap-sdt-devel tzdata rsync git wget

#cmake
WORKDIR /tmp
RUN wget https://cmake.org/files/v3.15/cmake-3.15.0.tar.gz
RUN tar -xvf cmake-3.15.0.tar.gz
WORKDIR /tmp/cmake-3.15.0
RUN ./bootstrap
RUN make
RUN make install

RUN mkdir /swift-source
WORKDIR /swift-source
RUN git clone https://github.com/apple/swift.git
RUN ./swift/utils/update-checkout --clone
RUN ./swift/utils/update-checkout --tag swift-5.1-RELEASE
RUN ./swift/utils/build-script --preset=buildbot_linux installable_package=$ROOT_DIR/swift-package.tar.gz install_destdir=/tmp/swift

Pull request details
The Docker file must be under the path docker/amazonlinux-2018.03

I made some progress with this but did not get there:
I've added inline comments to explain the changes. But this still fails because of having a too old version of libstdc++.
FROM amazonlinux:2018.03 as builder

RUN yum -y update # need -y for this to complete unattended
RUN yum -y group install "development tools"
RUN yum -y install ninja-build clang python \
    libuuid-devel libicu-devel libicu-devel libstdc++-devel \
    libedit-devel libxml2-devel sqlite-devel swig python26-devel ncurses-devel \
    pkgconfig openssl-devel systemtap-sdt-devel tzdata rsync git wget

#cmake
WORKDIR /tmp
RUN wget https://cmake.org/files/v3.15/cmake-3.15.0.tar.gz
RUN tar -xvf cmake-3.15.0.tar.gz
WORKDIR /tmp/cmake-3.15.0
RUN ./bootstrap
RUN make
RUN make install

RUN mkdir /swift-source
WORKDIR /swift-source
RUN git clone https://github.com/apple/swift.git
RUN ./swift/utils/update-checkout --clone
#RUN ./swift/utils/update-checkout --tag swift-5.1-RELEASE # will not build, since needs the following commit to build: https://github.com/apple/swift/commit/91e0db40b62069d7e4c98ac06a9f172951b4eb5e
RUN ./swift/utils/update-checkout --tag swift-DEVELOPMENT-SNAPSHOT-2019-11-29-a
RUN ./swift/utils/build-script --preset=buildbot_linux installable_package=$ROOT_DIR/swift-package.tar.gz install_destdir=/tmp/swift

@algal I feel your pain in trying to compile on 2018.3. I made it as far as you did. But since the world seems to be great Swift libraries compiled on Amazon Linux 2 also run on 2018.3.
https://forums.swift.org/t/aws-lambda-runtime-api/18498/37?u=fabianfett

Refer to Swift forums for more info on linux distribution support and the support for Amazon Linux2: https://forums.swift.org/t/official-platform-support-for-other-linux-distributions-and-a-case-for-amazon-linux-2/33167
@fabianfett thanks for putting forward the case, feel free to add PR to an experimental branch with your amazon linux 2 docker, hopefully your approach in building Amazon Linux 2 will be officially supported.

There is an official version of amazonlinux2.
docker pull swiftlang/swift:nightly-amazonlinux2


Cannot read property 'startTime' of undefined

Not sure how this happens (running out of sources). I had 2 windows open right on startup, the second window had an untitled file and I quickly clicked on the close button of the second window after it opened:
index.js:41 TypeError: Cannot read property 'startTime' of undefined
    at TimerService._computeStartupMetrics (/Users/bpasero/Development/monaco/out/vs/workbench/services/timer/node/timerService.js:84)
    at TimerService.get [as startupMetrics] (/Users/bpasero/Development/monaco/out/vs/workbench/services/timer/node/timerService.js:19)
    at /Users/bpasero/Development/monaco/out/vs/workbench/electron-browser/shell.js:126
    at Promise_ctor.CompletePromise_done [as done] (/Users/bpasero/Development/monaco/out/vs/base/common/winjs.base.raw.js:1524)
    at Object.notifySuccess [as _notify] (/Users/bpasero/Development/monaco/out/vs/base/common/winjs.base.raw.js:1180)
    at Object.enter (/Users/bpasero/Development/monaco/out/vs/base/common/winjs.base.raw.js:852)
    at Promise_ctor._run (/Users/bpasero/Development/monaco/out/vs/base/common/winjs.base.raw.js:1068)
    at Promise_ctor._completed (/Users/bpasero/Development/monaco/out/vs/base/common/winjs.base.raw.js:1036)
    at Barrier.open (/Users/bpasero/Development/monaco/out/vs/base/common/async.js:260)
    at /Users/bpasero/Development/monaco/out/vs/workbench/services/extensions/electron-browser/extensionService.js:332

Yes, reproduces when having more than 1 window being restored

Verified in code


Test Bug 92

Salesforce Extension Version in VS Code: 60.13.0
Salesforce CLI Version: @salesforce/cli/2.42.6 darwin-arm64 node-v18.18.2
OS and version: elephant
VS Code version: elephant
Most recent version of the extensions where this was working: elephant

Hello @daphne-sfdc :wave: It looks like you didn't provide all the required basic info in your issue.
If you haven't already, please provide the following info:
Salesforce Extension Version in VS Code:
Salesforce CLI Version:
OS and version:
VS Code version:
Most recent version of the extensions where this was working:
A few more things to check:

Make sure you've provided detailed steps to reproduce your issue, as well as all error messages that you see.

A repository that clearly demonstrates the bug is ideal.
Error messages can be found in the Problems Tab, Output Tab, and from running Developer: Toggle Developer Tools in the command palette.

Make sure you've installed the latest version of the Salesforce Extension Pack for VSCode. (docs)
Search GitHub for existing related issues.

Thank you!

Thank you for filing this issue.  We appreciate your feedback and will review the issue as soon as possible. Remember, however, that GitHub isn't a mechanism for receiving support under any agreement or SLA. If you require immediate assistance, contact Salesforce Customer Support.

VS Code version: 1.89.1


libcompose + service discovery integration

publish DNS server address for each network so that deploy can query it
minor bug fixes
start/stop script changes

minor nit; LGTM otherwise


Added information about Data Compaction

Referenced the Microsoft blog post annoucing it: https://blog.fabric.microsoft.com/en-US/blog/announcing-automatic-data-compaction-for-fabric-warehouse/
I added the blog post to the reference section, but not sure if that is allowed in the documentation style.
Thank you for contributing to Microsoft Fabric documentation
Fill out these items before submitting your pull request:
If you are working internally at Microsoft:
Provide a link to an Azure DevOps Boards work item that tracks this feature/update.

Who is your primary Skilling team contact? @mention them individually tag them and let them review the PR before signing off.

For internal Microsoft contributors, check off these quality control items as you go

[ ] 1. Check the Acrolinx report: Make sure your Acrolinx Total score is above 80 minimum (higher is better) and with no spelling issues. Acrolinx ensures we are providing consistent terminology and using an appropriate voice and tone, and helps with localization.

[ ] 2. Successful build with no warnings or suggestions: Review the build status to make sure all files are green (Succeeded).

[ ] 3. Preview the pages:: Click each Preview URL link to view the rendered HTML pages on the review.learn.microsoft.com site to check the formatting and alignment of the page. Scan the page for overall formatting, and look at the parts you edited in detail.

[ ] 4. Check the Table of Contents: If you are adding a new markdown file, make sure it is linked from the table of contents.

[ ] 5. #sign-off to request PR review and merge: Once the pull request is finalized and ready to be merged, indicate so by typing #sign-off in a new comment in the Pull Request. If you need to cancel that sign-off, type #hold-off instead. Signing off means the document can be published at any time. Note, this is a formatting and standards review, not a technical review.

Merge and publish

After you #sign-off, there is a separate PR Review team that will review the PR and describe any necessary feedback before merging.
The review team will use the comments section in the PR to provide feedback if changes are needed. Address any blocking issues and sign off again to request another review.
Once all feedback is resolved, you can #sign-off again. The PR Review team reviews and merges the pull request into the specified branch (usually the main branch or a release- branch).
From the main branch, the change is merged into the live branch several times a day to publish it to the public learn.microsoft.com site.

Thanks @WilliamDAssafMSFT for your expertise in the edits! I think I accepted all the changes. Let me know if I missed something.

#sign-off

#sign-off


Copying referenced assets in prebuild packages

Say I have a component called Foo build with a webpack.foo.config.js. Foo requires an image bar.png like this:
import React, { Component } from 'react';
const barSrc = require('./bar.png');

export class FooComponent extends Component {
  render() {
    return ;
  }
}

It is build and distributed as an UMD.  The build file contains a line like this one:
module.exports = __webpack_require__.p + "bar-dedb2001bd73bbda648ec8c4e0cb8a1a.png";

Now I have a project called CoolApp. It requires Foo like this:
import { FooComponent } from 'foo-component';

It works totally fine. My project CoolApp generates an  however it can't find the image, because it isn't copy to my output folder. Can this be accomplished somehow without manually copying all assets in my dependencies?

This is a super hacky plugin, but works for now (it is probably very slow - can I get the content of fileDependencies without reading them myself?):
import path from 'path';
import fs from 'fs-extra-promise';
import log from 'npmlog';

const publicPathMatcher = /__webpack_require__.p = "(.+)"/;
const assetExportMatcher = /module.exports = __webpack_require__.p \+ ".+?";/g;
const assetPathMatcher = /__webpack_require__.p \+ "(.+)"/;

function CopyAssetsPlugin() {}

CopyAssetsPlugin.prototype.apply = function(compiler) {
  compiler.plugin('emit', async (compilation, callback) => {
    try {
      for (const fileDependency of compilation.fileDependencies) {
        const fileData = await fs.readFileAsync(fileDependency, 'utf8');
        if (fileData.includes('webpackUniversalModuleDefinition')) {
          // found webpack UMD build
          const publicPathMatches = fileData.match(publicPathMatcher);
          let publicPath = '';
          if (publicPathMatches) {
            // found public path
            publicPath = publicPathMatches[1];
          }

          const assetExportMatches = fileData.match(assetExportMatcher);
          if (assetExportMatches) {
            // found asset exports
            for (const assetExportMatch of assetExportMatches) {
              const assetPathMatches = assetExportMatch.match(assetPathMatcher);
              if (assetPathMatches) {
                const relAssetPath = path.join(publicPath, assetPathMatches[1]);
                const absAssetPath = path.join(path.dirname(fileDependency), publicPath, assetPathMatches[1]);
                const assetData = await fs.readFileAsync(absAssetPath);
                const assetStat = await fs.statAsync(absAssetPath);
                compilation.assets[relAssetPath] = {
                  source: () => assetData,
                  size: () => assetStat.size
                };
              }
            }
          }
        }
      }
    } catch (err) {
      log.error('copy-assets-plugin', err);
    }

    callback();
  });
};

export { CopyAssetsPlugin };

Logic:

check if an fileDependency is a UMD build by webpack
check if UMD uses assets
copy found assets

Anyway... if you actually control the components which are generated as an UMD it would be better to expose an assets.json or something like that to copy over all assets.


domain configuration does not support video model 'virtio' on ARM64

What happened:
The virtual machine fails to start. The virt-launcher pod log is displayed as follows
2022-12-02 {"component":"virt-launcher","level":"error","msg":"unsupported configuration: domain configuration does not support video model 'virtio'","pos":"qemuValidateDomainDeviceDefVideo:2471","subcomponent":"libvirt","thread":"29","timestamp":"2022-12-02T08:55:04.288000Z"}
2022-12-02 {"component":"virt-launcher","kind":"","level":"error","msg":"Defining the VirtualMachineInstance failed.","name":"armvm","namespace":"guojing-arm","pos":"libvirt_helper.go:133","reason":"virError(Code=67, Domain=10, Message='unsupported configuration: domain configuration does not support video model 'virtio'')","timestamp":"2022-12-02T08:55:04.288852Z","uid":"4a648f44-d009-42cc-93cd-71356410f6d4"}
2022-12-02 {"component":"virt-launcher","kind":"","level":"error","msg":"Failed to sync vmi","name":"armvm","namespace":"guojing-arm","pos":"server.go:184","reason":"virError(Code=67, Domain=10, Message='unsupported configuration: domain configuration does not support video model 'virtio'')","timestamp":"2022-12-02T08:55:04.288885Z","uid":"4a648f44-d009-42cc-93cd-71356410f6d4"}

What you expected to happen:
The VM can be started and connected to using vnc.
How to reproduce it (as minimally and precisely as possible):
My VM spec yaml is
spec:
  dataVolumeTemplates:
    - metadata:
        creationTimestamp: null
        name: armvm-rootfs
      spec:
        pvc:
          accessModes:
            - ReadWriteOnce
          resources:
            requests:
              storage: 20Gi
          storageClassName: arm-vm-topo
          volumeMode: Block
        source:
          registry:
            url: docker://<IP_ADDRESS>:11443/3rdparty/vmdisks/centos:7.9
  running: true
  template:
    metadata:
      creationTimestamp: null
    spec:
      domain:
        devices:
          disks:
            - disk:
                bus: virtio
              name: rootfs
            - disk:
                bus: virtio
              name: cloudinitdisk
          interfaces:
            - bridge: {}
              name: default
        machine:
          type: virt
        resources:
          limits:
            cpu: "1"
            memory: 2Gi
          requests:
            cpu: "1"
            memory: 2Gi
      networks:
        - name: default
          pod: {}
      nodeSelector:
        kubernetes.io/arch: arm64
      volumes:
        - dataVolume:
            name: armvm-rootfs
          name: rootfs
        - cloudInitNoCloud:
            networkData: |-
              network:
                version: 1
                config:
                  - type: physical
                    name: eth0
                    subnets:
                      - type: dhcp
                  - type: physical
                    name: enp1s0
                    subnets:
                      - type: dhcp
            userData: >-
              #cloud-config

              disable_root: false

              ssh_pwauth: true

              users:
                - default
                - name: root
                  lock_passwd: false
                  hashed_passwd: $6$u47cgg1a$vjJPYxCGeH6mJe2YGG3h78iJH4q6c.VEBcuLpDmpNjuE7/IIxZGveO6.faEBufo0gDSgfWyHU4bqKefjM0Bz91
          name: cloudinitdisk

Additional context:
We can start VMs normally in other ARM physical machine environments, but this environment is the only one that has problems.
Environment:

KubeVirt version (use virtctl version): v0.53.1
Kubernetes version (use kubectl version): v1.23.13
VM or VMI specifications:
It has been provided above.
Cloud provider or hardware configuration:
CPU: 96core  Memery: 512G
OS (e.g. from /etc/os-release):

cat /etc/os-release
PRETTY_NAME="UnionTech OS Server 20 Enterprise"
NAME="UnionTech OS Server 20 Enterprise"
VERSION_ID="20"
VERSION="20"
ID=UOS
HOME_URL="https://www.chinauos.com/"
BUG_REPORT_URL="http://bbs.chinauos.com"
VERSION_CODENAME=fou

Kernel (e.g. uname -a):

Linux arm-60 4.19.0-arm64-server #3017 SMP Thu Nov 12 19:54:04 CST 2020 aarch64 GNU/Linux

Install tools: N/A
Others: N/A

https://github.com/kubevirt/kubevirt/blob/release-0.53/pkg/virt-launcher/virtwrap/converter/converter.go#L1767
Looking through the code, I found that when it is ARM, the disk mode of video is fixed as virtio, but now I am prompted not to support it. So what might be causing the problem?

The vm domain XML is:
<domain type=\"kvm\" xmlns:qemu=\"http://libvirt.org/schemas/domain/qemu/1.0\">
	<name>guojing-arm_armvm</name>
	<memory unit=\"b\">2147483648</memory>
	<os>
		<type arch=\"aarch64\" machine=\"virt\">hvm</type>
		<loader readonly=\"yes\" secure=\"no\" type=\"pflash\">/usr/share/AAVMF/AAVMF_CODE.fd</loader>
		<nvram template=\"/usr/share/AAVMF/AAVMF_VARS.fd\">/tmp/guojing-arm_armvm</nvram>
	</os>
	<sysinfo type=\"smbios\">
		<system>
			<entry name=\"uuid\">e9735fab-eae1-54ea-baf2-b5172bafda6d</entry>
			<entry name=\"manufacturer\">KubeVirt</entry>
			<entry name=\"family\">KubeVirt</entry>
			<entry name=\"product\">None</entry>
			<entry name=\"sku\"></entry>
			<entry name=\"version\"></entry>
		</system>
		<bios></bios>
		<baseBoard></baseBoard>
		<chassis></chassis>
	</sysinfo>
	<devices>
		<interface type=\"ethernet\">
			<source></source>
			<target dev=\"tap0\" managed=\"no\"></target>
			<model type=\"virtio-non-transitional\"></model>
			<mac address=\"00:00:00:f8:9d:21\"></mac>
			<mtu size=\"1500\"></mtu>
			<alias name=\"ua-default\"></alias>
			<rom enabled=\"no\"></rom>
		</interface>
		<channel type=\"unix\">
			<target name=\"org.qemu.guest_agent.0\" type=\"virtio\"></target>
		</channel>
		<controller type=\"usb\" index=\"0\" model=\"qemu-xhci\"></controller>
		<controller type=\"scsi\" index=\"0\" model=\"virtio-non-transitional\"></controller>
		<controller type=\"virtio-serial\" index=\"0\" model=\"virtio-non-transitional\"></controller>
		<video>
			<model type=\"virtio\" heads=\"1\"></model>
		</video>
		<graphics type=\"vnc\">
			<listen type=\"socket\" socket=\"/var/run/kubevirt-private/6168584e-19c8-4961-9043-40d25838f2cc/virt-vnc\"></listen>
		</graphics>
		<memballoon model=\"virtio-non-transitional\">
			<stats period=\"10\"></stats>
		</memballoon>
		<disk device=\"disk\" type=\"block\" model=\"virtio-non-transitional\">
			<source dev=\"/dev/rootfs\" name=\"rootfs\"></source>
			<target bus=\"virtio\" dev=\"vda\"></target>
			<driver cache=\"none\" error_policy=\"stop\" io=\"native\" name=\"qemu\" type=\"raw\"></driver>
			<alias name=\"ua-rootfs\"></alias>
			<filesystemOverhead>0.055</filesystemOverhead>
			<capacity>21474836480</capacity>
			<expandDisksEnabled>true</expandDisksEnabled>
		</disk>
		<disk device=\"disk\" type=\"file\" model=\"virtio-non-transitional\">
			<source file=\"/var/run/kubevirt-ephemeral-disks/cloud-init-data/guojing-arm/armvm/noCloud.iso\"></source>
			<target bus=\"virtio\" dev=\"vdb\"></target>
			<driver cache=\"none\" error_policy=\"stop\" name=\"qemu\" type=\"raw\" discard=\"unmap\"></driver>
			<alias name=\"ua-cloudinitdisk\"></alias>
			<expandDisksEnabled>true</expandDisksEnabled>
		</disk>
		<input type=\"tablet\" bus=\"usb\"></input>
		<input type=\"keyboard\" bus=\"usb\"></input>
		<serial type=\"unix\">
			<target port=\"0\"></target>
			<source mode=\"bind\" path=\"/var/run/kubevirt-private/6168584e-19c8-4961-9043-40d25838f2cc/virt-serial0\"></source>
		</serial>
		<console type=\"pty\">
			<target type=\"serial\" port=\"0\"></target>
		</console>
	</devices>
	<metadata>
		<kubevirt xmlns=\"http://kubevirt.io\">
			<uid>6168584e-19c8-4961-9043-40d25838f2cc</uid>
			<graceperiod>
				<deletionGracePeriodSeconds>30</deletionGracePeriodSeconds>
			</graceperiod>
		</kubevirt>
	</metadata>
	<features>
		<acpi></acpi>
	</features>
	<cpu mode=\"host-passthrough\">
		<topology sockets=\"1\" cores=\"1\" threads=\"1\"></topology>
	</cpu>
	<vcpu placement=\"static\">1</vcpu>
	<iothreads>1</iothreads>
</domain>"

Now suspect that the virtual machine cannot start must be caused by the host machine, but not sure what is related to.

virsh version
Authorization not available. Check if polkit service is running or see debug message for more information.
Compiled against library: libvirt 8.0.0
Using library: libvirt 8.0.0
Using API: QEMU 8.0.0
Running hypervisor: QEMU 6.2.0

Hi @zhhray
The issue supposed to solve by following PRs
https://github.com/kubevirt/kubevirt/pull/8825
https://github.com/kubevirt/kubevirt/pull/8712
As these two PRs have merged, you can re-deploy kubevirt cluster based on latest kubevirt source code, your issue should be fixed.

Hi @zhhray The issue is supposed to be solved by following PRs #8825 #8712
As these two PRs have merged, you can re-deploy kubevirt cluster based on latest kubevirt source code, your issue should be fixed.

Thanks very much for your reply. I saw that your pr is still in the alpha version. When is it estimated to be released?

@xpivarc Do you have any idea?

The next kubevirt release should follow wiki release schedule:
https://github.com/kubevirt/kubevirt/wiki/Release-v0.59


Travis CI should test the dynamic submit and dynamic_finished views

This would have caught a bug that got on to ospc.org. This will likely involve mocking a request object so that the view can properly respond.

We have a test for testing submission of OGUSA jobs. We would need to mock out the data for a fake completed OGUSA job in order to test viewing the OGUSA results page. Not closing since this is only 50% done.


Added Orange Pi Zero as Supported Device

I tested the application on my Orange Pi Zero and it works :)

Nice! I've merged it in now


BUG: fix subset_df in train_dur_csv_paths.from_dir, fixes #328

@yardencsGitHub I'm running unit tests on this locally but please if you can go ahead and check if it fixes your bug. Please also let me know if the way I fixed makes sense to you

I remembered that you put test data on drive -- will try first thing tomorrow

@yardencsGitHub I got this to run locally with the data you gave me, and confirmed that on this bugfix branch it runs without crash
I am trying to understand why it wasn't working before and what this may mean for follow-up experiments done so far with previous_run_path
I confirmed that the crash happens on the very first csv, '/home/pimienta/Documents/data/vocal/results_llb16/results_200613_135259/train_dur_190s/replicate_1/annotated_prep_200613_135259_train_dur_190s_replicate_1.csv'
I see that what happens when crop_spect_vectors_keep_classes is called is that whatever label corresponds to class 8 is not in the dataset when we crop "from the front", i.e. keep the first x time bins
My guess is what happened is the following:

if 8 is rare, it could have been in the "end" of the train split
when we fail to crop from the front, we instead try cropping from the back. If 8 was at the "end" of the train split, this would work
but when we use the whole dataset, 8 may be (by chance) not at the "end" again. We are instead using the last x time bins of the entire dataset
so it fails even though 8 is still in all our splits

Trying to confirm this "by hand" now
But I think this means we will need to re-run, since even when we didn't fail this way, we may have accidentally included the validation and test splits
I have an idea for a more robust fix, will comment on the issue reporting the bug, make that one more commit, test it still works, then merge and release a new beta version

confirmed using the first .csv file that what I described is indeed what was happening.
Cropping "from the back" works when only using the train split, but fails when using the entire dataset because the "end" of the entire dataset by chance did not include that label

tests passed when run locally


on_epoch_* callbacks should only be run for 1 process

Bug Description:
Anything done in on_epoch_* (like on_epoch_end or on_epoch_start) callbacks happens n number of times when doing distributed training i.e. ddp . Process rank check should be added.
To Reproduce
Use ddp for training and create the on_epoch_end callback method with a print statement like: print(self.current_epoch)
Expected behavior
Each epoch is supposed to printed only once.

on_epoch needs to be called on every process because you might want to do something which affects the model on every process.


Update README.md

Codecov Report

Merging #50 (45f5885) into main (a2b62fb) will not change coverage.
The diff coverage is n/a.

:exclamation: Current head 45f5885 differs from pull request most recent head 60c52ac. Consider uploading reports for the commit 60c52ac to get more accurate results

@@          Coverage Diff          @@
##            main     #50   +/-   ##
=====================================
  Coverage   8.95%   8.95%
=====================================
  Files         43      43
  Lines       5262    5262
=====================================
  Hits         471     471
  Misses      4791    4791

Flag
Coverage Δ

oasysgh
1.84% <ø> (ø)

unitnumber
7.25% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.
:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Option to rename a cluster?

Sometimes it would be useful to be able to assign a custom name to an imported cluster (for example, because it's the same or too similar to an existing one). It seems to me that currently headlamp just takes the name it finds in the kubeconfig and that cannot be changed afterwards.

Yup. We should have that. I will add it to the backlog.

Working on this.

I think the UI needs a bit of tweaking.
This is how it looked before:

This is after my patch:

Also, I added that restriction of only showing the UI if in electron, which was missing.
However, trying the logic again I see an issue: it renames but still is using the old name at some point.

Renaming back to what it was originally also didn't work (didn't do the renaming back).
So I think this feature still needs some work and therefore it will be added for the next milestone.


remove animation in first screen

how can I remove the animation of the first screen when it appears?

You mean the animation/transition when you go from the initial screen to the login/signup screen?
That's not a feature that exists yet but I'd be happy to add it to the next release I'll be working on over the weekend.

Thank you... It would be awesome.

Did a pull request for this

Any word on the pull request for this? I think this feature would make for a sleeker transition into the login page if it has the same background image as the splash screen.

@danlozano any word on this?

Added in master branch. Will release new version with that and some other fixes.


New Resource Request: TheBestSchools.org

Name & Description
Hi there,
The education of the youth population has a direct impact on the wellbeing of its economy, health, and prosperity. This holds true around the nation; however, roughly 65,000 undocumented immigrants graduate from high school each year, and only  10,000 enroll in college. In addition, even fewer that that graduate, despite the numerous resources available to help these students.
To lift up this population, and all our communities in turn, TheBestSchools.org has curated a series of open-use guides dedicated to fostering undocumented, academic collegiate success. These guides contain a bounty of information for undocumented students on core topics including financial aid, student and constitutional rights, DACA legislation, and more sources of legal support and advocacy.
College Guide Series for Undocumented Students
College Success Guide -  https://thebestschools.org/resources/undocumented-students-guide-college/
College Protections -  https://thebestschools.org/resources/colleges-protect-undocumented-students/
Knowing Your Rights -  https://thebestschools.org/resources/undocumented-students-rights/
Advocacy and Support -  https://thebestschools.org/resources/undocumented-students-advocacy-support/
DACA and Key Legislature -  https://thebestschools.org/resources/undocumented-students-daca-laws/
Financial Aid Guide -  https://thebestschools.org/resources/undocumented-students-financial-aid/
Best Colleges Ranking -  https://thebestschools.org/resources/colleges-undocumented-students/
Online College Options -  https://thebestschools.org/resources/undocumented-students-online-college-guide/
The information presented in these guides can start a student well on their path to success, but not all are aware of the opportunity.  Please help us reach students by posting links to these guides on the Techqueria website, here for instance - https://techqueria.org/resources/career/ - Your link will be a great help to our academic communities.
Thank you for your effort in sharing these educational materials. Please reach out to us with any questions you may have.
Emma Anderson |<EMAIL_ADDRESS>Marketing and Communications Outreach | TheBestSchools.org
PO Box 524314 | Houston, TX 77052 |  Facebook |  Twitter
TheBestSchools.org is an independent organization comprised of a dedicated group of educators, professionals, and authors providing the best resources and advice to assist learners through every step of their education, into their careers, and toward sustainable lifelong learning. Learn more about us, if you do not want to receive emails from us in the future, please reply to this message with "Remove" in the subject line.
Category
Students
Desired Slug
https://techqueria.org/resources/students/best-schools

@fvcproductions I would like to be assigned for this issue #356 if possible? I would like to complete this! :)

Closing for now


cKDTree needs numpy arrays, not dataframes

Older version of scipy/pandas/numpy worked where scipy.spatial's cKDTree would accept pandas dataframes, but that is no longer the case.  This PR ensures that the representative numpy array is passed in instead.

Formatting related diff is due to black running in pre-commit.


stocker not found

when i try to use your code in pycharm it says that no module named stocker found.

It appears that u haven't installed all the necessary modules.

Same issue her.e. I did verify that all the packages in the readme file are satisfied.

Facing the same issue - no module named stocker

You have to copy the file in your folder

You need to make sure to import Stocker in the correct directory. Make sure stocker.py is in the directory where you are running your scripts or Jupyter Notebook.


Release Notes for CCE Cluster Versions not up-to-date

Issue on page:        https://github.com/opentelekomcloud-docs/cloud-container-engine/blob/main/umn/source/clusters/cluster_overview/release_notes_for_cce_cluster_versions.rst
The CCE Versions are not up-to-date.
For example v1.27.5-r0 is missing an v1.28.xx

You are correct, we need to update the table with all available versions. Thank you for notification.

Will be updated soon together with new v1.29 release.


monster spawner textures appear to be broken

base fabric 1.20.1 instance
fabric api, more mob variants (1.2.2)

while mob textures are unaffected it appears the game is unable to locate default textures for chickens, cows, pigs, sheep, wolves, and zombies, leading to missing textures within mob spawners, and the log spits out errors regarding them:
relevant log details.txt
latest.log
cat spawners however don't seem to have this issue

This'll be fixed in the upcoming 1.3.0 update.


refactor: migrate from react-loadable to @react-loadable/revised

Motivation
Continuation of #6306. Close #3841
Have you read the Contributing Guidelines on pull requests?
Yes
Test Plan
TODO

Not sure if it even works... There are API changes between the revised version and the original version, and we have an addon that I have no idea if is impacted by this migration.

Try modifying these lines:
https://github.com/facebook/docusaurus/blob/8f69f633e66228b129de4965b1b0d3148514b3b4/packages/docusaurus/src/client/theme-fallback/Loading/index.tsx#L8-L15
To this:
diff --git a/packages/docusaurus/src/client/theme-fallback/Loading/index.tsx b/packages/docusaurus/src/client/theme-fallback/Loading/index.tsx
index 761c9c3a7..97cbac153 100644
--- a/packages/docusaurus/src/client/theme-fallback/Loading/index.tsx
+++ b/packages/docusaurus/src/client/theme-fallback/Loading/index.tsx
@@ -5,14 +5,17 @@
  * LICENSE file in the root directory of this source tree.
  */

+/* eslint-disable @typescript-eslint/ban-ts-comment */
+/* eslint-disable @typescript-eslint/explicit-module-boundary-types */
+
 import React from 'react';
-import type {LoadingComponentProps} from 'react-loadable';

 export default function Loading({
-  error,
-  retry,
+  // @ts-ignore
+  error, // @ts-ignore
+  retry, // @ts-ignore
   pastDelay,
-}: LoadingComponentProps): JSX.Element | null {
+}): JSX.Element | null {
   if (error) {
     return (
       <div

Let me know if something needs to be fixed

@seyoon20087 Adding ts-ignore will surely make things "work" 😄 I will try to make them actually "work" or figure out if this setup will work at all

@Josh-Cena do we even still need a lib with React 18?
I'd like to figure out how to remove this.
React.lazy() now has support for Server-Side-Rendering

https://reactjs.org/docs/code-splitting.html#reactlazy
https://17.reactjs.org/docs/code-splitting.html#reactlazy

The v17 warning + suggestion to use loadable components was removed, so I guess our setup could be simplified 🤷♂

The doc is not so clear about the behavior of React.lazy() with server-side-rendering behavior though, but I guess it will not show suspense placeholders and just load appropriately the lazy components? Will try to get answers

React.lazy doesn't work with SSG. See https://loadable-components.com/docs/loadable-vs-react-lazy/

React.lazy did not work with SSG, but in React 18 it does (loadable components doc has probably not been updated since)
Confirmed by React itself :D https://twitter.com/reactjs/status/1511755578716028928


fix(wallet-client): timeout can only occur after Created state

Fixes #2993

Successfully created backport PR for releases/v0.1:

#3295


The date field is not working correctly

Provide a general summary of the issue here
When using the calendar, the year 0001 can be used. Due to this issue, when entering February 29, 2024, the calendar resets the value to February 28, 0001.
https://github.com/user-attachments/assets/71886ae5-e55f-4658-a6ff-d4819f6a454d
🤔 Expected Behavior?
When using the calendar, the year 1 AD can be used. Due to this issue, when entering February 29, 2024, the calendar resets the value to February 28, 0001.
😯 Current Behavior
When using the calendar, the year 1 AD can be used. Due to this issue, when entering February 29, 2024, the calendar resets the value to February 28, 0001.
💁 Possible Solution
Enable validation of the field only after the complete entry of the year. Currently, the validation for the date is in the "number" format, not "4 digits."
🔦 Context
No response
🖥 Steps to Reproduce
Open DatePicker and try entering February 29, 2024
https://react-spectrum.adobe.com/react-aria/useDatePicker.html
Version
3.35.0
What browsers are you seeing the problem on?
Chrome
If other, please specify.
No response
What operating system are you using?
Mac OS
🧢 Your Company/Team
No response
🕷 Tracking Issue
No response

Any ideas?

I think this is a dupe of https://github.com/adobe/react-spectrum/issues/5965

closing as duplicate. I'm not seeing the jump from 2024 -> 0001, just the change from 29->28 for the day field. Could be a different issue specific to a certain setup for the year issue, we can reopen if that can be reproduced.


Q: How to disable Inferred Rules ?

How can I disable Inferred Rules? I am using the "required" option to make my input tags look pretty. All of my inputs fields have "required" options. But the fact is that I don't want all of them to be required. I want them to look like required fields, but not  to act as those ones.  So, is there any way to disable auto validation of input fields marked as required?
<input v-model="localValue"         required         v-validate="validationRules.localValue"         name="localValue"/>
input:valid {             font-size: 12px;         }

There is no way to disable that currently, you can take a look at Validation Components which do not have this implemented.
I will tag this as an enhancement. Should be fairly easy to implement.


Sub-items not possible to make opened by default

Describe the bug
Earlier, there was an option to have sub-items open by default, now they are always closed.
Steps to reproduce

Make the item a sub-item of another item.
Look at how it appears in the menu - it can only be seen by clicking the down arrow.

Craft CMS version
5
Plugin version
5.0.0
Multi-site?
No response
Additional context
No response

This was actually largely removed due to Craft 5 now supporting nested menu items that you could toggle. Rather than re-inventing the wheel, we'd rather take the native approach for this.
I'd say this now comes under the realm of a Craft core feature request. You can toggle menu items that have subnavs open, but they aren't retained. This should be pretty straightforward to implement through the use of a cookie or localstorage.
So for this reason, I think we'll leave it up to Craft to implement!


Custom Background

Hello,
The scrolling context take the scaffold background as default color but it should be transparent or at least have the possibility to select one custom color.
Thanks

Thank you for writing your opinion!
We added the function and proceeded with the 3.6.2 update.
Thank you.


PayloadGenerator give the same result

Hello
What is the purpose of PayloadGenerator?
I don't see any difference in the result.
The two codes give exactly the same image
Url generator = new Url("https://github.com/codebude/QRCoder/");
string payload = generator.ToString();

QRCodeGenerator qrGenerator = new QRCodeGenerator();
QRCodeData qrCodeData = qrGenerator.CreateQrCode(payload, QRCodeGenerator.ECCLevel.Q);
QRCode qrCode = new QRCode(qrCodeData);
var qrCodeAsBitmap = qrCode.GetGraphic(20);

QRCodeGenerator qrGenerator = new QRCodeGenerator();
QRCodeData qrCodeData = qrGenerator.CreateQrCode("https://github.com/codebude/QRCoder/", QRCodeGenerator.ECCLevel.Q);
QRCode qrCode = new QRCode(qrCodeData);
var qrCodeAsBitmap = qrCode.GetGraphic(20);

PayloadGenerator.Url will prefix the provided string with http:// if the url does not already include it.  That is the only difference.  As you provided a url that includes https://, there is no difference.
See the source code:
        public class Url : Payload
        {
            private readonly string url;

            public Url(string url)
            {
                this.url = url;
            }

            public override string ToString()
            {
                return (!this.url.StartsWith("http") ? "http://" + this.url : this.url);
            }
        }

As @Shane32 explained it - the url generator just ensures that the url has a valid protocol prefix. Not more not less. Compared to other payload generators the Url generator really doesn't do much, but for sake of completeness I implemented it anyway.


IPFS integration

I think IPFS is at the moment the best P2P Protocol for Media.
Its available for Python Golang and JS.
IPFS
Maybe its better to concentrate the Open Source Developer on one P2P library, intend of a dozends.
So does the lbry team want to integrate IPFS?
Are there Plans?

This is the current analysis of ipfs vs lbry protocol https://lbry.io/faq/different-ipfs

This is the current analysis of ipfs vs lbry protocol https://lbry.io/faq/different-ipfs

Hey @tzarebczan,
I was thinking about how IPFS can improve on the shortcomings to get your support!
Collaborative Cluster
There is probabilistic pinning which would make it much easier to scale an ipfs cluster with stored videos:
https://github.com/ipfs/roadmap/issues/84
This could be an community driven approach to store the videos, by having people join a collaborative cluster reducing the dependency on server of a single entity storing the data for the videos.
Additionally to the cluster all viewers of a video would store them in their cache for a while. Which results in hot content stored in many places, while cold content is relying on the cluster to be available.
To avoid having the cluster filled up with too much stuff in the long run, artists could be asked to pay a small fee per month and for each 100 MB. If the fee is not paid the content is unpinned from the cluster and the content creator is responsible to store it somewhere on the network itself.
The fee could be used to pay for the pinning/unpinning infrastructure first, and then just add space to the cluster to get a sustainable grow.
This would allow a creator to put his content on any pinning service he likes, or just select the community driven cluster.
Human readable URLs

I've started a discussion some days ago on how to improve the discoverablility of content on IPFS by adding a DHT which can resolve URLs/URIs published by nodes, secured by an anchor (for the signature) on the dns system.

This would allow you to publish the current URLs with minimal changes to IPFS and having all IPFS nodes able to resolve them directly in the network without asking an HTTP-Server.
Conclusion
I would really see both projects work together and having the ability to spend some terabytes of storage to the lbry project! Is there anything else blocking the migration to IPFS if those two features would be implemented? 🤔
I only see the lack of payment infrastructure. But I think your payment system is storage system agnostic. So it could be put on an IPFS cluster as well? 🤔
Thanks in advance for taking the time to reconsider your decision!


panic: syntax error in pattern

Used the pattern below:
matches, err := filepathx.Glob(casename + "/**/*.png")
It works just fine but I recently encountered the error "panic: syntax error in pattern" while globing a directory. Please what can I do?

Its due to the fact that the code does not escape properly the filepath.Match syntax. Which it should do... On windows however escaping is disabled...

https://github.com/yargevad/filepathx/pull/4

#4

Thank you so much for the update.


Bot not playing my songs

so i when and copied a youtube playlist and converted each song into its url e.g https://www.youtube.com/watch?v=_dK2tDK9grQ and  i then save the autoplaylist and run runbot.bat and it plays the old songs which i deleted.

Did you try to get all the URL with the !pldump and just copy/paste the content in the autoplaylist ?
Or maybe try to update youtube-dl with pip
in the Terminal use the following command :
pip3 install -U youtube-dl

@zenrac that worked thank you

Appears issue has been resolved, closing...