Vehicle Mercedes does not work with type: template

Describe the bug
When you configure a vehicle with type: template, template: mercedes, the vehicle does not work. The config value region is not transfered from the template to the mercedes component.
Steps to reproduce

Create the following config entry in the evcc.yaml

vehicles:
  - name: name-car-1
    type: template
    template: mercedes
    title: title-car-1
    user: test123
    region: EMEA
    accesstoken: at
    refreshtoken: rt
    vin: W1

Set a break point in the mercedes.go line 39
Start the debugger and check that cc.Region is empty
Change the config to:

  - name: name-car-1
    type: mercedes
    title: title-car-1
    user: test@intranet
    region: EMEA
    tokens:
     access: at
     refresh: rt
    vin: W1

Start the debugger and check that cc.Region has the value EMEA

Looks like it gets lost in templates.template.RenderTemplate (tmpl.execute, line 347)
Configuration details
See steps to repro

Log details
n/a

What type of operating system are you running?
Linux
Version
current master branch

it is missing within the render part of the template

Region fehlt in https://github.com/evcc-io/evcc/blob/master/templates/definition/vehicle/mercedes.yaml#L39. Hab ich ggf bei der Vereinfachung übersehen.


Improve interaction model of input area on Copy challenges

The component currently uses the react-individual-character-input-boxes module. The expected behavior is that of a regular text box, so it feels a bit off when trying to do anything more than a simple paste.
Let's try a simple text box approach that is styled to still show the underlines (maybe another hidden text area behind the input that intelligently shows the underscored for blank characters).
This affects the two copy challenge pages we have:

Genesis
Transacting

Screenshot:

ref #97


Create test-preact-typescript.yml

Changes

Testing

Docs

I believe we already have coverage for this today. We already test the CLI itself and all of the templates in test/create-snowpack-app/create-snowpack-app.test.js. Is there something happening here that you'd like to see added to those tests instead?


Refactor icon model

The current model for custom icons and stream awesome icons suffers from code duplication, duplicated information, bad casts, and other Font Awesome hiccups. It shall be refactored in a way that custom icons reference font awesome icons.

Potential solution: Heavier use of Pinia, customIcon references fontAwesomeIcon, split fontAwesomeIcon (the instance, an interface to be serialized) and fontAwesomeIconType (a class with custom FA domain logic for calculation)


Cloudmapper authentication

While setting up cloudmapper, can the initial authentication be done without providing access keys and just on the basis of IAM roles?

Yes, CloudMapper uses the AWS SDK, so you never provide CloudMapper with access keys. It uses the methods provided by the SDK, which include accessing ~/.aws/config, your environment variables (which get set by aws-vault), the EC2 metadata service, ECS, etc.


Fix unmarshall error with Invite, improve error logging.

Who gets paid for this again?

@iopred not you with those CI failures. Disappoint.

Actually I have no idea what those failures are, it's in files not in this PR :|

Way to go, breaking code you didn't even touch.  This is why we can't have dev as our default branch.

Haha...  Rekt by github...
'''Pull requests that have a failing status can’t be merged from a phone.'''


Update README.md

For all PRs
[ ] I read the Contribution Guide
For new stacks
[ ] I followed the do's and don'ts
[ ] This stack does not already exist

Added a game development and design simple stack

Added a third tool to the stack.

Hi @MordodeMaru
Thanks so much for your contribution! We will review it and get back to you asap. =)

Changes requested have been applied.

By mistake closed the PR. Changes requested have been applied.

Thanks @MordodeMaru! I've gone ahead and merged it in. I'm not sure why there was a build failure before but I'll address it if doesn't work this time.


Boilerplate node code

Get the project started and ensure we all have the same back-end files pulled from main on GitHub!


[formrecognizer] update logging example on readme

Logging section shows how to enable DEBUG logging. Switch to showing how to enable INFO level.
Check if we can link to azure-core docs here

done in #14180


validating project name in config

I had an issue with my project name previously, I had an underscore in the name of the project, and since the project name is included in the url for the party, I had two separate issues:

i could not deploy initially, there was a problem with uploading my files that was caused by the path name
i had a ERR_SSL_VERSION_OR_CIPHER_MISMATCH error in the client when trying to connect via partysocket

this second error I think was caused by subdomain issue in cloudflare https://developers.cloudflare.com/ssl/troubleshooting/version-cipher-mismatch/
this pr just adds a simple check to the config file to make sure that the name of the project will work as a url path segment

Oh wow, I think you solved it. Thanks for sending a PR with a fix! I'll review and land this later tonight.


The image files with the same filename override

Hi @kyoshino
I just found out that when the client uploads another project image with the same filename (for example, viz1.jpg), the existing file from a completely different project gets overwritten.
Is it possible to prevent this by automatically renaming the new the same filename file, for example, from viz1.jpg to viz1-1.jpg, to viz1-2.jpg, to viz1-3.jpg e.t.c? Or I doing something wrong?
the yaml schema:
  - label: Projects
    name: projects
    folder: src/content/projects
    media_folder: /src/assets/projecsImages
    public_folder: /src/assets/projecsImages
    icon: domain_add
    create: true
    i18n: true
    format: yml
    extension: yaml
    thumbnail: pbImages.0.src
    slug: '{{title | localize}}'
    editor:
      preview: false
    fields:
      - {label: Title, name: title, widget: string, i18n: true}
      - label: Project Images
        name: images
        widget: list
        i18n: duplicate
        fields:
            - {label: Image, name: src, widget: image, i18n: duplicate}

Files are supposed to be renamed automatically. Will check why it’s not working. 🤔

Fix shipped with v0.38.1 🙇🏼

Very nice! thank you for the quick response!

By the way, the current behaviour is to rename files automatically without asking, but I plan to add a dialog to offer both replace and rename options. You may have seen something like this:
macOS

Google Drive

By the way, the current behavior is to rename files automatically without asking, but I plan to add a dialog to offer both replace and rename options. You may have seen something like this:
oh yes, this would be a good implementation, sometimes the user just wants to upgrade the image.

One more thing: I plan to offer an option to see the change history of a file and easily restore a previous version 😄
Nice, but how would it work? Let's say when the user overrides the file, does Sveltia rename and move the old file to another folder behind the scenes?

I think we don’t need an extra backup because files can be restored, but I need to check if that’s possible with the GitHub/GitLab API.

oh yeah, I didn't realize you can use native github history for files. I see that you have a lot of plans for sveltia :)
For me personally, the most anticipated future feature is a custom widget, can't wait to build and use them with sveltia :)


naming timer sampling and worker threads

What problem does this PR solve?
Issue Number: https://github.com/apache/brpc/issues/1923
Problem Summary: Naming threads for debugging.
线程命名方式： brpc 开头 + 线程用途。
其中 worker 线程以 id 作为区分。
What is changed and the side effects?
No
Changed:
Naming sampling, timer and worker threads.
Side effects:

Performance effects(性能影响):
No
Breaking backward compatibility(向后兼容性):
No

Check List:

Please make sure your changes are compilable(请确保你的更改可以通过编译).
When providing us with a new feature, it is best to add related tests(如果你向我们增加一个新的功能, 请添加相关测试).
Please follow Contributor Covenant Code of Conduct.(请遵循贡献者准则).

https://github.com/apache/brpc/blob/d6df0f156ad6bd8ec6722a3c3c15691607bb62e7/src/brpc/details/usercode_backup_pool.cpp#L103-L106
Can you also add names to UserCodeBackupPool?

UserCodeBackupPool

done


spawnOnce does not run after re-login

Problem Description
spawnOnce will not run the command after logout and login. It seems the records inserted by spawnOnce stay in xmonad.state forever. I am using xmonad-contrib version 0.13.
Configuration File
module Main where

import XMonad
import XMonad.Util.SpawnOnce

main :: IO ()
main = xmonad def { startupHook = spawnOnce "firefox" }

This is a bug caused by xmonad/xmonad#86
Thank you for reporting.  I'm going to close this as a duplicate.


Enhance README to take advantage of terraform.tf

what

Add terraform.tf to the usage instructions

why

The current usage does not account for terraform.tf, which is actually quite brilliant functionality

references

Personal experience using this over the last few months

I added a destroy procedure. Using this module this way works very smoothly. Very nice architecture!

I was just thinking the other day of doing something like this, I didn't know such functionality was already in place just not documented!
However I'm wondering since it is so far undocumented can we make the following changes before this goes "public":

rename those 3 input variables, they are unnecessarily verbose and clash with rest. Given the context of this module, it would be sufficient to call them just backend_file_path etc.
the path to the generated file should probably default to root module path, ie almost always the module that ultimately needs a backend. So the count 0/1 test should be whether the filename has been defined, not whether the path has been defined.
I think you have to empty bucket after state moved locally, before terraform destroy, otherwise you get an error.

I would be happy to submit some PR for same changes in other repos if that helps, I don't remember seeing any of them advertise this approach either.

This is an interesting approach!

pretty sure you will have to set force_destroy to true before doing the final apply since the bucket is versioned

Yes, I encountered that last time I did terraform destroy. I'm also reconsidering whether the backend file should be added to .gitignore, or whether it should be committed to Git. I want to try the workflow a few more times, but right now I'm away from this part of the project now. Still, the basic workflow is quite good. It is CloudPosse that deserves credit for that, @osterman.

Sorry we haven’t been able to review this yet. We’ve been slammed with new projects.
Has anyone else had a chance to test this out?

No rush, @osterman. In fact, I will change this to WIP because I still want to check into the issues I mentioned in my last comment.

@jmcgeheeiv even though the file is auto-generated I think it should be committed because this way, if there is a change in the tf state module, or you make a change in input values that you didn't realize would affect it, you will be able to see the change with git diff, whereas without having committed it, you will only see what the plan tells you has changed, there will be no source to check for diff to help understand cause of change.
Is there any disadvantage? If a timestamp or other attribute in the generated file changed at every apply, that would be a good reason to gitignore it, but that's not the case.

@schollii, in my most recent pass through the workflow I have made these changes:

Specify file name ./backend.tf. terraform.tf is not descriptive.
Commit ./backend.tf to git
Do something more forceful to remove the state bucket. @schollii, could you help by describing the exact command you recommend?

Shall I implement these changes in the documentation?

