devise_for in routes.rb breaks assets:precompile on production

Environment

Ruby 2.7.0
Rails <IP_ADDRESS>
Devise 4.7.1

Current behavior
If i use devise_for helper on my routes.rb, it's trying to initialize a user object and breaks the pipeline when building an image from Dockerfile. It says DATABASE_NAME is missing but i set my environment variables (db name, db host etc.) when running the container not when building it.
It's giving an error like;
Caused by:
KeyError: key not found: "DATABASE_NAME"
(erb):26:in `fetch'
(erb):26:in `<main>'
/usr/local/bundle/gems/railties-<IP_ADDRESS>/lib/rails/application/configuration.rb:228:in `database_configuration'
/usr/local/bundle/gems/activerecord-<IP_ADDRESS>/lib/active_record/railtie.rb:200:in `block (2 levels) in <class:Railtie>'
/usr/local/bundle/gems/activesupport-<IP_ADDRESS>/lib/active_support/lazy_load_hooks.rb:72:in `class_eval'
/usr/local/bundle/gems/activesupport-<IP_ADDRESS>/lib/active_support/lazy_load_hooks.rb:72:in `block in execute_hook'
/usr/local/bundle/gems/activesupport-<IP_ADDRESS>/lib/active_support/lazy_load_hooks.rb:62:in `with_execution_control'
/usr/local/bundle/gems/activesupport-<IP_ADDRESS>/lib/active_support/lazy_load_hooks.rb:67:in `execute_hook'
/usr/local/bundle/gems/activesupport-<IP_ADDRESS>/lib/active_support/lazy_load_hooks.rb:52:in `block in run_load_hooks'
/usr/local/bundle/gems/activesupport-<IP_ADDRESS>/lib/active_support/lazy_load_hooks.rb:51:in `each'
/usr/local/bundle/gems/activesupport-<IP_ADDRESS>/lib/active_support/lazy_load_hooks.rb:51:in `run_load_hooks'
/usr/local/bundle/gems/activerecord-<IP_ADDRESS>/lib/active_record/base.rb:327:in `<module:ActiveRecord>'
/usr/local/bundle/gems/activerecord-<IP_ADDRESS>/lib/active_record/base.rb:27:in `<main>'
/usr/local/bundle/gems/bootsnap-1.4.6/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:23:in `require'
/usr/local/bundle/gems/bootsnap-1.4.6/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:23:in `block in require_with_bootsnap_lfi'
/usr/local/bundle/gems/bootsnap-1.4.6/lib/bootsnap/load_path_cache/loaded_features_index.rb:92:in `register'
/usr/local/bundle/gems/bootsnap-1.4.6/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:22:in `require_with_bootsnap_lfi'
/usr/local/bundle/gems/bootsnap-1.4.6/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:31:in `require'
/usr/local/bundle/gems/zeitwerk-2.3.0/lib/zeitwerk/kernel.rb:23:in `require'
/myapp/app/models/application_record.rb:1:in `<main>'
/usr/local/bundle/gems/bootsnap-1.4.6/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:23:in `require'
/usr/local/bundle/gems/bootsnap-1.4.6/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:23:in `block in require_with_bootsnap_lfi'
/usr/local/bundle/gems/bootsnap-1.4.6/lib/bootsnap/load_path_cache/loaded_features_index.rb:92:in `register'
/usr/local/bundle/gems/bootsnap-1.4.6/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:22:in `require_with_bootsnap_lfi'
/usr/local/bundle/gems/bootsnap-1.4.6/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:31:in `require'
/usr/local/bundle/gems/zeitwerk-2.3.0/lib/zeitwerk/kernel.rb:16:in `require'
/myapp/app/models/user.rb:1:in `<main>'
/usr/local/bundle/gems/bootsnap-1.4.6/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:23:in `require'
/usr/local/bundle/gems/bootsnap-1.4.6/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:23:in `block in require_with_bootsnap_lfi'
/usr/local/bundle/gems/bootsnap-1.4.6/lib/bootsnap/load_path_cache/loaded_features_index.rb:92:in `register'
/usr/local/bundle/gems/bootsnap-1.4.6/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:22:in `require_with_bootsnap_lfi'
/usr/local/bundle/gems/bootsnap-1.4.6/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:31:in `require'
/usr/local/bundle/gems/zeitwerk-2.3.0/lib/zeitwerk/kernel.rb:16:in `require'
/usr/local/bundle/gems/activesupport-<IP_ADDRESS>/lib/active_support/inflector/methods.rb:282:in `const_get'
/usr/local/bundle/gems/activesupport-<IP_ADDRESS>/lib/active_support/inflector/methods.rb:282:in `block in constantize'
/usr/local/bundle/gems/activesupport-<IP_ADDRESS>/lib/active_support/inflector/methods.rb:280:in `each'
/usr/local/bundle/gems/activesupport-<IP_ADDRESS>/lib/active_support/inflector/methods.rb:280:in `inject'
/usr/local/bundle/gems/activesupport-<IP_ADDRESS>/lib/active_support/inflector/methods.rb:280:in `constantize'
/usr/local/bundle/gems/activesupport-<IP_ADDRESS>/lib/active_support/dependencies/zeitwerk_integration.rb:19:in `constantize'
/usr/local/bundle/gems/devise-4.7.1/lib/devise.rb:320:in `get'
/usr/local/bundle/gems/devise-4.7.1/lib/devise/mapping.rb:83:in `to'
/usr/local/bundle/gems/devise-4.7.1/lib/devise/mapping.rb:78:in `modules'
/usr/local/bundle/gems/devise-4.7.1/lib/devise/mapping.rb:95:in `routes'
/usr/local/bundle/gems/devise-4.7.1/lib/devise/mapping.rb:162:in `default_used_route'
/usr/local/bundle/gems/devise-4.7.1/lib/devise/mapping.rb:72:in `initialize'
/usr/local/bundle/gems/devise-4.7.1/lib/devise.rb:350:in `new'
/usr/local/bundle/gems/devise-4.7.1/lib/devise.rb:350:in `add_mapping'
/usr/local/bundle/gems/devise-4.7.1/lib/devise/rails/routes.rb:243:in `block in devise_for'
/usr/local/bundle/gems/devise-4.7.1/lib/devise/rails/routes.rb:242:in `each'
/usr/local/bundle/gems/devise-4.7.1/lib/devise/rails/routes.rb:242:in `devise_for'
/myapp/config/routes.rb:10:in `block in <main>'
/usr/local/bundle/gems/actionpack-<IP_ADDRESS>/lib/action_dispatch/routing/route_set.rb:429:in `instance_exec'
/usr/local/bundle/gems/actionpack-<IP_ADDRESS>/lib/action_dispatch/routing/route_set.rb:429:in `eval_block'
/usr/local/bundle/gems/actionpack-<IP_ADDRESS>/lib/action_dispatch/routing/route_set.rb:411:in `draw'
/myapp/config/routes.rb:3:in `<main>'
/usr/local/bundle/gems/bootsnap-1.4.6/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:55:in `load'
/usr/local/bundle/gems/bootsnap-1.4.6/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:55:in `load'
/usr/local/bundle/gems/railties-<IP_ADDRESS>/lib/rails/application/routes_reloader.rb:41:in `block in load_paths'
/usr/local/bundle/gems/railties-<IP_ADDRESS>/lib/rails/application/routes_reloader.rb:41:in `each'
/usr/local/bundle/gems/railties-<IP_ADDRESS>/lib/rails/application/routes_reloader.rb:41:in `load_paths'
/usr/local/bundle/gems/railties-<IP_ADDRESS>/lib/rails/application/routes_reloader.rb:20:in `reload!'
/usr/local/bundle/gems/railties-<IP_ADDRESS>/lib/rails/application/routes_reloader.rb:30:in `block in updater'
/usr/local/bundle/gems/activesupport-<IP_ADDRESS>/lib/active_support/file_update_checker.rb:83:in `execute'
/usr/local/bundle/gems/railties-<IP_ADDRESS>/lib/rails/application/routes_reloader.rb:10:in `execute'
/usr/local/bundle/gems/railties-<IP_ADDRESS>/lib/rails/application/finisher.rb:184:in `block in <module:Finisher>'
/usr/local/bundle/gems/railties-<IP_ADDRESS>/lib/rails/initializable.rb:32:in `instance_exec'
/usr/local/bundle/gems/railties-<IP_ADDRESS>/lib/rails/initializable.rb:32:in `run'
/usr/local/bundle/gems/railties-<IP_ADDRESS>/lib/rails/initializable.rb:61:in `block in run_initializers'
/usr/local/bundle/gems/railties-<IP_ADDRESS>/lib/rails/initializable.rb:60:in `run_initializers'
/usr/local/bundle/gems/railties-<IP_ADDRESS>/lib/rails/application.rb:363:in `initialize!'
/myapp/config/environment.rb:5:in `<main>'
/usr/local/bundle/gems/bootsnap-1.4.6/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:23:in `require'
/usr/local/bundle/gems/bootsnap-1.4.6/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:23:in `block in require_with_bootsnap_lfi'
/usr/local/bundle/gems/bootsnap-1.4.6/lib/bootsnap/load_path_cache/loaded_features_index.rb:92:in `register'
/usr/local/bundle/gems/bootsnap-1.4.6/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:22:in `require_with_bootsnap_lfi'
/usr/local/bundle/gems/bootsnap-1.4.6/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:31:in `require'
/usr/local/bundle/gems/zeitwerk-2.3.0/lib/zeitwerk/kernel.rb:23:in `require'
/usr/local/bundle/gems/activesupport-<IP_ADDRESS>/lib/active_support/dependencies.rb:325:in `block in require'
/usr/local/bundle/gems/activesupport-<IP_ADDRESS>/lib/active_support/dependencies.rb:291:in `load_dependency'
/usr/local/bundle/gems/activesupport-<IP_ADDRESS>/lib/active_support/dependencies.rb:325:in `require'
/usr/local/bundle/gems/railties-<IP_ADDRESS>/lib/rails/application.rb:339:in `require_environment!'
/usr/local/bundle/gems/railties-<IP_ADDRESS>/lib/rails/application.rb:515:in `block in run_tasks_blocks'
/usr/local/bundle/gems/sprockets-rails-3.2.1/lib/sprockets/rails/task.rb:62:in `block (2 levels) in define'
/usr/local/bundle/gems/railties-<IP_ADDRESS>/lib/rails/commands/rake/rake_command.rb:23:in `block in perform'
/usr/local/bundle/gems/railties-<IP_ADDRESS>/lib/rails/commands/rake/rake_command.rb:20:in `perform'
/usr/local/bundle/gems/railties-<IP_ADDRESS>/lib/rails/command.rb:48:in `invoke'
/usr/local/bundle/gems/railties-<IP_ADDRESS>/lib/rails/commands.rb:18:in `<main>'
/usr/local/bundle/gems/bootsnap-1.4.6/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:23:in `require'
/usr/local/bundle/gems/bootsnap-1.4.6/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:23:in `block in require_with_bootsnap_lfi'
/usr/local/bundle/gems/bootsnap-1.4.6/lib/bootsnap/load_path_cache/loaded_features_index.rb:92:in `register'
/usr/local/bundle/gems/bootsnap-1.4.6/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:22:in `require_with_bootsnap_lfi'
/usr/local/bundle/gems/bootsnap-1.4.6/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:31:in `require'
/usr/local/bundle/gems/activesupport-<IP_ADDRESS>/lib/active_support/dependencies.rb:325:in `block in require'
/usr/local/bundle/gems/activesupport-<IP_ADDRESS>/lib/active_support/dependencies.rb:291:in `load_dependency'
/usr/local/bundle/gems/activesupport-<IP_ADDRESS>/lib/active_support/dependencies.rb:325:in `require'
bin/rails:9:in `<main>'
Tasks: TOP => environment
(See full trace by running task with --trace)

