text:
Nettoyage pipline (more in description)

Les differentes etapes du nettoyage de la pipeline / prepare render :

Virer toute les shared_ptr<properties>
Utiliser BFC pour les points lights et virer l'horrible commande composee de std::list et autres craps du genre
Linker les skeleton instances aux DRBSkinnedMesh
Rationnaliser tout le code de culling et de preparation des draw command, c'est degueulasse ce que j'ai fais. Ca veut dire : Comment partager le meme culling et outputer des commandes draw differentes. C'est ca le gros du boulot et ca fait mal.
Trouver une autre occupation - ou sens a sa vie - que de faire un engine qui sert a rien tout seul en fumant de cigarettes

Et arrêter l'alcool...

authors: DorianPinaud cesarl

repo: Another-Game-Engine/AGE


text:
consolidate deployment docs

move info from the current deployment docs over to fh-deploy.

Thank you!

source: gharchive/pull-request

repo: AnswerDotAI/fh-deploy

license_type: permissive

license_source: github-api


text:
Help return list of Movies ([]domain.Movie) back to gRPC repated object

func (s *Server) GetMovies(ctx context.Context, in *pb.EmptyRequest) (*pb.MovieListResponse, error) {

	db, err := repo.NewPostgresRepository()

	if err != nil {
		return nil, nil
	}
       //Get all movies from the database
	movies, err := db.GetMovies()

	if err != nil {
		return &pb.MovieListResponse{}, status.Error(404, "movies not found")
	}
       //Error : cant return slice of movie back to gRPC
	return &pb.MovieListResponse{Movies: movies}, nil

}

//proto file

service MovieService{
    rpc CreateMovie(MovieRequest) returns (MovieResponse) {}
    rpc GetMovie(MovieID) returns (MovieResponse) {}
    rpc GetMovies(EmptyRequest) returns (MovieListResponse) {}
    rpc UpdateMovie(MovieRequest) returns (MovieResponse) {}
    rpc DeleteMovie(MovieID) returns (Message) {}
}

message MovieRequest {
    string id = 1;
	string name = 2;
	string description=3;
	string release_date= 4;
	string image = 5;
}

message MovieResponse {
    string id = 1;
	string name = 2;
	string description=3;
	string release_date= 4;
	string image = 5;
}
message MovieListResponse {
    repeated MovieResponse movies = 2;
}

In this scenario, the Movies would be a slice of pb.MovieResponse.  You could do something like:
var movieResponse := []pb.MovieResponse{}
for _, movie := range movies {
    movieResponse = append(movieResponse, &pb.MovieResponse{ *fields go here* })
}

return &pb.MovieListResponse{Movies: &movieResponse}, nil

aha . thank you @MwinyiMoha , let me try that one out.

@MwinyiMoha , this worked. Thanks.I thought there could be a way of returning a list to grpc MovieListResponse. In a situation where we have many records, it will take time loop through values O(n) or even O(n2) for embedded entitiies([]movies struct with say []Actors struct.) What are your thoughts on that.

Yes, it's true that iteration would be costly in this situation. Database drivers usually have helper functions around this. For example with mongodb you can do:
var objList := make([]domain.Model, 0)

cursor, err := collection.Find(ctx, bson.M{}, findOptions)
\\ handle error here

err := cursor.All(ctx, &objList)
\\ handle error here

Basically, cursor.All maps the documents matched by the find query into a list of objects in a performant way. I haven't used postgres with Go that much to come across such functionality but I am sure there should be. Let's check documentation around cursors in postgres.

Yes sure @MwinyiMoha . Thank you once again.

This has been resolved with @MwinyiMoha help.

source: gharchive/issue

authors: AntonyIS MwinyiMoha

repo: AntonyIS/go-grpc-crud

license: MIT


text:
How to decode without a specific key?

This is my struct:
struct ReaderDirectoryWeight {     let sourceName: String     let weight: Int }
The "sourceName" is assigned by a dictionary key, and the "weight" is assigned by the key value.
There is the example:
"weights": {     "Text/Cover.xhtml": 4,     "Text/Introduction.xhtml": 209,     "Text/AboutAuthor.xhtml": 423,     "Text/Part1.xhtml": 428,     "Text/Ch1-01.xhtml": 2234,     "Text/Ch1-02.xhtml": 3947 }
It's my solution:
`
typealias ReaderDirectoryWeightType = [String: Int]
static func decode(_ json: Any) throws -> [ReaderDirectoryWeight] {
guard let dictionary = json as? JSONDictionary, let weightDirectory = dictionary["weights"] as? ReaderDirectoryWeightType else {
    throw DecodingError.typeMismatch(
        expected: ReaderDirectoryWeightType.self,
        actual: type(of: json),
        DecodingError.Metadata(path: ["weights"], object: json, rootObject: nil))
}

return weightDirectory.flatMap(ReaderDirectoryWeight.init)

}`
Has a better solution? Thanks!

Although dictionaries can't be Decodable, there are many different ways of decoding them. For instance, you should be able to do this:
let weightDirectory: [String: Int] = try json => "weights"
return weightDirectory.flatMap(ReaderDirectoryWeight.init)

Thank you!

repo: Anviking/Decodable

license: mit

license_source: bigquery


text:
Fixed stored @State properties on App

Steps

[x] Add your name or username and a link to your GitHub profile into the Contributors.md file.
[x] Build the project on your machine. If it does not compile, fix the errors.
[x] Describe the purpose and approach of your pull request below.
[x] Submit the pull request. Thank you very much for your contribution!

Purpose
Currently when using a State property with storage on App instead of on a View, the app ID was accessed before it was set, causing the State internals to look for the data in the folder temporary/ which usually doesn't exist because at the time you will be writing into the State the app ID will be set and it writes the value into app.id/ folder.
This happened because when the State property is on App it is initialized before GTUIApp.appID is set.
struct ExampleApp: App {
    let id = "me.amzd.Example"
    var app: GTUIApp!

    /// This State will try to read its value for the key example from disk before we can access `id`
    /// (because we need to initialize ExampleApp to access the id property)
    @State("example") var example: String?

    // ...
}

Approach
I fixed this by making the App.id property static and forwarding it to GTUIApp.appID first thing the program does. I have also made the GTUIApp.appID force unwrapped optional so regression of this issue is not possible.
I am open to suggestions of how to fix this differently. You can also fix this yourself in a different way without crediting, it is not that complicated.
Since it is a breaking change I still need to update the examples

Thanks for opening the dicussion and already providing a potential solution! I prefer not to require the user to add a static variable, so I'll see whether I can make the state variables load the files after initializing the app structure. Otherwise, I'll merge your implementation.

Instead of reading the app id at the initialization of a state variable, it will now read it as soon as the value is accessed for the first time. That way, the id property can stay on an app's instance.

authors: Amzd david-swift

repo: AparokshaUI/adwaita-swift


text:
fix: datetime utcnow bug

What I did
get_current_timestamp_ms claimed to return UTC now but it wasn't actually. Also, utcnow() is deprecated.
How I did it

How to verify it

Checklist

[ ] All changes are completed
[ ] New test cases have been added
[ ] Documentation has been updated

Just realized the test is failing, that test failure makes no sense

LGTM
Historically, I've used datetime.UTC, looks like dateutil.tz.UTC is available as well, but they suggest using your method, so I'm good with it

Ya, datetime.UTC isnt available until 3.11 i think or else i would have used it, and we already had dateutil dep so i figured why not.

Just realized the test is failing, that test failure makes no sense

I am also baffled! I know the runners are already on utc but i fail to see why that fudge up the test

Never mind my last comment, you'd be better off dividing the first value than you would multiplying the second value by 1000.

repo: ApeWorX/ape


text:
kafkasql - operator does not reconfigure the deployment if kafka bootstrap servers is modified

looks like it only happens if the pods are failing, because the first configured values are wrong, and then when you try to fix it changing the config values the pod is not replaced with a new one with the updated config values

weird, it actually works properly, maybe my cluster lagged

repo: Apicurio/apicurio-registry-operator


text:
I want to test my controller algorithm on apollo , what steps i have to do?

We appreciate you go through Apollo documentations and search previous issues before creating an new one. If neither of the sources helped you with your issues, please report the issue using the following form. Please note missing info can delay the response time.
System information

OS Platform and Distribution (e.g., Linux Ubuntu 14.04):
Apollo installed from (source or binary):
Apollo version (1.0, 1.5, 2.0, 2.5, 3.0):

Steps to reproduce the issue:

Please use bullet points and include as much details as possible:

Supporting materials (screenshots, command lines, code/script snippets):

Here is a doc How to add a new control algorithm

repo: ApolloAuto/apollo


text:
apollo-kernel and its suported Ubuntu version.

Hi,
See here for more info on this question. Any hints will be highly appreciated.
Regards,
HY

we have updated Low-Latency / Realtime Kernel Installation Guide
(English , Chinese) for Ubuntu 18.04 now. Please follow these docs to install PREEMPT/PREEMPT_RT kernels for Apollo.
Thank you.

Thanks a lot. I'll try according to the latest installation guide and give feedback on any problems/comments/notes/experiences.

authors: hongyi-zhao storypku


text:
Update lincoln_controller.cc

Forget to output "Protocol can sender is null".

@Gavin-Tao I am closing all your commits. As communicated earlier, please check into master head and we'll do the cherry picking to 5.5 branch. And if possible, please combine your commits into a single or fewer pull requests. Thank you again for your contribution.

authors: Gavin-Tao jinghaomiao


text:
App.Metrics.AspNetCore.Mvc.Core performance issues on netcore 3.0 due to missing type MvcAttributeRouteHandler

During our microservice performance test after migrating all stuff to netcore 3.0 we saw not observed  before issue with low CPU saturation. After searching we concluded that the actual problem was inside one of your components, that was misbehaving.
https://github.com/AppMetrics/AppMetrics/blob/dev/src/AspNetCore/src/App.Metrics.AspNetCore.Mvc.Core/MvcRouteTemplateResolver.cs
try {
// *IMPORTANT* this hack is throwing exception for every request.
// It's hack to catch TypeLoadException
    Func<IList<IRouter>, ActionDescriptor[]> func = routersList =>
    {
        var attributeRouteHandler = routersList.FirstOrDefault(r => r.GetType().Name == nameof(MvcAttributeRouteHandler))
            as MvcAttributeRouteHandler;

        return attributeRouteHandler?.Actions;
    };

    return func(routers);
}
catch (TypeLoadException)
{
    return null;
}