I gather this will work on v0.16.0? Pretty sure I had issues with 0.17.0 (#47). It seems like it's only the docs that are changing. I believe the workflow is that after you have deleted the backend.tf and done terraform init so state is all local, you then have to set the force_destroy to true in the bucket in backend-bootstrap.tf (the file that instantiates the tfstate-backend module and creates bucket/dynamodb table), then terraform destroy. However I cannot verify that right now, but if you don't do that, then during terraform destroy you will get an error that the bucket has contents. After I deleted manually from AWS console a couple weeks ago, the destroy worked.

@jmcgeheeiv I have verified the workflow and documented at https://github.com/cloudposse/terraform-aws-tfstate-backend/issues/44#issuecomment-640954116 since PR's are harder to find. HTH.

@jmcgeheeiv Definitely like the idea of getting this merged. I personally didn't know about this functionality and it sounds much preferred! Weighing in on a couple things:

backend.tf > terraform.tf 👍
Committing backend.tf to git -- I only see negatives in not doing this. I think this is the right call.

Happy to get this PR approved, merged, and cut for you as soon as you and @schollii suss out the final changes you want to make to the README. Thanks gents!

Modified without question @schollii's procedure in #44. Because he seems like such a trustworthy chap.
@schollii, @Gowiem, please scrutinize.

Today I had an opportunity to destroy a deployment, and I found an error in my destroy procedure (the value of force_destroy).
I also added @schollii as a contributor. I hope you do not mind.

/rebuild-readme

@jmcgeheeiv Sorry to do it to ya, but it looks like there are some merge conflicts. Mind fixing and we'll get this merged?

@aknysh markdown doesn't require sequence of numbers just first one must be '1'. See https://www.markdownguide.org/basic-syntax/#ordered-lists.
However the readme is understandable without rendering if we use sequence of numbers, for small lists it's manageable.

IMO 1s is preferable, since you dont need to reorder them if you add an item in the middle of the list

IMO 1s are preferable, since you dont need to reorder them if you add an item in the middle of the list

ah yes, the user will see it as an unordered list, it's just in the code itself we have 1.

They will see it as an ordered list
On Wed, Jun 24, 2020, 10:24 AM Andriy Knysh<EMAIL_ADDRESS>wrote:

IMO 1s are preferable, since you dont need to reorder them if you add an
item in the middle of the list
ah yes, the user will see it as an unordered list, it's just in the code
itself we have 1.
—
You are receiving this because your review was requested.
Reply to this email directly, view it on GitHub
https://github.com/cloudposse/terraform-aws-tfstate-backend/pull/46#issuecomment-648853175,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AD2CPKTTBHHB3TUHYZ5IARTRYIECRANCNFSM4NDVW5EQ
.

They will see it as an ordered list

@aknysh Did you mean to close this? I would think we would still want to get this merged. Mind if I reopen?

@aknysh Did you mean to close this? I would think we would still want to get this merged. Mind if I reopen?

oh sorry, clicked the wrong button, reopening

The GitHub style guide specifies that 1. be used

/test all

@jmcgeheeiv @schollii Thanks for the contributions and wading through the updates! This is just a docs update, but still... Released as 0.18.1.


feat: susie_finemapper wrapper function

The logic for building credible sets from the susie outputs need to be changed to make it more robust for outlier cases and for when it hasn't resolved any credible sets.


Debug bound on calls and queries

This will also involve deriving Debug on all built-in explicitly-created Call/Query types, and emitting the Debug derive or impl in macro-generated Call/Query implementations.
It's unclear if we can reasonably assume everything inside calls and queries will already have Debug since it will apply to every parameter of every call method - we may need to emit custom Debug implementations which use a placeholder output for types inside variants which are not Deubg (based on specialization, similar to our maybe_call wrappers).


Kafka and RabbitMQ Senders should be Closeable

Describe the feature
AloKafkaSender and AloRabbitMQSender are not Closeable, when they both cache references to underlying Clients. This is problematic if I ever want to fully dispose of a Sender, i.e. when a Stream is stopped.
Rational
If a Stream is repetitively started and stopped, it may cause a memory leak if the underlying client resources are not closed.
Example Scenario
I want to stop a stream and restart it. If I do this today, multiple senders will be created without releasing resources of ones no-longer-in-use

Closed via #51


Remove aws cred check from pipelines make target

This check is useful in dev, but breaks permanent envs since
self-update-pipelines runs the make target directly.
We can figure out how to gracefully run this check in dev only
some other time.

yes, this works, I can run self-update-pipelines in dev


Support for Dailymotion Games live streams

Hi,
thanks for your work it's brilliant. Do you think that the plugin could support Dailymotion games live streams such as http://games.dailymotion.com/live/ ?
Bye

Hi curunoir,
I'll look into it, but it depends on whether the dailymotion add-on or any other add-on on Kodi supports it.
Cheers,
KH

Hi, thanks for your attention. I'm not sure if the Dailymotion addon handles it on every environments, some say on forums they can, some others including me can't.

I've added support for this in the latest push. However, if it doesn't work for you from the add-on, it won't work. I'm doing this first so when the add-on is fixed, it can be used right away.


Issue with Network.csv generated from PowerGenome run

The sequence of rows that's desired:

Region description
Network_zones
DistrZones
CES
RPS
CO_2_Max_Mtons
CO_2_Max_ton_MWh
CO_2_Import_ton_MWh
CO_2_Export_ton_MWh
Network_lines
z1
Line_Max_Flow_MW
Line_Min_Flow_MW
Transmission Path Name
distance_mile
Line_Loss_Percentage
Line_Max_Reinforcement_MW
Line_Reinforcement_Cost_per_MW_yr

The sequence of rows generated currently:

Region description
Network_zones
DistrZones
CES
RPS
CO_2_Max_Mtons
CO_2_Max_ton_MWh
CO_2_Import_ton_MWh
CO_2_Export_ton_MWh
Network_lines
USA_Single
Line_Max_Flow_MW
Line_Min_Flow_MW
Transmission Path Name
distance_mile
Line_Loss_Percentage
Line_Max_Reinforcement_MW
Line_Reinforcement_Cost_per_MW_yr

So, there's a z1 column missing in between "Network_lines" and "Line_Max_Flow_MW" and instead the current version produces the name of the model region.

Hi @sambuddhac, sorry that I missed this! Fixed with c7a39c67594be8bfbb958bae4d8ec42efedfbdf2

Thanks Greg !!! Much appreciated.


Add linter

Proposal
We need to add a GitHub workflow with a linter for the code. The linter should take into consideration:

Root Orchestrator

System Manager (python)
Cloud scheduler (python)

Cluster Orchestrator

Cluster scheduler (python)
cluster manager (python)

NodeEngine (golang)

I will resolve this together with this ticket: https://github.com/oakestra/oakestra/issues/234

This was addressed in #234. Closing!


How do I set settings keys for other libraries I’m using in my project?

Describe the problem
I’m trying to add django-constance to my project. One of my dependencies has a configuration key that I’d like to configure within Constance. Unfortunately, I cannot import Constance within config/settings.py as it will cause all the tests to fail (and also I’m not sure if this is allowed — if my understanding is correct settings.py sets up all the Django apps and what not and calling Constance before Django has set up all apps could cause undefined behavior?)
So given a standard Django configuration key defined in config/settings.py, how do I set that key using Constance?

Right, but the problem is the app is a library that I cannot modify, that calls configuration values from django.conf.
I could technically fork the library and make the changes, but this becomes infeasible over time as I add more dependencies, increasing the number of config values I need to adjust.

In that case you can take a look on signals section in the constance docs.
But I think it's not a good idea because of django warns about altering settings in runtime. And this can cause various errors especially when runs multiple instance of django app.

Thanks @NoPH8. After reading some more posts and the documentation it seems like there is currently no way to achieve this without modifying said library or just forcing the user to set up the settings before starting the server.


Add a basic e2e test for CI

Signed-off-by: Wang Yan<EMAIL_ADDRESS>

yes, it just a begining. Definiately, we'll have a framwork to handle it.


rotating extruder by any means does not work

forge: 43.1.32
create: 0.5.0.f
mechanical extruder: 1.0.1
upon placing the mechanical extruder, you may notice that in some orientations the "andesite shaft" turns and rotates towards your facing however the block itself does not (indicated on the upper level, the shafts indicate the direction that i was facing when i was placing it)
the extruder will only work when powered on one specific side (powered on south side), any other "rotation" of the block it ill not work (as indicated on the lower half where the top left is "pressed down" but the other 3 are not)
using the wrench to rotate the extruder does rotate the "shaft" but it will not rotate the texture
regardless, the rotation is only visual and not functional, so any direction except the direction stated above will not work (as shown in the lower half)

Wow!
Thanks for your amazing bug report!
I see some issues with the generation of the blockstate.
I'm trying to fix it.

Done and uploaded!

sweet, the update works like a charm! (though has seemingly introduced one bug? i will start this as a new report though as to not confuse people)


Mediator cannot be defined in Blaze Components template

Hi @DominikGuzei,
I'm experimenting using Blaze Components with space-ui.
Everything has been working well, except that I cannot define mediator for a template if that template is registered as Blaze Component.
Specifically, the UrlFormMediator here is not defined inside UrlForm template instances.
It looks like Blaze Components has interfered with the way mediator is initiated. Do you have any idea of a work-around?

A workaround could be to not use the Mediator of Space UI at all. Instead you can make the Blaze Component injectable. I have done this with Meteor Templates (via Mixin).

Here is how I have done it for Meteor templates:
Template.dependenciesMixin.hooks({
  created: function () {
    // Support Dependencies on template
    this.Dependencies = this.view.template.Dependencies;
    Simian.App.injector.injectInto(this);
  }
});

You can adjust that for Blaze Components I think. Simian.App is the Space UI app instance.

Hey guys,
Cool – I also used the blaze-components library and really like it!
@npvn I use the two libraries differently:

blaze-components is superb for encapsulated components that don't know where they get their data from. So i treat them like any other Blaze template, but can provide properties etc. from outside.
space:ui remains the high-level framework that prepares and fetches the data and hands it off to individual blaze-components. So you can think of it like blaze-components = React, space:ui = Flux

If you really want to use them together, you have to take a look at how blaze-components injects itself into the template lifecycles. space:ui does so in a very non-destructive manner, but if blaze-components overrides the template hooks (created, rendered etc.) afterwards, then its a problem.

Thanks for your suggestions.
Actually I'm following the same approach like what @DominikGuzei mentioned: I use space-ui to orchestrate how data flows inside the app, and use a component framework to create dumb, composable views.
I'm experimenting with the 3 available component frameworks (Flow Components, Blaze Components and React) to see which one works best with space-ui.
If you're interested, feel free to join me here :wink:

I'm experimenting with the 3 available component frameworks (Flow Components, Blaze Components and React) to see which one works best with space-ui.

Great. I'm interested in the results.
Right now I just use Meteor Templates with https://github.com/aldeed/meteor-template-extension because I think the Meteor Core should set a standard for UI Components so the whole community can use the same thing. I also think that the upcoming additions to Meteor Templates will make them more useful out of the box.

Is this still a real issue or should we close it?

@DominikGuzei: It's still an issue. I haven't had time to work on it yet.

Ok, @npvn I will take some time today and look over your examples! :wink:
your https://github.com/npvn/meteor-url-shortener repo looks awesome, you want to share some more experiences how integration with react and flow-components worked?

Hey @npvn,
I looked into your issue it seems to be a bug in blaze-components that "normal" Blaze template hooks don't work correctly anymore after making it a component.
I filed an issue here: https://github.com/peerlibrary/meteor-blaze-components/issues/53

Closing this issue as it is not a problem with space:ui but blaze-components which does not stick to the standards and thus makes integration pretty hard.

I think that you should do this as @Sanjo is describing. And this is by creating a mixin for Blaze Components:
class DependenciesMixin extends BlazeComponent
    onCreated: ->
      Simian.App.injector.injectInto @mixinParent()

Or something. I have no idea how this Space UI thingy works. :-)