Dockerfile;
FROM ruby:2.7.0
RUN curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add -
RUN echo "deb https://dl.yarnpkg.com/debian/ stable main" | tee /etc/apt/sources.list.d/yarn.list
RUN apt-get update -qq && apt-get install -y build-essential nodejs yarn
COPY . /myapp/
COPY Gemfile* /myapp/
WORKDIR /myapp
RUN bundle install --without development test
RUN yarn install --check-files
RUN RAILS_ENV=production bundle exec rails assets:precompile

Devise routes on my routes.rb;
  # Devise Routes
  devise_for :users,
             controllers: {
                 sessions: 'sessions',
                 registrations: 'registrations',
                 passwords: 'passwords' },
             path: '/',
             path_names: { sign_in: 'login',
                           sign_up: 'new',
                           sign_out: 'logout',
                           password: 'secret',
                           confirmation: 'verification' }

Expected behavior
It shouldn't initialize user object and continue precompiling assets.

If your app depends in a environment variable to run you need to also set it when compiling the assets since compiling the assets also run the app.

but it doesn't run the app and compile assets perfectly if i remove devise_for line from my routes.rb

it only depends on secret_key_base but i store it in credentials so it shouldn't need any other environment variable to precompile assets.

The entire application is loaded when precompiling assets and the Rails boot will try to evaluate the connection configuration. This is not related to devise.

Thanks, I'm setting all the environment variables on build now and it seems ok.
I thought it's related with devise just because it was failing when i use devise_for helper in routes.rb

That was the first reference to the database connection configuration, but in production, since code is eager loaded, as soon the first model is loaded you would see the same error, and since assets compilation loads the app, and you were asking to load in the production environment, that would also happen.

For others facing similar issues, as in my case I do not require the application to load the database in order to run this rake task, I was able to work around it for precompiling assets by surrounding devise_for and devise_scope with the following code:
unless defined?(::Rake::SprocketsTask)
  #...
end

I hope it may become useful to others in the future!

@fagiani stumbled upon this recently. First i planned to follow your suggestion but because it felt not right (i mean, why should the router be aware of the SprocketsTask, right?) i inspected the app further.
In my case the reason was a bad design decision which led to a database hit in the moment the model got loaded. As soon as i refactored this, the assets:precompile task runs without PG exception again.


Static assets trigger multiple deserializes

They should be well above all the sessions in express 4

Thanks for the tip.

I moved it up the middleware stack.


Added MSBuild Task Plugin

I've written a very simple MSBuild Task plugin for gocd (https://github.com/akanyer/gocd-msbuild-taskplugin) and added an entry with link to it in the plugins.html file.

there seems to be a merge conflict.

i added the entry directly. closing this.


added --no-color flag to popper run instances in ci test files

Hello @sarthak0906! Thanks for opening this PR. We checked the lines you've touched for PEP 8 issues, and found:

In the file cli/popper/commands/cmd_run.py:

Line 194:1: W293 blank line contains whitespace

In the file cli/popper/gha.py:

Line 106:80: E501 line too long (91 > 79 characters)
Line 118:80: E501 line too long (87 > 79 characters)
Line 198:80: E501 line too long (84 > 79 characters)
Line 199:80: E501 line too long (88 > 79 characters)
Line 232:80: E501 line too long (83 > 79 characters)
Line 349:1: E122 continuation line missing indentation or outdented
Line 349:3: E225 missing whitespace around operator
Line 349:5: E227 missing whitespace around bitwise or shift operator
Line 351:1: E305 expected 2 blank lines after class or function definition, found 0
Line 351:3: E225 missing whitespace around operator
Line 351:5: E225 missing whitespace around operator
Line 351:7: E225 missing whitespace around operator
Line 354:1: E122 continuation line missing indentation or outdented
Line 354:3: E225 missing whitespace around operator
Line 354:7: E225 missing whitespace around operator
Line 357:9: E122 continuation line missing indentation or outdented
Line 357:22: E251 unexpected spaces around keyword / parameter equals
Line 357:24: E251 unexpected spaces around keyword / parameter equals
Line 486:9: E128 continuation line under-indented for visual indent
Line 488:18: E225 missing whitespace around operator
Line 488:42: E225 missing whitespace around operator
Line 488:72: E225 missing whitespace around operator
Line 488:80: E501 line too long (86 > 79 characters)

In the file cli/popper/log.py:

Line 112:19: E271 multiple spaces after keyword
Line 112:39: E203 whitespace before ':'
Line 115:80: E501 line too long (82 > 79 characters)


perhaps use go-extpoints for extensions

Very cool project. I'll be thinking about how we can integrate it with other tools in the space we're working in. Anyway, I wanted to suggest (since I saw you had as a todo) a tool used for a nice way to do extensions in Go:
https://github.com/progrium/go-extpoints
Here is a blog post explaining our first major use case and a bit on the user experience of it:
http://gliderlabs.com/blog/2015/03/31/new-logspout-extensible-docker-logging/

@progrium awesome man. Thank you for the recommendation - looking at it now.


The docs site references ref.keepAlive(), which does not exist in the latest stable version

Page in question
For now, the autoDispose page should reference ref.maintainState.

The documentation uses the dev release. So this is expected

Wouldn't it be more helpful to display the docs for the latest stable version?

It's also significantly harder for me to maintain


[Break BC][RFC] utils directory refactor

