singular/plural function names and intermediate copies

Brief Description

Not clear if it is really a bug but still a bit weird.

in functions.py we have add_column and add_columns. The first one provides a new dataframe, but the second one delegates to the first for each particular column, so produces many intermediates (and I believe unwanted) copies.
in functions.py we also have transform_column and transform_columns which I believe have the same problem. Furthermore the docstrings seem to be misleading because transform_column uses DataFrame.assign which produces a new dataframe and transform_columns delegates to the singular version. But the docstrings implies/asserts that they mutate the original dataframe.

@VPerrollaz thank you for the catch! As it so happens, @samukweku pinged up on a separate issue that also mentioned this (#284).
I think the API can be evolved/unified a bit, as follows:
df.transform_columns(column_name={"new_column_name": function})

Same goes for add_columns:
df.add_columns(column_name=<iterable/value>)

(For add_columns, though, we'd simply be wrapping df.assign, which already does a tremendous job with what we need.)

A few remarks here.

First of all I'm sorry I just checked the issue titles so I missed the previous mentions.
It was a bit unclear but I tried to avoid commenting on the API since I see reasonable arguments for very different choices at this point. On one side breaking changes are not really good and for one column case the plural form is a bit heavy, on the other the namespace of pandas is already a mess and one goal for janitor might be to unclutter the API (though at this point the we use the same namespace so the argument is a bit moot). One way to go at it might be to look at a reasonably large database of janitor use to check the statistics of utilization. I know there are ways to crawl github for uses of  janitor but I'm not clear on how difficult it is.
I actually just wanted to point out that the plural version could mutate the internal steps while still not touching the original dataframe, which means not just delegating to the singular functions.
For the mutating part, my point was just that while transform_column/transform_columns claim to be mutating in the docstring they are actually not,  so we might have to adjust the function or the docstring.
As far as "ostensible" mutation is concerned it seems the "optimal" way would be for a copy to occur only on the first step of the method chaining, however at this point all the technical ways I thought to achieve that seem incredibly dangerous. I agree that transparency/consistency for the user is critical here.

First of all I'm sorry I just checked the issue titles so I missed the previous mentions.

@VPerrollaz no worries at all! :smile: Issues evolve, so it's tough to keep track of them via titles only. In any case, they're now linked.

I actually just wanted to point out that the plural version could mutate the internal steps while still not touching the original dataframe, which means not just delegating to the singular functions.

Thanks for re-clarifying! I definitely missed this point. The function call structure can definitely be improved, though I also think that we might be able to circumvent the problem by evolving the API a bit and deprecating the old behaviour.
Was wondering, would you be open to commenting on the proposed API design above? Do you find it a bit easier to reason about? Or is it more confusing? (I know it follows the groupby semantics a bit more closely.)

I feel that for add_columns what you propose is very good and pretty close to what we already have, the only "problem" I have is the fact that the **kwargs is pretty unhelpful with autocompletion (I feel a bit like a monomaniac writing that :-) )
I have more mixed feeling for transform_columns, while the singular is non ambiguous, the plural one feels more difficult to me (in general not so much the API you propose) because the very general  scenario corresponding to the name would be the following one for me

df.transform_columns(
    new_col1={(old_col_1_1, old_col_1_2,...old_col_1_n1): function_1},
    new_col2={(old_col_2_1, old_col_2_2,...old_col_2_n1): function_2},
    ...,
    new_colm={(old_col_m_1, old_col_m_2,...old_col_m_nm): function_m}
)

where function_1 takes n1  columns as arguments, ..., and function_m takes nm columns.
This starts to be much more complicated though and of course it degenerates in two subscenario:

n old columns, n functions taking each one column as argument thus n new columns
n old columns, one function taking n columns as arguments thus one new column.

I see! Observing the general case API that you've written above, I see where we differ now. You would put new_column as the kwarg, while I would put existing_column in as the kwarg. Indeed, things get fancy/complicated if we try to "matrixify" the entire piece.
I think the 80% use case is "we just have a few columns we need to transform".
Alrighty, some random thoughts penned down. Let's let the idea simmer for a bit.

I believe we can deprecate transform_column and transform_columns functions, as the transform function within pandas covers most use cases. Not seen any use cases that requires us to keep it. The transform function in Pandas is method chainable as well.

changed my mind! transform_columns has its place; we probably have to agree on keeping just one?


How to revert input value when dateObj is not expected

var $input = $(instance.calendarContainer).find('.flatpickr-input');

Please elaborate on the problem and reopen the issue


Better error handling

fixes #198
Using some code from pjs/apps handling much more than the couple calls I handled so far.
I tested with batch, multisig, proxy successfully.

Looking good.
I tested normal and batch transactions submitted with call data. Submitted from the multisig and submitted from the pure.
Examples I was seeing:


Paloma: undefined controller -> Directions

I haven't had the pleasure of this gem work for me at all. I can't figure out what I'm doing wrong!
application.js
//= require_tree ./application
//= require paloma

app/assets/paloma/directions.js
var DirectionsController = Paloma.controller('Directions');
DirectionsController.prototype.index = function(){
  alert('Hello?');
};

app/controllers/directions_controller.rb
class DirectionsController < ApplicationController
  def index
    respond_to :html
  end
end

It isn't clear in the README how the page-specific JS file is utilized/embedded into the final document, so I can't really say where this has gone awry.
Rails v4.1, Ruby v2.1.5
I have looked at this SO question and noticed that the programmer seemed to be including his page-specific JS in the application.js file - which in my mind defeats the purpose of page-specific JS (as it causes bloat in the application.js file)...or maybe I'm missing something with how this gem works.

After some more searching it's as I feared...everything has to be included into a JS file that is served externally; the page-specific JS isn't inlined.

@JakeTheSnake3p0
The meaning of page-specific JS in Paloma's context is that a javascript code will execute depending on which page is loaded. It doesn't mean that a javascript file will be included or loaded when a specific page is loaded,  doing that will defeat the purpose of the Asset pipeline. Asset pipeline is merging all javascript files into one big file so that everything will be loaded at once and it will be cached by the server/client.
If you have any questions or if you need any assistance on using Paloma, feel free to ask. Thanks.


Fix/bad error on 401

Motivation
Currently 401 errors are badly reported by the system.
Solution
This PoC throws a better error when the first operation on the run test process fails and then reports that error to the user.
If we decide to go with this method - we need to:

Refactor the error catching code used whenever the API service is called (so that a consistent approach to 401s can be applied.
Update all areas of code where the API service call is used to use this new function.

No objection at all. I've refactored the error handling code a little so you can see where I'm headed with that. If it looks OK I'll apply it to the other places where the API is called so I can check for edge cases.


Move existing druid search to Admin dashboard

This search functionality should be moved from the dashboard page you see when you log in and added to the Admin dashboard page. They should no longer be on the main dashboard page.

The druid search should be available from the drop-down menu at the top of the page and should find druids for both items and collections. When the druid is found, user should be taken directly to the item view page or the collection details page (note that this currently goes to the collection settings page but should be changed).
Mockup showing Druid search in drop-down list along with error message if druid is not found: https://projects.invisionapp.com/share/EQXC9CLKCR2#/screens/467760849

I did the part about moving the search box over to Admin as part of the work with the All Collections table in #2415.

The DRUID search seems very similar to a Users search but the form mockups are different. For consistency, should I instead follow the model for the Users search (since that is already complete)? This is what the search forms would look like if following the Users form:

@lwrubel That makes sense to me.
I think we had kept this as is because it was fine that way and presumed to be easier to keep that way, but having them be consistent would be lovely. Thanks for asking.


Setting walkthrough=false the URL still loads the walkthrough

Example:
http://preview.ideditor.com/release/#walkthrough=false&map=19.495087061995267/35.62025513110474/-87.0266043394804
cc: @bhousel @kepta

I guess something with 6ca649498f7d42fe1d69689dc62a131b75f4ef15


modify Plugin:themes, better support for custom themes

Feature
These feature was added:
1. search theme-files in $ZSH_CUSTOM/themes
The original source only search $ZSH_CUSTOM，but as the oh-my-zsh-wiki-Customization said, the custom theme-files may better put into '$ZSH_CUSTOM/themes'.
so, '$ZSH_CUSTOM/themes' need to be searched.
2. lstheme for custom
The original source only list the default themes,
Now, the custom themes were added to be list behind the default themes
Issue
if the custom theme has the same name with the default one, lstheme will list it again

There's an existing PR #3743 which covers this functionality.

Thanks @apjanke .
I see your code. That's great ：）

Thank you!


fix grammar

fix grammar

This change is

@foxyriver "an" is actually okay in this context because phonetically "RFC1035" starts with an AR sound -- AR-EFF-CEE... See Usage 6 of http://www.englishpage.com/articles/a-vs-an.htm.

We value your contributions


Add check for reference-compared literals to JS files

I don't know where I can add a test for JS files.
According to discussion in https://github.com/microsoft/TypeScript/pull/45978, I open this PR to also check JavaScript files.

Plain JS tests are in $ts/tests/cases/conformance/salsa/plainJS*. You can get the settings you need to test them from the existing tests.
A couple of gotchas I thought of:

"[object Object]" == {}
{ toString() { return 'hi' }, valueOf() { return 'no' } } == { toString() { return 'no' }, valueOf() { return 'hi' } }

At least, I think there are shenanigans possible with valueOf; I couldn't get a working example.

I think there's no need to support the first case. The second case is a bit more interesting, maybe I can add detection to check if the literal contains toString, valueOf, or any computed property name only in JS.

Add test files.

So we only emit it for === not for ==?

Yeah, I think so.

done

rebased


Remove yaml-language-server code from the repo

I'm not sure why yaml-language-server's code has been copied into the repo. Maybe there are some custom code changes from the fork, but in that case, its quite unelegant to modify a third party dependency within the repo's source code. This makes it very difficult to maintain and upgrade dependencies.
So I propose we remove the sources of other repos included in this repo and reference them via dependencies. The repo sources included are:

yaml-language-server
yaml-ast-parser-custom-tags (which isn't really being imported/used anywhere and not used because js-yaml is used instead.

If the repos mentioned above have custom modifications needed for this repo, we should fork them and reference those forks instead.

yaml-ast-parser-custom-tags is actually used by yaml-language-server, so by referencing yaml-language-server through node_modules, we can get rid of this code too in the repo.

Hello,
You may want to read this.
Then I'd suggest taking a look at this monaco-yaml fork - it has successfully removed the embedded yaml-language-server and yaml-ast-parser-custom-tags.
There is a catch, though - you'll notice the dependency on a yaml-language-server fork. The key change in that fork is in the added scripts and executing them at build time to create what's in the esm folder...plus few other fixes and enhancements, including in the formatter that uses prettier.
Our prototype was successful but we had to change priorities. So, we never got to submit a PR to redhat-developer/yaml-language-server to have the changes (eventually) incorporated. At this time, the fork has fallen a few commits behind.


Testing notification of custom LWRPs does not behave correctly

Imaging a simple LWRP test.
actions :create
attribute :name, name_attribute: true

action(:create) do
  new_resource.updated_by_last_action(new_resource.name == 'bar')
end

This means, that only if I create the resource test[bar], it fires its notifications.

test 'bar' do
  action :create
  notifies :restart, 'service[name]'
end

test[foo], shouldn't fire a notification.

test 'foo' do
  action :create
  notifies :restart, 'service[name]'
end

The appropriate tests could look like this:
describe 'test::default' do

  cached(:chef_run) {
    ChefSpec::ServerRunner.new.converge(described_recipe)
  }

  it 'should notify service[name] when test is called bar' do
    bar = chef_run.test('bar')
    expect(bar).to notify('service[name]').to(:restart)
  end

  it 'should NOT notify service[name] when test is called foo' do
    foo = chef_run.test('foo')
    expect(foo).to_not notify('service[name]').to(:restart)
  end

end

And the matcher
ChefSpec.define_matcher :test

def test(resource_name)
  ChefSpec::Matchers::ResourceMatcher.new(:test, :create, resource_name)
end

Now, when you run this test, it's saying:
     Failure/Error: expect(foo).to_not notify('service[name]').to(:restart)
       expected "test[foo]" to not notify "service[name]", but it did.

ChefSpec is testing the catalog. So, it is correct to say each of those resources does cause a notification to be set up in the catalog. You need an integration test to determine if a specific event causes a notification to actually be sent. This is my understanding of what you're describing here.

@sethvargo Could you please reopen this issue now?

Please see my response on your PR

@yves-vogl also, @dblessing gave a much shorter explanation than mine, which is correct.

@sethvargo I spent a good amount of time on the same problem before I found this Github issue.
I totally get the explanation, so thanks for that.
However, I am wondering if since ChefSpec will always assume that resources notify, maybe something like expect(resource).not_to notify('something[else]') should be added to the documentation so people do not try this and instead do an integration test to start with?
Maybe I am not sure where to draw the line between ChefSpec and actual integration tests.


Why does the loss decrease during training, but the PSNR value gets lower?

(1) I replaced different training sets, and this problem always occurred during training. The loss has been decreasing, but the highest PSNR value is often the beginning epoch.

(2) Why is the input for training here the '../dataset/REDS/train/HR' folder?
|--train
|--HR
|--video 1
|--frame 1
|--frame 2
：
|--video 2
:
|--video n
def set_template(args):
if args.template == 'Self_Blind_VSR_Gaussian':
args.task = "FlowVideoSR"
args.model = "PWC_Recons"
args.save = "Self_Blind_VSR_Gaussian"
args.data_train = 'REDS_BLURDOWN_GAUSSIAN'
args.dir_data = '../dataset/REDS/train'
args.data_test = 'REDS_HRLR'
args.dir_data_test = '../dataset/REDS4_BlurDown_Gaussian'
args.HR_in = False
args.scale = 4
args.patch_size = 160
args.n_sequence = 5
args.n_frames_per_video = 50
args.n_feat = 128
args.extra_RBS = 3
args.recons_RBS = 20
args.ksize = 13
args.loss = '1*L1'
args.lr = 1e-4
args.lr_decay = 100
args.save_middle_models = True
args.save_images = False
args.epochs = 500
args.batch_size = 8
If I replace it with LR, there will be a patch size problem.

I having the same first problem where the losses are going down, but the metrics are going down just as much. I guessing the reason for this is that the reconstruction network doesn't really learn during the training process, but rather amounts to a residual shortcut that leads to worse and worse PSNR results.

I am having trouble installing and running this code. If possible, friends who have successfully implemented the code. Write the requirements.txt file and type of operating system.


Fix small typo: mutlithreading -> mutlithreading

Fixes #216

Do you mean multithreading? There's no difference in your title. However, your commit is correct. lol

Ha! Thanks


Add FactoryAssociation cop

Add a FactoryAssociation cop which checks for 'associations' in factories that specify a ':factory' option and tells you to use explicit build reference which optimises performance as cascading factories are not saved unless needed to.
Pics for cascading factory calls
before:

after:

optimises performance as cascading factories are not saved unless needed to

Can you please elaborate on "unless needed to"?
How it would be possible to create a book in such a way that the author is created, too, and not just built?
        #    FactoryBot.define do
        #      factory :book do
        #        title { 'Lord of the Rings' }
        #        author { build(:author) }
        #      end
        #    end
        #
        #    FactoryBot.define do
        #      factory :author do
        #        name { 'J. R. R. Tolkien' }
        #      end
        #    end

I see the hardcoded usage of a specific strategy is factories as an anti-pattern, as it prevents certain flexibility.
If your intention is to persist the immediate factory and skip saving all (potentially deeply nested) associations, I'd rather defined a custom strategy, e.g. create_shallow.

optimises performance as cascading factories are not saved unless needed to

Can you please elaborate on "unless needed to"? How it would be possible to create a book in such a way that the author is created, too, and not just built?
        #    FactoryBot.define do
        #      factory :book do
        #        title { 'Lord of the Rings' }
        #        author { build(:author) }
        #      end
        #    end
        #
        #    FactoryBot.define do
        #      factory :author do
        #        name { 'J. R. R. Tolkien' }
        #      end
        #    end

I see the hardcoded usage of a specific strategy is factories as an anti-pattern, as it prevents certain flexibility.
If your intention is to persist the immediate factory and skip saving all (potentially deeply nested) associations, I'd rather defined a custom strategy, e.g. create_shallow.

I'll try to go step by step just to be as detailed as possible. So imagine the scenario where we have the book and author models and factories defined as above. If we want to test out our book model for let's say validations, for most of the time we will be using build(:book) instead of the create(:book) as those tests are usually faster. In this scenario this is how build(:book) will actually look like: book(id: nil, title: 'Lord of the Rings', author_id: nil) but in the background the book is still valid, because if you type the book.valid? it will return 'true'. You can do the book.save and it will save it meaning it will look sth like this: book(id: nil, title: 'Lord of the Rings', author_id: 1).
In case we define our author association this way: association :author what build(:book) will do is it will create(:author) instead of just building it. The book model will look like this: book(id: nil, title: 'Lord of the Rings', author_id: 1).
So I believe this also answers the question of creating books while creating authors as well. So if we use the create(:book) what it will do is build(:book) check the book.valid? and then do the book.save while in the background doing the author.save.
So in essence all this does is actually offers you more flexibility as building a book doesn't mean creating an author but building an author as well, while creating a book means creating an author.

test out our book model for let's say validations, for most of the time we will be using build(:book)

For validations, in most cases build_stubbed is sufficient.
What if there's a validation that checks something about the author?
class Book < ApplicationRecord
  belongs_to :author
  validates :author_signed_the_agreement

  def author_signed_the_agreement
    errors[:base] << "Author has not signed the agreement, can't add a book!" unless author.agreements.signed.any?
  end
end

I believe in this case, with your build(:author) approach, book = create(:book); book.save! won't work. Because the Author record is expected to be persisted before the Book is.
Moreover, if you have proper foreign key constraints set, and you should, create(:book) would blow up saying there's a foreign key violation, as your Author record is not present in the database.

test out our book model for let's say validations, for most of the time we will be using build(:book)

For validations, in most cases build_stubbed is sufficient.
What if there's a validation that checks something about the author?
class Book < ApplicationRecord
  belongs_to :author
  validates :author_signed_the_agreement

  def author_signed_the_agreement
    errors[:base] << "Author has not signed the agreement, can't add a book!" unless author.agreements.signed.any?
  end
end

I believe in this case, with your build(:author) approach, book = create(:book); book.save! won't work. Because the Author record is expected to be persisted before the Book is.
Moreover, if you have proper foreign key constraints set, and you should, create(:book) would blow up saying there's a foreign key violation, as your Author record is not present in the database.

Sorry, I wasn't precise enough. If we are calling create(:book) it will first save the author and then save the book. So if you are doing create(:book) you don't need to do the book.save! because it will do it by itself. What I meant by the whole
book.valid? book.save is that is what is happening in the background of the create(:book) call. But just to be as open as possible: if we call the build(:book) it will only build the author, but if we call create(:book) it will actually persist the author as well. If I am maybe still not being precise enough I can open a console and show you how it works.
The concern with the author validation seems legit, I think it still will work through that. Here is code of some local testing:
#migration
class CreateTestBook < ActiveRecord::Migration[6.1]
  def change
    create_table :test_books do |t|
      t.belongs_to :author, null:false, foreign_key: { on_delete: :cascade }

      t.string  :title, null:false

      t.timestamps
    end
  end
end

#model
class TestBook < ApplicationRecord
  belongs_to :author

  validate :author_name_is_correct
  validates :title, presence: true

  def author_name_is_correct
    errors[:base] << 'Author has no name' unless author.first_name
  end
end

#factory
FactoryBot.define do
  factory :test_book do
    title { 'Lord of the Rings' }

    author { build(:author) }
  end
end

[3] pry(main)> book = FactoryBot.build(:test_book)
=> #<TestBook:0x00007f81ef23ac08 id: nil, author_id: nil, title: "Lord of the Rings", created_at: nil, updated_at: nil>
[4] pry(main)> book.author
=> #<Author:0x00007f81ef2393d0 id: nil, first_name: "Oren", last_name: "Macejkovic", created_at: nil, updated_at: nil>
[5] pry(main)> book.author.test_books
=> []
[6] pry(main)> book.valid?
=> true
[7] pry(main)> book.save
  TRANSACTION (0.4ms)  BEGIN
  Author Create (1.3ms)  INSERT INTO "authors" ("first_name", "last_name", "created_at", "updated_at") VALUES ($1, $2, $3, $4) RETURNING "id"  [["first_name", "Oren"], ["last_name", "Macejkovic"], ["created_at", "2022-02-21 11:47:42.934544"], ["updated_at", "2022-02-21 11:47:42.934544"]]
  TestBook Create (0.7ms)  INSERT INTO "test_books" ("author_id", "title", "created_at", "updated_at") VALUES ($1, $2, $3, $4) RETURNING "id"  [["author_id", 3], ["title", "Lord of the Rings"], ["created_at", "2022-02-21 11:47:42.958221"], ["updated_at", "2022-02-21 11:47:42.958221"]]
  TRANSACTION (6.8ms)  COMMIT
=> true

How it works is book.author exists because it is built. So if our author factory is properly built for passing validations any author object will be passing the validations it needs. And then simply calling the book.save will actually first save the author and then the book meaning the author will be persisted before the book

What happens if you FactoryBot.create(:book) with the above code?

What happens if you FactoryBot.create(:book) with the above code?

Pretty much the same as if you do the book = FactoryBot.build(:book) and then do book.save ( since this is how the process works in the background) :
[1] pry(main)> FactoryBot.create(:test_book)
  TRANSACTION (0.4ms)  BEGIN
  Author Create (0.9ms)  INSERT INTO "authors" ("first_name", "last_name", "created_at", "updated_at") VALUES ($1, $2, $3, $4) RETURNING "id"  [["first_name", "Karolyn"], ["last_name", "Schuster"], ["created_at", "2022-02-21 12:21:52.466066"], ["updated_at", "2022-02-21 12:21:52.466066"]]
  TestBook Create (1.7ms)  INSERT INTO "test_books" ("author_id", "title", "created_at", "updated_at") VALUES ($1, $2, $3, $4) RETURNING "id"  [["author_id", 7], ["title", "Lord of the Rings"], ["created_at", "2022-02-21 12:21:52.479134"], ["updated_at", "2022-02-21 12:21:52.479134"]]
  TRANSACTION (41.2ms)  COMMIT
=> #<TestBook:0x00007f81ebf580b0
 id: 5,
 author_id: 7,
 title: "Lord of the Rings",
 created_at: Mon, 21 Feb 2022 12:21:52.479134000 UTC +00:00,
 updated_at: Mon, 21 Feb 2022 12:21:52.479134000 UTC +00:00>

Update, it seems that the cop in the end is unnecessary as in FactoryBot version 5.0.0 was introduced implicit using of the same build strategy as their parent objects. No idea why this wasn't working immediately on some of the projects. More on the link: https://github.com/thoughtbot/factory_bot/blob/main/GETTING_STARTED.md#build-strategies-1

It seems that the cop in the end is unnecessary

That slipped my mind completely, too. I still avoid using build where possible, choosing between build_stubbed and create.
Do you think there's anything actionable left here, or the PR can be closed?

I think it can be closed. Thank you for your time and efforts to go into depths of discussion 😄

Upon further inspection and using palkans test-prof I realised that using the author { build(:author) } is actually still faster than using association :author even though the strategy was introduced in 5.0 to make it work the same. I recommend you test it out in one of your local applications to see the difference. FPROF=flamegraph gives a very good visual representation while FPROF=1 gives a very good numbers representation of factory calls. The only problem that this runs into, which might make it an unsafe cop is if we have a restriction on our book that author_id can't be null this will fail the FactoryBot.create(:book) because book.valid? will return false and you won't be able to call book.save

Upon further inspection and using palkans test-prof I realised that using the author { build(:author) } is actually still faster than using association :author even though the strategy was introduced in 5.0 to make it work the same. I recommend you test it out in one of your local applications to see the difference. FPROF=flamegraph gives a very good visual representation while FPROF=1 gives a very good numbers representation of factory calls. There seem to be some problems with factory_bot/rails where it doesn't work properly and some specs are failing, for now the only situation that we ran into is where we have a factory with an 2 associations that both specify the same factory, where for some reason it won't make the interviewer, but I think that problem is something else, not this cop.
In the end, it seems that this does work better than using anything else when using an associations in our  factories and using build. I understand that you are trying to use build_stubbed much more than build, but a lot of people are still using build and if their associations are defined as such it just makes the whole test suite run much faster

If for some reason association :author's performance is worse while it should be the same as author { build(:author) }, I suggest raising an issue in FactoryBot repo along with a reproducible case and flamegraphs/profiling results.
I don't find it convincing to add a cop that would recommend changing the spec notation for a specific version of FactoryBot. It is possible, as RuboCop has a TargetRubyVersion setting, rubocop-rails has TargetRailsVersion, but I'm opposed to introduce TargetFactoryBotVersion.
It is getting even more complicated if FactoryBot fixes this in, e.g. 6.3.0. Should we recommend using association again? How do we know if it's a stylistic mistake, or it was done due to the use of FactoryBot 5.0 - 6.2 that had this performance difference, or it is a deliberate choice to use author { build(:author) }?
From my experience on large test suites (tens of hours of suite run time), the time spent in factories code is ~50% of the whole run time. There are multiple ways to overcome this. test-prof's let_it_be/before_all is one, and a patch to reuse nested models just to name a few.

Yeah, so in further investigation I've realised that the difference actually only shows when calling FactoryBot.create. In the association :author case what it does is it uses 2 save points: 1 for the author and then 1 for the book so going sth like:
book.new => author.create => book.save, while in the other one it uses 1 savepoint for both author and book, by going like
book.new => author.build => book.save ( which saves both the author and the book into db).
As you mentioned this might be something that actually should be adressed to FactoryBot. Also thanks for taking your time and providing the let_it_be and before_all methods, checked them out and they seem to be great for speeding up some tests 😄

Nope, you can close it 🙂


[XXXX] - PLEASE IGNORE THIS PR

Just testing the Pipeline
Signed-off-by: Mauricio Magnani<EMAIL_ADDRESS>Many thanks for submiting your Pull Request :heart:!
Please make sure that your PR meets the following requirements:

[ ] You have read the contributors guide
[ ] Pull Request title is properly formatted: [KOGITO-XYZ] Subject
[ ] Pull Request contains link to the JIRA issue
[ ] Pull Request contains description of the issue
[ ] Pull Request does not include fixes for issues other than the main ticket
[ ] Your feature/bug fix has a unit test that verifies it
[ ] You've tested the new feature/bug fix in an actual OpenShift cluster

Please keep that PR open! I will close after finishing the tests.


Move MBEDTLS_ERR_xxx Doxygen comments before the definition

Motivated by the difficulty of keeping them on the same line when running clang-format. Also good to remove one gotcha for unseasoned contributors, and to make the source code more readable. See https://github.com/ARMmbed/mbedtls/pull/4794.
Needs backports: 2.2x, 2.16?

Since the description has a question mark about the backports, I had a look, and IMO it would be a good idea to backport this to 2.x and 2.16, in order to keep things aligned.
Also, I'm in favour of mandating the same formal (before-comment) for all error codes rather than maintaining extra smartness in the script. That was useful while doing the change, but now that the change is done we should have fewer options and enforce uniformity.

While backporting I realized that I'd missed a part of one commit, which I'd included in the next commit. I pushed a new history where "More flexible parsing of Doxygen comments for MBEDTLS_ERR_xxx …" now makes sense.

And I made an extra commit to add use warnings.


Does MSDK support ARM?

I'd like try MSDK on ARM, and can I build MSDK by toolchain (aarch64-ese-linux) on Linux for ARM?

Short answer is no. Most likely it won't even compile.
Longer answer is it may be possible given a few assumptions.
Media SDK primary target is Intel® Gen graphics hardware platforms. But from code perspective we provide a convenience wrapper for hardware-agnostic VA API. So given that someone would write a conformant VA API implementation (say media driver) for given ARM platform, basic Media SDK functionality may turn out workable.

Short answer is no. Most likely it won't even compile.
Longer answer is it may be possible given a few assumptions.
Media SDK primary target is Intel® Gen graphics hardware platforms. But from code perspective we provide a convenience wrapper for hardware-agnostic VA API. So given that someone would write a conformant VA API implementation (say media driver) for given ARM platform, basic Media SDK functionality may turn out workable.

Thanks for the quick reply! What I need are just a few tools for testing in MSDK, such as crc calc, metrics & psnr computing. Those have nothing to do with VA API. Is there a method that I can easily build them on Linux by toolchain for ARM?

@jsunintel , could you say which particular tools are you interested? Please give links.

@jsunintel , could you say which particular tools are you interested? Please give links.

Hi @dmitryermilov, we would like to have cocotor, ldecod, metrics_calc_lite, calc_crc & djpeg under mdp_msdk-val-tools.


[Action Required] Update your apps to use latest Firebase Crashlytics SDKs before November 15, 2020

Hi @dpa99c ,
today we received the following email from Firebase:

We are replacing Fabric Crashlytics SDKs and beta versions of the Firebase Crashlytics SDKs with the generally available Firebase Crashlytics SDKs.
To continue getting crash reports in the Firebase console, make sure to upgrade your apps to the Firebase Crashlytics SDK versions 17.0.0+ for Android, 4.0.0+ for iOS, and 6.15.0+ for Unity before November 15, 2020.
The following project(s) linked with your account include apps that have enabled Crashlytics:

projectname

It seems that one of our projects is affected because we are using Firebase-X. We are currently using Firebase-X 7.0.1. Do we need to update?
Cheers

Yes, when this plugin has been updated you will need to update to the new version - see #335


[front-end] Fix #104 Logging of guards and actions.

Logging of guards and actions was missing if guards/actions were called
that take additional parameters (e.g. the current event).
This is fixed now.
This fixes #104 .

Coverage remained the same at 99.571% when pulling 6982eff3cf99ab9e3103e817425189338088d66b on Bagira80:fix_issue_104 into c0e8e5c3f514f0b302b11aaa71006cb88a75e2ca on boost-experimental:master.


Infrastructure as Code

AWS: CloudFormation
Azure: Azure Resource Manager (ARM)

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

ID: 30d02f16-9621-d204-4132-8ce8db79b0af
Version Independent ID: 65b4385b-79f0-d842-d4a1-5d013615f9b1
Content: AWS to Azure services comparison - Azure Architecture Center
Content Source: docs/aws-professional/services.md
Service: architecture-center
Sub-service: cloud-fundamentals
GitHub Login: @doodlemania2
Microsoft Alias: pnp

Thanks for reporting - this issue is under review.  This is a Microsoft Internal DevOps Bug ID AB#210617

@blikenoother - Thanks for reaching out.   CloudFormation -> ARM is called out in the DevOps section at https://github.com/microsoftdocs/architecture-center/blob/master/docs/aws-professional/services.md#devops-and-application-monitoring -- is there something else you'd like to see there specifically?

Ohh yes, I missed it before raising this :(

Thanks for reaching out though @blikenoother - appreciated!


Remove Configuration from Environment Variable

It's more easy to customize configuration with a simple configuration file.

After few discussion, we keep environment configuration system. Essentially, because this avoid several copy of standardized value and keep original configuration as it is...
In fact, by removing ENV declaration, we would like to minimize the number of commit in docker build process. This is the only key point.
With 147 level of commit possible (at this moment) in aufs, its seem not a critical issue to remove those environment declaration.


ci: make sr-* scripts executable

Fixes release pipeline: https://github.com/splunk/pytest-splunk-addon/runs/4092076795?check_suite_focus=true
This PR is the same as https://github.com/splunk/addonfactory-solutions-library-python/pull/86

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

v1.10.0
GitHub release

Your semantic-release bot :package::rocket:


How to reconnect/update an Azure native channel conversation (WebChat, Teams, Telegram...) from Direct Line Channel

Hello
I've started a conversation with Azure WebChat (and with Teams and Telegram as well) (I retrieved the conversationId).
My target is to send a response from an external app service (after some process of this incoming text to my bot and resending this text to an external app service, where is done the process)
I tried to continue the conversation from the external app service updating the conversation and using the info from
https://docs.microsoft.com/en-us/azure/bot-service/rest-api/bot-framework-rest-direct-line-3-0-reconnect-to-conversation?view=azure-bot-service-4.0
GET https://webchat.botframework.com/v3/directline/conversations/{conversationId}
Authorization: Bearer Direct_Line_Secret_Key
I always got the error:
{
"error": {
"code": "BadArgument",
"message": "Unknown conversation"
}
}
How can I continue an already generated conversation from a native channel using Direct Line Channel for my response? Is it possible?
I'll be waiting for your response
Thanks

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

ID: 12c428e7-100f-2c36-9e0e-08edb41ce127
Version Independent ID: 03ae66b5-1ba5-d1f3-f2bb-ebb8e8bb8d94
Content: Reconnect to a conversation - Bot Service - Bot Service
Content Source: articles/rest-api/bot-framework-rest-direct-line-3-0-reconnect-to-conversation.md
Service: bot-service
GitHub Login: @RobStand
Microsoft Alias: kamrani

@lopejum Thank you for your inquiry. The AI & Machine Learning team is reviewing your inquiry and will have information to share based upon an investigation.

@lopejum Are you using webchat URI to get the new stream URL? From the documentation it can be used for directline URI and its conversation id to generate a new stream URL.

Hello
I've started another issue  and I think I got the solution there!
You can close this issue
Thanks a lot.
Kind regards
Lope

#https://github.com/microsoft/BotBuilder-Samples/issues/2460
@lopejum Thanks a lot for confirmation. The details of your architecture is great and I hope it will help others in the future. I will now go ahead and close this issue.


Build a daily report for Archivematica

Closing as infeasible given the current state of Archivematica's APIs and ability to get data out.


Move from after/plugin to plugin and follow plugin best pratices

Resolves #60

Don't think adding global variables is the desired solution.

Don't think adding global variables is the desired solution.

I disagree, this is regarded as the best practice to allow users to disable your plugin from loading, and or for it not to redo it's work (which might e.g create duplicate autocmd). Source with respect to regarded:
examples of a few popular plugins (by vim-awesome:

vim-fugitive
vim-surround
nerd-tree
syntastic

It should be achievable without global variables though.

In lua, we can use package.loaded[mod]
- if vim.g.loaded_cmp_nvim_lsp then
+ if package.loaded['cmp_nvim_lsp'] then
    return
  end
- vim.g.loaded_cmp_nvim_lsp = true

  require("cmp_nvim_lsp").setup()

I think global load_... variables for plugin is fine, as it's a very common convention.

Common from vim as there was no other way. @fitrh solution is way cleaner.

I prefer @fitrh's method.
Could you please change it like that?

While I understand the point as to why you would prefer the latter method in a Lua package. I might offer one last disadvantage, that is that we're not compatible with the way you can disable builtin plugins in Neovim using:
local disabled_builtin_plugins = {
    "netrw",
   -- ...
}

for _, plugin in ipairs(disabled_builtin_plugins) do
    vim.g["loaded_" .. plugin] = true
end

If regardless of that we still want this change I'll make the adjustment.

I prefer @fitrh's method. Could you please change it like that?

Done

I am not convinced package.loaded is cleaner.
If I do require('cmp_nvim_lsp').default_capabilities() in my lsp setup, this sets the package.loaded variable, which now prevents this hook from running require('cmp_nvim_lsp').setup(), thus still requiring me to manually call setup.
vim.g.loaded_pluginname has been a standard for like 20 years for a reason.
I would suggest revising this change to use vim.g personally. I feel using package.loaded violates the single responsibility principle thus causing possible issues like the above.


[avatar] Update sample code to log WebRTC event.

Purpose

...

Pull Request Type
What kind of change does this Pull Request introduce?

[ ] Bugfix
[ ] Feature
[ ] Code style update (formatting, local variables)
[ ] Refactoring (no functional changes, no api changes)
[ ] Documentation content changes
[ ] Other...


Use stdout for tracing

Closes https://github.com/Azure/bicep/issues/10477. Tested locally to confirm that it fixes the issue where trace messages break az deployment.
Microsoft Reviewers: Open in CodeFlow

LGTM, but should the PR title be "Use stderr for tracing"?

Good catch 😂


[Feature] Break out Net Income from Retained Earnings

Is there an existing feature request for this?

[X] I have searched the existing issues

Describe the Feature
Today, Fivetran combines Net Income and Retained earnings into one line item (called "Net Income / Retained Earnings Adjustment"), but the QuickBooks UI breaks them out separately. It would be helpful for comparisons for them to be broken out. Relevant code is here.
Thank you!
Attaching redacted screenshot from QuickBooks

Describe alternatives you've considered
No response
Are you interested in contributing this feature?

[ ] Yes.
[ ] Yes, but I will need assistance and will schedule time during your office hours for guidance.
[X] No.

Anything else?
No response

Hi @mel-restori I think it may be best if we instead renaming the "Net Income / Retained Earnings Adjustment" field. This field is generated by capturing the Net Income adjustment from the relevant period. This can sometimes be referred to as the retained earnings adjustment as well. However, if you have your own Retained Earnings account (which is seems you do) then I could see the naming of this field to be duplicative.
Can you confirm that your end models product a Retained Earnings record for a given period as well as a Net Income / Retained Earnings Adjustment record? If so, then I think this should be an easy feature to roll into our next update to rename the field to Net Income Adjustment.

Hi @fivetran-joemarkiewicz thanks for following up.
I'll first admit that I really don't know much about accounting, figuring it out on the fly while I reconcile the Quickbooks UI balance sheet from the Fivetran data model balance sheet. But in Quickbooks, it doesn't look like "Retained Earnings" is a separate account - and it's the only value that I can't click on to drill down into. I was able to figure out that that amount matches the sum of net income from previous time periods, though. So it seems like it's how it carries forward the net income from previous years and then keeps the "net income" row only for the time period selected in the report.
I got to this through trial an error so maybe what I'm saying doesn't make sense.

Thanks for this insight @mel-restori! Based on this discovery I think my initial idea would probably be the best course of action to make the record more clear. These "Net Income / Retained Earnings Adjustment" records are simply calculating the "net income" for the periods and factors it into the current BS period. Therefore, renaming the field to just be "Net Income Adjustment" would be more appropriate in my eyes and also allow for it to not be confused with a true Retained Earnings account.

@fivetran-joemarkiewicz  that sounds right, but we also need to get the net income from previous periods in order to match the balance sheet in the Quickbooks UI

Hi @mel-restori, I'm working on this feature now. Could you elaborate on what you mean about the balance sheet not matching net income from previous periods?  It seemed in the previous comment that this solution would work, or do you think there is additional logic required to get the matching you're looking for?

Thanks for the context @mel-restori!
We have fixed the field to correctly reflect "Net Income Adjustment". We plan on merging this into our main branch in the New Year! You can view the PR for now if you want to see what it looks like. https://github.com/fivetran/dbt_quickbooks/pull/66
We will try to address creating the Retained Earnings definition you're looking for in a future sprint.
Le tme know if you have any questions! Happy to assist.

thanks!

Hi @mel-restori ! We have deployed this fix in the 0.7.0 version of our package.  If you upgrade your packages.yml to any version of 0.7.0 or above (we recently deployed 0.8.0) you should be able to see "Net Income Adjustment" correctly reflected.
We are going to close this issue, but if have any questions, thoughts or feedback, please let us know in this issue!
Cheers.


Add limitation for dataflows with administration mode

Add limitation that dataflows must not be deployed to environments in admistration mode with a solution.
Observed behavior: The solution will import successfully, but the Dataflow experience won't show the Dataflow. The solution still shows it. This is detrimental because you can't configure the connection after the import.
Workaround: Uninstall solution, lift environment from administration mode, install solution again.

@DougKlopfenstein
Can you review the proposed changes?
Important: When the changes are ready for publication, adding a #sign-off comment is the best way to signal that the PR is ready for the review team to merge.
#label:"aq-pr-triaged"
@MicrosoftDocs/public-repo-pr-review-team

@msftyehong is this expected behavior or something that we need to investigate as a bug?

@Kunter-Bunt , @Luitwieler I'm not aware that 'Administrator mode' alone blocks import. As far as I know it's the combination of admin mode with disabled 'Background operations' that prevents the successful import of Dataflows. Did you observe different?
(btw, it's a good idea to document it - thank you for suggesting it)

@Kunter-Bunt , @Luitwieler I'm not aware that 'Administrator mode' alone blocks import. As far as I know it's the combination of admin mode with disabled 'Background operations' that prevents the successful import of Dataflows. Did you observe different? (i.e. admin mode with enabled background operations works as far as I know).
(btw, it's a good idea to document it - thank you for suggesting it)

That might be the case! I just observed that lifting the administration mode fixes it. But of course lifting admin mode enables background operation as well.
So the limitation would then be "Dataflows can't be deployed to environments in where background operations are disabled."

@Luitwieler once change is accepted and merged into PR branch, PR can merge into main branch.

#sign-off

@DougKlopfenstein - Is this PR ready for your review and signoff?
#hold-off to prevent merging

#sign-off


[TF-TRT] Argument bugfix

TF-TRT supports lowercase arguments.
https://github.com/tensorflow/tensorflow/blob/9460c57fb5fb112e1e6d03a0221799d71b042926/tensorflow/python/compiler/tensorrt/trt_convert.py#L100-L110
From official documentation API instruction,
https://docs.nvidia.com/deeplearning/frameworks/tf-trt-user-guide/index.html#int8-quantization

precision_mode
Default value is TrtPrecisionMode.FP32. This is one of TrtPrecisionMode.supported_precision_modes(), in other words, FP32, FP16 or INT8 (lowercase is also supported).
But INT8 calibration with precision_mode='int8' didn't work before.

Thanks for your pull request. It looks like this may be your first contribution to a Google open source project (if not, look below for help). Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA).
📝 Please visit https://cla.developers.google.com/ to sign.
Once you've signed (or fixed any issues), please reply here with @googlebot I signed it! and we'll verify it.
What to do if you already signed the CLA
Individual signers

It's possible we don't have your GitHub username or you're using a different email address on your commit. Check your existing CLA data and verify that your email is set on your git commits.

Corporate signers

Your company has a Point of Contact who decides which employees are authorized to participate. Ask your POC to be added to the group of authorized contributors. If you don't know who your Point of Contact is, direct the Google project maintainer to go/cla#troubleshoot (Public version).
The email used to register you as an authorized contributor must be the email used for the Git commit. Check your existing CLA data and verify that your email is set on your git commits.
The email used to register you as an authorized contributor must also be attached to your GitHub account.

ℹ Googlers: Go here for more info.

@googlebot I signed it!


build-scaleway-ubuntu1604-armv7-1 have connection issues which is causing build failure

jdk14u-linux-arm-hotspot
Hung
https://ci.adoptopenjdk.net/view/Failing Builds/job/build-scripts/job/jobs/job/jdk14u/job/jdk14u-linux-arm-hotspot/97/console
22:17:34  Cannot contact build-scaleway-ubuntu1604-armv7-1: java.lang.InterruptedException
I've killed the job
Added to intermittent list: #1450

Machine is pingable but not responding on the ssh port.
I have logged into scaleway console. The instances page is not bringing up the details properly and I have raised a support ticket as I have no way to conn, However I can trigger a poweroff / poweron cycle so will see if that resolves it

Machine has been restarted, jenkins agent connected and running again


[1.x] Adds blade support

Note: This pull request is a work in progress, and you can help by trying it in your local project:
composer require laravel/pint:dev-feat/blade
./vendor/bin/pint --blade

Check the differences in your Blade templates and report any issues!

This pull request is a proof of concept that adds Laravel Blade support to Pint:

Here is the basic format applied:

@foreach ($users as $user)

This is user {{ $user->id }}

@endforeach

@foreach ($users as $user)

This is user {{ $user->id }}

@endforeach

Tailwind classes are "sorted" using Tailwind's recommended class order:

<button class="text-white px-4 sm:px-8 py-2 sm:py-3 bg-sky-700 hover:bg-sky-800">...</button>

<button class="bg-sky-700 px-4 py-2 text-white hover:bg-sky-800 sm:px-8 sm:py-3">...</button>

Technically, the way it works is simple - for the user, it is a completely fast experience, while behind the scenes, we are using Prettier and Prettier Plugin Blade to actually style those Blade templates. The dependencies are installed in Laravel Pint's own vendor directory on the first run, so there are no potential conflicts with existing user dependencies.
Of course, it requires Node to be installed on the user's machine.

I really love the idea and wanted to test it under a fresh repository.
Setup
New Laravel Project with Breeze (Blade+Alpine+Darkmode)
The commit with the changes:
https://github.com/Jubeki/laravel-pint-blade-test/commit/504200c4abe0476480346fb828ae18022dcea756
Feedback
Overall a very good result, only with some little things bugging me.
It is a little slow on the first run. But the second run (probably due to cache) is much faster.
Somethings I noticed:

in components/application-logo, the d="..." was moved to a new line, were as in components/modal, the x-data was moved to the previous line.
If there are multiple attributes in multiple lines, the closing tag is not on a new line anymore (components/modal see this line
components/nav-link is weird formatted

@Jubeki We've just renamed the fixer name. Regarding your remarks, can you try to see (or even PR) your suggestions?

I currently use this Blade Prettier Plugin package for prettier with blade, would it conflict? Since I have jobs that are executed every time I commit, the pint job and the prettier job, would the parse and format for the blade files be executed twice?
pd. This package npm also parses and formats alpine

@DevMakoto, in that case, you would either disable blade formatting in Pint or disable blade formatting in Prettier.

@DevMakoto, in that case, you would either disable blade formatting in Pint or disable blade formatting in Prettier.

@nunomaduro, this package of @shufo doesn't parse or format Alpine.js for me. I would like to only use Pint if it has parsing and formatting for Blade.

I think the new prettier plugins works much better. ❤
Same Setup as before, with the following result: https://github.com/Jubeki/laravel-pint-blade-test/commit/b756cd0749757436f6dc84684f510bb99e539bc1
The only remaining thing bothering me, is that the class attribute is sometimes moved to a new line, if it is too long (at least, I think that is the reason). (See https://github.com/Jubeki/laravel-pint-blade-test/commit/b756cd0749757436f6dc84684f510bb99e539bc1#diff-e720f286fb3c46871afbdac94bfe0293e346e36a23d16d636485431ddefe8324R3-R5 or the image below).
I also found no configuration option to change it, like if a single attribute, keep it on same line.

I created a PR in the skeleton, so that you can see what would happen with the formatting on the skeleton: https://github.com/laravel/laravel/pull/6380
Probably best to disable Blade Formatting Testing on the skeleton repository.
(Simply disable Laravel/blade in the root pint.json and that should fix the tests)

Hi,
In our project, after running pint, the namespace of Constants is deleted and not imported.
Here are the details:
➜  avo-core git:(master) ✗ php artisan about

  Environment ....................................................................
  Application Name ......................................................... cloud
  Laravel Version ........................................................ 10.48.3
  PHP Version ............................................................. 8.2.16
  Composer Version ............................................................. -
  Environment .............................................................. local
  Debug Mode ............................................................. ENABLED
  URL ............................................................. localhost:8000
  Maintenance Mode ........................................................... OFF

The pint.json contains this configuration:
...
"fully_qualified_strict_types": {
  "import_symbols": true,
  "leading_backslash_in_global_namespace": false
},
...

ScreenShot

Hi. It's great to see blade support poc in this PR.
I tried formatting on local environment contains 167 blade files and it takes about 4~5 minutes to finish and 25 files detected error while almost of these are valid syntax.
51373edf3367:/app# find resources/ -name *.blade.php | wc -l
167

51373edf3367:/app# time ./vendor/bin/pint

  ✓✓✓!✓!✓!!!✓✓✓✓✓✓✓!!✓!✓✓✓!!✓✓✓✓!✓✓!✓✓✓✓✓✓✓✓✓✓✓✓.✓✓.✓✓✓✓.✓✓✓✓✓✓.✓✓!.✓✓.✓✓.!!✓.!✓✓✓!✓!✓✓✓✓✓✓!✓✓✓✓!✓✓✓✓✓✓!✓!✓✓!✓.✓.✓✓.✓✓✓!✓✓.✓✓.✓✓✓.✓✓.✓...✓✓✓.✓.!✓.✓✓.✓✓.✓.✓✓..✓✓✓✓✓✓✓✓✓✓✓✓✓✓✓✓✓✓✓✓✓.✓✓✓✓✓✓✓✓✓✓✓✓✓✓.✓✓✓✓✓✓✓✓✓✓.✓✓✓✓✓✓✓✓✓✓✓✓✓✓✓✓✓✓✓✓✓✓✓✓✓✓✓✓✓✓✓✓✓.✓✓✓✓✓✓✓✓✓✓✓✓✓

  ───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── Laravel
    FAIL   ............................................................................................................................................................................................................................................................................................................................................................................... 251 files, 25 errors, 196 style issues fixed
  ✓ resources/lang/cs/articles.php                                                                                ! resources/views/sketchbooks/index.blade.php
~long output~                                                                                Unexpected end of input while parsing echo
  ✓ resources/views/sketchbooks/show.blade.php                                                                                Laravel/blade
  ✓ resources/views/skicar.blade.php                                                                                Laravel/blade
  ✓ resources/views/skicare.blade.php                                                                                Laravel/blade
  ✓ resources/views/users/form.blade.php                                                                                Laravel/blade
  ! resources/views/users/index.blade.php                                                                                Unexpected end of input while parsing echo
  ✓ resources/views/users/show.blade.php                                                                                Laravel/blade
  ✓ resources/views/zoom.blade.php                                                                                Laravel/blade

real    4m18.233s
user    4m48.056s
sys     0m59.064s

error example of false positive
[error] resources/views/admin/login.blade.php: SyntaxError: Unexpected end of input while parsing echo
[error]
[error]   13|
Prosím prihláste sa

[error]   14|

[error]   15|

[error]  >16|                     {!! Form::open(['action' => 'AuthController@postLogin', 'method' => 'post', 'id' => 'loginForm']) !!}

Prettier takes a long time to initialize, but once it is in memory it formats very quickly. So to improve this, I think running prettier command once and parsing output to see if it has errors is one of applicable approach.
As an aside, I now develop and use vscode-blade-formatter in VSCode (Marketplace), and it has same logic as @shufo/prettier-plugin-blade, so it would be great to be able to specify arbitrary plugin for formatting blade in pint to keep consistency between editor's save on format and format from program like pint.
This is because the above false positives do not occur in @shufo/prettier-plugin-blade, or vice versa, errors may occur in @shufo/prettier-plugin-blade that do not occur in prettier-plugin-blade.

@shufo Test again with the latest version. Should be away faster now.

It is a long-awaited feature of this.
It's working fine but it takes a little bit of time.

@nunomaduro
Good to hear. The first format time has been optimized down from 4 minutes to 1m20s in same condition.
5c9bac976ab9:/app# time ./vendor/bin/pint

  ✓✓✓!✓✓✓!✓!✓✓✓✓✓✓✓✓✓✓!✓✓✓!✓✓✓✓✓✓✓✓✓✓✓!!✓✓.✓✓✓✓✓.✓✓.✓✓✓✓.✓✓✓✓✓✓.✓✓!.✓✓.✓✓.!!✓.✓✓✓✓✓.✓.✓✓✓✓✓!.✓✓✓!

~long output~  ........................................................................................................................................................................... 502 files, 28 errors, 187 style issues fixed

real    1m20.239s
user    2m10.922s

As far as I can see, the first run is still six times behind the performance of native prettier.
Tried both @shufo/prettier-plugin-blade, prettier-plugin-blade.
5c9bac976ab9:/app# cat .prettierrc
{
  "plugins": ["@shufo/prettier-plugin-blade"],
  "overrides": [
    {
      "files": ["*.blade.php"],
      "options": {
        "parser": "blade",
        "wrapAttributes": "force-expand-multiline",
        "tabWidth": 4
      }
    }
  ]
}

5c9bac976ab9:/app# time ./node_modules/.bin/prettier "resources/**/*.blade.php" -w
resources/views/admin/index.blade.php 480ms
resources/views/admin/login.blade.php 139ms

~long output~

real    0m12.146s
user    0m19.590s
sys     0m2.414s

Very exited for this feature! 🚀
I tried running on my Windows 11 machine and I'm getting strange behaviour, using Git Bash. Same results using PowerShell.
It takes the contents of one file and moves to another. For example it copies and replaces the content from admin/categories/edit.blade.php to admin/documents/edit.blade.php. But it also does the same from admin/documents/create.blade.php to admin/trashed-documents/index.blade.php, so it's not based on the filename.
Also getting different results and errors on each subsequent run.
Please let me know if I can provide more helpful info in some way!

Laravel Version ...... 10.48.8
PHP Version .......... 8.2.8
Composer Version ..... 2.7.2
Environment .......... local
Debug Mode ........... ENABLED

First run
❯ pint --blade

  ...............................................................!!!✓!!✓!✓✓!!!!!!!!!!!!✓✓!✓✓!✓..................

  ───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── Laravel
    FAIL   ............................................................................................................................................................. 110 files, 20 errors, 9 style issues fixed
  ! resources\views\admin\categories\create.blade.php                                                                    '..' is not recognized as an internal or external command, operable program or batch file.
  ! resources\views\admin\categories\edit.blade.php                                                                      '..' is not recognized as an internal or external command, operable program or batch file.
  ! resources\views\admin\categories\index.blade.php                                                                     '..' is not recognized as an internal or external command, operable program or batch file.
  ✓ resources\views\admin\documents\create.blade.php                                                                                Laravel/blade
  ! resources\views\admin\documents\edit.blade.php                                                                       '..' is not recognized as an internal or external command, operable program or batch file.
  ! resources\views\admin\documents\index.blade.php                                                                      '..' is not recognized as an internal or external command, operable program or batch file.
  ✓ resources\views\admin\trashed-documents\index.blade.php                                                                                Laravel/blade
  ! resources\views\auth\login.blade.php                                                                                '..' is not recognized as an internal or external command, operable program or batch file.
  ✓ resources\views\components\button.blade.php                                                                                Laravel/blade
  ✓ resources\views\components\card.blade.php                                                                                Laravel/blade
  ! resources\views\components\container.blade.php                                                                       '..' is not recognized as an internal or external command, operable program or batch file.
  ! resources\views\components\empty-state.blade.php                                                                     '..' is not recognized as an internal or external command, operable program or batch file.
  ! resources\views\components\form.blade.php                                                                            '..' is not recognized as an internal or external command, operable program or batch file.
  ! resources\views\components\halle-logo.blade.php                                                                      '..' is not recognized as an internal or external command, operable program or batch file.
  ! resources\views\components\header-meta-item.blade.php                                                                '..' is not recognized as an internal or external command, operable program or batch file.
  ! resources\views\components\input-group.blade.php                                                                     '..' is not recognized as an internal or external command, operable program or batch file.
  ! resources\views\components\input.blade.php                                                                           '..' is not recognized as an internal or external command, operable program or batch file.
  ! resources\views\components\list-container.blade.php (node:21508) [DEP0147] DeprecationWarning: In future versions of Node.js, fs.rmdir(path, { recursive: true }) will be removed. Use fs.rm(path, { recursive…
  ! resources\views\components\list-item.blade.php                                                                       '..' is not recognized as an internal or external command, operable program or batch file.
  ! resources\views\components\select.blade.php                                                                                Unexpected non-whitespace character after JSON at position 321
  ! resources\views\errors\404.blade.php                                                                                '..' is not recognized as an internal or external command, operable program or batch file.
  ! resources\views\errors\503.blade.php                                                                                Unexpected non-whitespace character after JSON at position 1402
  ✓ resources\views\layouts\alert.blade.php                                                                                Laravel/blade
  ✓ resources\views\layouts\app.blade.php                                                                                Laravel/blade
  ! resources\views\layouts\footer.blade.php                                                                                Unexpected non-whitespace character after JSON at position 1224
  ✓ resources\views\layouts\head.blade.php                                                                                Laravel/blade
  ✓ resources\views\layouts\header.blade.php                                                                                Laravel/blade
  ! resources\views\layouts\nav.blade.php                                                                                Unexpected non-whitespace character after JSON at position 473
  ✓ resources\views\layouts\split.blade.php                                                                                Laravel/blade

Second run
❯ pint --blade

  ...............................................................!!!.!✓.✓..!✓!!!!✓✓!!!✓..!..✓...................

  ───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── Laravel
    FAIL   ............................................................................................................................................................. 110 files, 13 errors, 7 style issues fixed
  ! resources\views\admin\categories\create.blade.php                                                                    '..' is not recognized as an internal or external command, operable program or batch file.
  ! resources\views\admin\categories\edit.blade.php                                                                      '..' is not recognized as an internal or external command, operable program or batch file.
  ! resources\views\admin\categories\index.blade.php                                                                     '..' is not recognized as an internal or external command, operable program or batch file.
  ! resources\views\admin\documents\edit.blade.php                                                                       '..' is not recognized as an internal or external command, operable program or batch file.
  ✓ resources\views\admin\documents\index.blade.php                                                                                Laravel/blade
  ✓ resources\views\auth\login.blade.php                                                                                Laravel/blade
  ! resources\views\components\container.blade.php                                                                       '..' is not recognized as an internal or external command, operable program or batch file.
  ✓ resources\views\components\empty-state.blade.php                                                                                Laravel/blade
  ! resources\views\components\form.blade.php  (node:23912) [DEP0147] DeprecationWarning: In future versions of Node.js, fs.rmdir(path, { recursive: true }) will be removed. Use fs.rm(path, { recursive: true })…
  ! resources\views\components\halle-logo.blade.php                                                                                Unexpected non-whitespace character after JSON at position 1435
  ! resources\views\components\header-meta-item.blade.php                                                                '..' is not recognized as an internal or external command, operable program or batch file.
  ! resources\views\components\input-group.blade.php                                                                     '..' is not recognized as an internal or external command, operable program or batch file.
  ✓ resources\views\components\input.blade.php                                                                                Laravel/blade
  ✓ resources\views\components\list-container.blade.php                                                                                Laravel/blade
  ! resources\views\components\list-item.blade.php                                                                       '..' is not recognized as an internal or external command, operable program or batch file.
  ! resources\views\components\select.blade.php Unexpected closing tag "b_kOgI1AW3xQB". It may happen when the tag has already been closed by another tag. For more info see https://www.w3.org/TR/html5/syntax.ht</b_kOgI1AW3xQB><b_nk0xB>
…
  ! resources\views\errors\404.blade.php                                                                                '..' is not recognized as an internal or external command, operable program or batch file.
  ✓ resources\views\errors\503.blade.php                                                                                Laravel/blade
  ! resources\views\layouts\footer.blade.php                                                                             '..' is not recognized as an internal or external command, operable program or batch file.
  ✓ resources\views\layouts\nav.blade.php                                                                                Laravel/blade

Simple Blade Component with error
❯ pint --blade resources/views/components/form.blade.php

  !

  ───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── Laravel
    FAIL   ........................................................................................................................................................................................ 1 file, 1 error
  ! resources\views\components\form.blade.php                                                                            '..' is not recognized as an internal or external command, operable program or batch file.

@props([
    'method' => 'POST',
    'action',
    'noCsrf' => false,
])

<form
    method="{{ in_array(strtoupper($method), ['POST', 'PUT', 'PATCH', 'DELETE']) ? 'POST' : 'GET' }}"
    action="{{ $action }}"
    {{ $attributes }}
>
    @if (!in_array($method, ['GET', 'POST']))
        @method($method)
    @endif

    @if (!$noCsrf)
        @csrf
    @endif

    {{ $slot }}
</form>

I got it working on my machine by tweaking the pintCommand in .blade.format.json! After adding php to the beginning of the command everything works as expected, and the files are parsed.
- "pintCommand": "../builds/pint {file}",
+ "pintCommand": "php ../builds/pint {file}",

I like that if there are multiple attributes, they are always moved to a new line each. (though it looked weird on the first glance, if they are all very short)
-- @Jubeki

I actually think that 2 attributes on the same line is fine most of the time, since they're often short. Maybe this setting could be configurable?
In your screenshots there are some tags that are not moved to separate lines, despite having 2 attributes. <x-input-label for="..." :value="..." /> and <x-input-error :messages="..." class="..." />. Is this because of the Blade syntax colon? Or did you change the formatting by hand for the screenshots?

Some examples that would look better on the same line in my opinion:

Part of the joy of using Prettier is not having to worry about even the possibility of debates regarding the config. Even the few settings it supports, printWidth in particular, have been the source of debates on my teams.
If possible, please consider not adding additional config.

Thank you for working on this. I have tried it in a project.
Here is an issue:
It does not format anchor tags properly

Team

    Team

        Team

Part of the joy of using Prettier is not having to worry about even the possibility of debates regarding the config. Even the few settings it supports, printWidth in particular, have been the source of debates on my teams.
-- @wescopeland

Yeah I guess you're right. It's just sooo close to how I actually want to format it 😅 I'll just have to get used to it 👍

love the idea.
In the meantime we use

https://github.com/shufo/prettier-plugin-blade
https://github.com/tailwindlabs/prettier-plugin-tailwindcss

with code-guide setting
{
  "plugins": [
    "prettier-plugin-tailwindcss",
    "@shufo/prettier-plugin-blade"
  ],
  "overrides": [
    {
      "files": [
        "*.blade.php"
      ],
      "options": {
        "parser": "blade",
        "wrapAttributes": "force-expand-multiline",
        "sortTailwindcssClasses": true,
        "tailwindcssConfigPath": "tailwind.config.cjs",
        "sortHtmlAttributes": "code-guide"
      }
    }
  ]
}

--sort-html-attributes
Sort HTML Attributes in the specified order. [none | alphabetical | code-guide | idiomatic | vuejs] default: none

@chrillep The problem is that it doesn't always format the blade correctly:

https://github.com/shufo/prettier-plugin-blade/issues/291
https://github.com/shufo/prettier-plugin-blade/issues/288
https://github.com/shufo/prettier-plugin-blade/issues/285

It would be really great if Laravel Pint could handle this, including Tailwind class sorting. :)

@chrillep The problem is that it doesn't always format the blade correctly:

https://github.com/shufo/prettier-plugin-blade/issues/291

https://github.com/shufo/prettier-plugin-blade/issues/288

https://github.com/shufo/prettier-plugin-blade/issues/285

It would be really great if Laravel Pint could handle this, including Tailwind class sorting. :)

I agree. But maybe Bring @shufo into the fold since he has added great functionality to blade linting!
The whole sorting is 👌

@nunomaduro  Currently I can't  see how it get my own .prettierrc or prettierrc.json file. Is this a limitation for now ?


Add node profiles

Translate to resources

Revamped from https://github.com/bitcoin-dev-project/warnet/pull/99

All the tests pass locally, but not time to debug now


Added a new file to my branch

This pull request added a new file to my branch

Pull request successfully scrutinized and is ready for production


Add a message on the sending dialog when using a Ledger

To avoid problems such as https://cointelegraph.com/news/newly-discovered-vulnerability-in-all-ledger-hardware-wallets-puts-user-funds-at-risk

there is another issue, is that the receiving address might be redacted. So we need to display on device the receiving address to be sure it is not redacted.
If i remember well, the ledger app already allows this, you need to put some switch in the request to display the requested address on device.
https://github.com/ArkEcosystem/ark-desktop/blob/master/LedgerArk.js#L11
@alexbarnsley might need to confirm with ledger on their slack

see here https://github.com/ArkEcosystem/ark-ledger/blob/master/src/main.c#L752


Differentiate failing (no version) inputs in pipeline flow diagram

We had an issue today where we had misconfigured our pipelines in such a way that they were checking ok (the git repository they were looking at existed) but were failing to find refs / versions (the paths we told concourse to watch were bogus).  The only way to find these half-broken inputs was to click on each input (and there were about a dozen total) and see which ones had a "checked successfully", but did not list any found versions.
It would be helpful in cases like these if the web UI behaved as follows:

On input pages that have never received a version, put a note to that effect, rather than just displaying nothing.
On the pipeline diagram, modify the display of inputs that have no versions, either by making them red, pulsating, etc.  Combined with point 1, clicking on the "failing" input would make the root cause of the problem more apparent.

Moved to concourse/concourse#1134


[bug]Concurrent with more than 1000 requests.

Hello there
I met two problem.

Concurrent with more than 1000 requests.

I find that if  I send more than 1000 requests at the same time, some requests will get timeout exception.

unable handle http message with bad separator:

Some http header and body are concatenated by "\n\n", not "\r\n\r\n". this package cannnot handle theme correctly, but browser can.
ps: I encountered this problem on win, I do not know Linux will not have this problem

I find that if I send more than 1000 requests at the same time, some requests will get timeout exception.

This is more or less expected behavior as your system and/or network may not be able to cope with this high number of concurrent requests. As an alternative, I would suggest using some kind of queuing mechanism to limit your concurrency, for example https://github.com/clue/php-mq-react.

Some http header and body are concatenated by "\n\n", not "\r\n\r\n". this package cannnot handle theme correctly, but browser can.

Can you show us some code and/or URLs to reproduce the problem you're seeing? As per https://tools.ietf.org/html/rfc7230#section-3.5 this would require a CRLF, but apparently also accept a LF for robustness.

@clue   I write some debug code int package "react/http-client"
//vendor/react/http-client/src/Request.php#L133
    public function handleData($data)
    {
        $this->buffer .= $data;
        debug($data);
        debug(false !== strpos($this->buffer, "\n\n"));
        debug(false !== strpos($this->buffer, "\r\n\r\n"));
        exit;

and result:
\vendor\react\http-client\src\Request.php (line 137)
'HTTP/1.0 200 OK
Content-type: text/html

{"1":{"accept":0,"reject":0,"failed":0,"hw_failed":0,"time":68552,"miner_ip":"cryptonight.eu.nicehash.com:3355","miner_username":"19qaJZPjFqdhq4xCVeKYdwQcgj14FATpn6","diff":0,"network_delay":0,"hashrate":0,"hashrate_list":[0,0,0,0,0,0,0,0,0,0,0,0],"hashrate_list_15m":[0,0,0,0,0,0,0,0,0,0,0,0],"hashrate_list_30m":[0,0,0,0,0,0,0,0,0,0,0,0],"hashrate_list_45m":[0,0,0,0,0,0,0,0,0,0,0,0],"hashrate_list_1h":[0,0,0,0,0,0,0,0,0,0,0,0]},"2":{"accept":1332,"reject":62,"failed":57,"hw_failed":57,"time":68557,"miner_ip":"cryptonight.eu.nicehash.com:3355","miner_username":"19qaJZPjFqdhq4xCVeKYdwQcgj14FATpn6","diff":400015.581168,"network_delay":0,"hashrate":0,"hashrate_list":[2000.077881,4666.848145,7333.618164,4000.155762,6000.233398,6666.925781,8667.003906,1333.385254,4000.155762,4000.155762,5333.541016,4666.848145],"hashrate_list_15m":[5333.541504,4666.847656,6444.696289,4889.079102,4222.386230,4000.155273,4666.848145,5111.310547,4666.847656,5555.772461,4666.848145,4666.847656],"hashrate_list_30m":[3777.925781,5000.196289,4611.312012,5555.774902,3333.464111,5222.427734,5000.196777,5666.890137,4111.272949,4889.080566,5111.311523,4666.850098],"hashrate_list_45m":[5600.221680,4444.619141,5555.773926,6074.314453,4926.210449,4666.850586,5444.673340,3777.927002,5259.466797,5185.390137,4592.772461,4963.158691],"hashrate_list_1h":[4776.639160,4387.842773,5633.562012,4622.398926,5000.197266,6359.663574,4387.843750,5082.133301,4277.947266,5333.544922,4500.178711,4887.724609]},"3":{"accept":693,"reject":95,"failed":0,"hw_failed":0,"time":68557,"miner_ip":"cryptonight.eu.nicehash.com:3355","miner_username":"19qaJZPjFqdhq4xCVeKYdwQcgj14FATpn6","diff":200007.790584,"network_delay":0,"hashrate":0,"hashrate_list":[1333.385254,3333.463379,1333.385254,4000.155762,2666.770508,2666.770508,3333.463379,666.692627,2000.077881,1333.385254,2666.770508,2000.077881],"hashrate_list_15m":[2666.770264,3777.924561,2666.770264,1777.846924,3111.231934,1777.846924,2222.308594,1777.846924,2000.077759,3111.231934,2000.077759,2000.077759],"hashrate_list_30m":[1333.385132,3000.117432,1777.846802,1222.269775,1333.385132,2666.770508,3222.348389,2222.308594,2444.539551,2000.077637,2555.655029,2000.077637],"hashrate_list_45m":[1926.001099,2074.155273,1851.924072,2296.386230,1777.847046,2592.694580,1407.462036,1926.001099,2889.002686,2518.617432,1926.001099,2370.463379],"hashrate_list_1h":[1943.980835,2110.607910,1388.943115,1888.963013,2055.636475,2388.319580,2166.149658,1499.642090,2000.078613,2722.329834,2222.309814,2277.234863]},"4":{"accept":1417,"reject":82,"failed":0,"hw_failed":0,"time":68557,"miner_ip":"cryptonight.eu.nicehash.com:3355","miner_username":"19qaJZPjFqdhq4xCVeKYdwQcgj14FATpn6","diff":400015.581168,"network_delay":0,"hashrate":0,"hashrate_list":[1333.385254,5333.541016,4666.848145,5333.541016,6000.233398,6000.233398,8000.311523,9333.696289,2000.077881,7333.618164,6000.234375,6666.926758],"hashrate_list_15m":[3555.693848,4444.617188,6666.925781,5778.002441,3777.924561,5778.002441,4889.079102,6222.463867,3777.924561,5778.003418,6444.695312,6666.925781],"hashrate_list_30m":[3889.041748,4777.963379,5111.312988,4666.850586,6444.696777,5000.195312,4000.157471,6222.465332,4777.964355,5555.772461,4777.966309,6555.814453],"hashrate_list_45m":[7911.561523,4148.310547,5185.389648,5185.389648,4000.158203,4592.772461,5111.312012,6666.929688,3629.772949,5407.620117,5629.852051,5333.544922],"hashrate_list_1h":[5054.351074,5720.860352,5222.428711,6655.922852,4666.850586,4943.267090,4332.301758,4887.725098,5722.448242,5111.313965,5166.871094,5665.317871]},"dashboard":{"temperature_list":[40,40,40,40,39,39,40,40,40,40,40,40],"fanspeed_list":[1200,1200,1200,1200,1200,1200,1200,1200,1200,1200,1200,1200],"fanspeed_list2":[1110,1080,1110,1110,1110,1110,1110,1110,1110,1110,1080,1110],"temperature":40,"temperature_unit1":255,"temperature_unit2":39,"temperature_unit3":39,"temperature_unit4":46,"fanspeed":1200,"fanspeed2":1110,"ip":"<IP_ADDRESS>","gw":"<IP_ADDRESS>","mac":"08:13:bb:5a:54:6f","freq":360}}'
\vendor\react\http-client\src\Request.php (line 138)
true
\vendor\react\http-client\src\Request.php (line 139)
false

This is a http 1.0 response.

@slince Could you share which server software generates such responses?

@kelunik  The service is very old and you can see that it is using the http 1.0, which is a CGI written in C language


Run spellcheck

Ran cspell locally and fixed a number of typos.  Very roughly the more important changes are in earlier commits.
Be sure to check that none of these will have any unintended ill effects, such as the changes to users_popuate, or the eventTrackingName="copy lover referrral".  If so we can pull those out and merge the rest.

Could I get a workflow approval on this?


doc: Reword docker integration text

Some simple rewording. I skimmed the docker compose guide and I'm not sure if that's in scope here or not. I didn't change it.

test-me-please

test-me-please


added intl install for php-worker

Description
This PR allows to install intl in php-worker.
Motivation and Context
(https://github.com/egulias/EmailValidator) requires PHP Intl
Types of Changes

[] Bug fix (non-breaking change which fixes an issue).
[x] New feature (non-breaking change which adds functionality).
[] Breaking change (fix or feature that would cause existing functionality to not work as expected).

Definition of Done Checklist:

[x] I've read the Contribution Guide.
[] I've updated the documentation. (refer to this for how to do so).
[x] I enjoyed my time contributing and making developer's life easier :)

@bestlong do you know why the failures fail on INSTALL_LARAVEL_ENVOY ?

@bestlong is #3333 fixing INSTALL_LARAVEL_ENVOY??

https://github.com/php-zookeeper/php-zookeeper/pull/55
@Silassiai ZOOKEEPER is not compatible with php 8.2 yet

@bestlong ahh ok... thank you for merging this PR! :-D

@bestlong is #3333 fixing INSTALL_LARAVEL_ENVOY??

yes


Allow demo to always use the latest version of masonry

Updated demo project to pull latest masonry demo project.

Appreciate  this 👍 ! Sorry that I accidentally missed this at first.


Add support for beatmap availability state change handling

[x] Depends on ppy/osu#11410
[ ] Depends on game bump

This adds the required methods to support storing each user's beatmap availability/download states and change them.
I'll hold off from PR'ing the remaining osu!-side changes (updating beatmap availability and displaying so in panel) until this is merged, so things don't get messy there.
Also, fwiw I've intentionally changed code to reference the new namespaces, such that bumping game package can just be done here.
UPDATE: Tested these changes with my remaining ones lazer-side, working perfectly.

This needs conflict resolution.

This needs conflict resolution.

@frenzibyte no updates on this?

@frenzibyte no updates on this?

@frenzibyte no updates on this?

Done, updated game package along with the dependencies here, and removed all the checks and idle setting, ready for review and merge.

@frenzibyte no updates on this?

Done, updated game package along with the dependencies here, and removed all the checks and idle setting, ready for review and merge.

there are zero unit tests for this new operation now.

there are zero unit tests for this new operation now.

there are zero unit tests for this new operation now.

I wasn't sure how useful writing a test case to check if ChangeBeatmapAvailability(NotDownloaded) will change the client's availability to NotDownloaded. I would like to know in the process at what point is it unnecessary to write a test case for something because I was really concerned about this.

there are zero unit tests for this new operation now.

I wasn't sure how useful writing a test case to check if ChangeBeatmapAvailability(NotDownloaded) will change the client's availability to NotDownloaded. I would like to know in the process at what point is it unnecessary to write a test case for something because I was really concerned about this.

it's not only about checking that the user's state changed, it's also about checking whether that information was broadcast to the appropriate user group.
current server logic is small enough in size that in my opinion we should be aiming to as close to 100% test coverage as can reasonably get.

it's not only about checking that the user's state changed, it's also about checking whether that information was broadcast to the appropriate user group.
current server logic is small enough in size that in my opinion we should be aiming to as close to 100% test coverage as can reasonably get.

Gotcha, will write tests now then.

Gotcha, will write tests now then.


bg added in html

as said the image is now added in the html only
Kindly review this code and mention if any changes are needed

It works fine now.
Good work!!
Keep contributing and don't forget to star the repo, it will help other contributors as well.

Thanks a lot @AdityaSinha2305


yarn failed on gitlab

gitlab builder complains:
Running with gitlab-ci-multi-runner 1.9.4 (8ce22bd)
Using Docker executor with image marcoturi/ionic:latest ...
Pulling docker image marcoturi/ionic:latest ...
Running on runner-fa6cab46-project-2343902-concurrent-0 via runner-fa6cab46-machine-1485153937-388cca59-gce...
Cloning repository...
Cloning into '/builds/eidng8/ionic2-boilerplate'...
Checking out bf870f19 as master...
Checking cache for build_web/master...
Successfully extracted cache
$ yarn config set cache-folder yarn-cache
yarn config v0.19.1
success Set "cache-folder" to "yarn-cache".
Done in 0.05s.
$ yarn
yarn install v0.19.1
[1/5] Resolving packages...
[2/5] Fetching packages...
error "lodash-es-4.17.4.tgz": Tarball is not in network and can not be located in cache ("/builds/eidng8/ionic2-boilerplate/lodash-es-4.17.4.tgz")
info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.
ERROR: Build failed: exit code 1

with the yml
anything needs to be touched on my side?

@eidng8 I can't see the yml file

Did you tried to re-run the build? Sometimes gitlab has same network problem with npm/yarn packages. (Specially phantomjs)
Are you running the build on your computer or default gitlab servers ?

https://github.com/yarnpkg/yarn/issues/652

that yml file is from your repo, it's the file right after I've rebased. So it safe to just reference yours.
I do think this is a network problem. Because there were random (sort of) package popped up. Just was to confirm with you if there's anything I have to do, besides using your image.

Deleting and re-creating yarn.lock resolve the issue. See lasts commits.


feat: provide script to detect known cards requiring drm workaround

This covers for weird things like:

Having sddm login screen enabled
Having multiple users (if point 1 is true)
The gamescope-session user is not uid 1000
Having VULKAN_ADAPTER defined through export-gpu (if none is defined, then it will check the gpu marked as Default: yes)
Ignores gpus used for VFIO as switcherooctl ignores any card bound to the vfio-pci driver

The script exits with exit code 0 if the card requires DRM workaround (currently if a polaris card is detected) and exit code 1 if nothing needs to be done.
NOTE: this is still missing RX 450-460 cards as i do not know the output for those. but they should hopefully get caught by the Ellemeres and Lexa Pro regex checks

After talking to you @KyleGospo i have now modified this to just exit 0 if any card matches if VULKAN_ADAPTER is not defined
If VULKAN_ADAPTER is set through an env config in the users home then it will only check that GPU.
This means that should a user have a polaris card they use for GPU passthrough or use it for other tasks, they can just export-gpu to get back to he newer backend.
This also makes it possible to upstream our workaround to ChimeraOS as the requirement for switcherooctl is no longer present.

See: https://github.com/KyleGospo/gamescope-session/commit/b90d0a69c0a8c2f7d3df1988944ffbe29c2e1d1e


Adding in a few Cargo.toml keys

Just filling out some more of the info in the Cargo.toml

rust-version has been removed

Thanks!


requirements.txt is missing orjson dependency

    assert orjson is not None, "orjson must be installed to use ORJSONResponse"

done


When the network is disconnected, the start lens is too slow, and even the window cannot be opened

Describe the bug
When the network is disconnected, the start lens is too slow, and even the window cannot be opened
Environment (please complete the following information):

Lens Version: 2023.5.100746-latest
OS: MacOS 12.6.5
Installation method (e.g. snap or AppImage in Linux): dmg

So what you are seeing is:

Lens Desktop is not running
And the network is not connected
When you start Lens Desktop
It seems to take a very long time to load
And the splash screen stays visible for a long time

Is that correct?

yes

Can you try the latest version?


Remember settings choice

I'm constantly removing echo's and adding time stamp.
I couldn't find any setting that will save me that work each time.
It would be nice user experience if I could save the view settings once

Thanks for the issue post! I actually believe we should be supporting this, so I'm actually going to label this as a bug. Thanks for letting us know!


updated querious (2.0)

Thank you for the contribution. It was merged directly as 7aa826a443742df1a97df873c9cee3e13ccb7a60 to keep commit history cleaner. Your contribution is still credited to you.


Newsletter 10: gfx-hal and pong tutorials

Part of #139 ("Newsletter 10: Coordination/Tracking")
@mkhan45 @willofindie r?

:timer_clock: Merging in an hour


use encryption to pass enc payload

feat(use-enc_payload): provide a encrypted payload instead of calling guardian directly

close #5

Code Coverage Report

Overall Project
95.91% -0.03%
:green_apple:

Files changed
98.5%
:green_apple:

File
Coverage

EncryptedTokenizeRequest.kt
100%
:green_apple:

TokenService.kt
100%
:green_apple:

Session.kt
100%
:green_apple:

HgClient.kt
100%
:green_apple:

Hellgate.kt
96.48% -0.88%
:x:

HttpClient.kt
87.85%
:green_apple:


Not enough members for write

Most files were copied (from very same folder) to server but last two or three are in endless loop with funny errors.
Both files have around 4GB. File size limit???

What is your rclone version (eg output from rclone -V)
1.3

Which OS you are using and how many bits (eg Windows 7, 64 bit)
Mac OS X 10.11.5

Which cloud storage system are you using? (eg Google Drive)
Backblaze B2

The command you were trying to run (eg rclone copy /tmp remote:tmp)
rclone copy -vuc

A log from the command with the -v flag (eg output from rclone -v copy /tmp remote:tmp)

2016/06/22 05:07:09 pacer: Rate limited, increasing sleep to 2s
2016/06/22 05:07:09 pacer: low level retry 1/1 (error Not enough members for write of 4_z2c4731fb0384db29583e081c_f1163c041caad6176_d20160622_m005633_c001_v0001031_t0018: class org.apache.http.conn.ConnectTimeoutException - Connect to member-04.vault:8180 [member-04.vault/<IP_ADDRESS>] failed: connect timed out; class org.apache.http.conn.ConnectTimeoutException - Connect to member-05.vault:8180 [member-05.vault/<IP_ADDRESS>] failed: connect timed out (500 internal_error))
2016/06/22 05:07:09 (2016-06-02) storm in Germany by Braunau/MVI_0069.MP4: Received error: Not enough members for write of 4_z2c4731fb0384db29583e081c_f1163c041caad6176_d20160622_m005633_c001_v0001031_t0018: class org.apache.http.conn.ConnectTimeoutException - Connect to member-04.vault:8180 [member-04.vault/<IP_ADDRESS>] failed: connect timed out; class org.apache.http.conn.ConnectTimeoutException - Connect to member-05.vault:8180 [member-05.vault/<IP_ADDRESS>] failed: connect timed out (500 internal_error) - low level retry 3/10
2016/06/22 05:07:09 (2016-06-02) storm in Germany by Braunau/MVI_0069.MP4: Removing failed copy
2016/06/22 05:07:11 pacer: Reducing sleep to 1.5s
2016/06/22 05:07:11 (2016-06-02) storm in Germany by Braunau/MVI_0069.MP4: Failed to remove failed copy: failed to delete file: File not present: _ARCHIV/Video Projects/(2016-06-02) storm in Germany by Braunau/MVI_0069.MP4 (400 no_such_file)
2016/06/22 05:07:59

Strange! Looks like some sort of B2 internal error.
Did the files copy eventually?
You could try setting --b2-cutoff 1G so it tries to upload them in chunks.

--b2-upload-cutoff works. All files uploaded

I just read the integration checklist again backblaze recommend

When uploading files larger than 200MB, use the large files support to break up the files into parts and upload the parts in parallel.

So I'll change the default for the --b2-upload-cutoff to 200MB in the next release.

I've changed the default now.
You can try the latest version with lots of b2 changes here.
http://pub.rclone.org/v1.30-26-gcc62871β/


Do not allow dragging figures

Since dragging figures is causing weird things it's easier to just disable this option.
https://trello.com/c/iHmQ6u5K/310-disable-dragging-or-fix-figure-dragging

You should never use JS strings in attributes.

Feel free to change it to whatever you like or suggest what it should look like


Change launchpad header to showcase next project

Description
As Carbonable
I want to advertise about the next sale
In order to allow funders to join the presale
Acceptance criteria

[ ] Custom header with next project info
[ ] Link to form

Link to the design / Figma
https://www.figma.com/file/TxyvqO53GlCiTaJOE26AwM/dApp?type=design&node-id=144%3A7290&mode=design&t=Hjz6ZvMm1pvKUNpN-1

And the background image here


How to load the model and continue training ？

Hello Contributor, I have trained some models with the following code.
prepare env
env = marl.make_env(environment_name="smac", map_name="5m_vs_6m")
initialize algorithm with appointed hyper-parameters
mappo = marl.algos.mappo(hyperparam_source="smac")
build agent model based on env + algorithms + user preference
model = marl.build_model(env, mappo, {"core_arch": "gru", "encode_layer": "128-256"})
start training
mappo.fit( env, model,  stop={"timesteps_total": 1000000},  checkpoint_freq=100,  share_policy="group")
Is there any way I can load the trained model and continue to train the model?
Thank you.

Please refer to this example. You need to maintain the identical model architecture to continue training an existing model.


Nothing Works

find references gives this error:
Find References: Symbol references are not available for this project.
outline gives this:
this is likely an error with the language package
i tried to change java home.

Yup. As far as I can tell, this project is dead.

Well that's sad