Yeah I think for now the best solutions are either:

Create high-level Blaze templates that are connected with a mediator and distribute the data down to the sub-templates and blaze-components
Ignore the Space.ui.Mediator and do the dependency injection yourself with a blaze-component mixin.

Also, I think there could be much better integration by creating a common class. You could do (untested):
class BlazeComponentsMediator extends Space.ui.Mediator
  template: ->
    # To use Mediator's class-level field.
    @constructor.Template

# Make BlazeComponentsMediator into a Blaze Component as well.
for property, value of BlazeComponent when property not in ['__super__',]
  IronBlazeComponent[property] = value
for property, value of (BlazeComponent::) when property not in ['constructor']
  IronBlazeComponent::[property] = value

No idea if that works. But something alongside this direction I think would be the correct way to do it. So to extend Mediator so that you do not have to use templates anymore, but can use directly Blaze Components.
Then you can do:
class @TodoListMediator extends BlazeComponentsMediator

  @Template: 'todo_list'

  Dependencies:
    store: 'TodosStore'
    meteor: 'Meteor'

  setDefaultState: -> editingTodoId: null

  setInitialState: ->
    todos: @store.get('todos')
    hasAnyTodos: @store.get('todos').count() > 0
    allTodosCompleted: @store.get('activeTodos').count() is 0

  toggleTodo: (todo) -> @publish new TodoToggled todoId: todo._id

  deleteTodo: (todo) -> @publish new TodoDeleted todoId: todo._id

  editTodo: (todo) -> @set 'editingTodoId', todo._id

  submitNewTitle: (todo, newTitle) ->
    @publish new TodoTitleChanged todoId: todo._id, newTitle: newTitle
    @stopEditing()

  toggleAllTodos: -> @meteor.call 'toggleAllTodos'

  stopEditing: -> @set 'editingTodoId', null

  state: -> @getState()

  isToggleChecked: ->
    # This probably should not be accessing .state(), but something else?
    if @state().hasAnyTodos and @state().allTodosCompleted then 'checked' else false

  prepareTodoData: ->
    @state().isEditing = @get('editingTodoId') is @data()._id
    return @data()

  events: ->
    super.concat
      'toggled .todo': (event) -> @toggleTodo @

      'destroyed .todo': (event) -> @deleteTodo @

      'doubleClicked .todo': (event) -> @editTodo @

      'editingCanceled .todo': -> @stopEditing()

      'editingCompleted .todo': (event) ->
        newTitle = @getTitleValue()
        @submitNewTitle @data(), newTitle

      'click #toggle-all': -> @toggleAllTodos()

I think a lot of patching templates to work with Mediator is something Blaze Components are doing as well. So the question is which one should be doing what when you combine things like this.

Thanks @mitar this looks pretty cool!
I will try it out and if it works well I could just add a Space.ui.BlazeComponent that could work similar to your example :wink:

BTW, how does setInitialState work? Reactively? Why is then initial state?

Yeah, that's not perfect :wink: it is reactive, so it probably would be better named to setReactiveState or something. There is also setDefaultState which is not reactive.

@npvn, @mitar, @Sanjo I am happy to announce full (optional) integration of blaze-components in<EMAIL_ADDRESS>:smile:
There is a new class Space.ui.BlazeComponent that provides full support of both APIs:
class @FooterComponent extends Space.ui.BlazeComponent

  @register 'footer'

  Dependencies:
    store: 'TodosStore'
    meteor: 'Meteor'

  setDefaultState: -> availableFilters: @_mapAvailableFilters()

  setReactiveState: ->
    activeTodosCount: @store.get('activeTodos').count()
    completedTodosCount: @store.get('completedTodos').count()

  pluralize: (count) -> if count is 1 then 'item' else 'items'

  events: -> [
    'click #clear-completed': (event) -> @meteor.call 'clearCompletedTodos'
  ]

  _mapAvailableFilters: -> _.map @store.FILTERS, (key) ->
    name: key[0].toUpperCase() + key.slice 1
    path: key

all you have todo (extra) is to tell your application or module to setup the components:
class @TodoMVC extends Space.ui.Application
  // …
  Components: ['InputComponent', 'FooterComponent']
  // …

Really love this integration because it brings together two really useful packages!

@DominikGuzei: This is very awesome! Thank you :+1:
About your question, here is my experience after trying out the 3 component solutions (React, Blaze Components and Flow Components) with space-ui:
=====
Flow Components
A component framework in its early stage. Its API is not yet polished. The framework has some significant limitations (see below).
Pros:

Built on top of Blaze and thus have access to the power of Meteor templates.

Cons:

Technically we cannot create stateless components. See the comment marked with "XXX Flow Components Comment 1" in the space-ui-flow-components branch.

Sometimes we will need to create redundant states. See "XXX Flow Components Comment 2".

Passing an event handler from a parent component to its children is very cumbersome. See  "XXX Flow Components Comment 3".

=====
React
A framework with a simple, straightforward and predictable API. Writing app with React feels weird at first, but the more I use it, the more I like it.
However, the integration between React and space-ui at the moment is not streamlined. Many times I needed to change the structure of the app or apply workarounds to get it to work. See the comments marked with "XXX React Comment" in the space-ui-react branch.
Pros:

Simple but powerful API.

Huge support from the community and a rapidly growing ecosystem.

Cons:

Without templating, we lose many great things that come with Blaze. But this might be different in the future. Evan and Avital at MDG are working on a [promising experiment] (https://github.com/meteor/meteor/tree/experimental-spacebars-over-react).

There's no established pattern for using React with Meteor (and space-ui). We may have to come up with a lot of workarounds.

=====
Blaze Components
A well-designed framework with clear and easy to use API.
Its only limitation was the conflict with space-ui. But now that we've solved this problem, Blaze Components looks like the most well-rounded solution :).
=====
Conclusion
Both Blaze Components and React are potential options.
For a short-term choice, Blaze Components is great with very well-designed API and the ability to work seamlessly with Blaze.
For a long-term consideration, React is incomparable with its huge community and ecosystem.

Hey @npvn, thanks for your great research work, really appreciate that! :wink:
I also really like React and used it for other projects, however for Prisma (my only Meteor app) I don't use it atm and switching would be too costly. But if you want to try, it should be pretty easy to bridge the gap to space:ui and make more pleasant API – look at the blaze-components integration, that's only a few lines of code.
The only thing I don't like so much about React is its size – its around 40kb gzipped although its only the rendering layer and you need jQuery in many cases too … not to mention the supporting code to integrate it with your meteor app.
Another reason for me to stay away from React is that the core team is under high pressure to release a better component framework, so I see blaze-components more like a temporary solution.

@npvn Thanks for sharing your research!


Add read_epochs_fif for consistency

Currently, we have read_raw as a wrapper that auto-detects file formats and dispatches to the appropriate read_raw_* functions. In epoch land, this is not the case: read_epochs works only with FIFF files, but we also have read_epochs_eeglab, read_epochs_fieldtrip, and so on.
I think it would be worth to try to be more consistent here. As a first step, we could add an alias read_epochs_fif, which calls read_epochs.
If we wanted to go a step further, we could deprecate the current FIF-specific read_epochs and make it a generic epoch reader, just like we have for raw data.

I would be ok to have read_epochs be able to read different formats as I
assume it would be transparent for fif files.
we can add read_epochs_fif. I don't foresee any API change for end users so
+1

Message ID: @.***>


split RecordSinkFactory into two implementations

Up for debate: should RecordSinkFactory be an interface, with two separate bean implementations?
The current RecordSinkFactory has a bunch of conditionals, including setting many of its member variables as optional. As Yulia is adding GcsStorage as another member variable, this expands even more and complicates the application context.
By splitting into two distinct implementations, each implementation can be more strict about what it requires.

#587 is more important than this PR, and they touch the same files - let's focus on that other PR first, then I'll rebase this one if we decide to move forward with it.

looking closer at this, I think I like the split into to distinct Sinks - it seems like there are quite a few things that only Rawls or WDS needs and the split makes this easier to track vs having to disable a whole bunch of things when one or the other doesn't need it!

reverting to draft until I can properly rebase on top of #587


Hide error data by default when in production

I think its appropriate to assume that when in production, we want to hide errors and only output status codes. Is this something you would want?

Hi Hans,
This is essentially the idea behind the "handle500Errors" option. It prevents server errors from reaching the client with sensitive information. Do you see another case that isn't covered?

No, I have an old version of swagger-node-runner, which didn't have functionality. I use swagger-node, which is still dependent on the old version. So you can just close. :)

Hans,
You could still upgrade to the new version and continue to use the swagger-node cli even though it's templates have not been updated yet.  See this for upgrading instructions: https://github.com/theganyo/swagger-node-runner/releases/tag/v0.6.0.
Scott


Fix for Pebble issue #76

I created RootAttributeNotFoundException as a subclasss of AttributeNotFoundException so that it is possible to distinguish the difference if need be. I also changed an existing test that expected NPE, as I feel this is a very generic exception that can hide other issues.

I love it! Thanks a lot.

My pleasure. Will you cut a 1.5.1 release anytime soon? :)

Absolutely, either tonight or tomorrow night for sure.


unable to install ortools on python 3.12

What version of OR-Tools and what language are you using?
Version: v9.7
Language: python 3.12
**Which solver are you using
CP-SAT
What operating system (Linux, Windows, ...) and version?
mac osx 14.0
What did you do?
Steps to reproduce the behavior:

install python 3.12 toolchain
created a pytohn3.12 virtualenv
ACtivate it : source venv/bin/activate
install ortools: python3.12 -m pip install --upgrade ortools

What did you expect to see
ortools installed
What did you see instead?
ERROR: Could not find a version that satisfies the requirement ortools (from versions: none)
ERROR: No matching distribution found for ortools
Anything else we should know about your project / environment
It used to work with Python 3.11

3.12 was released after our last release. It will be available for 9.8 (in the next 2 weeks).

Well noted, reverting to 3.11, nice job guys, thanks :)

I am unable to install ortools in a virtual environment, but I can install them outside of it. How can I fix this? My Python version is 3.13.

please no necro-posting.
3.13 is not yet supported.


CBOM example lists cryptographic-asset in components but does not list it separately as a dependency

Description