Collecting all the discussions around this here from many private channels. @ebsmothers has already written up an excellent quick RFC on this topic (#1414) but I wanted to formalize the discussion here.
Problem
torchtune/utils/ is a massive directory with a wide spectrum of helpers, from things like shard_model for distributed training to get_logger to retrieve Python's built-in logger... this is not great. It's served as a "i don't know where else to put this function" type of folder but this is leading to tangible problems:

Hinders discoverability of code since a lot of important functionality for running our recipes is found under utils, which is not the first place users will look nor is it specific enough to know how to navigate
Complicates our dependency graph, leading to many cycles that are created as we continue to inflate the directory. Utils depends on models and modules, but also everything else in the library depends on utils, so it's very easy to create cycles.

Ideally, the utils directory remains a miscellaneous collection of helpers that any other directory in the library can take a dependency on, but this isn't the case with folders like utils/_checkpointing and utils/_distributed.py depending on models/ and modules/
Here is the current dependency graph (A -> B means B depends on A). Notice how easy it is to create a cycle.

If data took a dependency on utils, you would get a cycle. modules and models can never take a dependency on utils otherwise there's a clear cycle. modules and models cannot take a dependency on config or dataset because that would create a cycle. This is not scalable and is currently blocking important features, like #1193, and adding unnecessary tech debt, like deprecate being placed in data instead of utils to avoid a cycle (see #1286)
Approach
We need a way to restructure our dependency graph. However, this would induce a massive refactor and would undoubtedly break BC. So there's a couple of options.

Rename utils/_checkpointing -> utils/checkpointing and remove checkpointing imports from utils/__init__.py. Import from utils/checkpointing directly. This removes the utils-models dependency and stops a common cause of cycles. This is the easiest approach, but will still require updating all our configs, will break BC, does not address the utils-modules dependency, nor the core problem of utils being bloated
Move all utils that depend on other directories to new folder: training. Keep utils as a directory that does not take a dependency on any other directory. This fundamentally restructures our dependency graph and will prevent further cycles.

Since both approaches are breaking BC, we may as well only break it a single time and fundamentally fix the problem, so I propose 2. We can debate the actual name of the new folder. Some options:

training
training_utils
framework (similar to torchtnt)
recipe_utils

This new directory will contains all utilities related to training and are used in recipes. So these are the new locations for the files in utils:
training

_checkpointing

constants.py

_device.py
_distributed.py
_profiler.py
activations.py
memory.py
metric_logging.py
pooling.py
precision.py
quantization.py
seed.py

generation

_generation.py

config

argparse.py

data

collate.py

utils

_version.py
logging.py

Distributed utilities could possibly be in their own folder since these are usually shared across training and inference recipes, and it may be odd to import from training in a generate/inference recipe.
@kartikayk @ebsmothers @felipemello1 @pbontrager

As a bonus, can this include replace the generic logger everywhere it's cropped up with the utils.logger?

Here is one example. The utils version makes sure the logger is setup right for distributed runs.


update R and spatial libs

update to R 4.4.1
update spatial libs to:

PROJ 9.4.1
GEOS 3.12.2
GDAL 3.9.1

now installs main dependencies from source

Closes #7


consider refactoring using state pattern

The code is getting increasingly difficult to maintain due to the number of if statements, as a result of supporting multiple versions of the Citation File Format specification. We should consider refactoring the code base using the State pattern so the behavior can switch based on the version of cff-version, and we can have classes that only implement the behavior of one cff-version value.
Something like https://python-3-patterns-idioms-test.readthedocs.io/en/latest/Fronting.html#state perhaps

done, closing


Redesign Pages

:1st_place_medal:
:shipit:

redesign admin and anything to simple
change from vue resources to axios
cleanup code

clean code

, kodingan saya di hapus @blubMe


Ad units

[x] 300x250
[x] 728x90

Note: ad blocker catches the demo files too. Disable adblocker to see them.


[REFACTOR] The CustomRecipe dilemma

During documentation, there was an inconsistency which has jumped out at me, and we must resolve before we release to the public as this will be a "now or never" change which will affect all documentation, examples, and dependant plugins going forward.
I will preface this issue by detailing the vanilla game's implementation for two similar object interfaces.
First, we have two individual component systems within valheim, that live in the ObjectDB. We have the m_recipes collection, and the m_items collection. Recipe is comprised of two notable attributes: public ItemDrop m_item;, and public Piece.Requirement[] m_resources = new Piece.Requirement[0];. Meanwhile, the m_items collection is of generic GameObjects, which may have an ItemDrop component, the same ItemDrop which can be referenced from a recipe.
Secondly, we have Pieces, that short of their piecetables do not have a objectDB style collection. Pieces, have a subclass named Requirement, which is a basic structure that defines an public ItemDrop m_resItem; and a quantity as an ingredient.
At this point, its clear to see some similarities in these implementations. Now lets look forward at how we interface with these libraries within our JVL abstractions:
Item
private void CreateBlueprintRune()
{
    // Create and add a custom item
    // CustomItem can be instantiated with an AssetBundle and will load the prefab from there
    CustomItem rune = new CustomItem(BlueprintRuneBundle, "BlueprintRune", false);
    ItemManager.Instance.AddItem(rune);

    // Create and add a recipe for the custom item
    CustomRecipe runeRecipe = new CustomRecipe(new RecipeConfig()
    {
        Item = "BlueprintRune",
        Amount = 1,
        Requirements = new PieceRequirementConfig[]
        {
            new PieceRequirementConfig {Item = "Stone", Amount = 1}
        }
    });
    ItemManager.Instance.AddRecipe(runeRecipe);
}

In the above, we create a CustomItem, and a CustomRecipe which can take a RecipeConfig as a parameter, that also requires a PieceRequirementConfig property to define its ingredient list.
Piece
private void CreateRunePieces()
{
    // Create and add custom pieces
    GameObject makebp_prefab = BlueprintRuneBundle.LoadAsset<GameObject>("make_blueprint");
    CustomPiece makebp = new CustomPiece(makebp_prefab, new PieceConfig
    {
        PieceTable = "_BlueprintPieceTable",
        AllowedInDungeons = false
    });
    PieceManager.Instance.AddPiece(makebp);
    GameObject placebp_prefab = BlueprintRuneBundle.LoadAsset<GameObject>("piece_blueprint");
    CustomPiece placebp = new CustomPiece(placebp_prefab, new PieceConfig
    {
        PieceTable = "_BlueprintPieceTable",
        AllowedInDungeons = true,
        Requirements = new PieceRequirementConfig[]
        {
            new PieceRequirementConfig {Item = "Wood", Amount = 2}
        }
    });
    blueprintRuneLocalizations();
    PieceManager.Instance.AddPiece(placebp);
}

In the above, we create a CustomPiece, which takes PieceConfig as a parameter, that also requires a PieceRequirementConfig property to define its ingredient list.
If we compare this to the item example:
In the above, we create a CustomItem, and a CustomRecipe which can take a RecipeConfig as a parameter, that also requires a PieceRequirementConfig property to define its ingredient list.
The problem:
The problem here is inconsistency. We are obfuscating native implementations via our abstractions using inconsistent naming schemas to accomplish the same operations, not to mention potentially having some redundant nesting of tightly coupled objects/types when we could just abstract them away with parameters, but that's a problem for another time.
Bellow, I will note our equivalent implementation names, and what i suggest they should become

ImplementationName
Item
Piece

CustomObject
CustomItem
CustomPiece

Recipe/Conf
CustomRecipe
PieceConfig

Ingredient
PieceRequirementConfig
PieceRequirementConfig

We can see that if we were to apply consistent naming schema, then the CustomItem should have an ItemConfig, not a CustomRecipe as a component parameter.
Furthermore, PieceRequirementConfig is a misnaming within the vanilla libraries, and just further adds to the confusing as now items have piece requirements, which makes 0 sense at all either.
We are better than this, there is no need to make this mistake and we can correct it before we release. I suggest that we do as such.

My proposal would be to get rid of the CustomRecipe and add the recipe generation into the CustomItem.
Item with a config class:
new CustomItem(prefab, new ItemConfig())
Item with mocked Recipe:
new CustomItem(prefab, RecipeInstance)
Piece with config class
new CustomPiece(prefab, new PieceConfig())
PieceRequirements can be just Requirements


Dracthyr use DEFAULT_ICON_NAME instead of an appropriate icon

Describe the issue
The default interface icon for male and female dracthyr use the DEFAULT_ICON_NAME (the question mark icon).
Expected behaviour
The default interface icon should be a male dracthyr icon for male dracthyr and a female dracthyr icon for female dracthyr.
Issue checklist

[x] The issue occurs with the [latest version] of the addon.
[x] The issue occurs with Total RP 3 as the only enabled addon.
[ ] The issue occurs only with other addon(s) enabled (please provide a list).

Steps to reproduce

Load into WoW as a dracthyr
Open up TRP3 and go to Character > Profiles
See that "Default Profile" defaults to a question mark

Should be fixed in 2.4.2


[release/1.1.z] TC-1599: cover advisories without scores

https://issues.redhat.com/browse/TC-1599
Backport:

https://github.com/trustification/trustification/pull/1478

'main' branch PR has been already reviewed, approved and merged.
Tests are fine with this PR so I'm going to merge it.


Add Adobe PDF Extract API

Hi there,
I have been working on PDF extraction for some time and nothing beats the Adobe service (well as you know they are the one who invented it).
SDK is here: https://developer.adobe.com/document-services/docs/overview/pdf-extract-api/gettingstarted/#sdk
You get 500 documents per month on free tier so lots of people will enjoy.
PS:
I am not affiliated to Adobe in any way.

We looked into the Adobe PDF API and decided to not pursue this for now, but thanks for the suggestion!


Option to set image as wallpaper

Hi. Great application for basic functionalities which are all I need. It would be nice to have the option to set an image as wallpaper right from the application. Thanks

Hello. I have added this in e3bb0ae19dd8f9d3e55115a29055a53dff694f23. Today or tomorrow I will release a new version with this functionality.


Update generated files in storefront

If I add or delete an attribute through saleor dashboard, how to update saleor generated files in storefront?

Hey @RZ-Jyothsna  which file do you mean?


Added configurable limit for amount of items displayed in a single row of monthpicker and yearpicker

We needed to have more control over the grid for months and years, so I could control the size of the yearpicker and monthpicker grid size.

monthColLimit (?number=3) - number of months displayed in a single row of month picker
yearColLimit (?number=5) - number of years displayed in a single row of year picker

yearpicker
3x8
<datepicker
    [yearRange]="24"
    [yearColLimit]="8"
></datepicker>

### 3x3
```html

```

monthpicker
4x4

Current coverage is 85.62% (diff: 100%)

Merging #1141 into development will not change coverage

@@           development      #1141   diff @@
=============================================
  Files               35         35
  Lines             1280       1280
  Methods            228        228
  Messages             0          0
  Branches           213        213
=============================================
  Hits              1096       1096
  Misses             184        184
  Partials             0          0

Powered by Codecov. Last update fe6ad23...562050d

Looks very good to me, except properties
but as soon as I will be merging new datepicker...


osm2pgsql: 1.9.0 → 1.9.2

Description of changes
Changelog
Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[x] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
23.11 Release Notes (or backporting 23.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

 But pyosmium is broken now, so let's wait for https://github.com/NixOS/nixpkgs/pull/256339 merged, it fixes pyosmium.

Result of nixpkgs-review pr 256375 run on x86_64-linux 1

1 package built:

osm2pgsql


Somnia bot

testing code for GO discord bot with pando

Looks like the app is hacked into the monorepo. I would recommend generating the app using
yarn add -D @nx/node
nx g @nx/node:application somnia-bot --projectNameAndRootFormat derived --framework none

and then move the code piece by piece


Show the memory usage and time to build a crate

For crates which time out due to resource limits, there is very little indication of why: the logs show only 'process exited with signal SIGKILL'. It would be ideal to say why the process was killed and how much time and memory were used.
I wonder if docs.rs can use this same trick with /usr/bin/time -v?
$ cargo clean
$ /usr/bin/time -v cargo doc --no-deps -p termwiz
...
        Command being timed: "cargo doc --no-deps -p termwiz"
        User time (seconds): 90.74
        System time (seconds): 6.77
        Percent of CPU this job got: 456%
        Elapsed (wall clock) time (h:mm:ss or m:ss): 0:21.37
        Average shared text size (kbytes): 0
        Average unshared data size (kbytes): 0
        Average stack size (kbytes): 0
        Average total size (kbytes): 0
        Maximum resident set size (kbytes): 3810736
        Average resident set size (kbytes): 0
        Major (requiring I/O) page faults: 0
        Minor (reclaiming a frame) page faults: 2504493
        Voluntary context switches: 4301
        Involuntary context switches: 50046
        Swaps: 0
        File system inputs: 0
        File system outputs: 705048
        Socket messages sent: 0
        Socket messages received: 0
        Signals delivered: 0
        Page size (bytes): 4096
        Exit status: 0

Originally posted by @wez in https://github.com/rust-lang/docs.rs/issues/842#issuecomment-647137410

This needs changes to rustwide, see https://github.com/rust-lang/docs.rs/issues/842#issuecomment-651156646

If the goal is just to alert the user whether the build failed due to a OOM or a timeout, we don't need to wrap the build with  time: Rustwide already returns those reasons when a build fails.
We could change the build_status column in the database from a boolean to an enum/string:

succeeded
failed
failed-oom
failed-timeout

...and then provide a UI in the build log page displaying a warning if the status is failed-oom or failed-timeout`.

Even for successful builds, it'd be nice to record the duration and max-memory usage and show those on the build page.

Can I work on this?

@wambu-i go for it! I think the steps will looks something like this:

command.run() gives you a CommandError when the build fails:
https://github.com/rust-lang/docs.rs/blob/38ba774e14eb4f658d834218d003583e423c5f37/src/docbuilder/rustwide_builder.rs#L527-L531
Add space for it in BuildResult - I'd change successful: bool to build_error: Option<CommandError> and change all the current successful uses to build_error.is_none().
Add a new migration to the database which stores the reason it failed: https://github.com/rust-lang/docs.rs/blob/38ba774e14eb4f658d834218d003583e423c5f37/src/db/migrate.rs#L442
Update the builds page to have the new info: https://github.com/rust-lang/docs.rs/blob/38ba774e14eb4f658d834218d003583e423c5f37/templates/crate/builds.html#L44-L50
That template is rendered at https://github.com/rust-lang/docs.rs/blob/38ba774e14eb4f658d834218d003583e423c5f37/src/web/crate_details.rs#L261

Recording this info for successful builds will need rustwide changes, so let's leave those for later.
https://github.com/rust-lang/docs.rs/pull/1072 made similar changes and might be helpful.


calculate diff only with respect to keys present on the original tuple

I don't know, if you consider this change useful with respect to how additional keys are when persisting data to the a database, but I found this useful, e.g. when initializing a changeset with data coming from a validation, where this validation used some "virtual" data.

Yeah, we do need this, it's in my todo, but I'm not sure about realization. @solnic we can't apply input_schema in a changeset but we could expose an API for the list of input attributes and filter the diff with that? WDYT?
P.S. Hash#slice is in AS's core_ext, we don't use activesupport in ROM :)

Closing in favor of #88


How can I create a Bootstrap inline form

I am using tcomb-form v0.9.8 and react v15.2.1
How can I create a Bootstrap inline form? Currently I use the following CSS to display the form exactly as I want.
    .form-inline .form-control {
        display: block;
    }

What the above CSS does is create labels on top and the controls on the bottom but the form-control itself flows inline. Form class is form-line.
Thanks.

Not sure I'm following, exactly what's the issue here?

I want to display the form like the Bootstrap form class 'form-inline'. That displays the labels and controls inline.  See http://getbootstrap.com/css/#forms-inline

I mean, inline forms are not officially supported, but setting the form-inline class on your container <form> doesn't work?

Figured it out after trying various settings. I set the container div style to display: 'inline'. Then I set the following:
    .form-control {
        display: block;
    }

    .form-group {
        display: inline-block;
    }

    .fieldset {
        display: inline;
    }

And now it works fine.
Thanks.


Changes to how 'Opfor strength level' works

This suggestion plays on two aspects, adding a bit more control around opfor strength, and adding back a mechanic from the original Liberation in a new form.
In the old liberation you could get resources by blowing up enemy vehicles. This was removed, because it didn't really fit well with the new resource system. But another thing that was removed then as well was the incentive to go on bombing runs to target armored targets, or use guerrilla tactics to take out some tanks without capturing sectors, or behind-the-lines ops to laser-mark armored targets for artillery.
So my suggestion goes like this; Taking out vehicles/armors lowers opfor strength. Currently you can only do this by doing the special missions. This would also play well into the logic that taking out enemy vehicles/tanks/helis etc lowers enemy strength.
Since lowering strength is now easier it could be raised a bit more when capturing a sector, and opfor launching an attack on the fob would not lower it automatically (but it would be lowered upon defeat in line with the size of the attack because you would take out a lot of the enemy vehicles in doing so)
This easy change would open up a lot of new game play elements and strategies
And additional suggestion would be that opfor strength would raise a certain amount every X minutes instead of being raised on taking sectors (rather it could be lowered by it), that way you would need to actively work to keep it down by blowing up opfor vehicles and doing secondary missions (and capturing sectors).

Enemy attention and strength
• Divide Attention into Two Values -> Enemy Strength and Attention.
• Strength will show how much war equipment and men the enemy can send into battle etc.
• Attention will indicate how far the enemy sees your progress and your actions as a threat and whether he should respond to your actions.

I don't know if this is necessary unless directly tied into some specific gameplay elements. Simplicity is often good when it comes to games (easy to learn, hard to master). Also missing how these things will work gameplay wise.

• Strength should be lowered by taking bases or cutting off the enemy from supplies. It should be increased over time as a kind of "The enemy can still request replenishment from there" or something like that.

Similar to my suggestion. I like this. It adds realism :)

• Attention should basically remain as it is, in terms of rising and falling.
So, in a nutshell, attention will show how often the enemy performs actions against the players, and strength will indicate how many vehicles and men are available to them for each action.

So sort of aggresivity works now. Strength -> how strong attacks are and attention -> how often they attack. But what affects attention? Attacks from you could highten attention, and then it could maybe get lowered by time.
Big cities and bases hightens it more, but less if not covered by a radiotower. Taking a base lowers strength somewhat too because its a support point. Also there is more armored vehicles there so blowing up that would lower it even more.

Enemy behavior and abilities
• Location of the FOBs should be "unknown" to the enemy after they were built.

Agreed. Maybe you can get a notification when a FOB is discovered and some icon next to their name on the map so you know which ones are discovered. (Maybe you need to interrogate prisoners to have this information)

• The enemy should send some type of reconnaissance team, or be informed by civilians about Blufor FOBs and / or capabilities (number of resources, number of air traffic control buildings, etc.).

Good point, but unless the player somehow can see this happening and affect it I dont think this is necessary. It adds complexity. Maybe a FOB would be discovered once seen by a passing patrol etc because then having radiotowers and attacking enemy that comes into the area before they can discover you base would be a thing, and that would be kind of cool. Maybe having a radiotower would give you the notification: "An enemy patrol is in the area of one of your undiscovered FOBS"

• Combat groups should only spawn at the enemy bases and not "somewhere in open terrain". I think that could result in a more strategic game play, since you can plan how to cut off enemy reinforcements or combat groups by ambushing on possible patrol routes, etc.

I like this one a lot. This would add more planning to an attack in that you can look at roads and decide which ones to add mines to etc to stop reinforcements :) Also taking out a base would make it easer to capture nearby sectors afterwards

• When attacking radio towers, the enemy should know about the presence (as the players know after they have taken over a radio tower) and react appropriately to the approach.

I like this one. Another one is more randomization around defensive forces surrounding a tower. Maybe its a tank, a offroad, a group of people, or maybe even a heli landed there.

• The enemy's targets should be based on the number of resources and the distance to Opfor sectors. In the case of FOBs, the number of vehicles and "flight control buildings" should be added.

Not sure if I understand this one

• There should be no "endless" reinforcements for the enemy. Furthermore, he should have a limited number of men, light vehicles, helicopters, etc., depending on his strength and the limit is e.g. reset every 3 hours.

Based on my suggestion every kind of enemy vehicle typed is tied to a strength point (or percentage).
 (Just an example).

This basically means that percentage strength is like a pool of enemy vehicles. So when an attack is triggered (this could be triggered by "attention" at a certain level) the strength of the attack would be translatable into the current percentage. So if strength is at 10% an attack could have 2 tanks, a heli, and and two vehicles. Destroying these would put strengt to 0%. Ofc an attack don't have to be "full" strength. At higher strength like 40%+ it could launch attacks at equal 15% strength. Kinda bad explanation but hope you get it.
Additional rules could be applied. Like strength has to be above 30% for jets to spawn, so opfor at 3% strength don't just send one jet!

• More roaming or patrolling enemies in the enemy territory, depending on their attention.

I like this one. It should also depend on closeness of enemy sectors. So you dont run into enemy patrols in areas surrounded by taken sectors

• Possibility of mortar positions. They would not fire like normal ArmA behavior (I guess that would be too OP) but through a script.

I played some time with the Fire for effect mod in Liberation and it is awesome. It fires at whatever units spot, and takes into account speed and direction etc. It fires two rounds, which are very inaccurate, then spends some time adjust, and fires a more accurate round. This is really cool because you get the indication that someone has seen you / or your fob and that you have to take them out before the more accurate barrage hits / or get to cover

• The enemy's airspace should not be as secure as it is at the moment. Still think about a suitable anti-aircraft technology within the enemy space, which would make it more dangerous, but not impossible for approaches "behind enemy lines".

I think it would work just spawn some static AA as defenders

Oh nice that you made a small "retranslation", or did you found the old english text?
Thanks for sharing it here, so everyone can have a look at "the current state of thoughts". :)
Here is a missunderstanding I guess:

Attention should basically remain as it is, in terms of rising and falling.

But what affects attention?

Attention = Aggressivity. Strength will "extend" the current Aggressivity. But the Aggressivity/Attention should stay in it's behaviour concerning how it rises and lowers.
https://github.com/Wyqer/kp_liberation/blob/master/Missionframework/scripts/server/remotecall/sector_liberated_remote_call.sqf#L3

The enemy's targets should be based on the number of resources and the distance to Opfor sectors. In the case of FOBs, the number of vehicles and "flight control buildings" should be added.

Not sure if I understand this one

Blufor sectors and FOBs should have something like a "value of worth" (internal). If they have massive resources stockiled and threee facilities or (in case of a FOB) many air vehicle slot buildings they should have a bigger "score" for the decision of the enemy which one could be attacked. Also the distance to the opfor territory should come into that decision to keep it reasonable.

Ah, that makes sense. Then it would be preferable to place bigger bases with more resources and stuff further inside your controlled area of the map. Would also mean that moving resources from FOBs at the frontline to your "mainbase" would be reasonable.

I disagree with destroying enemy vehicles/troops reducing strength. My group played an old version of Liberation and we completely destroyed the enemy army just by sitting in a defensive position. The rest of the campaign after that point was almost literally just walking through the points.
Player should have to actually go out to reduce enemy army strength. That means doing missions or capturing points, etc. The FOB hunting works just fine in this regard as far as i'm concerned. Althought some disincentive to just shelling them into oblivion should exist. Perhaps if you had to go and retrieve some object from the base. Battle plans or some such thing.

@Takahashi-Yuuki Thats a question of balancing. It does not have to be easy even though this feature would be introduced. It could even become harder if you introduce the 'increase strength per minute' to simulate opfor activily preparing to fight you.


NCW RPC naming

Version Number and Operating System(s):
release-0.004, Windows 10 64 Bit
Expected behavior:
Save and Show all RPC methods in the NCW dialog
Actual behavior:
When the RPC name ends with "Changed" like "MyPropertyChanged" it gets removed in the ForgeClassObject.cs class because of internal field naming.
After saving again it gets lost.
Steps to reproduce:
Create a NCW Object, Add a RPC called "GameChanged", Save&Compile, reopen NCW.
[Optional] Discord Username:
devandart

Can this be closed now as there was a fix merged in to resolve this issue?

Closing as a fix has been provided.


Secure stack check

this PR is used to enable the stack check when arc is in secure mode.
If arc is in secure mode, SSC bit of sec_stat, not SC bit of status32, is used to enable/disable stack check.
Fixes #8313

Codecov Report

Merging #9024 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master    #9024   +/-   ##
=======================================
  Coverage   52.32%   52.32%
=======================================
  Files         197      197
  Lines       24797    24797
  Branches     5158     5158
=======================================
  Hits        12975    12975
  Misses       9742     9742
  Partials     2080     2080

Continue to review full report at Codecov.

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

Looks ok, few discussion topics:

I don't see  corresponding stack check enables in most cases where checking is disabled (exceptions, interrupts), assume that is handled implicitly by restore of the original STAT/SEC_STAT on interrupt return?
is it necessary to always disable stack checking for interrupt processing? Would it be possible to keep stack checking enabled and only disable on reprogramming the stack boundary registers on a context switch?

Hi Ruud
| I don't see corresponding stack check enables in most cases where checking is disabled (exceptions, interrupts), assume that is handled implicitly by restore of the original STAT/SEC_STAT on interrupt return?
Yes, it is handled implicitly by restore of the original STAT/SEC_STAT on interrupt return.
|  is it necessary to always disable stack checking for interrupt processing? Would it be possible to keep stack checking enabled and only disable on reprogramming the stack boundary registers on a context switch?
In interrupt processing,  the stack will be switched to isr stack,  if stack check is not disabled,  the stack check fail exception will be raised,  as the new sp will not be in the range from STACK_TOP to STACK_BASE.
Of course, we can reprogram the stack check reg to match the change of sp,  but it means we need to save the old one and restore it later. More instructions are required,  it will affect the interrupt latency.
One more, if the interrupt stack is overflow, there will be no way to recover from this cause,  the system has to stop.
In zephyr, it seems the stack protection is mainly for thread stack.  For isr stack, it needs more discussion.
From: ruuddw<EMAIL_ADDRESS>Sent: 2018年8月2日 21:27
To: zephyrproject-rtos/zephyr<EMAIL_ADDRESS>Cc: Wayne Ren<EMAIL_ADDRESS>Author<EMAIL_ADDRESS>Subject: Re: [zephyrproject-rtos/zephyr] Secure stack check (#9024)
Looks ok, few discussion topics:

I don't see corresponding stack check enables in most cases where checking is disabled (exceptions, interrupts), assume that is handled implicitly by restore of the original STAT/SEC_STAT on interrupt return?
is it necessary to always disable stack checking for interrupt processing? Would it be possible to keep stack checking enabled and only disable on reprogramming the stack boundary registers on a context switch?

—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_zephyrproject-2Drtos_zephyr_pull_9024-23issuecomment-2D409925389&d=DwMFaQ&c=DPL6_X_6JkXFx7AXWqB0tg&r=uIRv5OnfaYG5_34mbrNlSdByDrbpAfi15TvQ5YKDOG8&m=ZMUHGvxja3uOHWHlHtAew-HgvPq0sv6ZHDiv3sFlKng&s=Trnf-ptyQczDg9yuNWttZw-OzgHz58m7uaCMzbJi8Kw&e=, or mute the threadhttps://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_notifications_unsubscribe-2Dauth_AFB9O4P3TZ-5FzOe9QhL3eP31gA3-2DxhlDYks5uMv4VgaJpZM4VWBoF&d=DwMFaQ&c=DPL6_X_6JkXFx7AXWqB0tg&r=uIRv5OnfaYG5_34mbrNlSdByDrbpAfi15TvQ5YKDOG8&m=ZMUHGvxja3uOHWHlHtAew-HgvPq0sv6ZHDiv3sFlKng&s=hM7BV1_ZSvWie-wkVqvHgpKmhrSe7DVQdUc9UBSiSyA&e=.


Copas integration?

Hi,
I'm looking into using lua-requests in an application that uses a Copas event loop. Peeking into the module, I realized I can achieve this doing:
local copas_http = require("copas.http")
local requests = require("requests")
requests.http_socket = copas_http
requests.https_socket = copas_http

...but this doesn't seem documented in the API, and I'd prefer not to rely on undocumented features.
I do see requests.http_socket and requests.http_socket are public fields in the module, though, so maybe if they were meant to be an implementation detail they'd be hidden in _requests. Is the intention of these two fields to be user-tweakable like I'm doing above? If so, would it be possible to document this explicitly in the API? Thank you!!

That was the original intent of those fields. I wanted to be able to tweak them. I will make sure to document that.  Thanks!


Markdown does not render some tags

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

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

Expected behavior
I expected the markdown engine to render all  markdown writeups with ease, without selecting some tags
Screenshots
Code sample

Rendered text

Additional context
Add any other context about the problem here.

@elishaadamu Since there's not a lot of information, I assume that the problem is coming from the formatting of the bullet points or numbered list.
With Jekyll the markdown needs to be more strictly formatted:
Numbered list:
1. first
2. second
3. third
  - third and a half

Bullet points:
- bullet point
- other point
    - more points

This will be formatted as:

There are some limitation but it should handle the rendering fine. It is not really a part of the theme itself as the rendering is done through the built in engine in jekyll: kramdown.


mei-CMN disallows accidental apparatus

<accid> is not allowed within <lem> and <rdg>, although <app> is allowed within <note>.
It does work, if mei-all is being used.
Seems to be connected to #566

The same applies to <artic> within <rdg>, as we've just noticed working on MEI 4-files at the Digital Interactive Mozart Edition. Are there any plans to allow <accid> and <artic> within <lem> and <rdg> in mei-CMN? We would appreciate that.

@kepper @ahankinson Any idea how to fix this? I have none.

We would have to see if model.noteModifierLike can serve as a good starting point (I haven't thought through yet if the <dot> in there may have side effects), and then make this a member of model.rdgPart.music. Without too much thinking about directions of memberships, this should come to the right end – at least it's worth a try…


Run a benchmark comparing with existing implementations 🏎

Just to demonstrate this is faster and likely limit of scalability.

Resolved via #27.


System to filter sections types in the listing

[ ] Modify the " Add global instance" button near the save one by " Create Global instance"
[ ] When clicking on the Add a new section we have 3 tabs, available, global and inventory, the filter must be there for the 3 of them
[ ] In case the global instance is empty we need a button "Create a global instance" and when clicking on it, it open  the same popup as when clicking on the button from the menu near save (previews should be enabled there)
[ ] when we click on one tab, we need a system to filter sections types in the listing, Filter will run directly in the front end
It should be on the top before the sections listing and in one line where you will have a  text field to filter by name, then a drop down to select the app you want to filter the sections by,  button to apply the filter and we need option to clear the filter too
By name
By app name ( drop down wit the existing one )

Acceptance testing

[x] Modify the " Add global instance" button near the save one by " Create Global instance"
[x] When clicking on the Add a new section you need to have 2 tabs
1st one : Available sections
2nd one: Add global instance
[x] In case the global instance is empty we need a button "Create a global instance" and when clicking on it, it open  the same popup as when clicking on the button from the menu near save (with sections previews enabled)
[x] when we click on one tab, we need a system to filter sections types in the listing, Filter will run directly in the front end
It should be on the top before the sections listing and in one line where you will have a  text field to filter by name, then a drop down to select the app you want to filter the sections by,  button to apply the filter and we need option to clear the filter too
[x] Filtering sections types by name will show only one that correspond the the name entered
[x] Filtering sections types by app name will show only the sections that app name is the one selected
[x] This should be available and working as well for the global sections available

search will run directly in the front end

@akramsarkis Revise point 2 please

Done @mahfouzhseineweev

Don't forger the automated test @mahfouzhseineweev

[ ] It will more clear if before each filter you add "Filter by"
[ ] For the clear button, have a hand to show we can click on it
[ ] In French for the app drop down, you need to change the place holder to " Séléctionner un nom d'application"
[ ] In the inventory why for the sections, the app is not showing like in the available section ? Consequently we cannot filter by app in the inventory

In the inventory why for the sections, the app is not showing like in the available section ? Consequently we cannot filter by app in the inventory

@akramsarkis The section is not created and not returned by the /types so it does not have an app name

all good


Create VM Wizard - add indicators to missing/invalid fields on BasicSettings step

Due to users' complains that is not clear enough why the next button is still disabled, I made the basic setting step bit more interactive and for any field after setting VM's name the dialog will indicate which field is the next missing/invalid field.
To support the interactivity I edited the SelectBox component and I added validation capability to the component, I tried to stick to PF3 <FormControl/> component's appearance and interface, you can see it in commit 0daaf5b.
I would like to hear your opinion, about the new behavior, and if you have any UX suggestions like "make them all blink together" or suggestions about the selectBox validations' appearance.
The new  dialog:

Fixes: #1251

Hello contributor, thanks for submitting a PR for this project!
I am the bot who triggers "standard-CI" builds for this project.
As a security measure, I will not run automated tests on PRs that are not from white-listed contributors.
In order to allow automated tests to run, please ask one of the project maintainers to review the code and then do one of the following:

Type ci test please on this PR to trigger automated tests for it.
Type ci add to whitelist on this PR to trigger automated tests for it and also add you to the contributor white-list so that your future PRs will be tested automatically. ( keep in mind this list might be overwritten if the job XML is refreshed, for permanent whitelisting, please follow #3 option )
If you are planning to contribute to more than one project, maybe it's better to ask them to add you to the project organization, so you'll be able to run tests for all the organization's projects.

@hstastna I changed according to your review:

I pushed changes to  commit 6e55db8 :
according to #1233 comment

ci build please

After entering correct name, the cluster field is not in red frame as expected as it is required to be reselected to continue.

@isaranova I can't reproduced that in my machine.
Can you please write the steps to reproduce the issue?
I selected all the drop down fields (cluster, provision source and template) then I filled the name and it's worked as expected:

Thanks

@bamsalem I thought this PR should tell the user which fields are still missing as a whole including the cluster and provisioning source fields. For example, I get a missing template field after picking the provisioning source (pic), but cluster and provisioning source fields are not marked and if I won't reselect them, I'm not able to continue. If this is not part of the fix in this PR, then please let me know, because the name field indicator is working as expected.

@isaranova
This is the order that the fields indicators should work.

Name
Cluster
if (provsionSource == template) then: Tempale.

if (provisionSource == iso ) then: CD.

did you filled the fields in this order and the indication is not work as expected?
I added 2 gifs with those scenarios in my machine and it's works perfectly.
Did you tested it with brq-dev?
I'm trying to figure out why it works for me and not for you...
BTW this PR is not dealing with the next button at all...
The PR is dealing only with indication about missing/invalid fields.
But we can't accept that regression.

So I tested the issue again to find out that the reason I don't see the cluster field as required is that I had only one cluster in my environment. After adding another cluster, the functionality is correct.

So I tested the issue again to find out that the reason I don't see the cluster field as required is that I had only one cluster in my environment. After adding another cluster, the functionality is correct.

@isaranova  the issue of only one cluster is fixed by #1265 so that the user won't need to pre-select a cluster in case there is only one in the environment. Therefore this issue seems ok and I'm merging it after your verification.

LGTM


FEATURE: Make hardware inventory operations update HSM groups

At the moment hardware component operations in manta only calculates the new HSM groups members but it does not update them.
This change will commit the new HSM group members into CSM

done in 1.32.3


Content Audit Tool is now in BETA

 Add feedback link to Beta banner

Given that this is one huge if block, wouldn't it better to just have two separate Alpha and Beta templates? Things would be a lot more readable that way.

@pmanrubia @alecgibson – changes made.


Consolidate mentions of 'us-west-2' in AWS-related tests

Ideally, tests should use the region they are bing run in, if they are run on EC2.

Look at provisioners.cgcloud for one way to get at the instance metadata and determine the regions. Or use boto's get_instance_metadata. This could be a property in the ToilTest base class and you could @memoize to cache the  return value.


Error message on testing the binary upon building

After building the falcosidekick binary, the default testing command issues an error. No output is generated

After build, tried the command provided in the github webpage:
curl "http://localhost:2801/" -d'{"output":"16:31:56.746609046: Error File below a known binary directory opened for writing (user=root command=touch /bin/hack file=/bin/hack)","priority":"Error","rule":"Write below binary dir","time":"2019-05-17T15:31:56.746609046Z", "output_fields": {"evt.time":1507591916746609046,"fd.name":"/bin/hack","proc.cmdline":"touch /bin/hack","user.name":"root"}}'

The message output is:
boxuser@ubuntu-docker:~/falcosidekick$ ./falcosidekick
2023/08/30 14:26:40 [INFO]  : Falco Sidekick version: devel
2023/08/30 14:26:40 [INFO]  : Enabled Outputs : [Slack]
2023/08/30 14:26:40 [INFO]  : Debug mode : true
2023/08/30 14:26:40 [DEBUG] : running HTTP server
2023/08/30 14:26:40 [INFO] : Falco Sidekick is up and listening on :2801
2023/08/30 14:27:39 http: panic serving <IP_ADDRESS>:43408: inconsistent label cardinality: expected 5 label values but got 4 in prometheus.Labels{"k8s_ns_name":"", "k8s_pod_name":"", "priority":"Error", "rule":"Write below binary dir"}
goroutine 16 [running]:
net/http.(*conn).serve.func1()
	/usr/local/go/src/net/http/server.go:1854 +0xbf
panic({0x22af7c0, 0xc000616de0})
	/usr/local/go/src/runtime/panic.go:890 +0x263
github.com/prometheus/client_golang/prometheus.(*CounterVec).With(...)
	/home/vboxuser/Projects/pkg/mod/github.com/prometheus/client_golang@v1.16.0/prometheus/counter.go:286

Expected behaviour

Screenshots

Environment

Falco version:

System info:
boxuser@ubuntu-docker:~$ falco --version
Wed Aug 30 14:40:23 2023: Falco version: 0.35.1 (x86_64)
Wed Aug 30 14:40:23 2023: Falco initialized with configuration file: /etc/falco/falco.yaml
Falco version: 0.35.1
Libs version:  0.11.3
Plugin API:    3.0.0
Engine:        17
Driver:
API version:    4.0.0
Schema version: 2.0.0
Default driver: 5.0.1+driver

Cloud provider or hardware configuration:
OS:

Kernel:

Installation method:

Additional context

Sorry for the delay, I was on holidays.
Can you paste your configuration please (obfuscate or omit the slack webhook), please.

I found the root cause, the example is obsolete, the falco payload has now a field hostname which is used as prometheus label.
This command should run as expected:
curl -XPOST "http://localhost:2801/" -d'{"hostname": "localhost", "output":"16:31:56.746609046: Error File below a known binary directory opened for writing (user=root command=touch /bin/hack file=/bin/hack)","priority":"Error","rule":"Write below binary dir","time":"2019-05-17T15:31:56.746609046Z", "output_fields": {"evt.time":1507591916746609046,"fd.name":"/bin/hack","proc.cmdline":"touch /bin/hack","user.name":"root"}}'

I will create a fix anyway.

Issues go stale after 90d of inactivity.
Mark the issue as fresh with /remove-lifecycle stale.
Stale issues rot after an additional 30d of inactivity and eventually close.
If this issue is safe to close now please do so with /close.
Provide feedback via https://github.com/falcosecurity/community.
/lifecycle stale


StreamingReader cannot read all data from one sheet

Hi, @monitorjbl , when I try to use StreamingReader to read data from one worksheet, it only return the data in cached rows (for example, 100 rows of data, but my worksheet has 100,000,000 rows, do I miss any configuration? could you help give some guidance? thanks!
override def openWorkbook(): Workbook = {
fileExtension match {
case "xlsx" => {
StreamingReader.builder()
.rowCacheSize(100)
.bufferSize(4096)
.open(inputStreamProvider)
}
case "xls" => {
WorkbookFactory.create(inputStreamProvider)
}
case _ => failure("EXCEL-EXE-09", s"Invalid file is provided with format $fileExtension while only .xlsx and .xls are supported.").get
}
}
The other case is that, it throw exception directly:
20/07/21 13:22:43 ERROR Executor: Exception in task 0.0 in stage 0.0 (TID 0)
com.monitorjbl.xlsx.exceptions.ParseException: Error reading XML stream
at com.monitorjbl.xlsx.impl.StreamingSheetReader.getRow(StreamingSheetReader.java:76)
at com.monitorjbl.xlsx.impl.StreamingSheetReader.access$200(StreamingSheetReader.java:32)
at com.monitorjbl.xlsx.impl.StreamingSheetReader$StreamingRowIterator.hasNext(StreamingSheetReader.java:402)
at scala.collection.convert.Wrappers$JIteratorWrapper.hasNext(Wrappers.scala:42)
at scala.collection.Iterator$$anon$13.hasNext(Iterator.scala:462)
at scala.collection.Iterator$$anon$11.hasNext(Iterator.scala:409)
at scala.collection.Iterator$JoinIterator.hasNext(Iterator.scala:220)
at scala.collection.Iterator$$anon$1.hasNext(Iterator.scala:1002)
at scala.collection.Iterator$$anon$12.hasNext(Iterator.scala:440)

Same thing happened to me too. Had about 200k rows and StreamingReader wasn't able to load all the data. Instead, it just loaded the amount of rows which was declared in rowCacheSize method. My workaround was to just set rowCacheSize parameter higher than the number of rows your excel file has.


keep_live access callback result in subscribe

Describe the bug
When setting up a keep_live it's currently impossible to access the callback result for setting up any subscriptions.
To Reproduce
A minimal set of resource definitions and calls that can reproduce the bug.
socket
|> keep_live(
  :merge_request,
  fn socket ->
    Nxy.Workspace.MergeRequest.get_by_id!(params["id"])
  end,
  subscribe: [
    "merge_request:updated:#{socket.assigns.merge_request.project_id}" # <-- unable to access the project_id here
  ]
)

Expected behavior
subscription should could be a callback that get's the result of the previous callback.

Makes sense to add this, but I won't have time to do it for quite some time. What we ought to do is call the callback on returned data, and store what we subscribed to. Then, as data updates, we should call the callback again and unsubscribe from any that are not present in the list, and subscribe to anything new. Would this be something you're interested in putting together a PR for?


Please add guidance here about which preposition to use with UI elements

As an editor of Microsoft product articles, I would LOVE to have a list of UI elements and the correct preposition to use with them, all on one page, and this seems like the most logical page. For instance, I know that I select something "on the ribbon," but do I do something "on a tab" or "in a tab," "on the page" or "in the page"? Do I select something "in the list" or "from the list"? And on and on and on.

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

ID: e98e42eb-e358-ac20-3d03-797f01106e89
Version Independent ID: c8035ad5-f27a-c286-7c75-7f7be79ce7ad
Content: Prepositions - Microsoft Style Guide
Content Source: styleguide/grammar/prepositions.md
Product: non-product-specific
GitHub Login: @pallep
Microsoft Alias: pallep

Thanks for the feedback, @rhanajoy ! This is definitely a big and thorny issue that we are working on. We'll add your comments to our discussion.


Temporary ContextVar values

Proposal: add way to temporarily change context var values, e.g.
with Debugging(level=4, graph=1): // on enter set the context vars to temp values, on exit, change them back
   // some ops
// some other ops we don't care about for the debugging

I find myself wanting to debug some specific part of the code sometimes and it'd make it easier to navigate the logs. I saw there is a Context class which supports temporarily adding to the var stack, but that doesn't work if the key already exists in the stack.

If you are talking about tinygrad.helpers.Context and tinygrad.helpers.ContextVar then I think it already works as you describe. At least on master I can run the below code without issue.
from tinygrad.helpers import Context, DEBUG, ContextVar

FOO = ContextVar("FOO", 0)

assert FOO.value == 0
assert DEBUG.value == 0

with Context(FOO=4, DEBUG=1):
    assert FOO.value == 4
    assert DEBUG.value == 1

assert FOO.value == 0
assert DEBUG.value == 0
print('all passed')

But again I'm new to tinygrad so I might be missing something important here.

If you are talking about tinygrad.helpers.Context and tinygrad.helpers.ContextVar then I think it already works as you describe. At least on master I can run the below code without issue.
from tinygrad.helpers import Context, DEBUG, ContextVar

FOO = ContextVar("FOO", 0)

assert FOO.value == 0
assert DEBUG.value == 0

with Context(FOO=4, DEBUG=1):
    assert FOO.value == 4
    assert DEBUG.value == 1

assert FOO.value == 0
assert DEBUG.value == 0
print('all passed')

But again I'm new to tinygrad so I might be missing something important here.

Ah yes you are correct there, I think we should probably refactor it to not use a stack lookup at all since its having a bit of a performance cost but that may be for another issue. Also migration of Graph to a context var would be good.


Proved bft-lemma for one peer, one vote and completed IsValidQC

Proved the well-known result that for N peers of which at most f are byzantine, for any two lists of at least N - f different peers, there is at least one honest peer in their intersection.
This can be a utility for someone trying to create an abstract EpochConfig for an implementation that assumes one peer, one vote.
Also completed the hole in IsValidQC using All-reduce function.

Thanks @lisandrasilva, nice work.  We should be able to accept this soon, but there are a few comments we would like you address first, please.

Great, thanks.  Merging!


New Spigot update causing Pex to use lots of resources

https://timings.spigotmc.org/?url=giwarifoqi
The newest 1.12 Spigot update as of this morning, is causing issues with numerous plugins. I have attached the timings report showing PEX using a lot of resources.
       0.00%	  93.54%	  0.05 s	    46.77 ms	 0.0	       0.0k	    RegexPermissions$EventListener::onPermissionSystemEvent(PermissionSystemEvent)
       0.00%	   3.78%	  0.03 s	     1.89 ms	 0.0	       0.0k	    SuperpermsListener::onPlayerQuit(PlayerQuitEvent)
       0.00%	  53.12%	  0.03 s	    26.56 ms	 0.0	       0.0k	    SuperpermsListener::onSystemEvent(PermissionSystemEvent)

Are there any errors in the server log?
Has spigot been notified of the issue?  (Nothing has changed in PEX 1.23.4, so it doesn't appear to be a PEX issue, at a glance.)

I honestly don't know much about reading timing reports, but I can't see "PermissionsEx" on that page.
I do see a lot of plugins, but not one specifically named "PermissionsEx".  >.>
Is "PermissionsEx" actually installed on the server?  (I have to ask, because I can't see it.)

Yeah, spigot made a ton of changes lately which is causing a lot of plugins to freak out. And yes, permissionsEX is listed on there, and I copied in the specific timings for pex as well.
Spigot has been notified by numerous devs due to this craziness.
Adam Wolf

On Jul 28, 2017, at 5:36 PM, Stormbow<EMAIL_ADDRESS>wrote:
I honestly don't know much about reading timing reports, but I can't see "PermissionsEx" on that page.
I do see a lot of plugins, but not one specifically named "PermissionsEx". >.>
Is "PermissionsEx" actually installed on the server? (I have to ask, because I can't see it.)
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.

Sounds like it's entirely on Spigot's end then, if it's affecting so many plugins.
Thanks for the head's up.

@zml2008 can close this ticket if he's done with it.

Unfortunately PermissionsEx is currently unmaintained and no further updates are planned. Because of this, all pull requests are being closed. If you are looking for an actively maintained permissions plugin, take a look at LuckPerms. It is compatible with major server platforms and can import data from PEX.


Space in directory stops files from listing

Hello,
Thanks for the enhancements. I notice in your fork and the main script, when the directory contains a space, the contents of the directly aren't listed when the directory is viewed.
I'm happy to fix it but I'm not sure where to start.  I have basic PHP experience, can you suggest what I should look for to change the code?
Thanks

Sorry for delayed response, didn't received any notifications. Will check this soon.

Thanks Angelll. No problems, any help you can offer is much appreciated.

@gedm , can you just change:
$file = isset($_REQUEST['file']) ? $_REQUEST['file'] : '.';

to:
$file = isset($_REQUEST['file']) ? urldecode($_REQUEST['file']) : '.';

Leave reply if it works

Hi Angelll,
fixed.  Thank you very much for spending your time on this. I appreciate it.


inference step python tools/vqgan/inference.py -i 009200.wav  generate wav quality not good

Self Checks

[X] This template is only for bug reports. For questions, please visit Discussions.
[X] I have thoroughly reviewed the project documentation (installation, training, inference) but couldn't find information to solve my problem. English 中文 日本語 Portuguese (Brazil)
[X] I have searched for existing issues, including closed ones. Search issues
[X] I confirm that I am using English to submit this report (我已阅读并同意 Language Policy).
[X] [FOR CHINESE USERS] 请务必使用英文提交 Issue，否则会被关闭。谢谢！:）
[X] Please do not modify this template and fill in all required fields.

Cloud or Self Hosted
Cloud, Self Hosted (Docker)
Environment Details
linux python 3.8
Steps to Reproduce
python tools/vqgan/inference.py -i 009200.wav" --checkpoint-path checkpoints/fish-speech-1.4/firefly-gan-vq-fsq-8x1024-21hz-generator.pth"
✔ Expected Behavior
expect the restore wav is similar to the enroll wav
❌ Actual Behavior
but the restore wav in bad quality and speaker not similar

There are enroll wav and restore wav

restore 的fake.wav音质较差、有噪声、声音还很哑

Please post your source audio, and reconstruct audio.

这是一封自动回复邮件。已经收到您的来信，我会尽快回复。

source_audio_and_resonstruct_audio.zip

Did your vector_quantize_pytorch version == 1.14.24?

Please post your source audio, and reconstruct audio.

this is source wav and reconstruct

source_audio_and_resonstruct_audio.zip

Did your vector_quantize_pytorch version == 1.14.24?

my vector_quantize_pytorch  1.14.1

Did your vector_quantize_pytorch version == 1.14.24?

vector-quantize-pytorch   1.20.9

Did your vector_quantize_pytorch version == 1.14.24?

vector-quantize-pytorch 1.20.9

Try to downgrade it to 1.14.24

Did your vector_quantize_pytorch version == 1.14.24?

vector-quantize-pytorch 1.20.9

Try to downgrade it to 1.14.24

The problem has been solved by set vector-quantize-pytorch 1.14.24,thank you


Clarify error message when node is not clickable

I've clarified the error message when the browser returns no quads for an element. The previous error message was confusing because the element in question was both an HTMLElement and visible, but not clickable because there was an overlay on the screen with a greater z-index.

@googlebot I signed it!

@googlebot I consent.


allowedValues appears to only allow values prefixed with @ symbol

As the title says, it looks like tags are required to be prefixed with @ symbol, when there is no requirement for this using the @cypress/grep or @bahmutov/cy-grep plugin. Can this be made configurable? We use tags without that symbol because it's easier for us.

Very good point!
I have a change in a branch that fixes this with a configuration setting called prependAtSign, which would default to true, but setting it to false explicitly keeps the tags "as defined" in the rule.
I'm not sold on the name or the default yet, but it should work. Feel free to check it out if you like while I test that it does what I think it does :D.
If you're interested, it was like this because:

It was recommended, and looks good to me in the test files, but I didn't want to repeat the @ sign in the rule
I started out with just the markdownFile option, which required some prefix (and still does)

I've been testing out your branch and it's working great! I've been able to implement a minimum level of tag enforcement with this branch in a branch of my own so I would say this is ready to be merged as-is.

Great, thank you for taking the time to try it out.
I'm going to merge this now, and it will be up in version 1.4.0 shortly.


Using abstract sass classes does not apply nested styles when added to :host

Which @angular/* package(s) are the source of the bug?
Don't known / other
Is this a regression?
No
Description
I am trying to extend an abstract class on :host selector and it works well until my abstract class has some nested selector styles.
Imagine this:
%test-hover {
  color: green;
  &:hover {
    color: gray;
  }
}

:host {
  @extend %test-hover;
}

It generates this:
[_nghost-dxc-c100] {
  color: green;
}

But should generate this:
[_nghost-dxc-c100] {
  color: green;
}
[_nghost-dxc-c100]:hover {
  color: gray;
}

However it works fine when the nested selector does not have &.
%test-hover {
  color: green;
  :hover {
    color: gray;
  }
}

:host {
  @extend %test-hover;
}

Produces this:
[_nghost-gmj-c100] {
  color: green;
}
[_nghost-gmj-c100]   [_ngcontent-gmj-c100]:hover {
  color: gray;
}

I believe it should work for :host with & too.
Please provide a link to a minimal reproduction of the bug
No response
Please provide the exception or error you saw
No response
Please provide the environment you discovered this bug in (run ng version)
Angular CLI: 13.3.3
Node: 16.15.0
Package Manager: npm 8.5.5
OS: win32 x64

Angular: 13.3.4
... animations, cdk, common, compiler, compiler-cli, core, forms
... language-service, localize, material, platform-browser
... platform-browser-dynamic, platform-server, router
... service-worker, youtube-player

Package                          Version
----------------------------------------------------------
@angular-devkit/architect        0.1303.3
@angular-devkit/build-angular    13.3.3
@angular-devkit/core             13.3.3
@angular-devkit/schematics       13.3.3
@angular-devkit/schematics-cli   13.3.3
@angular/cli                     13.3.3
@schematics/angular              13.3.3
ng-packagr                       13.3.1
rxjs                             7.5.5
typescript                       4.6.3

Anything else?
No response

Ok, so it appears that the SASS compiles into something completely differently compared to the results from https://www.sassmeister.com:
$ ./node_modules/.bin/sass src/app/app.component.scss
:host {
  color: gray;
}

I don't know about support for abstract SASS classes (never heard of them before today) but it appears that the SASS implementation used in the CLI doesn't transform this as you expect (and as https://www.sassmeister.com makes it appear).


Sightly Repl not working with AEM6.2

I am trying  to run Sightly REPL with AEM 6.2 but it gives me an error in including REPL component.

I also run this on AEM 6.2 and cannot make it work. I see the page but there is no input where I can put my content. No error in console and no errors during package installation.

The issue was fixed by @gabrielwalt  in https://github.com/Adobe-Marketing-Cloud/aem-sightly-repl/commit/b93f58941e7680b77167ad3fcc3d76329a163649 but it was not released yet. You can get around it by installing the REPL using Maven: https://github.com/Adobe-Marketing-Cloud/aem-sightly-repl#maven-method

I've verified REPL on a vanilla AEM 6.2 and everything works correctly now.


Update object-oriented-programming.md

The definitions for Abstraction and Excapuslation were reversed.
Summary
Describe your changes here.
Fixes #Issue_Number (if available)

Notice this was wrong wanted to update it.  Thank you

@davidbcoulson
We've had a number of concerns on these definitions.  See #23543 to follow the discussion.
The correct fix is not to switch these, but to rewrite both more clearly to avoid any confusion.
Do you want to take that on, or should I close this PR? I don't want to place extra demands on your time, but your fix will only drive more confusion.

Morning Dotnet/Docs
just added a comment to the discussion.  They need to be switched.  All the
blogs and forums use these as a reference. Most are the same sentence. I
dont think we need more work on this. we just need to switch them back.
best,
David
On Sun, Apr 11, 2021 at 7:49 PM Bill Wagner @.***>
wrote:

@davidbcoulson https://github.com/davidbcoulson
We've had a number of concerns on these definitions. See #23543
https://github.com/dotnet/docs/issues/23543 to follow the discussion.
The correct fix is not to switch these, but to rewrite both more clearly
to avoid any confusion.
Do you want to take that on, or should I close this PR? I don't want to
place extra demands on your time, but your fix will only drive more
confusion.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/dotnet/docs/pull/23750#issuecomment-817409860, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/ACTWMS7VSGHS2ZCX4E43JFTTII7S3ANCNFSM42YCBVUQ
.


Add tests for single adapter, multiple (all?) aspects

Need to confirm that it is possible for a single backend adapter to provide all istio aspects.

Addressed by new adapter model.


Docker

There are problems launching Crunchbutton with Docker (local). How can i solve it?

please send me what your error messages are

Just won't start, crashes after i try to launch it. Another Freelancer who tried to launch it told me there are database problems. Does it run on your local machine?

how does it crash? can you paste a log? it runs fine both localy and deployed in production.
you may be missing some env vars.

Warning: require_once (/app/include../vendor/autoload.php): failed to open stream: No such file directory /app/include/crunchbutton.php on line 15
Fatal error: require_once(): Failed opening required àpp/include/../vendor/autoload.php' (include_path='.:/usr/local/lib/php') in /app/include/crunchbutton.php on line 15


Suggestion: Attach precompiled binaries to releases

Some of us are not able to compile your software as the running of powershell scripts is disabled on our systems, and we don't have the permissions necessary to change it. It would be really handy if you included precompiled binaries on Github's releases page,

The binaries with required libraries are 25 MB in size, which would add some untrusted bloat to the repo.
You can compile via the command line without using psake powershell scripts by calling msbuild from your .NET installation:
C:\git\git-unite> C:\Windows\Microsoft.NET\Framework64\v4.0.30319\msbuild /t:build /v:n /p:Configuration=DEBUG .\src\Git.Unite.sln

I explored creating a nuget package today but tools do not fit that model well. I can look at creating a Chocolatey Package package when I get some free time.
Thanks.

I totally understand the bloat issue, but binaries attached to Github releases are not actually committed to your repository, so they don't add bloat :-)

Further reading: https://github.com/blog/1547-release-your-software

Thanks for the heads up.. did not see that feature of Github releases. I will look into it.

This would be nice.
I tried running the powershell build script, but it said execution of scripts is restricted. I looked it up, and found out how to change that setting. I then ran the build script again, except now it's saying:
Build started 2017-04-07 01:37:23.
Project "C:\Root\Apps\<EMAIL_ADDRESS>on node 1 (clean target(s)).
C:\Root\Apps\<EMAIL_ADDRESS>: error MSB4126: The specified solution configuration
"DEBUG|HPD" is invalid. Please specify a valid solution configuration using the Configuration and Platform properties (
e.g. MSBuild.exe Solution.sln /p:Configuration=Debug /p:Platform="Any CPU") or leave those properties blank to use the
default solution configuration. [C:\Root\Apps\<EMAIL_ADDRESS>Done Building Project "C:\Root\Apps\<EMAIL_ADDRESS>(clean target(s)) -- FAILED.

The same problem occurs when running the msbuild command above. In other words, I seemingly can't seem to use the program at the moment. : (
Thankfully I don't need it at the moment, as I was able to do the case fixes manually (since it's a small project). But for larger projects this would be nice. (an alternative is to change the name of the root directories to something else, commit, then change them back; but then I think it might break the file histories)

Okay, I was able to get a little farther by adding  /p:Platform="Any CPU" to the msbuild script above:
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\msbuild /t:build /v:n /p:Configuration=DEBUG /p:Platform="Any CPU" .\src\Git.Unite.sln

However, I now get this error:
UniteRepository.cs(223,28): error CS1525: Invalid expression term '.' [C:\Root\Apps\@V\@Tools\git-unite\Main\src\LibGit
Unite\LibGitUnite.csproj]
UniteRepository.cs(223,29): error CS1003: Syntax error, ':' expected [C:\Root\Apps\@V\@Tools\git-unite\Main\src\LibGitU
nite\LibGitUnite.csproj]
Done Building Project "C:\Root\Apps\<EMAIL_ADDRESS>(default targets) -- F
AILED.

Done Building Project "C:\Root\Apps\<EMAIL_ADDRESS>(build target(s)) -- FAILED.

Build FAILED.

"C:\Root\Apps\<EMAIL_ADDRESS>(build target) (1) ->
"C:\Root\Apps\<EMAIL_ADDRESS>(default target) (2) ->
(CoreCompile target) ->
  UniteRepository.cs(223,28): error CS1525: Invalid expression term '.' [C:\Root\Apps\@V\@Tools\git-unite\Main\src\LibG
itUnite\LibGitUnite.csproj]
  UniteRepository.cs(223,29): error CS1003: Syntax error, ':' expected [C:\Root\Apps\@V\@Tools\git-unite\Main\src\LibGi
tUnite\LibGitUnite.csproj]

    0 Warning(s)
    2 Error(s)

Time Elapsed 00:00:03.48

Interesting and I created a GitHub release for v2.1 with precompiled binaries attached.
I will look into a Chocolatey Package when I find some rare free time.

Ooooh, cool! Thanks a bunch, @tawman :D


Please document some reasons - Tasks can be blocked for many different reasons

This documentation page contains this sentence: "Tasks can be blocked for many different reasons."  But the page fails to provide any information on these "reasons for blocking."
Please improve the page by adding several DETAILED explanation for why a thread may be blocked.
I'm trying to figure out how to debug thread mutex usage and I believe this is one of the "block reasons" but can't be sure because of this page's omission.

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

ID: ca39bde1-9872-c65b-5159-11427f3c8bb9
Version Independent ID: c3e915dd-9c09-f7c6-8ad6-82dbda6fdac7
Content: Debug a parallel application - Visual Studio
Content Source: docs/debugger/walkthrough-debugging-a-parallel-application.md
Product: visual-studio-windows
Technology: vs-ide-debug
GitHub Login: @Mikejo5000
Microsoft Alias: mikejo

@buzz3791 -- Brian, thank you for your feedback.  Please consider these resources:

Visual Studio on Q&A
Visual Studio MSDN Forum
Stack Overflow
Reddit

@Mikejo5000 -- Mike, please look into this issue, which appears to be an open-ended question.

Parellel Tasks are a .NET feature, so any docs that would describe this would be in the .NET doc set. I'm adding a link to a topic there that includes some information on blocked Tasks.

Fix should be available live by end of day.


ctrl-z reverses decimal and currency inputs (maybe all float type inputs?)

Describe the bug

open the demo https://robinherbots.github.io/Inputmask/
focus on a currency input
write $1234.00
unfocus
focus again
ctrl-z
input will be transformed to $0.43 (it reverses it to 4321 and because of the specific decimal configuration in the demo page it eats up the last two numbers, but I've experienced examples where it doesn't eat up any of it)

OS: Mac OS Big Sur
Browser: Chrome
Inputmask version: Whatever is the one on the demo page but also on 5.0.4-beta.38

Is this getting any attention? Seems pretty dangerous given how money-related inputs could be changed very drastically.
If anyone is having this issue and you are using your own build, i added if (90 === k && e.ctrlKey) return; on https://github.com/RobinHerbots/Inputmask/blob/5.x/lib/eventhandlers.js#L30 to disable 'ctrl-z' alltogether

@gerry-bubble ,
I will fix this asap.

@RobinHerbots I see that you made some changes with a fix ctrl-z commit message. just wondering if they relate to this issue and if so, if this issue is resolved or still WIP.
thanks!

@gerry-bubble,
The commit is related to this issue.  The change fixes the issue, but I'm still investigating the possibility to use the native ctrl-z ctrl-y.


x/tools/cmd/goimports: eliminates imports whose package name doesn't match last path component

Please answer these questions before submitting your issue. Thanks!
What version of Go are you using (go version)?
go version go1.8.1 linux/amd64
What operating system and processor architecture are you using (go env)?
GOARCH="amd64"
GOBIN=""
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOOS="linux"
GOROOT="/usr/lib/go"
GOTOOLDIR="/usr/lib/go/pkg/tool/linux_amd64"
GCCGO="gccgo"
CC="gcc"
GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build210705530=/tmp/go-build -gno-record-gcc-switches"
CXX="g++"
CGO_ENABLED="1"
PKG_CONFIG="pkg-config"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
What did you do?
Used goimports instead of gofmt tool to format https://github.com/kubernetes/dashboard codebase.
What did you expect to see?
Fixing imports and format code in the same style as gofmt.
What did you see instead?
Code got formated and imports nicely ordered where standard libraries are listed first and 3rd party imports second. Unfortunately in several files legit imports got removed causing errors and failed build. Naming the imports by hand fixes the problem but the behavior is unpredictable as I don't see why the specific files were affected.

Seems like the imports which have "-" get deleted. Naming them solves the problem. Is this intended behavior?
for ex. "github.com/emicklei/go-restful" get remove while "restful github.com/emicklei/go-restful" does not.

Thanks for the bug report. (Btw, please update to Go 1.8.3, and try out the 1.9 betas!)
goimports assumes that the package's name (package restful) matches the last component of the package path (go-restful). This allows it to do much less work when scanning GOPATH. So in general, this is expected behavior.
That said, it seems to me:
(1) if you already have the import present in your file, goimports should always check that import path when looking for matches
(2) goimports might want to also consider common prefixes, like 'go-' (although I'm pretty sure @bradfitz won't be keen on this)

This is  #17546, which was recently closed. Note that in that case he was using  worker-pool  in the path and workerpool  as package name. In your case, even ignoring dashes won't fix the issue because your path have dashes + an alphanumeric prefix.
I'm not too convinced it's worth complicating goimports' matching rules with prefixes and whatnot when there's a simple rule (package name must match) and a simple workaround (use a named import).

@kenan435, can you (or anybody else here) prepare a reproducible example with versions?
Which git version of goimports?
Which git checkout of Kubernetes?
Running goimports on which file?

$ cd $GOPATH/src/golang.org/x/tools
$ git log | head -n3
commit 3da34b1b520a543128e8441cd2ffffc383111d03
Author: Matthew Dempsky<EMAIL_ADDRESS>Date:   Mon Jul 17 14:44:42 2017 -0700

So it's the current (2017-07-24) tip of golang/tools.
To reproduce on github.com/kubernetes/dashboard at current tip (currently 43ee97eeaf9b84354bf4e7bccafe84f2a5f8064e):
$ git clone https://github.com/kubernetes/dashboard.git
$ cd dashboard/src/app/backend
$ goimports -d client/manager.go

diff -u client/manager.go.orig client/manager.go
--- client/manager.go.orig	2017-07-24 18:25:27.890511175 +0200
+++ client/manager.go	2017-07-24 18:25:27.890511175 +0200
@@ -20,7 +20,6 @@
 	"log"
 	"strings"

-	"github.com/emicklei/go-restful"
 	"k8s.io/client-go/kubernetes"
 	"k8s.io/client-go/rest"
 	"k8s.io/client-go/tools/clientcmd"

The dashed import was removed but that package is required because it provides restful, which is used in the file.

@ALTree, thanks!

I'm not too convinced it's worth complicating goimports matching rules with new ignore-prefixes rules and whatnot when we have a simple rule

I'm on the fence about this. In any case, I do think goimports should check existing imports before deleting them (my option 1 above). So let's leave this bug open for that.

Definitely seems like there's a bug here. I haven't investigated, though, and won't have time to (https://groups.google.com/forum/#!topic/golang-dev/5QdnNBf1v68).

@Merovius Thanks for double checking. I still can reproduce this but now I notice that in the instructions above I didn't go get the kubernetes tool, I just git cloned the repository outside gopath since it's not strictly a Go package. Here's a clearer reproducer that works for me (I didn't bother checking out the old commits because I still can reproduce the issue):
$ export GOPATH=$(mktemp -d)
$ go get -d golang.org/x/tools/cmd/goimports
$ cd $GOPATH/src/golang.org/x/tools/
$ go install golang.org/x/tools/cmd/goimports

$ git clone https://github.com/kubernetes/dashboard.git
$ cd ~/dashboard/src/app/backend/
$ $GOPATH/bin/goimports -d client/manager.go
diff -u client/manager.go.orig client/manager.go
--- client/manager.go.orig	2017-08-04 00:21:33.507463531 +0200
+++ client/manager.go	2017-08-04 00:21:33.507463531 +0200
@@ -20,7 +20,6 @@
 	"log"
 	"strings"

-	"github.com/emicklei/go-restful"
 	"k8s.io/client-go/kubernetes"
 	"k8s.io/client-go/rest"
 	"k8s.io/client-go/tools/clientcmd"

@ALTree Yes, I can reproduce that now (with the additional step of checking out anything before  c267afd3ecb on the kubernetes tree, of course). It shows a diff if the repo is checked out outside of $GOPATH and no diff, if it's inside $GOPATH.
I'm going to try and look whether I can find and fix this over the next couple of days, supported or not. Unless someone tells me to stop :)

Minimal repro:
mero@hix ~/goissues/21143/min_repro$ master echo $GOPATH
/home/mero/goissues/21143/min_repro/gopath
mero@hix ~/goissues/21143/min_repro$ master tree
.
├── b
│   ├── b.go
│   └── vendor
│       ├── c
│       │   └── a.go
│       └── d
│           └── d.go
└── gopath
    └── src
        └── b -> ../../b

7 directories, 3 files
mero@hix ~/goissues/21143/min_repro$ master cat b/b.go
package main

import (
	"c"
	"d"
	"fmt"
)

func main() {
	fmt.Println(a.Foo())
	fmt.Println(d.Bar())
}
mero@hix ~/goissues/21143/min_repro$ master cat b/vendor/c/a.go
package a

func Foo() string {
	return "Hello world"
}
mero@hix ~/goissues/21143/min_repro$ master cat b/vendor/d/d.go
package d

func Bar() string {
	return "Hello Bar"
}
mero@hix ~/goissues/21143/min_repro$ master goimports -d b/b.go
diff -u b/b.go.orig b/b.go
--- b/b.go.orig	2017-08-05 18:12:23.647743753 +0200
+++ b/b.go	2017-08-05 18:12:23.647743753 +0200
@@ -1,7 +1,6 @@
 package main

 import (
-	"c"
 	"d"
 	"fmt"
 )
mero@hix ~/goissues/21143/min_repro$ master goimports -d gopath/src/b/b.go
mero@hix ~/goissues/21143/min_repro$ master

Meaning this is #14566. goimports doesn't associate the "c" import with package "a" by heuristic and build.Import doesn't find the vendored directory. I don't think it's very reasonable to expect goimports to work around this. It already tries to find existing imports to see if the package name doesn't match (as seen by it working in $GOPATh) and uses a heuristic, if it can't.
I recommend closing this as a dupe of #14566 (I don't think I can do that myself).

Thanks for investigating.
Since it can only be reproduced when the dashboard repo is outside gopath, and the tool does not support this use case (see #14566), I'm closing the issue.


less compiler accept several arguments including compression

Quick question on this, I see it's supported but how do you pass one of these arguments through the site.yaml? I'm learning...

Hi,
Command line plugins (CLTransformer derived ones) have the option of supporting an args: dictionary in their settings. You can see the example for less in @vincentbernat's site:
https://github.com/vincentbernat/www.luffy.cx/blob/master/site-production.yaml#L23-26

Thanks, looked at his wrong site.yaml. Tried
args:
  - x

and
args: x

didn't realize that's how it was checked. Thank
For posterity:
less:
  app: lessc
args:
  compress: ""


Will you accept a PR that allows setting minimum width/height for resizable windows?

Quite a useful feature, would be nice to have it upstream.

Yes if the code isn't too gnarly. Probably best to look at glfwSetWindowSizeLimits() (although tbh, the GLFW code isn't too straightforward).
I'm not sure if it's better to have fixed limits provided in sapp_desc, or a function sapp_set_window_size_limits(), or both.

I added min_width and min_height to sapp_desc.


updated nil check on resource dataset_in_progress_editor_id

Update to nil checks on Resource.dataset_in_progress_editor_id

Sorry, Brian.  It looks like a test failed in Travis again.  :-/


[WIP] - Restructuring

Restructuring to be more maintainable.

Things here seem pretty clean to me.  I've made some small questions but generally I think we should merge this sooner rather than later.
What is left in branches?  Logistic regression things?

What is left in branches? Logistic regression things?

Logistic regression, "meta-estimators" like Averaged and Chained, some work on a new Matrix class, and a branch that works more like xarray, with mutation and dask behind the scenes.
I plan to merge this now, and may pull in a few of the other things over the next couple days.

Hooray for merging