`
As described in comment, we always get TypeLoadException due to MvcAttributeRouteHandler changed location in netcore packages. And when exception is thrown on every request it has a negative effect.
Either way I suggest to do either of things:

port this lib to netcoreapp3.0
not use this code at all (we used this approach to have our own IRouteNameResolver for netcoreapp3_0 which did nothing, as route was built by different part of code as before, but without exceptions)
as everything inside this class has dependency on routeData.Routers - you can just check for routeData.Routers.Any() in the beginning. It is bad, but still better that what you currently have

To check that this was not done due to our incorrect usage of libraries, I tried the same on your MetricsSandboxMvc project with same results.
I have some investigation data if you need any.

Any chance you could provide a PR with the fix?

@AlexHorlenko any news?
Looks like @alhardy busy enough to continue support this awesome library.

@stukselbax sorry, forgot about it. Will open a PR today or tomorrow

Fixed

authors: AlexHorlenko alhardy stukselbax

repo: AppMetrics/AppMetrics


text:
Disable curved lines

Description
I see in the Line struct that there is a curvedLines property that is not accessible from outside the lib. That would be nice to be able to prevent from drawing a quad curved path in a line chart (or maybe I'm missing something).
Possible Fix
Make curvedLines property public in Line struct or provide a way to set from it from whether LineChart or ChartStyle init.

any updates on this? Is it possible to disable curved lines?

authors: guillaume-gcn haemi

repo: AppPear/ChartView


text:
fix: Respect adb settings provided to the driver

Crating a new adb instance means all settings it gets from UIA2 driver are lost. This should not happen, so we must reuse the same adb instance the driver has.

@mykola-mokhnach can you bump version and push package.json and lock.json

@mykola-mokhnach can you bump version and push package.json and lock.json

I thought the version bump should be done automatically by the release script, shouldn't it? Same with the package lock. It only changes if I change the original dependencies.

:tada: This issue has been resolved in version 1.0.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


text:
Any exact release time?

Is there any planned release date or something?

Hey, sorry for the late response.
Unfortunately, this project is paused indefinitely in favor of other things right now. You are welcome to fork the repository and continue working on this if that is something you're interested in.
Thanks for taking interest!

authors: AppleFlavored andriejs

repo: AppleFlavored/mh-dashboard


text:
Fix Fn::ImportValue validation

template example:
AWSTemplateFormatVersion: '2010-09-09'

Resources:

  MyEC2:
    Type: "AWS::EC2::Instance"
    Properties:
      ImageId: ami-1111111
      InstanceType: t2.medium
      SubnetId: subnet-1231231
      KeyName: something
      SecurityGroupIds:
      - Fn::ImportValue: some-export-id
      IamInstanceProfile: some-profile

Issue:
[1] % perun validate test.yml
INFO: Configuration file from the following location will be used: /Users/mpolcik16/.config/perun/main.yaml
INFO: Creating new session. Profile: aol Region: us-east-1
WARNING: MyEC2: SecurityGroupIds[0] <--- is nil.

Perun is not respecting Fn::ImportValue and it's deciding it is nil, when in fact it is a valid value.
Expected behaviour: validation should pass.

 Fix Fn::ImportValue validation

closed by #174

authors: maxiwoj mwpolcik

repo: Appliscale/perun


text:
AppsflyerConstants.AF_VALIDATE_PURCHASE value spelling incorrectly

Describe the bug
Kindly check the AppsflyerConstants.AF_VALIDATE_PURCHASE = "validePurchase" spelling  incorrectly. It causes the "_registerPurchaseValidateListener" cannot return correct result.
Expected value should be "validatePurchase".

Thanks for opening this issue, will fix it 👍

authors: LSFMint ShaharAF

repo: AppsFlyerSDK/appsflyer-flutter-plugin


text:
触发补全无法使用了

如题，触发补全无法使用了

能否消息描述？

authors: AprilNEA hpeiyan

repo: AprilNEA/ChatGPT-Admin-Web


text:
Setup branch

added configuration files for rubocop
added the 'Person' class
added the 'Student' class
added the 'Teacher' class

Thank you.

repo: Aquinasmoriasi/school-library


text:
Specs needed before any further work is done

I've spent some time looking at your code, and I think that fundamentally you haven't done enough design.
I want you to pause your regular coding right now and switch over to writing specs.
Your first order of business is writing a spec helper that does image differencing in order to tell you if you've broken some feature in plotting. I want you to show me what you come up with before you continue coding.
CC @v0dro

Works. I think the image differentiation spec will be very coupled to image magick so let it be in this repo.
However, I am of the opinion that common specs should be written in the rubyplot repo for better co-ordination: https://github.com/SciRuby/rubyplot/tree/master/spec

I think that’s fine, but I want him to consider all the possible plots he
needs to make as he continues with his coding. So if the specs need to go
in a different place, that’s fine, so long as he does them and starts
applying them.
On Tue, Jun 19, 2018 at 9:30 PM Sameer Deshmukh notifications@github.com
wrote:

Works. I think the image differentiation spec will be very coupled to
image magick so let it be in this repo.
However, I am of the opinion that common specs should be written in the
rubyplot repo for better co-ordination:
https://github.com/SciRuby/rubyplot/tree/master/spec
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/Arafatk/magick-rubyplot/issues/4#issuecomment-398620927,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAKFpLdwj9ggu_cFDNEPlFgCXpRk7K_Cks5t-c_6gaJpZM4Uulx4
.

Greetings @mohawkjohn  @Arafatk
@v0dro  and I just had a coding session where we discussed the Scripting layer based on the discussionhere
We came up with certain specs that based on the discussion to model the scripting layer.This might help you design your specs.
require 'spec_helper'

describe Rubyplot do
  before do
    @x1 = [1, 2, 3, 4, 5]
    @y1 = [10, 20, 30, 40, 50]
  end

  context "#line" do
    it "creates a simple line graph" do
      a = Rubyplot.new
      a.line @x1, @y1
      a.save "file_name.bmp"

      expect(equal_files("file_name.bmp", "line_graph.bmp")).to eq(true)
    end

    it "creates a line graph with points marked" do
      a = Rubyplot.new
      a.line @x1, @y1, points: true
      a.save "file_name.bmp"

      expect(equal_files("file_name.bmp", "line_points_graph.bmp")).to eq(true)
    end
  end

  context "#scatter" do
    it "creates a simple scatter graph" do
      a = Rubyplot.new
      a.scatter @x1, @y1
      a.save "file_name.bmp"

      expect(equal_files("file_name.bmp", "scatter_graph.bmp")).to eq(true)
    end
  end
end

require 'spec_helper'

describe Rubyplot do
  before do
    @x1 = [-10, 0 , 5, 28]
    @y1 = [1, 2, 3, 4]
    @x2 = [2, 4, 16]
    @y2 = [10, 20, -40]
  end

  context "#line #scatter" do
    it "creates a line and scatter graph" do
      a = Rubyplot.new
      a.line @x1, @y1
      a.scatter @x2, @y2
      a.save "file_name.bmp"

      expect(equal_files("file_name.bmp","line_scatter_graph.bmp")).to eq(true)
    end
  end
end

I have put them here so that they can be viewed even if the files are removed. Currently, They can be found here and here.

These are beautiful; excellent work.
I only have a few comments.
I like the name Rubyplot and think we should use this for the library. However, I don't think we should use this for the plots themselves. It would probably be better to stick to Figure or even Axes like in Python.
By the way, one of my most frequently used features in matplotlib is fig.add_subplot(...), and I'd like you to think a bit about what creating multiple axes within a plot looks like in Rubyplot.
Can you also include an example which allows you to set the following basic attributes?

Marker size
Marker type
Line size
Line style
Marker color
Line color

Again, good work on this.

@vodro @mohawkjohn I was just writing the mail about my today's progress and addressing this. I will iterate that over here first. Reading the comment decided to instantiate a class RbPlot inside RubyPlot which acts like Figure.

I will hopefully include the example and specs for the mentioned basic attributes in the working prototype.
As for the Sub-Plots I am not sure if they can be implemented with GR Framework as this is a problem that has to dealt at and Artist Level and GR Framework abstracts that. I will however investigate GR framework/think of a bypass after I get the prototype working. I will be mailing on the ML soon.

Okay, but why call it RbPlot? This is confusing. Why not just call it Figure? Metaphors are really important, and people already understand Figure because they use Figure in Matplotlib and Matlab.

@pgtgrly @v0dro Thanks
This helped a lot.

What thinking have you done regarding my comment from yesterday?

Hi John,
Are you referring to me?
https://github.com/Arafatk/magick-rubyplot/commit/dad4455e0f6d797df9561231216e426f3f688ed5

Yes, but I was asking what thinking you'd done toward this comment:
https://github.com/Arafatk/magick-rubyplot/issues/4#issuecomment-399144280
Not what work, just what thinking.
I'll comment on this commit elsewhere.

I am referring to you. But I was actually asking about this comment: https://github.com/Arafatk/magick-rubyplot/issues/4#issuecomment-399144280
In addition, it's best practice — every time you do a commit that relates to an issue — to tag the issue number in the commit comment.
So your comment should be something like, "Adding Test mechanism to check image diffs against reference images. WIP #4." WIP stands for work in progress. When something fixes an issue, do "Fixes #4," and it'll actually automatically close the issue for you.
Now, with regards to https://github.com/Arafatk/magick-rubyplot/commit/dad4455e0f6d797df9561231216e426f3f688ed5, this is an overly complicated solution. Have you looked at the function matplotlib uses for all of its unit tests?
Here's the link:
https://github.com/matplotlib/matplotlib/blob/master/lib/matplotlib/testing/compare.py#L366
Why don't I like your solution? You're adding an additional gem requirement to a project. That makes everything an order of magnitude more complicated. You're occasionally going to need some additional gems (e.g., for magick), and that's unavoidable. But you should do everything you can to avoid introducing more complexity.
The meat of the method above is here:
https://github.com/matplotlib/matplotlib/blob/master/lib/matplotlib/testing/compare.py#L431
It's not hard to compute the RMS of two images. RMS is just the root-mean-square. DM me if you have trouble understanding the math.

All the potential extra plots to be added are described here and the specs are in this branch.

authors: Arafatk mohawkjohn pgtgrly v0dro

repo: Arafatk/magick-rubyplot


text:
When using com.archinamon.aspectj-ext and includeJar, the type xxx is defined multiple times

com.archinamon.aspectj-ext
aspectj {
includeJar 'retrofit2'
}

Task :app:mergeProjectDexDebug FAILED
AGPBI: {"kind":"error","text":"Type retrofit2.CompletableFutureCallAdapterFactory$ResponseCallAdapter is defined multiple times: /Users/avery/AndroidStudioProjects/NewsPlus/app/build/intermediates/mixed_scope_dex_archive/debug/out/cbf7c823e7225e02a34d087be63f58c4e3f372e4b663235e195d08fd9398358c_2.jar:classes.dex, /Users/avery/AndroidStudioProjects/NewsPlus/app/build/intermediates/mixed_scope_dex_archive/debug/out/b6d20cdf8a2862d83190fc0b72c48af7169626e3e784971edbcc1c3ffa23e7c8_2.jar:classes.dex","sources":[{"file":"/Users/avery/AndroidStudioProjects/NewsPlus/app/build/intermediates/mixed_scope_dex_archive/debug/out/cbf7c823e7225e02a34d087be63f58c4e3f372e4b663235e195d08fd9398358c_2.jar"}],"tool":"D8"}
com.android.builder.dexing.DexArchiveMergerException: Error while merging dex archives:
Type retrofit2.CompletableFutureCallAdapterFactory$ResponseCallAdapter is defined multiple times: /Users/avery/AndroidStudioProjects/NewsPlus/app/build/intermediates/mixed_scope_dex_archive/debug/out/cbf7c823e7225e02a34d087be63f58c4e3f372e4b663235e195d08fd9398358c_2.jar:classes.dex, /Users/avery/AndroidStudioProjects/NewsPlus/app/build/intermediates/mixed_scope_dex_archive/debug/out/b6d20cdf8a2862d83190fc0b72c48af7169626e3e784971edbcc1c3ffa23e7c8_2.jar:classes.dex
Learn how to resolve the issue at https://developer.android.com/studio/build/dependencies#duplicate_classes.
at com.android.builder.dexing.D8DexArchiveMerger.getExceptionToRethrow(D8DexArchiveMerger.java:132)
at com.android.builder.dexing.D8DexArchiveMerger.mergeDexArchives(D8DexArchiveMerger.java:119)
at com.android.build.gradle.internal.transforms.DexMergerTransformCallable.call(DexMergerTransformCallable.java:102)
at com.android.build.gradle.internal.tasks.DexMergingTaskRunnable.run(DexMergingTask.kt:441)
at com.android.build.gradle.internal.tasks.Workers$ActionFacade.run(Workers.kt:242)
at org.gradle.workers.internal.AdapterWorkAction.execute(AdapterWorkAction.java:50)
at org.gradle.workers.internal.DefaultWorkerServer.execute(DefaultWorkerServer.java:50)
at org.gradle.workers.internal.NoIsolationWorkerFactory$1$1.create(NoIsolationWorkerFactory.java:63)
at org.gradle.workers.internal.NoIsolationWorkerFactory$1$1.create(NoIsolationWorkerFactory.java:59)
at org.gradle.internal.classloader.ClassLoaderUtils.executeInClassloader(ClassLoaderUtils.java:98)
at org.gradle.workers.internal.NoIsolationWorkerFactory$1.lambda$execute$0(NoIsolationWorkerFactory.java:59)
at org.gradle.workers.internal.AbstractWorker$1.call(AbstractWorker.java:44)
at org.gradle.workers.internal.AbstractWorker$1.call(AbstractWorker.java:41)
at org.gradle.internal.operations.DefaultBuildOperationExecutor$CallableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:416)
at org.gradle.internal.operations.DefaultBuildOperationExecutor$CallableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:406)
at org.gradle.internal.operations.DefaultBuildOperationExecutor$1.execute(DefaultBuildOperationExecutor.java:165)
at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:250)
at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:158)
at org.gradle.internal.operations.DefaultBuildOperationExecutor.call(DefaultBuildOperationExecutor.java:102)
at org.gradle.internal.operations.DelegatingBuildOperationExecutor.call(DelegatingBuildOperationExecutor.java:36)
at org.gradle.workers.internal.AbstractWorker.executeWrappedInBuildOperation(AbstractWorker.java:41)
at org.gradle.workers.internal.NoIsolationWorkerFactory$1.execute(NoIsolationWorkerFactory.java:53)
at org.gradle.workers.internal.DefaultWorkerExecutor.lambda$submitWork$2(DefaultWorkerExecutor.java:200)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at org.gradle.internal.work.DefaultConditionalExecutionQueue$ExecutionRunner.runExecution(DefaultConditionalExecutionQueue.java:215)
at org.gradle.internal.work.DefaultConditionalExecutionQueue$ExecutionRunner.runBatch(DefaultConditionalExecutionQueue.java:164)
at org.gradle.internal.work.DefaultConditionalExecutionQueue$ExecutionRunner.run(DefaultConditionalExecutionQueue.java:131)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64)
at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:48)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:56)
at java.lang.Thread.run(Thread.java:748)
Caused by: com.android.tools.r8.CompilationFailedException: Compilation failed to complete
at com.android.tools.r8.utils.W.a(:87)
at com.android.tools.r8.D8.run(:11)
at com.android.builder.dexing.D8DexArchiveMerger.mergeDexArchives(D8DexArchiveMerger.java:117)
... 33 more
Caused by: com.android.tools.r8.utils.b: Error: /Users/avery/AndroidStudioProjects/NewsPlus/app/build/intermediates/mixed_scope_dex_archive/debug/out/cbf7c823e7225e02a34d087be63f58c4e3f372e4b663235e195d08fd9398358c_2.jar:classes.dex, Type retrofit2.CompletableFutureCallAdapterFactory$ResponseCallAdapter is defined multiple times: /Users/avery/AndroidStudioProjects/NewsPlus/app/build/intermediates/mixed_scope_dex_archive/debug/out/cbf7c823e7225e02a34d087be63f58c4e3f372e4b663235e195d08fd9398358c_2.jar:classes.dex, /Users/avery/AndroidStudioProjects/NewsPlus/app/build/intermediates/mixed_scope_dex_archive/debug/out/b6d20cdf8a2862d83190fc0b72c48af7169626e3e784971edbcc1c3ffa23e7c8_2.jar:classes.dex
at Version.fakeStackEntry(Version_2.0.74.java:0)
at com.android.tools.r8.utils.M0.a(:21)
at com.android.tools.r8.utils.L0.b(:7)
at com.android.tools.r8.utils.L0.a(:27)
at com.android.tools.r8.utils.L0.a(:10)
at java.util.concurrent.ConcurrentHashMap.merge(ConcurrentHashMap.java:1990)
at com.android.tools.r8.utils.L0.a(:6)
at com.android.tools.r8.graph.D0$c.f(:3)
at com.android.tools.r8.dex.a.a(:83)
at com.android.tools.r8.dex.a.a(:10)
at com.android.tools.r8.D8.d(:6)
at com.android.tools.r8.D8.b(:1)
at com.android.tools.r8.utils.W.a(:30)
... 35 more

:app:mergeProjectDexDebug spend 560ms
Task spend time:
147ms	:app:processDebugManifest
64ms	:app:mergeDebugResources
1097ms	:app:processDebugResources
1952ms	:app:kaptGenerateStubsDebugKotlin
121ms	:app:javaPreCompileDebug
645ms	:app:mergeDebugNativeLibs
977ms	:app:kaptDebugKotlin
4456ms	:app:compileDebugKotlin
148ms	:app:compileDebugJavaWithJavac
1140ms	:app:transformClassesWithAspectjForDebug
8485ms	:app:dexBuilderDebug
103ms	:app:mergeDebugJavaResource
560ms	:app:mergeProjectDexDebug
FAILURE: Build failed with an exception.

What went wrong:
Execution failed for task ':app:mergeProjectDexDebug'.

A failure occurred while executing com.android.build.gradle.internal.tasks.Workers$ActionFacade
com.android.builder.dexing.DexArchiveMergerException: Error while merging dex archives:
Type retrofit2.CompletableFutureCallAdapterFactory$ResponseCallAdapter is defined multiple times: /Users/avery/AndroidStudioProjects/NewsPlus/app/build/intermediates/mixed_scope_dex_archive/debug/out/cbf7c823e7225e02a34d087be63f58c4e3f372e4b663235e195d08fd9398358c_2.jar:classes.dex, /Users/avery/AndroidStudioProjects/NewsPlus/app/build/intermediates/mixed_scope_dex_archive/debug/out/b6d20cdf8a2862d83190fc0b72c48af7169626e3e784971edbcc1c3ffa23e7c8_2.jar:classes.dex
Learn how to resolve the issue at https://developer.android.com/studio/build/dependencies#duplicate_classes.

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 7.0.
Use '--warning-mode all' to show the individual deprecation warnings.
See https://docs.gradle.org/6.1.1/userguide/command_line_interface.html#sec:command_line_warnings
BUILD FAILED in 20s
24 actionable tasks: 24 executed

Hi!
Could you provide please more info:

what version of android gradle plugin do you use?
what version of aspectj plugin do you use?
maybe a minimal reproduceable project you can share?

Hi!
gradle plugin & aspectJ plugin version:
classpath "com.android.tools.build:gradle:4.0.0"
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
classpath 'com.archinamon:android-gradle-aspectj:4.2.1'

android version:
android {
    compileSdkVersion 29
    buildToolsVersion "29.0.3"

    defaultConfig {
        applicationId "com.tencent.wesee.aop"
        minSdkVersion 19
        targetSdkVersion 29
        versionCode 1
        versionName "1.0"
        multiDexEnabled true

        testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
    }

    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }
}

This is also happening for me. It seems to be linked to having multiple variants and using includeJars - possibly the jars are being included for each variant?

Note, after a little more investigation the additional variants aren't the issue. I've opened a PR that includes a failing test showing the issue ☝
I'm happy to fix this, but any pointers would be helpful - from what I can tell the processed classes are being included along with the original dependency when the multi dexing is being done?

I have pinpointed the problem as the addition of copying the include jars that resolves #108 and updated my PR to revert this change and add a test for both this issue and 108.
(@Archinamon please review when you can)

@superafroman
Hi! Sorry for being offline for so long. I've took a look at your code. It seems have to work, but I'll test in my production project first before commiting public packages.
Thank's for your contribution!

@superafroman This change, which was released in the 4.3.0 version of the plugin today, seems to have re-introduced issue #108
AGP v4.1.0 and android-gradle-aspectj v3.4.0
This branch on my sample project is exhibiting the issue for reference:
https://github.com/jdvp/AndroidAspectExample/tree/feature/agp-4.1.0
Stacktrace if interested:
E/AndroidRuntime: FATAL EXCEPTION: main
    Process: me.jdvp.androidaspectexample.debug, PID: 5225
    java.lang.NoClassDefFoundError: Failed resolution of: Landroidx/appcompat/R$drawable;
        at androidx.appcompat.widget.AppCompatDrawableManager$1.<init>(AppCompatDrawableManager.java:63)
        at androidx.appcompat.widget.AppCompatDrawableManager.preload(AppCompatDrawableManager.java:57)
        at androidx.appcompat.app.AppCompatDelegateImpl.<init>(AppCompatDelegateImpl.java:336)
        at androidx.appcompat.app.AppCompatDelegateImpl.<init>(AppCompatDelegateImpl.java:286)
        at androidx.appcompat.app.AppCompatDelegate.create(AppCompatDelegate.java:230)
        at androidx.appcompat.app.AppCompatActivity.getDelegate(AppCompatActivity.java:554)
        at androidx.appcompat.app.AppCompatActivity.attachBaseContext(AppCompatActivity.java:107)
        at android.app.Activity.attach(Activity.java:7899)
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3401)
        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3601)
        at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:85)
        at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135)
        at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2066)
        at android.os.Handler.dispatchMessage(Handler.java:106)
        at android.os.Looper.loop(Looper.java:223)
        at android.app.ActivityThread.main(ActivityThread.java:7656)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947)
     Caused by: java.lang.ClassNotFoundException: Didn't find class "androidx.appcompat.R$drawable" on path: DexPathList[[zip file "/data/app/~~oR4sHx3yVPaRSB1KduWpUQ==/me.jdvp.androidaspectexample.debug-I1VyhpPc3vfvewIIUTYhow==/base.apk"],nativeLibraryDirectories=[/data/app/~~oR4sHx3yVPaRSB1KduWpUQ==/me.jdvp.androidaspectexample.debug-I1VyhpPc3vfvewIIUTYhow==/lib/x86, /system/lib, /system_ext/lib]]
        at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:207)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:379)

authors: Archinamon averyzhong jdvp superafroman

repo: Archinamon/android-gradle-aspectj


text:
Protecting users from making a 'non standard passphrase'

Currently when making a new address, a 12 word passphrase is shown. This makes the user believe that the standard accepted format is 12 words separated by spaces. However any string can be used to generate an address.
I think it might be better to add a checkbox, something like [ ] allow custom passphrase, and only if that is checked does it allow a non 12 word string. This helps with awareness of how the passphrases work, and also helps in case of typos. Right now if one of the 12 words contains a typo, a new address is generated, containing obviously 0 ark. This could potentially scare non technical adopters.
I also propose to add a text popup when the custom passphrase checkbox is checked, containing a short explanation on the standard generated 12 word passphrase format, and why a new address is generated when a typo is in the passphrase
Regards
Charles

As I see, you actually cant even put an custom passphrase in the desktop wallet. So this one here means to implement custom passphrase feature first and solving this with the mentioned design decision.
Problem would be the actual verifiying step (word 3, 6, 9) which indeed needs another verifying dialog for custom passphrases.
@fix is this feature wanted?

@fileninja In fact it is currently possible to use a custom passphrase, just enter the password you want in Import Account.. Maybe include a message indicating this possibility, but I think it is rather insecure

@fileninja yes use import account if you have a custom passphrase.

this is fixed in upcoming version thanks to https://github.com/ArkEcosystem/ark-desktop/pull/116
If you want to bypass this bip39, feel free to use "import account".

Closing it. @fileninja and @AbeIgnocious feel free to reopen it if you feel i miss a point

authors: AbeIgnocious fileninja fix luciorubeens

repo: ArkEcosystem/ark-desktop


text:
Idea's upcoming wallet release?

I love the option to put in your own background image. Great job!
Would it be possible to create a slideshow of background images if you point it to a directory with images?
And to make some images stand out better, it would be great if we could adjust the opacity of the information boxes.
Best regards,
M.

I don't think that feature would be a priority, but I do believe that the user should have more control on the style of the wallet, which would be great and I think is easy to implement.

authors: fluorine mycameratravels


text:
i can't set bluealsa to default

my .asoundrc is
pcm.bluealsa {
  type plug
  slave.pcm {
      type bluealsa
      device "CC:4B:73:3F:9E:49"
      profile "a2dp"
    }
}
pcm.!default {
    type plug
    slave.pcm {
      type bluealsa
      device "CC:4B:73:3F:9E:49"
      profile "a2dp"
    }
}

i can use command aplay -D bluealsa sound.wav to play sound.wav
but i can't use aplay -D default sound.wav to play sound.wav
It shows that Playing WAVE 'sound.wav' : Signed 16 bit Little Endian, Rate 8000 Hz, Stereo ,but  it didn't play the sound

This doesn't actually set it to the default device, you still have to specify the bluealsa device.  I'd like to get it working with Audacity, which has its own device scheme.  If there was a way to make bluealsa the default when you want then change it back when you want that would be the most transparent solution.

repo: Arkq/bluez-alsa


text:
Clean up code

scripts/chatManager.js and scripts/main.js code is really messy. It should be cleaned up and create clean, maintainable code.
Also, scripts/NotificationManager.js is not clean but, as far as I know, it is still work in progress.

For example, first functions of main.js are only used at index.html, and the last functions are only used at two-people-chat.html. Maybe we could separate those portions of code to include them only in the needed HTML files.


text:
mask or alpha channel support

First of all -- great work! keep on working on the project, we need more tools like this one.
I normally "clean" my dataset before training a splat by removing background and only keep pixels of an object I'm training.
Resulting dataset is in png format with alpha channel.
My approach works great with Postshot, but training wont work with brush, it looks like it only does one epoch, creating initial splat properties and than wont continue training without any error message or any other notification.
Can you comment on alpha channel support or may be mask support for training (really helps to focus process on pixels of the actual object you train, rather than background and save tone of time as there are no need to do cleaning after training).
BTW any plans to improve training speed?

     Running `target\debug\brush_bin.exe`
thread 'async-std/runtime' panicked at .cargo\git\checkouts\burn-178c6829f420dae1\9eb2578\crates\burn-tensor\src\tensor\data.rs:72:9:
assertion `left == right` failed: Shape [1920, 1080, 4] is invalid for input of size 6220800
  left: 8294400
 right: 6220800

image_to_tensor in brush_train\src\image.rs needs to be tweaked a bit:
pub fn image_to_tensor<B: Backend>(image: &DynamicImage, device: &B::Device) -> Tensor<B, 3> {
    let (w, h) = (image.width(), image.height());
    let num_channels = image.color().channel_count();

    let data = match num_channels {
        3 => image.to_rgb32f().into_vec(),
        4 => image.to_rgba32f().into_vec(),
        _ => {
            println!("Unsupported number of channels: {}. Converting to RGB.", num_channels);
            image.to_rgb32f().into_vec() // Convert to RGB as a fallback
        }
    };

    let tensor_data = TensorData::new(data, [h as usize, w as usize, num_channels as usize]);
    Tensor::from_data(tensor_data, device)
}

but it still seems to be ignoring alpha...
and I frequently get crashes:
> cargo run
    Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.90s
     Running `target\debug\brush_bin.exe`
error: process didn't exit successfully: `target\debug\brush_bin.exe` (exit code: 0xc0000094, STATUS_INTEGER_DIVIDE_BY_ZERO)

Lmk if that's working!

Did a quick test, it works now!
Need to do more testing but at first glance its good.
One thing I've noticed though is that dataset image view now always keeps square aspect ratio and weirdly ruins photo view proportions

@grgkopanas That's how it used to work! But imo you're still throwing information in that case. Say for the synthetic blender scenes with a white background, white gaussians would appear which for one viewpoint explain some of the background, which isn't ideal. There's more info in the fact that the alpha should be 0 there.
Gsplat used to always composite a background and add custom gradients for that, but now also has an option to render without compositing a background, makes more sense to me.
I maybe should add an option for random backgrounds again, but, that could be done as a normal tensor op rather than compositing in the custom kernel, shouldn't be super expensive.
@dvoidus Excellent! And woops yeah I see what you mean, fixed now.

fixed now
tested, confirm
@ArthurBrussee thanks! feel free to close this one or keep for further discussion about alpha channel training

authors: ArthurBrussee dvoidus

repo: ArthurBrussee/brush


text:
support for phx-feedback-for

Any way you can add support for phx-feedback-for to hide error messages for inputs that were not touched yet?
I kinda made it work just by adding it here but the input was still red, so it seems it needs more changes elsewhere.
Adding to that, when I submit a form without changing any of its inputs or when I submit it with errors, all error messages disappear, is it expected?
https://user-images.githubusercontent.com/1869525/210541896-91c6c3ab-d461-45d5-8d29-21f5e86eb919.mov

Could it be that you are changing the changeset action? I am seeing unexpected behavior too with this code:
changeset =
  %Definition{}
  |> Definitions.change(definition_params)
  |> Map.put(:action, :insert)

The helper function get_field_state_for_changeset checks for changeset.action === :validate. This may be too strict.

Fixed via #13.
Update to these versions:

primer_live: 0.1.12
npm dependency primer-live: 0.1.26

authors: ArthurClemens evaldobratti


text:
Rotation issue

First, this is a fantastic lib.
The issue I am facing is that the crop rect changes during rotation.
I would expect the crop rect stays in place, and the image is zoom out/in to make enough room for the crop rect.
Setup of the CropImageView
        viewPhotoCropping = new CropImageView(this);         viewPhotoCropping.setGuidelines(CropImageView.Guidelines.ON);         viewPhotoCropping.setShowProgressBar(false);         viewPhotoCropping.setAutoZoomEnabled(true);         viewPhotoCropping.setScaleType(CropImageView.ScaleType.CENTER_CROP);
Rotate
viewPhotoCropping.setRotatedDegrees(-degree);
Video of the issue
In some instances, the crop rect actually went outside of the picture too.

oh.. buggy bug, I will look into it.
Huge thanks fir the video!

Have you fixed the bug? @ArthurHub

hello ！i meet the bug too when rotating image by 330 degress-359 degress （-30~0）

Anybody fix this?

This issue occurs from commit - 58f11a460048102c8b7529baecdbd35cfe67b181 (streamline crop rectangle change using inverse matrix to fix crop image view resize corrupts crop rectangle window)
I tried to revert it and the issue was fixed.

Any update on this issue

authors: Andrec-Dxs ArthurHub SohailYaseen a371166028 hoangkt57 mikechoch uDevel

repo: ArthurHub/Android-Image-Cropper


text:
Back Button press than crash

Caused by: java.lang.IllegalArgumentException: Parameter specified as non-null is null: method kotlin.jvm.internal.Intrinsics.checkParameterIsNotNull, parameter data

is it reproducible in the sample app?

authors: ArthurHub kotlinkarun


text:
Problem Check failed: error == cudaSuccess (2 vs. 0) out of memory

I'm trying to reproduce the results of CRL, but when I run the test_kitti.m on matlab, I'm having the error bellow:
[...]
predict_flow3_s2_0_split
I0322 15:41:00.695804  2244 net.cpp:753] Ignoring source layer Downsample4_s2
I0322 15:41:00.695807  2244 net.cpp:753] Ignoring source layer flow_loss3_s2
I0322 15:41:00.695911  2244 net.cpp:753] Ignoring source layer Convolution8_s2_Convolution8_s2_0_split
I0322 15:41:00.695919  2244 net.cpp:753] Ignoring source layer Downsample5_s2
I0322 15:41:00.695920  2244 net.cpp:753] Ignoring source layer flow_loss2_s2
W0322 15:41:00.894263  2244 net.hpp:41] DEPRECATED: ForwardPrefilled() will be removed in a future version. Use Forward().
F0322 15:41:03.907975  2244 syncedmem.cpp:64] Check failed: error == cudaSuccess (2 vs. 0)  out of memory
*** Check failure stack trace: ***
Killed
This error appears on the prompt, since I opened matlab with the prompt, and the error happens in the line of the test_kitti.m file on matlab:
net.forward_prefilled();
It crashes the program and force me to close Matlab.
Has anyone ever had this error and knows a solution?
Tks.

Hello,
Did you manage to solve your problem. I am having the same issue here.
please Help
Thanks

Hi, if I remember well, it was really a problem of memory consuming on this process. While executing this line, before the error appears, try to check for the memory usage of your videocard.

repo: Artifineuro/crl


text:
🛑 API - Spain (ES) is down

In 427adad, API - Spain (ES) ($URL_API) was down:

HTTP code: 0
Response time: 0 ms

Resolved: API - Spain (ES) is back up in b5f5ebc.

repo: ArturiaPendragon/uptime-status


text:
Dealing with sparsity

Hi, question about how you dealt with sparsity.
In input_pipe.py, there are parameters like "train_completeness_threshold" which determines how many 0's are allowed. It looks like the default is 1 for this value. Further down in the code, there is:
self.max_train_empty = int(round(train_window * (1 - train_completeness_threshold)))
So with the default value of 1, this makes max_train_empty default to 0, i.e. the randomly cropped time series must be completely filled [no missing values] in order to be used in training.
So is this what you did to get your best results, you discarded any time series crop which had holes in it?
Of the ~145 thousand time series in train_1.csv, it looks like about 2/3 of them are dense [no missing values], and any random crop of a dense series will remain dense, and a random crop of a series with holes may get a portion that is dense, so I guess even with the max_train_empty = 0 you still get to use most of the data, right?

Final version has train_completeness_threshold=0.01, it filters out only almost empty series. I found that spareness has regularizing effect for training, so there is no reason to filter out sparse series.

repo: Arturus/kaggle-web-traffic


text:
Adding support with multiple volume with the same name on different Vserver

Bug description
when we have for exemple test volume on different vserver
Exemple :
SVM1 : test
SVM: test
we have some issue with Get-Ncvol -volume test without vserver context
COMMENTAIRES : [ 12:24:33:080 ] [ Document ] - Collecting ONTAP Vserver volumes snapshot information.
AVERTISSEMENT : [ 12:24:33:961 ] [ Document ] - Impossible de traiter la transformation d'argument sur le paramètre « TEXT ». Impossible de convertir la valeur en type System.String.
Get-NcEfficiency : La référence d'objet n'est pas définie à une instance d'un objet.
Au caractère C:\Users\toto\Documents\WindowsPowerShell\Modules\AsBuiltReport.NetApp.ONTAP\0.6.7\Src\Public\Invoke-AsBuiltReport.NetApp.ONTAP.ps1:645 : 37

...         if (Get-NcEfficiency -Volume $VolFilter.Name -Controller $Arr ...

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

CategoryInfo          : InvalidOperation : (:NcController) [Get-NcEfficiency], NullReferenceException
FullyQualifiedErrorId : ApiException,DataONTAP.C.PowerShell.SDK.Cmdlets.Toolkit.Efficiency.GetNcEfficiency

Command-line input
New-AsBuiltReport -Report 'NetApp.ONTAP' -Target $NetApp -credential $Credential -Format 'Word','HTML' -AsBuiltConfigFilePath $varCheminRepertoireScript'\Config\config.json' -ReportConfigFilePath $varCheminRepertoireScript'\Config\AsBuiltReport.NetApp.ONTAP.json' -OutputFolderPath $varCheminRepertoireScript'\Output' -Filename $NetApp -EnableHealthCheck -Timestamp -verbose -Debug
Steps to reproduce

create some volume with same name on different SVM
generate report

Expected behaviour
No Warning
Screenshots
No response
Operating System
Windows
PowerShell Version
Name                           Value

PSVersion                      5.1.17763.5830
PSEdition                      Desktop
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0...}
BuildVersion                   10.0.17763.5830
CLRVersion                     4.0.30319.42000
WSManStackVersion              3.0
PSRemotingProtocolVersion      2.3
SerializationVersion           1.1.0.1
PowerShell Modules
Name                       Version

AsBuiltReport.NetApp.ONTAP 0.6.7
PScribo                    0.10.0
Additional Context
Fix will be  available in few days
Before submitting

[X] I have read and followed the bug reporting guidelines.
[X] I have read the documentation, and referred to the known issues before submitting this bug report.
[X] I have checked for previously opened & closed issues before submitting this bug report.

Try to fix it.
Let me know if it's OK
Thanks

Good catch. The code looks good to me. Thank you!

authors: MicKBfr rebelinux


text:
NEW FEATURE:  Add theme option for automatic theme based on light or dark mode

Is your feature request related to a problem? Please describe.
not a problem
Describe the solution you'd like
would love to have support for themes to have automatic switching based on light or dark mode.
Describe alternatives you've considered
Idk
Additional context
idg if there's any.

Can't build a feature around this. But here is the hack.

Activity Graph 📈

just replace your username with mine.

Thank you. :)


text:
Clarification Needed: Gemspec Dependency Range vs. Faraday Compatibility

Hello Team,
I noticed that in the gemspec, Faraday is specified to be greater than 1.10, however, the assemblyai gem seems to require Faraday version 2.7 and above. Is this intentional? It appears there might be a discrepancy between the specified dependency range and the actual compatibility with Faraday versions. Could you please clarify this issue?
Thank you.

Hi there @srividb01 I believe the discrepancy between the repo and rubygems.org was due to a release of the gem not having happened!
You should be set with the new release from today: https://rubygems.org/gems/assemblyai/versions/1.0.0.pre.beta.2

repo: AssemblyAI/assemblyai-ruby-sdk


text:
Create project vision

Requirements

Create document that provides some details on project description & features

test


text:
Missing tag for 2.7.0.

NPM has 2.7.0 listed as the most recent release of this project, but there is no corresponding tag for that release. By extension, there are also no release notes for that release.

Hey there! We indeed did not have pushed that tags. So I just did (https://github.com/Astrocoders/reason-apollo-hooks/releases/tag/v2.7.0). Thanks for pointing that out. We are setting up a better change log system with lerna and conventional commits in the meanwhile

We'll know be adopting a better release notes format
https://github.com/Astrocoders/reason-apollo-hooks/releases/tag/3.0.0

authors: fakenickels nirvdrum

repo: Astrocoders/reason-apollo-hooks


text:
leaflet js and angular 2 load cutom map ang capture click event on map

i need to implement below functions on angular 2 app ,i have written these functions usung js and i need to move those to angular app.
var imageUrl = 'http://www.lib.utexas.edu/maps/historical/newark_nj_1922.jpg',
			imageBounds = [[40.712216, -74.22655], [40.773941, -74.12544]];
			L.imageOverlay(imageUrl, imageBounds).addTo(mymap);

function onMapClick(e) {    // alert("You clicked the map at " + e.latlng);     popup         .setLatLng(e.latlng)         .setContent("You clicked the map at " + e.latlng.toString())         .openOn(mymap); }
mymap.on('click', onMapClick);

This would be more appropriate to ask on Stack Overflow. Use the ngx-leaflet, leaflet, and angular tags. Thanks!

authors: reblace sujanliyanagmage

repo: Asymmetrik/ngx-leaflet


text:
GroupBy Deep works for groupBy('$v["A"]', '$v["B"]') but crashes for groupBy('$v["A"]', '$v["B"]', '$v["C"]')

Hi!
Beautiful package, but I have probably an easy roadblock to solve since this morning, please let me explain my scenario, I am gathering the following array result (Role/Area/Permissions) from a Laravel Builder Query:
array
  0 =>
    array
      'RoleName' => string 'Root'
      'AreaName' => string 'Global'
      'PermissionName' => string 'Post'
  1 =>
    array (size=3)
      'RoleName' => string 'Root'
      'AreaName' => string 'Global'
      'PermissionName' => string 'Delete'
  3 =>
    array (size=3)
      'RoleName' => string 'Editor'
      'AreaName' => string 'Europe'
      'PermissionName' => string 'Index'
  4 =>
    array (size=3)
      'RoleName' => string 'Editor'
      'AreaName' => string 'Europe'
      'PermissionName' => string 'Post'

and I was wondering how to produce the following array result using your groupBy method:
Root
    Global
        Post
        Delete
        ...

...

Editor
    Europe
        Index
        Area
        ...

This what I am currently using right now:
        $roles = from($permissions)
            ->groupBy('$v["RoleName"]', '$v["AreaName"]', '$v["PermissionName"]')
            ->toArray();

Thanks in advance!

I have no idea how you managed to get groupBy('$v["RoleName"]', '$v["AreaName"]', '$v["PermissionName"]') to work, because it shouldn't. :laughing: The arguments aren't just "key selectors", they're "key selector" (value to group by), "value selector" (value of item) and "result selector" (two functions joining results from key and value selectors), each with distinct functionality (please read PHPDoc).
What you need is nested grouping. Let's assume:
$items = [
    [ 'category' => 'Foos', 'group' => 'Big foos', 'name' => 'Foo 1' ],
    [ 'category' => 'Foos', 'group' => 'Big foos', 'name' => 'Foo 2' ],
    [ 'category' => 'Foos', 'group' => 'Small foos', 'name' => 'Foo 3' ],
    [ 'category' => 'Bars', 'group' => 'Big bars', 'name' => 'Bar A' ],
    [ 'category' => 'Bars', 'group' => 'Small bars', 'name' => 'Bar B' ],
    [ 'category' => 'Bars', 'group' => 'Small bars', 'name' => 'Bar C' ],
];

First you need to group by category. In the result selector for category's items, you group sequence again, by group.
$grouped = from($items)
    ->groupBy(
        function ($item) { return $item['category']; },
        null,
        function ($subitems, $category) {
            return from($subitems)
                ->groupBy(
                    function ($subitem) { return $subitem['group']; }
                );
        });
// -or-
$grouped = from($items)
    ->groupBy(
        '$v["category"]', '$v',
        function ($subitems) {
            return from($subitems)->groupBy('$v["group"]');
        });

print_r($grouped->toArrayDeep());

Output:
Array
(
    [Foos] => Array
        (
            [Big foos] => Array
                (
                    [0] => Array
                        (
                            [category] => Foos
                            [group] => Big foos
                            [name] => Foo 1
                        )
                    [1] => Array
                        (
                            [category] => Foos
                            [group] => Big foos
                            [name] => Foo 2
                        )
                )
            [Small foos] => Array
                (
                    [0] => Array
                        (
                            [category] => Foos
                            [group] => Small foos
                            [name] => Foo 3
                        )
                )
        )
    [Bars] => Array
        (
            [Big bars] => Array
                (
                    [0] => Array
                        (
                            [category] => Bars
                            [group] => Big bars
                            [name] => Bar A
                        )
                )
            [Small bars] => Array
                (
                    [0] => Array
                        (
                            [category] => Bars
                            [group] => Small bars
                            [name] => Bar B
                        )
                    [1] => Array
                        (
                            [category] => Bars
                            [group] => Small bars
                            [name] => Bar C
                        )
                )
        )
)

null as key selector means "use default", in this case just return value from an array's item (function ($item) { return $item['item']; } or '$v'). I haven't specified result selectors for keys, the default is used too (the value from key selector is used as item key).
Here is a more complex example which uses all arguments of the groupBy method:
$grouped = from($items)
    ->groupBy(
        function ($item) { return $item['category']; },
        function ($item) { return $item; },
        function ($subitems, $category) {
            return [
                'category' => $category,
                'items' => from($subitems)
                    ->groupBy(
                        function ($subitem) { return $subitem['group']; },
                        function ($subitem) { return $subitem['name']; },
                        function ($subsubitems, $group) {
                            return [
                                'group' => $group,
                                'items' => $subsubitems,
                            ];
                        },
                        Functions::increment()
                    )
            ];
        },
        Functions::increment());
// -or-
$grouped = from($items)
    ->groupBy(
        '$v["category"]', '$v',
        function ($subitems, $category) {
            return [
                'category' => $category,
                'items' => from($subitems)
                    ->groupBy(
                        '$v["group"]', '$v["name"]',
                        function ($subsubitems, $group) {
                            return [
                                'group' => $group,
                                'items' => $subsubitems,
                            ];
                        },
                        Functions::increment()
                    )
            ];
        },
        Functions::increment());

print_r($grouped->toArrayDeep());

Output:
Array
(
    [0] => Array
        (
            [category] => Foos
            [items] => Array
                (
                    [0] => Array
                        (
                            [group] => Big foos
                            [items] => Array
                                (
                                    [0] => Foo 1
                                    [1] => Foo 2
                                )
                        )
                    [1] => Array
                        (
                            [group] => Small foos
                            [items] => Array
                                (
                                    [0] => Foo 3
                                )
                        )
                )
        )
    [1] => Array
        (
            [category] => Bars
            [items] => Array
                (
                    [0] => Array
                        (
                            [group] => Big bars
                            [items] => Array
                                (
                                    [0] => Bar A
                                )
                        )
                    [1] => Array
                        (
                            [group] => Small bars
                            [items] => Array
                                (
                                    [0] => Bar B
                                    [1] => Bar C
                                )
                        )
                )
        )
)

If you need three levels of grouping, the same logic applies:
$grouped = from($items)
    ->groupBy(
        function ($item) { return $item['category']; },
        null,
        function ($catitems) {
            return from($catitems)
                ->groupBy(
                    function ($item) { return $item['group']; },
                    null,
                    function ($groupitems) {
                        return from($groupitems)
                            ->groupBy(
                                function ($item) { return $item['name']; }
                            );
                    }
                );
        });
// -or-
$grouped = from($items)
    ->groupBy(
        '$v["category"]', '$v',
        function ($catitems) {
            return from($catitems)
                ->groupBy(
                    '$v["group"]', '$v',
                    function ($groupitems) {
                        return from($groupitems)->groupBy(
                            '$v["name"]', '$v'
                        );
                    });
        });

Grouping and joining methods are the most complex in LINQ, so it takes some time to get used to them fully.

Grouping by multiple keys produces a bit too nested code, so you can write helper methods like this:
function group_by_multiple ($items, array $keySelectors, $valueSelector = null)
{
    $resultSelector = null;
    foreach (array_reverse($keySelectors) as $keySelector) {
        $resultSelector = function ($subitems) use ($keySelector, $valueSelector, $resultSelector) {
            return from($subitems)->groupBy(
                $keySelector,
                $resultSelector == null ? $valueSelector : null,
                $resultSelector);
        };
    }
    return $resultSelector($items);
}

print_r(
    group_by_multiple($items,
        [ '$v["category"]', '$v["group"]', '$v["name"]' ],
        '$v["name"]'
    )->toArrayDeep());

Amazing, doing my homework, thank you @Athari!

authors: Athari josoroma

repo: Athari/YaLinqo


text:
[BUG]: update fail, levon signature

Athena OS version
Athena os
Which environment or technology are you using?

[X] Baremetal
[ ] VirtualBox Virtual Machine
[ ] VMware Virtual Machine
[ ] Hyper-V Virtual Machine
[ ] QEMU/KVM
[ ] Parallels
[ ] UTM
[ ] Container
[ ] WSL

Kernel version
6.1.70-lts
Involved software
No response
Repro steps
When updating getting error levon signature.
Latest iso just downloaded it
Fresh installation.
Even in the installation process i saw these error when installer tried to install packages
Expected behavior
To update
Actual behavior
Error
Diagnostic logs
No response

Download this file and
chmod + x strap.sh
sudo ./strap.sh
sudo pacman -Syy

I uploaded a new ISO where I removed BA. Download it and try.

Both. Use the link in the athenaos.org download link.

repo: Athena-OS/athena-iso


text:
Changeable Favicons

Is your feature request related to a problem? Please describe.
No.
Describe the solution you'd like
It's not a problem.
Describe alternatives you've considered
Changeable favicons.
some sites use different hosts and give a weird server icon or the site doesn't have any rss feed support so I have to use google rss and google has a weird icon. so it would be great if you add a changeable favicon feature.
Additional context
the current favicon mechanism attracts low quality icons. it would be much better if you use something like this.

What is Google RSS? Do you have an example of a feed with a bad favicon?

For example, this site  does not have RSS support. So what we gonna do about it.. We can use google rss like this. The annoying thing is the google not serve the sites icon on the feed. We seeing the google news icon on the reader. That's why i want that feature. And other thing is, poor quality with favicons. This is the normal way and lets see the how its look like. I stole the url on the google news page. This is much more quality.

Oh okay so you're using a feed of a search result on Google News and you'd like to change it's favicon. Why not :)

authors: Athou bakinazik

repo: Athou/commafeed


text:
[Tree][Closure] - Entity Inheritance can break closure-trees on persist.

I'm working on an application that deals with inventory locations, as well as other kind of "containers" for inventory (some physical, like a carton or shipping container, some virtual, like a company).
So I've got a superclass "Container", and a subclass "Location" (which is just a subclass of container with a couple of extra properties).
Closure table breaks (in EntityManager::flush()) when I do something like this:

$em->beginTransaction();

$ss = new Location();
$ss->setIdentifier('Shipment Staging Area');
$em->persist($ss);

$picking = new Location();
$picking->setIdentifier('Picking Area');
$em->persist($picking);

$warehouse = new Location();
$warehouse->setIdentifier('Warehouse');
$em->persist($warehouse);

$universe = new Container();
$universe->setIdentifier('Universe');
$em->persist($universe);

$warehouse->addContainer($picking);
$warehouse->addContainer($ss);
$universe->addContainer($warehouse);

$em->flush();

resulting in:
Doctrine\ORM\ORMInvalidArgumentException
 Binding entities to query parameters only allowed for entities that have an identifier.

The problem is that the UoW "chunks" inserts by class, and that's where postPersist events are triggered.
This means that when postPersist fires for Locations that are children of "Universe" (a container, not a location), "Universe" hasn't been persisted yet, and thus has no identifier.
Strategy\ORM\Closure expects all nodes have been persisted on postPersist.  But if you've got subclasses, a node's parent might not be persisted yet, since it's going to persisted on a future iteration of UnitOfWork::executeInserts($class)

Unfortunately, I don't see a way around this yet.  If anyone has a pointer, I'd be happy to put together a PR.  But as of yet, I don't see a solution.  I had originally thought onFlush would happen later, but doesn't appear true.
The most obvious solution would be for Doctrine itself to "chunk" by the highest entity class in the inheritance hierarchy.  But I'm not sure what side-effects such a change might have, since I'm not sure about the reasoning behind that "chunking" to begin with.

The workaround is to flush after each persist.
I think changing the postPersist event to postFlush would fix this problem.

authors: mjpvandenberg timdev


text:
Turn off Softdelete filter for specific onetomany/manytoone relations?

Hi,
I have a system where I have a Client entity and a Form entity. Every client can have multiple filled out forms.
I use the softdelete function on both entities.
Now when I have a page where I want to list all the clients with their filled out forms I do not want to see the deleted clients (filter should be on), but I would like to see the filled out forms, even if they are deleted using softdelete (filter should be off).
However, I generate the list of filledout forms in twig using
{% for form  in client.getForms %}

I can disable the softdelete filter in the Controller by using
$em->getFilters()->disable('softdeleteable');

But then I will also see all the deleted clients, which I don't want.
Is there a way to add a "disable filter" annotation in the entity?
Something like:
    /**
     * @var $forms
     * @Gedmo\SoftDeleteable(enabled=false)
     * @ORM\OneToMany(targetEntity="Form", mappedBy="client")
     */
    private $forms;

In @oscargala's case (for guys searching) he can still disable the filter for a given entity:
$em->getFilters()->getFilter('softdeleteable')->disableForEntity(Form::class);

Reference to @Glideh 's comment:
https://github.com/Atlantic18/DoctrineExtensions/blob/v2.4.x/lib/Gedmo/SoftDeleteable/Filter/SoftDeleteableFilter.php#L72

authors: Glideh oscargala zaiddabaeen


text:
Error panel covers the entire screen (doesn't have a proper max size)

For an file that has a lot of errors (maybe because I accidentally removed a quote mark), Linter fills up the error screen to cover the entire window, making it impossible to even edit the file and remove the error. The only solution is either to undo the change or disable the use of the error panel.

It's actually an error in your theme :)

Closing as invalid. Feel free to continue the discussion.

Uh I'm using the default theme, One Dark, so if that's broken...

I am unable to reproduce this error on the same theme :)
For me, it's max-height works. What's your atom version?

v1.0.2.

repo: AtomLinter/Linter


text:
MC: Timezone dropdown menu

Figma (at bottom):
https://www.figma.com/file/bZh7tOiLm6Ls9Hl4RL6qMC5X/Augur-Redesign?node-id=8219%3A266057
Notes

Users current timezone and UTC 0 are displayed at the top of the list
If user has entered a date, timezone list will filter to only showing DST timezones that fall on that date

See Tom about new date/time library to replace moment.js

use moment and moment-timezone to create timezone list to populate filterable dropdown.
Allow user to type in string to filter the timezone list.
Seed the timezone offset with reporting begins date to show correct offsets.

@bthaile -- Does this handle the case with only showing the appropriate timezones for the time of the year? E.g. showing PST vs PDT based on the market end time?

It uses timezone locations and does change the offset based on date time picker value.

@bthaile -- You're the man!

authors: bthaile cillianhunter0 pgebheim

repo: AugurProject/augur


text:
check to see if account has token approval before trying to swap

added checkSetApprovalAmount to check to make sure users have token allowance before making a swap

Will the check prompt the user to sign a transaction if they need to have approval?
If so is the user warned?

authors: andrewdamelio bthaile


text:
Added static typing to pydicer modules

Hi @pchlap,
Just thought I'd go ahead and add static typing to all of Pydicer and get back into contributing to the repo :)
Pytest was happy so I assume that the type additions are okay for now, but if anything pops up during real world usage, I'll be happy to fix things in the codebase. Not sure if additional tests will be needed for this static typing, may well be but let me know what you think...
I'll have a look around the issues we've got and get back into the swing of things. If you're happy with the types being added, happy to merge this through. Thanks!

Thanks a lot @dalmouiee, this is great.
Yeah given that all the tests are passing I don't see any issues here. I don't believe that static types are actually enforced when running Python code. But they will flag when unexpected types are being used by linters, so this will be super useful for anyone who uses PyDicer in their projects.

authors: dalmouiee pchlap

repo: AustralianCancerDataNetwork/pydicer


text:
What is the difference with ragas?

A detailed section in your docs or Readme would be helpful to understand how does ragrank differentiate with ragas. For example in terms of types of metrics or accuracy or latency or support for integrations?

Thanks again for the suggestion @ogencoglu . We will definitely add a comparison between ragrank and all of the other tools out there for evaluation (including ragas, uptrain, trulens, ...). it will be available from the next release of the package.

authors: izam-mohammed ogencoglu

repo: Auto-Playground/ragrank


text:
Prometheus datasource legend title issue

I was having an issue with the following line. Even when inputting a suffix alias nothing was added to the title of my time series.
I solved it by changing
https://github.com/AutohomeCorp/autohome-compareQueries-datasource/blob/d03bb808f97de59bc20aaa54febb89f3ba97003d/dist/datasource.js#L138
to  line.title = line.title + '_' + timeShiftAlias
I also changed this in the line above: line.title = line.title + '_' + timeShiftValue
I didn't create a pull request since I'm not entirely sure about this...

Prometheus does have this problem, thank you for your suggestion


text:
Does kue fail after a few million tasks ?

Every time we reach about ~10,000,000 tasks, kue / redis seems to get stuck. It can add new tasks to redis but kue stops consuming tasks so they just pile up ...
I was wondering if anyone else has experienced this issue with kue in production and has an idea why kue would fail ?

I've a system processing around 500M < X < 1Billion  jobs now, processing 2M jobs/day.
If you search issues you find issues with current version on different environments => you should properly gaurd your worker's process method so that node.js process crashes, uncaught exceptions don't  take up job concurrency over time (ttl can be used for this also)
Please let me know details if the above didn't help you and you have an specific problem using Kue.

We process between 100-500k jobs/day.
Each task is isolated in it's own node.js domain so uncaught exceptions are handled and they are wrapped correctly in promises. We also call kue.shutdown on SIGTERM/SIGINT and on('uncaughtException'. I'm not sure what we could do better to cleanup, any ideas ?
Right now for example we have 0 tasks in active and ~25k in pending ... And kue isn't moving any tasks from pending to active even though there are 10 healthy worker processes running.
I would love to get your input, since you use kue at a larger scale than most that I've seen, but to date we've had a lot of issues with kue and it's rather frustrating

Right now for example we have 0 tasks in active and ~25k in pending ... And kue isn't moving any tasks from pending to active

So this shouldn't be a leaked worker issue, Are you calling watchStuckJobs()? What version of Redis are you on? Is that hosted? or local network?

there are 10 healthy worker processes running

If healthy, node process restarts should not help starting active jobs in your case.

We don't call watchStuckJobs(). We are running redis@2.8.12 on another remote server.

Actually we do call watchStuckJobs. (But not in each worker but in a single clock process that connects to the same redis DB).

there are 10 healthy worker processes running
If healthy, node process restarts should not help starting active jobs in your case.

Does restarting workers solve this?

We are running redis@2.8.12 on another remote server.

Are you experiencing poor connection/redis hiccups?

Restarting workers does not solve it. They execute some tasks but then stop. Besides that redis works perfectly fine (adding new tasks work).
I've been debugging and the issue seems to be with Worker.getJob(). My logs seem to indicate that the call to blpop never resolves. (Which obviously blocks everything). (By never resolves I mean that the callback doesn't get called).

please verify that the list being BLPOPed contains items.. ( for each job on your inactive, you should have a single item (=1) in it's corresponding list. Actually what watchStuckJob does is always checking if that list is sync with inactive ZSET (containing enough items to be BLPOPed)
if your issue is the helper list being emptied while you have jobs in inactive ZSET, I wonder why watchStuckJobs isn't working!!!

That's just of our task types. But as you can see it is not empty:
LLEN q:build:jobs
(integer) 12614

then shouldn't be BLPOP stuck there...!

@behrad That's what I don't understand, the redis docs say BLPOP only blocks if the list is empty. But I can assure you it blocks.
I added some logs to kue: https://github.com/GitbookIO/kue/blob/master/lib/queue/worker.js#L293-L323
And here's what we see in our logs:
Sep 24 22:22:57 gitbook-com app/worker.7:  !! Kue Worker: getJob: blpop key is: q:build:jobs
Sep 24 22:22:58 gitbook-com app/worker.2:  !! Kue Worker: getJob: Calling blpop
Sep 24 22:22:58 gitbook-com app/worker.2:  !! Kue Worker: getJob: blpop key is: q:build:jobs
Sep 24 22:22:58 gitbook-com app/worker.9:  !! Kue Worker: getJob: Calling blpop
Sep 24 22:22:58 gitbook-com app/worker.9:  !! Kue Worker: getJob: blpop key is: q:build:jobs
Sep 24 22:23:02 gitbook-com app/worker.9:  !! Kue Worker: getJob: Calling blpop
Sep 24 22:23:02 gitbook-com app/worker.9:  !! Kue Worker: getJob: blpop key is: q:build:jobs
Sep 24 22:23:02 gitbook-com app/worker.8:  !! Kue Worker: getJob: Calling blpop
Sep 24 22:23:02 gitbook-com app/worker.8:  !! Kue Worker: getJob: blpop key is: q:build:jobs
Sep 24 22:23:02 gitbook-com app/worker.9:  !! Kue Worker: getJob: Calling blpop
Sep 24 22:23:02 gitbook-com app/worker.9:  !! Kue Worker: getJob: blpop key is: q:build:jobs
Sep 24 22:23:05 gitbook-com app/worker.9:  !! Kue Worker: getJob: Calling blpop
Sep 24 22:23:05 gitbook-com app/worker.9:  !! Kue Worker: getJob: blpop key is: q:build:jobs
Sep 24 22:23:05 gitbook-com app/worker.4:  !! Kue Worker: getJob: Calling blpop
Sep 24 22:23:05 gitbook-com app/worker.4:  !! Kue Worker: getJob: blpop key is: q:build:jobs
Sep 24 22:23:09 gitbook-com app/worker.9:  !! Kue Worker: getJob: Calling blpop
Sep 24 22:23:09 gitbook-com app/worker.9:  !! Kue Worker: getJob: blpop key is: q:build:jobs
Sep 24 22:23:10 gitbook-com app/worker.2:  !! Kue Worker: getJob: Calling blpop
Sep 24 22:23:10 gitbook-com app/worker.2:  !! Kue Worker: getJob: blpop key is: q:build:jobs
Sep 24 22:23:10 gitbook-com app/worker.9:  !! Kue Worker: getJob: Calling blpop
Sep 24 22:23:10 gitbook-com app/worker.9:  !! Kue Worker: getJob: blpop key is: q:build:jobs
Sep 24 22:23:10 gitbook-com app/worker.9:  !! Kue Worker: getJob: Calling blpop
Sep 24 22:23:10 gitbook-com app/worker.9:  !! Kue Worker: getJob: blpop key is: q:build:jobs
Sep 24 22:23:17 gitbook-com app/worker.4:  !! Kue Worker: getJob: Calling blpop
Sep 24 22:23:17 gitbook-com app/worker.4:  !! Kue Worker: getJob: blpop key is: q:build:jobs
Sep 24 22:23:19 gitbook-com app/worker.5:  !! Kue Worker: getJob: Calling blpop
Sep 24 22:23:19 gitbook-com app/worker.5:  !! Kue Worker: getJob: blpop key is: q:build:jobs
Sep 24 22:23:21 gitbook-com app/worker.10:  !! Kue Worker: getJob: Calling blpop
Sep 24 22:23:21 gitbook-com app/worker.10:  !! Kue Worker: getJob: blpop key is: q:build:jobs
Sep 24 22:23:22 gitbook-com app/worker.6:  !! Kue Worker: getJob: Calling blpop

If calling blpop worked, we should see calling zpop or blpop error logged.
And if I check in redis, I see that the list isn't empty:
LLEN q:build:jobs
(integer) 13111

Can you confirm the response from executing the BLPOP command from redis-cli ?
as a side note: Are you also using TTL ?

Yep, I just tried running BLPOP from redis-cli and it works:
BLPOP q:build:jobs 0
1) "q:build:jobs"
2) "1"

There must be some error with the redis client (our redis client is 0.12.1)
We don't use TTL.

What's even stranger ... Is that calling blpop from the redis client (locally) using the same version and host works.
Here's the test code:
var redis = require('redis');
var log = console.log.bind(console);

var opts = {
    'port': 17327,
    'host': '{HOST}',
    'auth': '{PASS}',
    'options': {
        'no_ready_check': true
    }
};

var client = redis.createClient(opts.port, opts.host, opts.options);

client.auth(opts.auth, function(err) {
    log('Auth err:', err);

    client.blpop('q:build:jobs', 0, log);
});

It outputs:
❯ node ./t.js
Auth err: null
null [ 'q:build:jobs', '1' ]

Did you searched node_redis issues to check for any problems on your specific redis version already reported !?
Your problem is strange! But you can try upgrading to node_redis 1 and test with the latest version. I haven't checked yet if you'll need an API refactor/change to upgrade node_redis.

What's even stranger ... Is that calling blpop from the redis client (locally) using the same version and host works

then it can be a connection problem... (keepalive issue?) You can read this https://github.com/Automattic/kue/issues/696
I would test with latest node_redis if I were you...

It really is strange ... I'm going to try updating node_redis.
We already used the no_ready_check option as recommended in: https://github.com/Automattic/kue/issues/696#issuecomment-142992317
I'll try updating the client and let you know if that works. But this is definitely a strange issue, any ideas if kue could possibly be corrupting the client or doing something that would block blpop from going through ?

I updated node_redis to 2.0.1 (their latest), and the bug is still there ...

any ideas if kue could possibly be corrupting the client or doing something that would block blpop from going through ?

No! thats a simple client.blpop call...
Can you provide me a simple code which re-produces this case?

It seems like that if I change the blpop timeout from 0 to 1 it works. Let me rollback and ensure that it blocks.

@behrad Actually that's just stupid, sorry ...

!????

@behrad Sorry, I've been banging my head on this for a few hours, I guess I'm tired.
Changing the timeout from 0 to 1 is nonsensical.
The blpop calls would go through, but then it would fail on zpop.

setting a sample timeout may help you diagnose the issue better. If it fails on zpop, then there actually is no job on that jobs ZSET !!!
The data you providing here are in contradiction !

@behrad But at least that proves that the command is going through, and the connection/transport isn't the problem ... Which makes this more confusing

@behrad I've found the issue: https://github.com/Automattic/kue/blame/master/lib/queue/worker.js#L267
The blpop client is created using redis.createClient(), which breaks kue users with custom redis clients ...
This is why we're getting conflicting data, I inserted a llen call that uses self.client before blpop that returns the correct result, so I'm pretty sure this is the issue.

redis.createClient() is actually using the same provided options when you called createQueue
I'm not sure I got you point!

We're passing a pre connected redis connection rather than a string.
So it can use that client, but it can't create new ones if you pass an existing connection.
I started looking into using a string to pass our connection info, but createClientFactory appears to have an auth related race condition: https://github.com/Automattic/kue/blob/master/lib/redis.js#L86

You'd better telling me about the specific redis connection method you are using... Sure this should be re-createable for Kue.

I started looking into using a string to pass our connection info, but createClientFactory appears to have an auth related race condition: https://github.com/Automattic/kue/blob/master/lib/redis.js#L86

That is how node_redis docs says to initialize a connection.

closing this @AaronO

@behrad I'm giving up on this too. I know it sounds totally crazy, and the data seems contradictory but it's exactly what we're seeing in production ...
The blpop blocks for sure, why I still have no real idea, it must be some kind of client setup error or a race condition.
It worked in production up until earlier today (and started failing for no apparent reason).
I'm going to sleep on this, one of my colleagues wrote an a drop-in replacement that uses mongo instead of kue so we're going to use that in the meantime.
Anyway sorry for taking up your time and the confusion, I understand that this sounds strange to you, it does to us...

authors: AaronO behrad

repo: Automattic/kue


text:
Disable ActivityPub publishing for the admin account.

As previously asked on Mastodon, I'd like to have an option deactivate this feature for the Admin-User Account.
I consider this a security issue, as random brute force attacks on Wordpress sites typically start by guessing the admin account. Therefore I don't want to expose my admin account (which equals the ActivityPub handle) and wish is to have a option that let me deactivate that feature for this specific user. Maybe at the bottom of the user profile, where all the users ActivityPub information are visible (a toggle would be enough). Additionally a note at the Health/Status-Page would be nice.
In the latest update you've enabled the feature only for users with publish_posts permission, but this doesn't help me at this point, because I can't (or don't know revoke) this specific permission for the admin user.

Admin account is typically easy to find, /wp-json/wp/v2/users/1 will show the username. So security through obscurity falls a bit short.
You might consider creating a new user just for publishing.

@ichderfisch I agree with what @mediaformat said and wanted to add a second point: the accounts will not be actively exposed/published. It is really the same thing as scraping the classic API endpoints and/or author pages of WordPress.
I would highly recommend to secure your logins by adding a second factor authentication for example!

Thanks for your answers.
First of all hiding admin user information is common issues discussed by others and within other plugins (or CMS) as well. Examples: (1) (2)
If you search the web for this topic, there are lots and lots of sites and plugins to remove public exposure of admin user information or profile page, even listings in the backend for normal and privilged users. Some examples (1) (2)
Also there special plugins to just secure the Admin Account, which all might need an update, if a functionality like this might not be implemented here, for example: (1) (2)
Regarding the JSON API: Bad enough you can just iterate through the API and scrape everything. That's the reason why Plugins and Snippets exists to disable it completly or limit the functionality to authenticated user or specific informations. Also: Why do people delete user/1 or generate random user ids. Or rename wp-login and wp-admin. And why we do not name our admin "admin". And why we alter error messages admin username guessing. Or remove XML-RPC. Just to make it a little harder, obscure and become an even more unattractive goal. 2FA oder passwordless logins are given and used options. Example (1) (2)
I'm not to familiar with everything Mastodon/ActivityPub, but i assume as the plugin states on the user profile page/plugin page: Someone just has to enter the profile identifier @username@domain.tdl to find any user, no matter he has published something or not. The Webfinger (that's how it is called?) always gives an result, right? This gives just a new entry-point in username guessing.
I might also ask for a general option to disable ActivityPub for any user of any given role, based on an option in the user profile or a dedicated permission to control ActivityPub publishing at all, but I think this might be much more effort to implement and might be achieved via customs roles and the publish_posts permission. That way I have a workaround. That's why I only care for the admin user: Currently I don't have any control at all.
It's not about my personal blog, I don't really care if anything happens over there (here I definitly just use a different account). It's a more general request to at least consider a larger rollout.

I completely agree with @ichderfisch
This is something that bothers me about this actually great plugin. I have removed everything that could give away the admin user. But my posts in Mastodon are done with @admin_user@domain.tld and that's a big risk. I can see every day attempts to guess the admin user and login to my site. It would be great if we could change the name or the plugin would use the public name you can select in your profile.

@XSized IMO you shouldn't be using your site admin account for content management and posting. I explicitly don't do this, which is that practice I have with my own real Mastodon instance.
That being said I do agree that the ActivityPub plugin should have options to enable/disable the features perhaps by user and/or role. Mastodon instance has the ability to not list admin users in the profiles directory so it seems reasonable that the ActivityPub plugin should provide a similar feature.

@timnolte You're right, I shouldn't. But we have the same issue for every user. The username will be published by the plugin even if you hide it.
I'm using among other things the plugin Edit Author Slug to hide the login names from URL. So instead /author/login_name the URL is /author/my_selected_name. And ActivityPub sees this changed path.

My 5 cent: I would love to stick with as many core features as possible and not to add too much things that are already there. There are already a lot of settings and the more I add, the more complicated it becomes. I am still with @mediaformat the username is a public thing, from the author page to the API! I think we should not invest in hiding it, but to harden the login, by using two factor authentication and similar methods. A lot of communities, including GitHub is using the login name aus profile identifier.
But in the end I tend to implement these features, because a lot of plugins do break these core functionalities by for example hiding author pages :(

Does the plugin, right now, essentially "create" an actor/profile for every user (author and up)? Even if it is never used to author content with?
I think it could make sense to disable ActivityPub (and WebFinger etc.) for certain users or roles. I know how hard it is to implement a gazzillion UI settings ... that's why I would suggest, once more, a filter. :-D So that if a request comes in for a certain username, one could use a callback to just shortcut it and let the plugin would, I don't know, a Not Found error or something.
Or, if it must be a setting, it could be added to wp-admin/profile.php, so that [admins] could disable it there.

... by for example hiding author pages

Haha, I do this. Not because I have anything against them per se, but because they have the "permalink front" in them, always. If my articles live at /articles/<post-name>/ and I, for instance, also have a project CPT at /projects/<post-name>/, then my author URL will always be /articles/author/<me>/ (and not, e.g., the more generic /author/<me>/). The only way to set it to something else is by filtering the author_url.

Does the plugin, right now, essentially "create" an actor/profile for every user (author and up)? Even if it is never used to author content with

@janboddez it does exactly this!

I notice there's quite a few user_can( 'edit_posts' ) calls, which makes sense, you don't want to create profiles for subscribers.
user_can() (in WP core) checks $user->has_cap(), which can be filtered. So, theoretically, it is possible to temporarily override certain users' capabilities. (Like, in a callback, one could check if the current route == "ActivityPub" and if so, return false or whatever, based on, e.g., a user ID.) But it's difficult to control (I think).
If user_can() in the plugin were replaced with a helper function which contained a filter and only then called user_can(), something like enable_activitypub_for_user which accepted a user ID, this would be a lot easier. Developers could then add a tiny bit of PHP to effectively choose who gets to "federate" and who does not.

And another (and possibly better) idea: use rest_request_before_callbacks and attempt to block any requests for whatever account you don't want AP to work for.
Anyway, I commented because I was running into author page issues (see my reply the other day), but I've found a way around them, and that's good enough for my use case.

Still relevant

authors: XSized ichderfisch janboddez mediaformat mundschenk-at pfefferle timnolte

repo: Automattic/wordpress-activitypub


text:
How to get values in input type Number?

Hello,
I want to receive number type inputs as numbers, not strings, how can I do?
Current output. However, this is not true. Fields with numbers are an input type number. But the output comes as a string.

You can use valueParser. It allows you to parse the user's input into the internal value which get validated and is used to build the object you output. Things are strings by default since that is how HTML defines them.
If you want certain ones to be a number, you can use valueParser={window.parseInt} or valueParser={window.parseFloat} if you need decimals.
Check out this example: https://stackblitz.com/edit/reactstrap-validation-v2-onbhza?file=Example.js
Note: As mentioned about, valueParse is used to get the value used for validation, this mean that the value given to valueParse has not been validated, please keep that in mind. Also, the value that is returned from valueParse is what gets validated, which can be different from the user's input.
For instance, user enters 1.7 with max="1" is invalid since 1.7 is larger than 1. But 1.7 with max="1" valueParser={parseInt} would be valid since parseInt would turn 1.7 into 1 before validation and 1 is not greater than 1.

@TheSharpieOne I am currently using the parseFloat () function. Actually, I was wondering if I could get the numeric fields directly without using parseFloat ()?

The easiest thing would be for you to create a helper component within your project so you don't have to do parseFloat every time.
export const NumberField = props => <AvField  type="number" {...props} valueParser={window.parseFloat} />;

Then you can import and use NumberField as it if was AvField with the only difference being that the value will be a legit number in the values object.

okey thank you :)

I just noticed that I couldn't get the value with valueParser in AvRadioGroup. I also put valueParser on the AvRadio elements in the AvRadioGroup but it didn't work.

authors: TheSharpieOne emin-karadag

repo: Availity/availity-reactstrap-validation


text:
module.hot is always true

https://github.com/Availity/availity-workflow/blob/0683816bbdf9ca1720070a8bf51c772afddf1099/packages/availity-react-kit/project/app/index.js#L26
the plugin is always added currently, so even if hot reloading is turned off in the config, this statement will be true

How are you turning it off?
I see this in the docs which references development.hot:
    development: {
        notification: true
        hot: true
    },

but that property is not used AFAICT. development.hotLoader is used for the webpack config via settings call: https://github.com/Availity/availity-workflow/blob/f6933da90267820cbbb21444a3ddbf0d550260ad/packages/workflow-settings/index.js#L328-L330
hot is used by webpack dev server, but to set that you need development.webpackDevServer.hot to override the default of true
I am not sure if these values should always be the same, but it seems like it. (so that webpack dev server only hot when the webpack hot plugins and loaders are enabled, and the webpack hot plugin and loaders are only enabled when the webpack dev server is hot)
I tried it out locally, it "worked" it was no longer hot... but then I ran into webpack/webpack-dev-server#1251 which means without hot, it will fallback to "live reloading" and now every change reloads the page... which was not so great.

The new react-refresh babel loader is able to track hot reloads without having to modify the app code. Unless there is some dire need to make a change cause a full page refresh I don't see why this would be needed IIRC. I don't think CRA supports causing a full page refresh out of the box on code update.

authors: GoPro16 KaseyPowers TheSharpieOne

repo: Availity/availity-workflow


text:
TreeDataGrid does not work unless you are running FluentTheme

Issue Description:
TreeDataGrid will not display anything unless (1) you've set FluentThem in App.axaml AND (2) you must add a StyleInclude for its FluentTheme control styling file. For several reasons, I've found that FluentTheme (1) makes a lot of style design choices that have to be overridden or undone and (2) in some cases locks out the ability to style certain properties on some controls. In contrast, I've found that, for the most part, SimpleTheme works better as a less hostile application-based style set.
On Checking, I found that TreeDataGrid does not have a SimpleTheme selector and thus cannot display when using SimpleTheme as the application base theme.
While it is my personal opinion that every control should have intrinsic internal styling defaults that are sufficient to display and operate the control without a StyleInclue file, I am aware that, for complex composited controls like TreeDataGrid and DataGrid that is simply isn't a viable approach to styling the control. In these cases, the controls' default styling should be it's SimpleTheme.
I note in passing that DataGrid, which I also use, has both Fluent and Simple themes.
To Reproduce:
Try to get TreeDataGrid to display with App.axaml set to SimpleTheme with and without a StyleInclude for TreeDataGrid.:
Expected Behavior:
I expected to be able to select a SimpleTheme for TreeDataGrid having simple basic styling, per my discussion above for the TreeDataGrid, and have it show up in the designer so that IntelliSense in my view.axaml file works.

https://github.com/AvaloniaUI/Avalonia.Controls.TreeDataGrid/issues/246