CDX schema v1.6 adds support for provides tag in dependencies. A good use-case for this is to use it with component type crypotographic-asset.
The official example by CDX lists a cryptographic-asset in components but does not list it separately as a dependency. It is only mentioned in the new provides tag.
According to the CDX v1.6 spec:

Components or services that do not have their own dependencies must be declared as empty elements within the graph

Screenshots

Reference

Issue came up as part of this PR.

I am interested in contributing to this issue @jkowalleck


Make --official-cmd-taps imply --online.

[x] Have you followed the guidelines in our Contributing document?
[x] Have you checked to ensure there aren't other open Pull Requests for the same change?
[x] Have you added an explanation of what your changes do and why you'd like us to include them?
[ ] Have you written new tests for your changes? Here's an example.
[x] Have you successfully run brew tests with your changes locally?

Tests that need a network connection aren't currently run on CI, but tests that use official command taps (i.e. also require a network connection) are, which is inconsistent.

Heh, the one test fails here. Manpage would need to be updated, too.
In general I think it's worth considering installing more stuff that's needed for pending tests or removing them. They are just noise at this point, otherwise.

I think it's worth considering installing more stuff that's needed for pending tests or removing them. They are just noise at this point, otherwise.

@reitermarkus Any thoughts on this?


Desktop notification sound selection

Summary
This PR allows the users to select the between 6 desktop notification sounds.
Ticket Link
Fixes https://github.com/mattermost/mattermost-server/issues/14784
https://mattermost.atlassian.net/browse/MM-467
Screenshots

/cc @hmhealey

CI is failing bease storybook stage, I've been trying to solve it without success :disappointed:, will try again tomorrow

@rvillablanca Can we add a bit more padding here as per the designs? Other than that looks good!

Design:

Hi @calebroseland, I'm done with some suggestions, only two things remaininig, I need add some tests and add a little padding as suggested by @esethna but this last not sure where I should take a look, for example modify some css, inline in html, etc.

@rvillablanca I've added @nevyangelova as well if you have any questions on the tweaks needed here

I'm done with some suggestions, only two things remaininig, I need add some tests and add a little padding as suggested by @esethna but this last not sure where I should take a look, for example modify some css, inline in html, etc.

@nevyangelova can you help with the above questions?

@esethna Having more time I'll take a look into this, adding tests and adding the padding but, I'm not sure about the padding you want because it seems very subtle de differences between the expected design and what I did, even I can't notice the difference (sorry my designs skills are not well developed :joy: )

@andrewbrown00 might be able to provide exact guidance, it's only a few pixels difference I believe

Hi @calebroseland, I'm done with some suggestions, only two things remaininig, I need add some tests and add a little padding as suggested by @esethna but this last not sure where I should take a look, for example modify some css, inline in html, etc.

Hey @rvillablanca amazing work, thanks a lot! For the CSS, you can add the dropdown class to _forms.scss and add additional padding :) I also suggest naming the class react-select react-select-top to something more explicit, maybe notification-sound-dropdown ? If you have any questions regarding the unit tests let me know, but it should be similar to the other tests in 'desktop_notification_settings.test.jsx'  just pass the sound prop and expect that the component has rendered the dropdown, and of course update the snapshots :)

@esethna I'm done with the required changes, I have not received the required padding but I decided to set it to 5 px on top, but I'm open to do the changes once you decide the exact padding measure :wink:
@nevyangelova thanks for the guidance, very clear and really appreciated :+1:

Thanks @rvillablanca for taking on this feature 🎉
Sorry for the delay in my response and thanks to the rest of the team for handling the reviews 😄
Feedback

[x] Spacing between the radio buttons and the droplist is good
[ ] The droplist should be set to the default state when opening the Desktop Notifications section, it currently shows the droplist in a focused state

Current
Expected

@esethna @andrewbrown00 Hi guys, just finished the required changes so you are ready to review this :)

@rvillablanca looks great, and I think Andrew's focus issue if fixed as well, removing the PM and UX review labels. Thanks!

@jgilliam17 please make sure to test on various browsers and desktop for this PR, thanks!

Thank you @rvillablanca
I noticed a small glitch on Chrome when hovering with your mouse over OFF (see image), does not reproduce consistently.

Selected notification sounds work great on Safari, Chrome and Firefox on mac OS Catalina.
Desktop App on macOS Catalina - I only hear the standard OS sound with new notifications, and not the selected one in account settings. Not sure if I need to change anything on mac's system preferences to enable it.
I will update my comment after I finish Windows and Linux testing.

Testing -cont.
Windows 10 - neither Edge or Desktop App play any of the custom sound effects. I can only hear the standard OS sound. Also confirmed by @ogi-m.
Ubuntu - I'm having trouble with the sound on Ubuntu VM. Ogi tested on the desktop app(ubuntu) - all custom sounds play as expected.

Could be related with the cache in case of browsers?

Could be related with the cache in case of browsers?

@rvillablanca good point - After clearing cache for the Edge browser I can hear the custom sound, but it plays concurrently with the standard OS sound.

@jgilliam17 Does the OS sound not overlap our sound on the current release? That definitely happened in the past, but I don't remember if we ever found a way to fix that.

Sorry, I missed this message earlier.

I don't know if the new property added desktop_notification_sound should be added to UserNotifProps in mattermost-redux so 'm open to any suggestion/s.
/cc @hmhealey

Yeah, we should add that since it'll cause problems later when people start moving notification-related code to TypeScript. Would you mind adding that?

@jgilliam17 Does the OS sound not overlap our sound on the current release? That definitely happened in the past, but I don't remember if we ever found a way to fix that.
@hmhealey You're right, it overlaps on current release too

/update-branch

/update-branch

@rvillablanca
I re-tested today and I am still not hearing custom sounds on the desktop app (macOS and Windows), only standard OS notification sound.
Custom notification sound on various browsers works great.

@jgilliam17 that is because I haven't done anything yet, but now I have a little time. Before to trying anything I need to understand if this code is also shared and/or used by those mattermost applications ? I haven't used those apps so give me some time to understand how they are working, sorry I'm new in the webapp/frontend side of mattermost :)

@jgilliam17 that is because I haven't done anything yet, but now I have a little time. Before to trying anything I need to understand if this code is also shared and/or used by those mattermost applications ? I haven't used those apps so give me some time to understand how they are working, sorry I'm new in the webapp/frontend side of mattermost :)

My mistake 🙂 .
I noticed server was updated on my desktop app and thought new changes were applied. I'll wait for the mention here to re-test. Thanks.

@jgilliam17 Just tried the desktop app and it is working in my case (I'm using linux). What I did was to download the desktop source code and built, I pointed it to my development environment and it worked. I don't have mac so I will try in another machine with windows and I will let you know how it worked.

Also I pointed the desktop app to https://mattermost-webapp-pr-5721.test.mattermost.cloud and it is working good

@jgilliam17 I tried the desktop app in windows and it is working fine for me at leat, I downloaded the app for windows version and I pointed it to https://mattermost-webapp-pr-5721.test.mattermost.cloud, so for me it is working on linux and windows desktop apps. Unfortunatelly I don't have a mac so I could try it!

Thank you for testing @rvillablanca
Unfortunately, I am not able to make the custom sounds work on Windows and Mac desktop apps.
@esethna I discussed my trouble testing custom sounds with @Willyfrog. He suggested we open a desktop PR for custom sounds to be implemented on the desktop app (Windows and macOS)

@rvillablanca are you open to submitting a desktop PR for this? Please reach out to @Willyfrog for questions

Sure I can :)
I have to talk with @Willyfrog because I think this should not require to do any change in the desktop app as the new sounds are working in the same way when we had just one sound, also I was able to reproduce the sounds in the linux and windows apps but, if we can improve anything to make this more reproducible, I'm open to work on it

given this line I'd accept that linux does play the sound, but it shouldn't on windows or mac. if the os notification has its own sound, then you'll likely hear both the native one and the webapp one.

You are right, I didn't see those lines before but I tried the windows app on windows 10 and I remember that I just only heard the new notification sounds, I will try again and see if the sounds are overlapping, but as you said and showed it should no be working in the apps.
I will reach you out later so you can tell me more about the changes in the desktop app, or if you prefer you could tell me about the details here 👍

@Willyfrog I just tried in windows (10) and there is no overlapping of sound, it is working fine. Maybe the method isWindowsApp is not working as expected.
The User-Agent header sent by the app is:

I just talked with @Willyfrog and I got a lot of feedback so right now I understand the problem :)
Please  @jgilliam17 give me some time to get into this and finish the PR as expected, I will reach you out when I'm done :+1:

@esethna @jgilliam17 @Willyfrog  finally this is done and ready to be reviewed. Some changes added:

Now webapp checks if the desktop app can play custom sounds. I decided to check against version 4.6.0, this means if the version of the app is 4.6.0 or lower then the notification sounds list will not be available to select a custom sound, otherwise it will be displayed.

To make notification sounds consistent in the webapp and the desktop app I decided to remove native OS sound (currently in Windows and Mac), this means the new default sound will be Bing if none has been selected yet. This applies for webapp and desktop app.

@jgilliam17 I believe it is important to test around enable/disable sounds and selecting new custom sounds, hopfully in the webapp, previous desktop app and the new one so we can be sure I didn't breake anything :sweat_smile:
@Willyfrog Regarding the verification of the version the number 4.6.0 is only to test, I don't know which version will be the next so after the review is complete could you tell me which version we should check ? Also in the desktop app I set the version to 4.9.0 in order to display the notification sounds list but this should be changed as well.
So this is finished and I hope we don't get bugs :pray:

@Willyfrog Regarding the verification of the version the number 4.6.0 is only to test, I don't know which version will be the next so after the review is complete could you tell me which version we should check ? Also in the desktop app I set the version to 4.9.0 in order to display the notification sounds list but this should be changed as well.

4.6.0 should be fine, as that would be the most recent version this will ship, if we need to postpone then we just have to modify that line :)

test server removed due some underlying issues in the cluster that made this one unstable.

There appears to be an issue with theme awareness:

Hello @rvillablanca
I tested the sound on the browser and desktop app today(desktop pr), both are working great.  Can you please mention me here (for re-test) when the theme issue Caleb brought up is fixed? Thanks.

Hi @jgilliam17 I had some time so I fixed the bug about the styles so now it is displaying correctly :wink:

Removing the test server for maintenance purposes. Please add the label again if you need it. Sorry for any inconvenience.

Thank you @rvillablanca
The dropdown menu theme looks good now.
One issue I noticed, but did not have the repro steps before - there is a small glitch when menu is open, happens as you drag mouse pointer down toward open menu. See gif.

Hi @jgilliam17 thanks for the review. I based that component in an existing one used in the language settings

It seems it has the same glitch :thinking:

Good point @rvillablanca , thanks for checking the language dropdown.
I can file that separately. 🙂

/update-branch


How can I get the video asset after compress ?

I want to get the video asset after compress?
Because I want to get get the file size and compare it to the original video.

There is 2022 year outside🎉 Old outdated issues are closing. Please search if there are already existing issues with the same problem before opening new ☮


WordPress: Improve support for WP 5.9 and who requests.

Context

Summary
Who param on the WP_User_Query was removed as part of WP 5.9. This change, stops a doing it wrong notice.
Part of fixes for 5.9 https://github.com/google/web-stories-wp/issues/9733
Relevant Technical Choices

To-do

User-facing changes

Testing Instructions

[x] This is a non-user-facing change and requires no QA

This PR can be tested by following these steps:

Reviews
Does this PR have a security-related impact?

Does this PR change what data or activity we track or use?

Does this PR have a legal-related impact?

Checklist

[ ] This PR addresses an existing issue and I have linked this PR to it in ZenHub
[ ] I have tested this code to the best of my abilities
[ ] I have verified accessibility to the best of my abilities (docs)
[ ] I have verified i18n and l10n (translation, right-to-left layout) to the best of my abilities
[ ] This code is covered by automated tests (unit, integration, and/or e2e) to verify it works as intended (docs)
[ ] I have added documentation where necessary
[ ] I have added a matching Type: XYZ label to the PR

Fixes #

It'd be more forward compatible to use capability queries if available. See #9990


Image Picker From Google Drive Issue

So I have been getting come crashes related to the URI being not found. I found this to happen when using the Image Picker and selecting a non image type file (ZIP, MP4). Whats odd is the onActivityResult returns a URI back but its not valid it contains a .jpg extension and returns the exception below when you try to open it into a input stream. Anyway to restrict google drive selection to photos only? Or is there a way to disable showing third party apps and just show the built in gallery app?
Thank You
Exception (I picked a .mp4 file from my google drive account):
java.io.FileNotFoundException: /storage/emulated/0/mediapicker/images/ad220b5b-f716-42ae-ac6b-002879870f0f.jpg: open failed: ENOENT (No such file or directory)

Hi @mikemike396
If you want to disable third-party apps like Google Drive then just add this option to your builder .allowOnlineImages(false).
I'm wondering why you can select zip files with google drive; it supposes to be disabled. Anyway, I'll take a look and raise it as a bug.
Can you please tell me what kind of devices you are using? Is it a real device or emulator?
Thanks

This was a real device. Samsung Galaxy Note 3 - Android 5.0

Fixed with version 2.4.0


Update to support newer version of Ulauncher

Please make this usable on newer versions of Ulauncher

Ulauncher 5 isn't released yet. Once there are dev builds for Arch I'll fix the compat, but until then it's too cumbersome to switch back and forth on my distro.
See https://github.com/friday/ulauncher-hash2/issues/2

I see! No problem. Sorry to bother

No worries!

@friday could you please update according to Ulauncher/Ulauncher#385

Done. Have tested all clients, but might have missed something. Create a new issue in that case


Update logback.xml template for 2.0.0-M1 and make it optional

Q
A

Bug fix?
no

New feature?
yes

API breaks?
no

Deprecations?
no

Related tickets
-

License
Apache 2.0

What's in this PR?

Update of the logback.xml template, to match the one in 2.0.0-M1.
And made it optional (by default disabled).
Why?

NiFi added new appender and updated some of them.
And there is no reason to override the default logback.xml with our template when we don't change anything in it.
I made a function to check if the template needs to be used, but right now it just return false because nothing seems to make use of the template.
Checklist

[X] Implementation tested
[X] Error handling code meets the guideline
[X] Logging code meets the guideline
[X] User guide and development docs updated (if needed)
[x] Append changelog with changes

Was this logback.xml just copied from the 2.0.0-M1 baseline?

We should also update the nifi-cluster helm chart logback.xml since it routes all of the appender output to the Console (stdout). It's not verbatim copied, because it includes an additional Console appender. Without this, only the bootstrap log appears in stdout, making it impossible to see nifi logs in something like the Rancher UI.

Was this logback.xml just copied from the 2.0.0-M1 baseline?

Yes directly copied from the docker image.

We should also update the nifi-cluster helm chart logback.xml since it routes all of the appender output to the Console (stdout). It's verbatim copied and it includes an additional Console appender that basically accepts all the other appender outputs. Without this, only the bootstrap log appears in stdout, making it impossible to see nifi logs in something like the Rancher UI.

I made the changes, can you confirm them. I'm not sure.

We should also update the nifi-cluster helm chart logback.xml since it routes all of the appender output to the Console (stdout). It's verbatim copied and it includes an additional Console appender that basically accepts all the other appender outputs. Without this, only the bootstrap log appears in stdout, making it impossible to see nifi logs in something like the Rancher UI.

I made the changes, can you confirm them. I'm not sure.

Looks good to me

Do you think there's any risk in merging this for nifikop 1.x?

Do you think there's any risk in merging this for nifikop 1.x?

I discussed with @erdrix yesterday about the suppression of the file. And he said that we shouldn't. The objective to have it in the operator like the others files was that the operator will provide its version of the configuration. That could be identitical to the one in NiFi but could be different (better) like for example in case where we could have some use of the NiFi logs in the Operator. And if the user wants the one from NiFi, it should override it. So we should make sure to keep them up to date. What do you think?

Do you think there's any risk in merging this for nifikop 1.x?

I discussed with @erdrix yesterday about the suppression of the file. And he said that we shouldn't. The objective to have it in the operator like the others files was that the operator will provide its version of the configuration. That could be identitical to the one in NiFi but could be different (better) like for example in case where we could have some use of the NiFi logs in the Operator. And if the user wants the one from NiFi, it should override it. So we should make sure to keep them up to date. What do you think?

Do you mean that we should keep the templates in nifikop?

Do you think there's any risk in merging this for nifikop 1.x?

I discussed with @erdrix yesterday about the suppression of the file. And he said that we shouldn't. The objective to have it in the operator like the others files was that the operator will provide its version of the configuration. That could be identitical to the one in NiFi but could be different (better) like for example in case where we could have some use of the NiFi logs in the Operator. And if the user wants the one from NiFi, it should override it. So we should make sure to keep them up to date. What do you think?

Do you mean that we should keep the templates in nifikop?

Maybe yes

Do you think there's any risk in merging this for nifikop 1.x?

I discussed with @erdrix yesterday about the suppression of the file. And he said that we shouldn't. The objective to have it in the operator like the others files was that the operator will provide its version of the configuration. That could be identitical to the one in NiFi but could be different (better) like for example in case where we could have some use of the NiFi logs in the Operator. And if the user wants the one from NiFi, it should override it. So we should make sure to keep them up to date. What do you think?

Do you mean that we should keep the templates in nifikop?

Maybe yes, but we have to see them as the optimal configuration from the point of view of the operator.

Hmm, okay. I think as long as we keep compatibility well documented (which versions of nifikop are compatible w/ which versions of NiFi) i think this is okay. I only proposed this as a way to simplify what the operator has to care about.


Add refreshing state to ContentLoadState

Content load state is no longer part of this library, so gonna go ahead and close this


[BUG] DEFAULT_FILE_STORAGE not set

Is there an existing issue for this?

[X] I have searched the existing Issues

Current Behavior
When I install Mezzanine using pip and follow the docs, I consistently get the following error:
mezzt/lib/python3.10/site-packages/django/conf/init.py", line 83, in getattr
val = getattr(_wrapped, name)
AttributeError: 'Settings' object has no attribute 'DEFAULT_FILE_STORAGE'
It's worked around by the following:
echo "DEFAULT_FILE_STORAGE='FileSystemStorage'" >> project_myblog0/settings.py
Then I rerun the commands from the docs.
Expected Behavior
The documentation should reflect the actual usage, and either there should already be a value preset for DEFAULT_FILE_STORAGE, or it should be listed as a prerequisite in the documentation.
Steps To Reproduce
Follow the docs here: https://mezzanine.readthedocs.io/en/latest/overview.html#installation
pip install mezzanine
mezzanine-project project_name
cd project_name
python manage.py createdb --noinput
python manage.py runserver
Environment
- Operating System: DISTRIB_DESCRIPTION="Linux Mint 21.3 Virginia"
- Python version: Python 3.10.12
- Django version:
- Database engine and version:
- Mezzanine version:

Report from when I worked around the issue:

    .p'                `q.
    .d'                   `b.
   .d'                     `b.   * Mezzanine 6.0.0
   ::                       ::   * Django 5.1.1
  ::    M E Z Z A N I N E    ::  * Python 3.10.12
   ::                       ::   * SQLite 3.37.2
   `p.                     .q'   * Linux 5.15.0-116-generic
    `p.                   .q'

### Anything else?

Any advice on how to sling a basic blog or something up with this to use as a starting point would help me out, but I guess that the mailing list is likely better for that.

If this is a matter of the docs on here being ahead of the code, too, that's easy to fix.

https://mezzanine.readthedocs.io/en/latest/overview.html#installation says that its latest version is 4.3.1, so if the docs need some TLC I'm happy to contribute a few extra lines here and there.

Just place DEFAULT_FILE_STORAGE = "foo" in settings.py
Cheers


Scoped send filter does not share same scope

Is this a bug report?
(Yes)
Can you also reproduce the problem with the latest version?
(Not tried. My Version is 7.0.4 )
Environment

Dotnet version: 3.1
Operating system: Windows
IDE ( Visual Studio):

Steps to Reproduce
Have dependency service:
 internal interface Idependency
    {
        string Value { get; }
    }

    public class MyDependency : Idependency
    {
        public string Value { get; set; }
    }

Add dependency service to container:
  service.AddScoped<MyDependency>();
  service.AddScoped<Idependency>(sp => sp.GetRequiredService<MyDependency>());

Have publish and send filters:
internal class TestPublishFilter<T>: IFilter<PublishContext<T>> where T : class
    {
       public  TestPublishFilter(Idependency dependency)
        {
            if (string.IsNullOrEmpty(dependency?.Value))
            {
                throw new NullReferenceException();
            }
        }
        public Task Send(PublishContext<T> context, IPipe<PublishContext<T>> next)
        {
            return next.Send(context);
        }

        public void Probe(ProbeContext context)
        {
            context.CreateFilterScope(typeof(TestPublishFilter<T>).Name);
        }
    }

    internal class TestSendFilter<T> : IFilter<SendContext<T>> where T : class
    {
        public TestSendFilter(Idependency dependency)
        {
            if (string.IsNullOrEmpty(dependency?.Value))
            {
                throw new NullReferenceException();
            }
        }
        public Task Send(SendContext<T> context, IPipe<SendContext<T>> next)
        {
            return next.Send(context);
        }

        public void Probe(ProbeContext context)
        {
            context.CreateFilterScope(typeof(TestSendFilter<T>).Name);
        }
    }

Create custom scope, resolve dependency and update the value
Send message over bus
[Fact]
        public async Task Send()
        {
            CustomWebApplicationFactory<Startup> factory = CreateFactory(
                configureApp: SetIdsConfig
            );

            using IServiceScope scope = factory.Services.CreateScope();
            MyDependency scopedService = scope.ServiceProvider.GetRequiredService<MyDependency>();
            scopedService.Value = "Foo";
            var message = new
            {
                Payload = "qqq",
            };

            IBus bus =  scope.ServiceProvider.GetRequiredService<IBus>();
            ISendEndpoint endpoint = await bus.GetSendEndpoint(new Uri("queue:test:queue"));
            await endpoint.Send<ITestMessage>(message);

        }

Create custom scope, resolve dependency and update the value
Publish message over bus:
[Fact]
        public async Task Publish()
        {
            CustomWebApplicationFactory<Startup> factory = CreateFactory(
                configureApp: SetIdsConfig
            );

            using IServiceScope scope = factory.Services.CreateScope();
            MyDependency scopedService = scope.ServiceProvider.GetRequiredService<MyDependency>();
            scopedService.Value = "Foo";
            var message = new
            {
                Payload = "qqq",
            };

            IRequestClient<ITestMessage> client = scope.ServiceProvider.GetService<IRequestClient<ITestMessage>>();
            using RequestHandle<ITestMessage> request = client.Create(message, timeout: TimeSpan.FromSeconds(_sendRequestTimeout));
            Response<ITestAckMessage> response = await request.GetResponse<ITestAckMessage>();

        }

Expected Behavior
For both tests dependency should be injected into the service using same scope.
It says for both tests IDependency.Value should not be null.
Publish:

Send:

Actual Behavior
For publish test it works as expected. Dependency resolved and updated from custom scope injected into publish filter.
For send test it works different. Dependency created twice: once when resolved by test and second time when injected to service.
Send/Publish filters are not working same way with a custom scopes.
I expect send filter to get same dependency from same scope as in publish case.

Hey @sfiodorov, could you provide some code on how exactly you solved the problem? Did you just change the IBus to ISendEndpointProvider or do something else?
I have a similar scenario, but I'm using the multiple bus.

@yuriCarlos , Yes . I just resolved ISendEndpointProvider from the scope instead of IBus
You need the scope since:

Filters are scoped
ISendEndpointProvider is scoped life time

Hmmmm ok...
Since ISendEndpointProvider will be resolved from the most local provider (as the img below states), I think this feature (of shared contexts) will not work with a scenario where we have a multibus.

We could receive a message from RabbitMQ and try to send a new message to a AzureServiceBus, but it will not work because ISendEndpointProvider will be referenced to RabbitMQ and will try to send the message in this context, and not in the AzureServiceBus context...
I could try to resolve this dependency from IBus (or ISecondBus, or whatever your interface is) but this will lead to the same problem of resolving a singleton dependency.
Am I correct in this interpretation @phatboyg ? should it work in a multibus scenario?

I doubt it, the scope is from the consuming bus.

Exactly, so if the scope is from consuming bus (rabbitMQ in the mentioned scenario), when I try to send a new message using the ISendEndpointProvider it will be sent using the rabbitMQ context and it's provider, right?
To send a message to other provider (let's say I have an IAzureServiceBus interface to be my "ISecondBus") this context should be resolved from the ISecondBus right?

Basically, you aren't going to get a scope on the second bus, because there isn't a current scope on it from a message being consumed. Unless you have some class of your own in front of it that is scoped, that depends upon the second bus, and does some sort of magic between the two buses.

okay, thx :)


Backend's broker ping worker hang

I see a stack of broker ping work looks like below. This worker is waiting a RPC's result. Maybe it gets stuck by this RPC, which will leads that this backend can't ping other broker. Brokers will think that this backend is down, and it will clear all session from this backend. Then process in this session will fail.
#0  0x00007ff9ad2fca5b in recv () from /lib64/libc.so.6
#1  0x00000000022e543d in apache::thrift::transport::TSocket::read (this=0x4389ef260, buf=0x33606da00 "", len=512) at src/thrift/transport/TSocket.cpp:545
#2  0x00000000022ea385 in read (len=<optimized out>, buf=<optimized out>, this=<optimized out>) at ./src/thrift/transport/TTransport.h:105
#3  apache::thrift::transport::TBufferedTransport::readSlow (this=0x1bf37ed20, buf=0x7ff953734e20 "`NsS\371\177", len=4) at src/thrift/transport/TBufferTransports.cpp:53
#4  0x00000000010d6bae in read (len=4, buf=0x7ff953734e20 "`NsS\371\177", this=0x1bf37ed20) at /thirdparty/installed/include/thrift/transport/TBufferTransports.h
:71
#5  apache::thrift::transport::readAll<apache::thrift::transport::TBufferBase> (trans=..., buf=0x7ff953734e20 "`NsS\371\177", len=4) at /thirdparty/installed/inc
lude/thrift/transport/TTransport.h:41
#6  0x0000000000fa1f5e in readAll (len=4, buf=0x7ff953734e20 "`NsS\371\177", this=<optimized out>) at /thirdparty/installed/include/thrift/transport/TTransport.h
:121
#7  readI32 (this=0x60d3e5a40, i32=<synthetic pointer>) at /thirdparty/installed/include/thrift/protocol/TBinaryProtocol.tcc:371
#8  apache::thrift::protocol::TBinaryProtocolT<apache::thrift::transport::TTransport, apache::thrift::protocol::TNetworkBigEndian>::readMessageBegin (this=0x60d3e5a40, name=..., messageType=@0x7ff953734e8
c: 32761, seqid=@0x7ff953734e88: 0) at /thirdparty/installed/include/thrift/protocol/TBinaryProtocol.tcc:203
#9  0x00000000011a8187 in readMessageBegin (seqid=@0x7ff953734e88: 0, messageType=@0x7ff953734e8c: 32761, name=..., this=<optimized out>) at /thirdparty/installe
d/include/thrift/protocol/TProtocol.h:431
#10 doris::TPaloBrokerServiceClient::recv_ping (this=0x60d3e5e80, _return=...) at /core/gensrc/build/gen_cpp/TPaloBrokerService.cpp:2920
#11 0x00000000010478aa in doris::BrokerMgr::ping (this=this@entry=0x554f680, addr=...) at /core/be/src/runtime/broker_mgr.cpp:80
#12 0x00000000010479db in doris::BrokerMgr::ping_worker (this=0x554f680) at /core/be/src/runtime/broker_mgr.cpp:97
#13 0x0000000002d60c9f in std::execute_native_thread_routine (__p=0x5328300) at ../../../../../gcc-7.3.0/libstdc++-v3/src/c++11/thread.cc:83
#14 0x00007ff9acfe8e25 in start_thread () from /lib64/libpthread.so.0
#15 0x00007ff9ad2fbbad in clone () from /lib64/libc.so.6

I also see some log in broker looks like below
2019-11-04 22:10:24,601 INFO pool-3-thread-1id [ClientContextManager$CheckClientExpirationTask.run():139] client [<IP_ADDRESS>:9060] is expired, remove it from contexts. last ping time is<PHONE_NUMBER>871

Maybe we can make RPC timeout a short time like 500ms.

The RPC timeout is 500ms, currently.
So, timeout may not be the key problem...


No CORS headers sent in case of error 500

There is a similar closed issue that I have commented on, but there hasn't been any response, so I created a new issue.
Closed issue: https://github.com/aspnet/CORS/issues/46
Comment copy:
Has this issue been revisited?

But the main problem for me is that if I allow some domain do make CORS requests, I expect them to get all the information.
If the request was made with "XMLHttpRequest" as fallows:
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function () {
console.log(this.status); // with no CORS headers allways 0
if(this.status === 500){
// make some noise
}
};
xhttp.open("GET", 'http://www.example.ee/api', true);
xhttp.send();

If the response is indeed 500 but without CORS headers, then the "XMLHttpRequest" status will be 0, not 500.
So what's your ideas on this? Or am I missing something?

I think the issue here is that this is not likely to be safe to do in general in the CORS middleware, which is why we recommend customizing the behavior for your app. That is, it is not generally safe to send all error details to a remote caller. So, instead of letting the generic ASP.NET Core error handling mechanism propagate the error to the client, we recommend writing error handling code that effectively handles the error safely, and returns the appropriate message/info/data to the caller. That's essentially what is shown here: https://github.com/aspnet/CORS/issues/46#issuecomment-157570942

So if I need to let the caller know that an Internal Server Error occurred together with CORS middleware.
I would need to change the status code before CORS middleware and use some other status code or data structure to represent the Internal Server Error status ?
Also isn't detailed Error information hidden by default in asp.net core ?
https://docs.microsoft.com/en-us/aspnet/core/fundamentals/error-handling

I'm not sure if this is getting philosophical, but why would a JavaScript app need to know that an internal server error occurred? CORS is just for browser clients, and presumably if the server had a server error, the client can't do much about that (that's what an HTTP 500 error is).

This issue should be addressed. CORS should be independent of status codes whatsoever.

Outside of the philosophical side of things, I think the thing being discussed here is that ASP.NET Core's exception-handling middleware (the Developer Exception Page and the Exception Handler) will clear out all the headers so that they can send their response, which includes clearing out CORS headers.
I don't think that the CORS middleware itself cares about status codes; it'll gladly add the CORS headers as necessary.
So, if your code explicitly returns some error status code (400, 404, 500, etc.), I'm guessing that CORS will work just fine. However, if ASP.NET Core is going to render a generic error page, it clears all the headers in order to ensure maximum security (data exposure) and maximum compatibility (header conflicts).

@Eilon I'd like to add some more input (hopefully valid) to this issue.
NOTE: I was originally going to post this in the aspnet/Diagnostics repo because this might be more relevant to the ExceptionHandlingFilter instead of the CORS repo .. but I might try here as the context is helpful.

I have a very standard ASPNet Core 2.0 '.AddMvcCore()` web app. I then have CORS enabled and all works 100% great. A typical SPA app with REST/API backend.
When a server error occurs I'm expecting the Client App to successfully receive a Response from the server ... even if it's an HTTP-500 response. Right now when I handle custom exceptions
i.e.:
app.UseExceptionHandler(options =>
    options.Run(async httpContext =>
        await CustomExceptionHandler.ExceptionResponseAsync(httpContext, true)));

the aspnet core code clears all headers so my client app cannot read the response because the browser rejects the non-cors-complient response. This has been justified as:

However, if ASP.NET Core is going to render a generic error page, it clears all the headers in order to ensure maximum security (data exposure) and maximum compatibility (header conflicts).

It took me ages to figure out this was happening.
There is no obvious documentation about this. Literally, I had to ask in StackOverflow and then by fluke I was given some help because another very kind person actually checked the source code (thank you for OSS, MS!!) and told me what to do :)
So - would you gals/guys consider maybe enhancing the api to include an option to keep the headers etc .. because we the developer can make that call based upon what we intend to do with our custom exception handling.
for example (for one of the methods in the ExceptionHandlerExtensions class) :
public static IApplicationBuilder UseExceptionHandler(this IApplicationBuilder app, Action<IApplicationBuilder> configure, bool areHeadersCleared = true);
I find something like this important because it's actually describing some 'black magic' that would normally occur "under the hood/inside the box" and allow us, the developer, to make a more accurate decision about what we are trying to do with exception handling now.
Now - this is a lot of chat for something that can be considered smallish, so I'll give you guys some context to what we are doing and why we find this important.

We have services/BLL nuget library code that returns expected results (yay) or throws various errors, like a ValidationException (code failed to validate like name to short or age too old, etc)
We have code that has bugs and just throws normal Exception's like a db timed out cause network dropped and we forgot to use Polly for retrying, etc or db deadlocks (urgh..) etc..
Possible security creds failed, like .. they tried to update an item but they don't have the proper creds for it. (i.e. manually hacking querystring or POST form vals, etc)

So our libraries throw exceptions to handle non-happy-path scenarios and our custom exception handler  (called by the exception handling middleware) checks the exception.GetType() (basically) to determine the final status code and json payload.
Finally, we return our error info in the response body as json so a consuming client can (if they wish) interrogate the json payload to determine what to show on the client. At the very least, check the status code and update the UI accordingly.
if error == 400, display validation errors (info is in the json payload).
if error == 500, then display the error message in the payload. If dev, then detailed, if production, then some vague apology etc.
(NOTE: this is getting into the "philosophical side of things" so I don't want to debate this, just give some context to what and why we are doing things as such.

Counter point:
The counter to this  interesting too. Basically, have a try/catch inside each Action Method in the controller. This can be easily abstracted into a custom base controller where we could have a single protected method like this (in a base controller) ...
Note: browser pseduo code, etc...
protected async Task<dynamic> TryAsync(Func<Task<dynamic>> func)
{
    try
    {
        return await func();
    }
    catch (ServiceException serviceException)
    {
        return HandleExceptionWithMessage(HttpStatusCode.BadRequest, serviceException);
    }
    catch (ValidationException validationException)
    {
        return HandleValidationException(validationException);
    }
    ... snipper
}

and called like this..
[HttpGet("")]
public async Task<IActionResult> GetProductNotificationsAsync(ProductSearchQuery productSearchQuery,
                                                               CancellationToken cancellationToken)
{
     return await TryAsync(async () =>
        await _myService.GetProductsAsync(productSearchQuery, cancellationToken));
}

So yeah - some context, some thoughts, some extra discussion. Not sure if this should be asked in the aspnet/diagnostics repo.
thanks for reading this and keep on being awesome :)

Ugh ... I just spent half a day wrestling with ways to solve this (to aid in our migration from a full framework ASP.NET WebApi project into a new .NET Core API project (.NET Standard 2). After playing lots of games, this was my only reasonable solution to still have the useful dev exception message from the comfort of our actual web app (Chrome dev tools or the like) which is using both OAuth and CORS.
The startup bits look like this:
`        public void Configure(IApplicationBuilder app, IHostingEnvironment env) {
app.UseCors(c => {
c.AllowAnyOrigin()
.AllowAnyMethod()
.AllowAnyHeader()
.WithExposedHeaders("Content-Disposition", "Content-Length");
});
        if (env.IsDevelopment()) {
            app.UseMaintainCorsHeaders();
            app.UseDeveloperExceptionPage(); // Beautiful exception pages!
        }

`
Notice that CORS is the first middleware in the pipeline (pretty wide open). Next, only for development, we add our own custom middleware MaintainCorsHeader followed by the standard DeveloperExceptionPage.
Here is that custom middleware which does the magic necessary to "bring back" the CORS headers. It could be more restrictive, but it's only holding onto headers we've chosen to add in anyhow so it should be safe.
`        public async Task Invoke(HttpContext httpContext) {
// Find and hold onto any CORS related headers ...
var corsHeaders = new HeaderDictionary();
foreach (var pair in httpContext.Response.Headers) {
if (!pair.Key.ToLower().StartsWith("access-control-")) { continue; } // Not CORS related
corsHeaders[pair.Key] = pair.Value;
}
        // Bind to the OnStarting event so that we can make sure these CORS headers are still included going to the client
        httpContext.Response.OnStarting(o => {
            var ctx     = (HttpContext)o;
            var headers = ctx.Response.Headers;
            // Ensure all CORS headers remain or else add them back in ...
            foreach (var pair in corsHeaders) {
                if (headers.ContainsKey(pair.Key)) { continue; } // Still there!
                headers.Add(pair.Key, pair.Value);
            }
            return Task.CompletedTask;
        }, httpContext);

        // Call the pipeline ...
        await _Next(httpContext);
    }
}

`
First thing, it looks for and holds onto any CORS related (starts with "Access-Control-") headers. Then it binds to the OnStarting event of the Response so that it can double check that those headers STILL exist. If not (as is the case with the dev exception middleware responses), then this puts them back in place.

@Jungers42

What happens if there's a 4xx/5xx error when !env.IsDevelopment()? No CORS headers then on the response? Assumption: you production "Web App" is SPA.

Nitpick: use StringComparison.OrdinalIgnoreCase (or whatever enum option suits the scenario) instead of ToLower or ToUpper for string checks.

if (!pair.Key.StartsWith("access-control-", StringComparison.OrdinalIgnoreCase))
{
   ...
}

This issue was moved to aspnet/Home#2378


Import VMs with snapshots

Author Name: Tino Vázquez (Tino Vázquez)
Original Redmine Issue: 5239, https://dev.opennebula.org/issues/5239
Original Date: 2017-07-13

None

This ticket intends to also import snapshots from the Wild VMs

A Wild VM in vCenter with snapshots has disks that do not conform to:
        img_path = "#{folder}/#{file}-#{@vm_id}-#{disk_id}#{ext}"
This needs to be solved to address this issue.
Also, support from core needs to be available to automatically import snapshots.


Remove Buffer size from Array, Struct, List, Class?

removed from buffer size and element count from (class, struct),
list, and array was optimized from 9 bytes of overhead to 3 bytes of overhead.
commit: 4b91b11


[SWA CLI] localhost:4280 can't reach localhost:3000 (error 502)

Hi all,
I'm currently developing a React app and started to use Azure Static Web Apps since this weekend.
The problem I'm facing is that when I start the App via 'swa start' command, everything spins up correct but when I want to open the website via the SWA development server (http://localhost:4280) I get an error 502.
Here are some facts:

I use SWA CLI 1.1.3 and Windows 10
I have a React app and a Function v4 as API
I can push and deploy to an Azure Static Web App successfully and the website works as expected
I can reach the app (started via 'swa start') by directly navigating to localhost:3000 but not via localhost:4280
Reaching the function app via localhost:4280 works fine

I get the following log when I try to reach the app via localhost:4280:
[swa] GET http://localhost:3000/ (proxy)
[swa] ✖ GET http://localhost:3000/ - 502 (Bad Gateway)
And here's a picture of my browser:

My swa-cli.config.json
{
  "$schema": "https://aka.ms/azure/static-web-apps-cli/schema",
  "configurations": {
    "react-app": {
      "appLocation": ".",
      "outputLocation": "build",
      "appBuildCommand": "npm run build",
      "run": "npm start",
      "appDevserverUrl": "http://localhost:3000"
    }
  }
}

SWA CLI start output:
***********************************************************************
* WARNING: This emulator may not match the cloud environment exactly. *
* Always deploy and test your app in Azure.                           *
***********************************************************************

[api]
Azure Functions Core Tools
[api] Core Tools Version:       4.0.5095 Commit hash: N/A  (64-bit)
[api] Function Runtime Version: <IP_ADDRESS>96
[api]
[run]
[run] ><EMAIL_ADDRESS>start
[run] > react-scripts start
[run]
[swa]
[swa] Found configuration file:
[swa]   C:\Repositories\ThePlatform\src\client\staticwebapp.config.json
[swa]
[swa] - Waiting for http://localhost:3000 to be ready
[api] [2023-06-26T14:50:34.852Z] Worker process started and initialized.
[api]
[api] Functions:
[api]
[api]   user: [GET,POST] http://localhost:7071/api/user
[api]
[api]   userProfile: [GET] http://localhost:7071/api/userProfile
[api]
[api] For detailed output, run func with --verbose flag.
[swa] ✔ Connected to http://localhost:3000 successfully
[swa] - Waiting for http://localhost:7071 to be ready
[swa] ✔ Connected to http://localhost:7071 successfully
[swa]
[swa] Using dev server for static content:
[swa]   http://localhost:3000
[swa]
[swa] Serving API:
[swa]   C:\Repositories\ThePlatform\src\api
[swa]
[swa] Azure Static Web Apps emulator started at http://localhost:4280. Press CTRL+C to exit.
[swa]
[swa]
[run] (node:25388) [DEP_WEBPACK_DEV_SERVER_ON_AFTER_SETUP_MIDDLEWARE] DeprecationWarning: 'onAfterSetupMiddleware' option is deprecated. Please use the 'setupMiddlewares' option.
[run] (Use `node --trace-deprecation ...` to show where the warning was created)
[run] (node:25388) [DEP_WEBPACK_DEV_SERVER_ON_BEFORE_SETUP_MIDDLEWARE] DeprecationWarning: 'onBeforeSetupMiddleware' option is deprecated. Please use the 'setupMiddlewares' option.
[run] Starting the development server...
[run]
[run] Compiled successfully!
[run]
[run] You can now view falcon-react in the browser.
[run]
[run]   Local:            http://localhost:3000
[run]   On Your Network:  http://<IP_ADDRESS>:3000
[run]
[run] Note that the development build is not optimized.
[run] To create a production build, use npm run build.
[run]
[run] webpack compiled successfully

The same issues appear also in the Microsoft Train examples.
Does anybody have an idea where I can continue searching for issues? I feel a bit lost currently.

I have the same issue too. I can access the app at http://localhost:3000 and the CLI at http://localhost:4280. But getting a 502 when accessing the static app through the emulator

Downgraded to version node version 16.20.1 using NVM and is working now locally.

Exactly that did the trick, thanks @abylouis!
Hopefully node 18.x will be supported soon.

I found a temporary solution in this thread.
Try changing "appDevserverUrl": "http://localhost:3000" to "appDevserverUrl": "http://<IP_ADDRESS>:3000"

We're working on our Node 18 support! In the meantime, downgrading to Node 16 or using the solution of <IP_ADDRESS> instead of localhost works as @phille968 mentioned

I found a temporary solution in this thread.
Try changing "appDevserverUrl": "http://localhost:3000" to "appDevserverUrl": "http://<IP_ADDRESS>:3000"

this worked beautifully. 👍

The SWA CLI version 1.1.4 has been deployed, bringing with it such fixes for Node 18. Update your SWA CLI version to get this fix!


Add doc generation task

Python: add doc generation task
Github: add doc publication step

Or maybe a new plugin
Also handle badge generation to provide doc access


synology NAS upgrade after Traccar service not run

yesterday  I'm upgrade DS216+II (6.0.2-8451update 3 to 4) and restart machine.
After start machine Traccar service stopped.
I started the Traccar service manually, after a 15 seconds the Traccar stopped again.
It seems that the CPU is running 100% during that short run.
uninstall traccar and drop traccar database,
uninstall all java, restart NAS, install Java and traccar but traccar work 10 seconds and stop servise,
manuel start traccar service again stop.
I dont understant what a problem?

check on logs/tracker-server.log and logs/wrapper.log

Here is the log file, problem is still going on.
tracker-server.log.20161118.txt
tracker-server.txt
wrapper.log.20161119.txt

Looks like you have some problem with the database. I guess you have some non-default schema, so it fails to migrate. Other possibility is that you have an ancient version of MySQL.

Dear tananaev,
What I did before your comment;
uninstall traccar and drop traccar database,
uninstall all java, uninstall phpmyadmin and restart Synology NAS,
after install Java, traccar and phpmyadmin. but I did'nt get a result.
When you say "ancient version of MySQL" I'm remove and install Mariadb.
and install traccar; Yes, Traccar is working right now.
Thank you for your interest, good luck

I'm guessing that you are using H2 embedded database. Note that it's not recommended for production use because it might get corrupted and you lose the data.


Updated the validations.py

Fixed the behaviour of validate_user
Fixes #<issue_number_goes_here>

It's a good idea to open an issue first for discussion.

[ ] Tests pass
[ ] Appropriate changes to README are included in PR

@googlebot I signed it!


Subscription Events

any plans on supporting SubscriptionEvent report ?

Added support for it just now: 785165e5ff1191abacc51f0bf9ab4d2602
Please test it.

Are you still there?


Feature Request: Property based implementation PasswordCredentials

Context
This idea originated from this discussion with @bmuschko on his Gradle Plugin:
https://github.com/bmuschko/gradle-docker-plugin/pull/655#issuecomment-424041169
This spawned from his work on the docker plugin to convert the whole API to using the new lazy API.
https://github.com/bmuschko/gradle-docker-plugin/pull/659
Currently, the org.gradle.api.credentials.PasswordCredentials is a javabean style API.
This means that the username/password can't be lazily configured.
I propose adding an additional interface, similar to the PasswordCredentials but calling it PropertyBackedPasswordCredentials.
This is the proposed structure for such an interface:
interface PropertyBackedPasswordCredentials extends Credentials {
    Property<String> getUsername();
    Property<String> getPassword();

    /**
     * Exposes a delegate to this interface as a {@link PasswordCredentials}.
     */
    default PasswordCredentials asPasswordCredentials() {
        return new PasswordCredentials() {
            @Nullable
            @Override
            public String getUsername() {
                return PropertyBackedPasswordCredentials.this.getUsername().getOrNull();
            }

            @Override
            public void setUsername(@Nullable String userName) {
                PropertyBackedPasswordCredentials.this.getUsername().set(userName);
            }

            @Nullable
            @Override
            public String getPassword() {
                return PropertyBackedPasswordCredentials.this.getPassword().getOrNull();
            }

            @Override
            public void setPassword(@Nullable String password) {
                PropertyBackedPasswordCredentials.this.getPassword().set(password);
            }
        };
    }
}

This would allow plugin authors to have a common interface for implementing Property backed extensions where authentication is needed.
This is good for build writers because we are able to have a common interface to configure all authentication against.

@rieske Did you do something in this area recently? Has this issue been resolved?

Yes, I believe so - have a look at this sample: https://docs.gradle.org/current/samples/sample_publishing_credentials.html

That link does not show passing credentials to a repository in a using a lazy Provider/Property approach. It's all about using project properties, like those in a gradle.properties file


.mjs project cleanup

Some cleanup removing extra mjs references from lib.

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


[SPARK-39661][SQL] Avoid creating unnecessary SLF4J Logger

What changes were proposed in this pull request?
The pr follow up: https://issues.apache.org/jira/browse/SPARK-39538 https://github.com/apache/spark/pull/36930
Why are the changes needed?
To improve performance.
Does this PR introduce any user-facing change?
No.
How was this patch tested?
Existing UT.

Can one of the admins verify this patch?

Change from instance to static variable makes sense. You can revert changes to NettyBlockTransferService.
Reason：Because nettyblocktransferservice is a singleton in every executor ？
Ok，i will revert nettyblocktransferservice.

Same in BlockStoreClient - can you change that too?

Same in BlockStoreClient - can you change that too?

Updated.

Hm, tests timed out. Can you retrigger? I'm sure it's not related, but good to see tests pass to be sure.

okay

@panbingkun test still timeout

Ah OK, ignore my suggestion to change BlockStoreClient. I don't quite get why it compiled either. but I think an logger in the instance might be correct there.

Ah OK, ignore my suggestion to change BlockStoreClient. I don't quite get why it compiled either. but I think an logger in the instance might be correct there.

BlockStoreClient's child class - NettyBlockTransferService, only be instantiated once in SparkEnv. code:
https://github.com/panbingkun/spark/blob/master/core/src/main/scala/org/apache/spark/SparkEnv.scala#L365-L367
so A JVM has only one NettyBlockTransferService object, change BlockStoreClient may not have any effect.

I will revert it!


Implement to_ary in Query

I'm using rectify at https://github.com/codegram/decidim/pull/147 and I'm having problems trying to render the results of a query object in a view using both these methods:
render(participatory_processes)

<%= render partial: "promoted_process", collection: promoted_processes, as: :promoted_process %>

I'm getting this error:
#<Decidim::PublishedProcesses ...> is not an ActiveModel-compatible object. It must implement :to_partial_path

My first try was calling the query method on the query object in the view:
render(participatory_processes.query)

This didn't raise any error, but didn't render anything actually so it's not useful. Also, explicitly calling this method from the view feels weird.
Checking the Rails source code, Rails tries to check if the collection passed to the render method responds to to_ary. If it does not, it uses an empty array as the collection and thus it does not render anything (which is weird, actually):
https://github.com/rails/rails/blob/28a6571bae1d6bc1c774e8e501720374061a31f1/actionview/lib/action_view/renderer/partial_renderer.rb#L406
So my take is defining the to_ary method in the Query class as an alias from to_a. Both the unit tests and the tests I took on my app are green with this change.

@mrcasals Thanks so much for the addition!! It's all merged and I'll cut a release for you now so you can update the gem in your project.
❤ 💛 💙 💚 💜

@mrcasals 0.7.1 is now release with your change :smile:

Yay, thanks for the fast reply and for your work on rectify! Works awesomely! 😄


hitting openAI rate limits

429, message='Too Many Requests', url=URL('https://api.openai.com/v1/chat/completions')
Traceback (most recent call last):
  File "[/mnt/Data/Projects/surv_ai/surv_ai/lib/llm/gpt.py](https://file+.vscode-resource.vscode-cdn.net/mnt/Data/Projects/surv_ai/surv_ai/lib/llm/gpt.py)", line 92, in _get_completion
    response.raise_for_status()
  File "[/Projects/surv_ai/venv/lib/python3.11/site-packages/aiohttp/client_reqrep.py](https://file+.vscode-resource.vscode-cdn.net/home/lawrence/Projects/surv_ai/venv/lib/python3.11/site-packages/aiohttp/client_reqrep.py)", line 1005, in raise_for_status
    raise ClientResponseError(
aiohttp.client_exceptions.ClientResponseError: 429, message='Too Many Requests', url=URL('https://api.openai.com/v1/chat/completions')
429, message='Too Many Requests', url=URL('https://api.openai.com/v1/chat/completions')
Traceback (most recent call last):
  File "[/mnt/Data/Projects/surv_ai/surv_ai/lib/llm/gpt.py](https://file+.vscode-resource.vscode-cdn.net/mnt/Data/Projects/surv_ai/surv_ai/lib/llm/gpt.py)", line 92, in _get_completion
    response.raise_for_status()
  File "[/Projects/surv_ai/venv/lib/python3.11/site-packages/aiohttp/client_reqrep.py](https://file+.vscode-resource.vscode-cdn.net/home/lawrence/Projects/surv_ai/venv/lib/python3.11/site-packages/aiohttp/client_reqrep.py)", line 1005, in raise_for_status
    raise ClientResponseError(
aiohttp.client_exceptions.ClientResponseError: 429, message='Too Many Requests', url=URL('https://api.openai.com/v1/chat/completions')

Wondering how you got around this, trying to run some of the examples...

Hello! The LLM clients automatically implement a back off - so a few rate limits is not necessarily an issue! The survey response contains the number of errors as well so you can inspect how many agents truly failed.
Also available to you is a parameter called "max_concurrency" available on both the Survey and tool classes. You can set this number lower than the default of 10 and that should help!


please publish version 1.1

https://github.com/aws-actions/aws-codebuild-run-build/compare/v1.0.5...master
there are inputs, including compute-type-override, that weren't included in the action.yml file at the time of the latest release
see also: #95

It seems to work with v1 (v1.0.6).
I assume that this could be closed?

If that is the case - yes.


migration to 2017

Need to migrate these projects to VS2017.  The stickler is the core version.  2017 implemented these projects differently than 2015.

Successfully created a single, multi-targeted project for netstandard1.3 and net46.  The downside to this is that support for anything lower than 4.6 is dropped.
See branch task/2017-migration
This is a major change.

I'm planning on releasing this version.  What is your current usage, framework-wise?  Does anyone need a framework lower than 4.6 to support current projects?  Would moving to 4.6+ or .Net Core in the future be an issue for anyone?

I don't work for that company anymore but they were using 4.6+ so that's ok.

Hi. I know this is closed, but I just wanted to add that the project I'm working on is targeting the latest .NET framework, so as long as it will work with that, no problem!


Update stable repo url

Im getting errors by default because of the old url no longer working.
Ref: https://helm.sh/blog/new-location-stable-incubator-charts/

Fixed in #24 - thanks for the PR!

Fixed in #24 - thanks for the PR!


Upgrade harbor package to 2.3.3

Signed-off-by: Shengwen Yu<EMAIL_ADDRESS>What this PR does / why we need it

Add Harbor package 2.3.3
Details for the Release Notes (PLEASE PROVIDE)

The Harbor package has been updated to version 2.3.3.

Which issue(s) this PR fixes

Fixes: #2412
Describe testing done for PR

cd addons/packages/harbor/2.3.3/test
make test
Special notes for your reviewer

Updated the title and description to include release note. Please make sure to include good descriptions of the change to all issues and PRs. Thanks!

@seemiller Could you help to review this PR? Seems that the test/e2e/addons_config.yaml or addons/repos/main.yaml file is modified, so it requires the tce-owners to review this PR. Thanks!