Can't add routes in handler functions

Long story short
I'd like to be able to add new routes inside handler functions. Unfortunately, at present this causes a RuntimeError: Cannot register a resource into frozen router. exception.
Expected behaviour
New route is added
Actual behaviour
500 error code is returned, and RuntimeError: Cannot register a resource into frozen router. exception is seen on the server side.
Steps to reproduce
import asyncio
from aiohttp import web

async def handle2(request):
    text = "Hello2222, yo"
    return web.Response(text=text)

async def handle(request):
    name = request.match_info.get('name', "Anonymous")
    text = "Hello, " + name
    request.app.router.add_get('/foo', handle2)
    return web.Response(text=text)

loop = asyncio.get_event_loop()

app = web.Application(loop=loop)

app.router.add_get('/', handle)
web.run_app(app)

Running this causes:
$ python test.py
======== Running on http://<IP_ADDRESS>:8080 ========
(Press CTRL+C to quit)
Error handling request
Traceback (most recent call last):
  File "/Users/pll740/Code/aiohttp-test/lib/python3.5/site-packages/aiohttp/web_server.py", line 61, in handle_request
    resp = yield from self._handler(request)
  File "/Users/pll740/Code/aiohttp-test/lib/python3.5/site-packages/aiohttp/web.py", line 249, in _handle
    resp = yield from handler(request)
  File "/Users/pll740/Code/aiohttp-test/lib/python3.5/site-packages/aiohttp/web_urldispatcher.py", line 111, in handler_wrapper
    result = old_handler(*args, **kwargs)
  File "test.py", line 11, in handle
    request.app.router.add_get('/foo', handle2)
  File "/Users/pll740/Code/aiohttp-test/lib/python3.5/site-packages/aiohttp/web_urldispatcher.py", line 868, in add_get
    return self.add_route(hdrs.METH_GET, *args, **kwargs)
  File "/Users/pll740/Code/aiohttp-test/lib/python3.5/site-packages/aiohttp/web_urldispatcher.py", line 831, in add_route
    resource = self.add_resource(path, name=name)
  File "/Users/pll740/Code/aiohttp-test/lib/python3.5/site-packages/aiohttp/web_urldispatcher.py", line 795, in add_resource
    self._reg_resource(resource)
  File "/Users/pll740/Code/aiohttp-test/lib/python3.5/site-packages/aiohttp/web_urldispatcher.py", line 770, in _reg_resource
    raise RuntimeError("Cannot register a resource into "
RuntimeError: Cannot register a resource into frozen router.

Your environment
aiobotocore==0.0.6
aiohttp==1.2.0
async-timeout==1.1.0
botocore==1.4.73
chardet==2.3.0
docutils==0.13.1
jmespath==0.9.0
multidict==2.1.4
python-dateutil==2.6.0
six==1.10.0
yarl==0.8.1
arwin XXXXXXXXX 15.6.0 Darwin Kernel Version 15.6.0: Wed Nov  2 20:30:56 PDT 2016; root:xnu-3<IP_ADDRESS>.2~2/RELEASE_X86_64 x86_64

I see that doing this makes it possible to add a route:
    request.app.router._frozen = False
    request.app.router.add_get('/foo', handle2)
    request.app.router._frozen = True

However, that feels like a hack. What's the reasoning behind freezing the routing/UrlDispatcher instance when the application is running?

what is the use case for this?

what is the use case for this?

I want to have an endpoint, say /register, where POSTing to that triggers the creation of a new route (eg. /topics/topic1) for POSTing specific topic data to.

why can't you just register the route upfront?

Because I don't know what routes will be required. I want to be able to create topic routes while the app is running in response to requests.

you can register route that can handle all possible paths and then do custom routing based on custom rules. another option is custom dispatcher.
in any case registering route at runtime is bad idea, dispatcher freezing is explicit decision and we won't revert it.

dispatcher freezing is explicit decision

Is there any documented rationale for that?

i don't think so

OK, thanks. I'll use Tornado then.

Sorry to comment on a close bug, but I just came across this while porting my application from aiohttp 0.22 to 1.2.
I have the same situation as OP: When starting the application, I used to add web-socket routes dynamically and cannot do that anymore.
If there is a reason for registering a route at run-time being a bad idea, I would also really like to know why? A mention of this in the documentation would of course also be fine.

For example, It is possibility for DOS atack


Warning when using with Ruby 2.7: "URI.escape is obsolete"

When using sidekiq-scheduler's Sidekiq Web integration with Ruby 2.7, the sidekiq-scheduler ERB template triggers warnings on two lines:
09:31:19 web.1                | (erb):37: warning: URI.escape is obsolete
09:31:19 web.1                | (erb):40: warning: URI.escape is obsolete

The referenced lines are:
https://github.com/moove-it/sidekiq-scheduler/blob/41990aafa80a0f458e988733189fbf4b07e0894a/web/views/recurring_jobs.erb#L37
https://github.com/moove-it/sidekiq-scheduler/blob/41990aafa80a0f458e988733189fbf4b07e0894a/web/views/recurring_jobs.erb#L40
In case it helps, these are the specific versions where I'm observing this behavior:
$ ruby -v
ruby 2.7.1p83 (2020-03-31 revision a0c7c23c9c) [x86_64-darwin19]

$ bundle info sidekiq-scheduler
  * sidekiq-scheduler (3.0.1)
	Summary: Light weight job scheduling extension for Sidekiq
	Homepage: https://moove-it.github.io/sidekiq-scheduler/
	Path: .rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/gems/sidekiq-scheduler-3.0.1

I'm also experiencing this when using require 'sidekiq-scheduler/web' and navigating to to /sidekiq/recurring-jobs.
From what I remember it's as simple as using CGI.escape instead of URI.escape, if anyone's up for it.

@K1N5L4Y3R This is already fixed in the latest release of sidekiq-scheduler


chore(ci): Test Node 0.x with npm 2.x

Build on Node 0.10.x using npm 2.x and on Node 4.x using npm 3.x.

Current coverage is 100.00%

Merging #30 into master will not affect coverage as of a63ebe3

@@            master     #30   diff @@
======================================
  Files            2       2
  Stmts           76      76
  Branches         0       0
  Methods          0       0
======================================
  Hit             76      76
  Partial          0       0
  Missed           0       0

Review entire Coverage Diff as of a63ebe3

Powered by Codecov. Updated on successful CI builds.


Tutorial

Make a tutorial how to setup

The setup is relatively easy, all you have to do is run /tt (or whatever you set it to in the langauge files) and you'll get the usage of the create subcommand. Follow the usage and you'll have a working map

please make a example like: /tnttag create tnttest 30 8 etc..

Check out the readme


error in analysis

Dear Sir
I trust you are fine and keeping good.
Thank you so much for your help time and again.
I am now trying to analyze a new dataset, once I uploaded the same and started the analysis and ran the code.
dataset$ tidy_dataset()
No same sample name found between rownames of sample table and colnames of otu table.
then when I checked the otu table and sample table found this difference.
However, when checking in the .csv files the x is not there Infront of the sample names.
I think the issue may be because of this we have different names.
How to manage this
Kindly please suggest
thanks and regards.
otu_table.csv
sample_info.csv

Hi. The reason is that R changes the colnames of your otu_table. Please add the parameter check.names = FALSE when you read your csv file using read.csv function. Default reading functions will add X in front of the names which are pure numbers.


Fix linux mount calls not applying propagation type changes

Propagation type changes must be done as a separate call, in the same way as read only bind mounts.
To fix this:

Ensure propagation type change flags aren't included in other calls.
Only apply read only bind mount changes once.
Make it clear which parameters are ignored by passing them as empty.
Apply propagation type change in a separate call.

Fixes #30415
Signed-off-by: Steven Hartland<EMAIL_ADDRESS>

ping @cpuguy83 @justincormack PTAL

Not sure the jenkins errors are related to this PR?
Error processing tar file(exit status 1): no such device

Can we add some tests for these, as clearly there were not sufficient ones before or it would have been noticed...

@justincormack tests added

@stevenh the tests seem to be failing...

I think there may be something kernel / OS specific about slave mount reporting as this latest version works fine here on ubuntu 16 LTS here, need to investigate more.

The underlying issue was false assumptions about the parent mounts propagation type in the test, locally its was shared on jenkins they must be private, so the resulting Optionals where unstable.
I've restructured the test to start with a source that has known flags, so hopefully it should be good now.

@justincormack this good for you now?

ping @justincormack

It looked good, will review again just to check.
On 1 Feb 2017 9:18 p.m., "Alexander Morozov"<EMAIL_ADDRESS>wrote:
ping @justincormack https://github.com/justincormack
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/docker/docker/pull/30416#issuecomment-276785103, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AAdcPOMTZyWIvQQZIRm2eJE2DCVtJMtxks5rYPaDgaJpZM4Lsl-9
.

ping @justincormack

Windows failure unrelated and passed before comments changed.


Can you provide the decoding of MP4 AVCC format?

Can you provide the decoding of MP4 AVCC format?
I'm really 'CPU is burning out'

CPU (brain) is burning out

You can play with the examples in tests folder, especially. https://github.com/larksuite/rsmpeg/blob/master/tests/decode_video.rs.

First of all, I really appreciate your reply. What I need is MP4 AVCC, DEMO is MPG and other formats. Specific reference: https://stackoverflow.com/questions/24884827/possible-locations-for-sequence-picture-parameter-sets-for -h-264-stream/24890903#24890903

It is estimated that only calling the underlying API can solve the problem


Spec for Broadcast Input

⇒ doc link ⇐
Summary of the Pull Request
This is supposed to be a quick and dirty spec to socialize the various different options for Broadcast Input mode with the team. Hopefully we can come up with a big-picture design for the feature, so we can unblock #9222.
Abstract

With a viable prototype in #9222, it's important that we have a well-defined
plan for how we want this feature to be exposed before merging that PR. This
spec is intended to be a lighter-than-usual spec to build consensus on the
design of how the actions should be expressed.

...

Fortunately: All these proposals actually use the same set of actions. So
it doesn't really matter which we pick right now. We can unblock #9222 as
the implementation of the "tab" scope, and address other scopes in the future.
We should still decide long-term which of these we'd like, but the actions seem
universal.

PR Checklist

[x] Specs: #2634
[x] References: #9222, #4998
[x] I work here

Detailed Description of the Pull Request / Additional comments
*** read the spec  ***

I might come back through here with some future considerations blatantly taken from iTerm2's issue tracker. If they've already got this feature, and have people requesting more functionality, then it's inevitable that people will ask the same of us. Maybe we should design the feature with those in mind?

From @zljubisic in #9222

Linux terminator

uses this kind of logic:
every pane can belong to a group that can have arbitrarily name. Than you can press alt+a in order to type in all panes no mether how panes are grouped. Or you can press alt+g in order to type in all panes that are in the same group as the current pane. Or you can press alt+o in order to type only in the current pane.
You can set the group with menu accessible from each pane.

For example at the picture bellow, you can see that three panes are in the same group "sboddy".

There are many terminals out there, but when linux professionals are in question many of them choose: terminator-gtk2.readthedocs.io/en/latest/grouping.html

I'm officially moving this to the drafts/ folder to clear out the PR backlog. We're not making any progress on this immediately.

Since this is a doc and has enough approvals, I'm just merging this manually.


first pass to add a contrib file

Still missing:

section about tours
section about vis
section about workflows

How does it look like? Any comments on this one?


Monster Maker Game Added

PR Description 📜
Issue number

Mark the task you have completed ✅

[ ] I follow CONTRIBUTING GUIDELINE & CODE OF CONDUCT of this project.
[ ] I have performed a self-review of my own code or work.
[ ] I have commented my code, particularly in hard-to-understand areas.
[ ] My changes generates no new warnings.
[ ] I have followed proper naming convention showed in CONTRIBUTING GUIDELINE
[ ] I have added screenshot for website preview in assets/images
[ ] I have added entries for my game in main README.md
[ ] I have added README.md in my folder
[ ] I have specified the respective issue number for which I have requested the new game.

Add your screenshots(Optional) 📸

Thank you soo much for contributing to our repository 💗

Thank you @Kalivarapubindusree ,for creating the PR and contributing to our GameZone 💗
Review team will review the PR and will reach out to you soon! 😇
Make sure that you have marked all the tasks that you are done with ✅.
Thank you for your patience! 😀

you are having multiple game source code in one PR and also you have to follow proper guidelines you have to mark your game entry in main README and also you have to add image
follow guidelines and create PR again

Thank you  @Kalivarapubindusree , for your valuable time and contribution in our GameZone 💗.
It’s our GameZone, so Let’s build this GameZone altogether !!🤝
Hoping to see you soon with another PR again 😇
Wishing you all the best for your journey into Open Source🚀

it's shows like 2 Games because I did 2 pull request and I have followed as the README.md file please let me know what i have missed and I have added the screen shot of the game as per the README.md file


libgit: register repo nodes for updates on branches

If the user only looked at a non-master branch, we were not registering with the AutogitManager to get updates for the repository's root node.  The AutogitManager already makes sure to only register with KBFS once for each TLF, so it's safe to register with the manager for each different branch.

So this was causing autogit not to receive updates on non-master branches when there wasn't also a master branch autogit that had been loaded?

Yep.


[11:15:28] Error in plugin "gulp-pug" when i do compile:all

i tried compile:all
Message:
ENOENT: no such file or directory, open '/home/linux/Documents/NR/sparrow-2.0.2-and-sparrow-1.7.1/s/src/pug/mixins/common/card.pug'
at /home/linux/Documents/NR/sparrow-2.0.2-and-sparrow-1.7.1/s/src/pug/layouts/LayoutDocumentation.pug line 3
Details:
errno: -2
syscall: open
code: ENOENT
path: /home/linux/Documents/NR/sparrow-2.0.2-and-sparrow-1.7.1/s/src/pug/mixins/common/card.pug
domainEmitter: [object Object]
domainThrown: false

Support questions should be asked on stackoverflow or gulpjs discussions.


Database notification on change

Hello! Thank you for the project! I'm locking for an embedded key-value database with notification on change (a key, for example).
Does redb have this feature?

Nope


Upgrade go-containerregistry to v0.7.0

After some battle with go mod realized upgrade of go-md2man is unavoidable and decided to try for 0.8.0 of go-containerregistry in a separate PR. Closing this out.


Allow extrapolation in interpolation

We used to allow extrapolation with interpolation. In general, I still feel it should be disallowed by default, but I think exposing a parameter extrapolate that enables it would be fine. Extrapolation with splines should be linear once the boundary is surpassed unless we implement closed interpolation, in that case, interpolation would loop back around.

Certain spines require a bit more complexity to get linear extrapolation, and may not be worth the effort here.
Our main intention was to bring back linear extrapolation. As far as splines go, if it is easy for a particular spline we may try to make extrapolation linear, but I'm not going to worry so much. I didn't want to create a super complex, do it all, spline library.  Extrapolation may be a little nonsensical for some splines, but I'm not worried about it. If we find a good, efficient way to do it in the future, we can always improve it down the road.

An example of our non-linear extrapolation, which is due to our simple clamping approach.

It actually wasn't too difficult to resolve all the issues. The problem stems from the fact that the approach that some people use attaches a few more redundant endpoints. We can do this, and generally, it works well, to properly use it, we'd have to probably adjust stop logic, easing logic, etc. This is because it adds a few more knots, but since we very much care about where our stops are, and this would throw things off, we opted for a more simplistic approach.
What we do is add one additional point on each end using the following logic: 2 * a - b  where a is the first data point and b the last (this is mirrored on the other side as well). This coherses the interpolation line through the last point, but it is not linear past the endpoints as seen in the previous post.
To fix this, we can actually just add a final data set for extrapolating past the endpoints by using [c0, c0, c0, c1] and mirroring it with [c-2, c-1, c-1, c-1]. The slope and everything match perfectly.

The above image shows us using B-spline, but with an interpolation past the extents, slopes perfectly matching. What's significant about this is we are using an Interpolation B-spline, but with only 3 points. The algorithm required a minimum of four, while not quite explaining what to do if you only have three. As shown above, I think we figured it out. That was the last hurdle.
It's a small thing, but I really wanted them all to compute linearly and join properly at the endpoints. It really doesn't add much computing either as we simply just store away the extrapolating data that is already present, and then use it when we exceed the boundary conditions.


Update Dockefile.arm32v7 for #26

Update Dockerfile to use newer balena repo over deprecated resin

@toolboc The dockerfile now uses the official python base image. I'm going to close this PR. Thank you very much for the contribution.


Module MultiMissileLauncher issues

Hi.
Basically, SMI Armory/Mod adds ballistic missiles, such as the Bulava missile, it has two variants, standard and cluster.
I am trying to modify the cluster munition to work like a multiMissileLauncher as BDArmory has done so elsewhere (a GPS guided missile that deploys submunitions that are radar guided themselves).
So I cloned the original bulava cluster missile, then added that respective module to it, and referenced an existing warhead (thermonuclear MIRV / thermoMIRV).
The game would then crash on trying to load the part out in SPH.
So, I discovered that the ClusterBomb module was the root of this issue. I removed it.
Now I can spawn the cloned/modified missile into the game, but it lacks an attachment node, which is weird because the node configuration is identical to the original file. It throws this error:
[EXC 22:47:03.426] NullReferenceException: Object reference not set to an instance of an object
BDArmory.Weapons.Missiles.MultiMissileLauncher.MakeMissileArray () (at :0)
BDArmory.Weapons.Missiles.MultiMissileLauncher.Start () (at :0)
UnityEngine.DebugLogHandler:LogException(Exception, Object)
ModuleManager.UnityLogHandle.InterceptLogHandler:LogException(Exception, Object)
UnityEngine.Debug:CallOverridenDebugHandler(Exception, Object)
This is the code in the part file for the cloned Bulava missile.
As you can see I have referenced the thermoMirv part from the NKD mod.
MODULE
{
name = MultiMissileLauncher
launchTransformName = rotationTransform
subMunitionName = thermoMIRV // Reference the existing MIRV part
subMunitionPath = NKD/parts/Thermonuclear MIRV/model // Adjust path if necessary
salvoSize = 8 // Number of submunitions to deploy per fire command
isClusterMissile = true // Defines it as a cluster missile
isMultiLauncher = false
useSymCounterpart = false
overrideReferenceTransform = true
tntMass = 1
offset = 1
rippleRPM = 10000
}
I don't know what the issue here is. Can you explain it for me?
Is there a way to make custom multiMissileLaunchers? If so, what am I doing wrong here?

The code for MakeMissileArray where the NullReferenceException (NRE) happened is at https://github.com/BrettRyland/BDArmory/blob/master/BDArmory/Weapons/Missiles/MultiMissileLauncher.cs#L634.
There are only a couple of points in that code that could cause such an exception.

The first (and most likely) is if launchTransformName doesn't match the launch transform in the model, which would cause this exception on the line

int missileNum = launchTransform.childCount;

since launchTransform would be null in that case.
2. The second is if that transform doesn't have the correct number of child transforms, then the line
string launcherName = launchTransform.GetChild(i).name;

will fail (though according to Unity documentation, it should give a different kind of exception, so it shouldn't be this). Looking at the way this is set up, those child transforms also have to be labelled in a specific way in the model for them to be assigned correctly in the code, i.e., they must be 7-character strings followed by an index (starting at 1), e.g., the BDA-E cluster missile uses missile1, ..., missile8.

Thanks!
I had to revise the model in blender to incorporate the "rails" transforms, and name/number them accordingly.
I still am running into a few issues. I don't know how to get the warheads to deploy at say 50km. The missile will hit the ground and bounce off, while not releasing the MIRVS.
I just want to know is it possible for the submunitions to GPS guide themselves to the GPS target originally set for the parent missile? Are submunitions detectable on radar and interceptable by a SAM in guard mode? Can sub munitions have nuke modules to detonate in a nuclear fashion?
Parent Missile:
`PART
{
// General parameters
name = BulavaMIRV-N
module = Part
author = CustomAuthor
// Asset parameters
MODEL
{
    model = SMI_MissilesLaunchers/Parts/BulavaSLBM/bulavaN // Adjust path if necessary
    scale = 1.0, 1.0, 1.0
}
rescaleFactor = 1
buoyancy = 1
NODE
{
	name = Node1
	transform = Node1
	size = 0
	method = FIXED_JOINT
}
// Editor parameters
TechRequired = precisionEngineering
entryCost = 12100
cost = 50000
category = none
subcategory = 0
title = Modified Bulava Missile with MIRV Submunitions
manufacturer = Custom Armory
description = A modified Bulava missile designed to deploy multiple MIRV submunitions guided by GPS coordinates at high altitude.
attachRules = 1,0,0,0,0

// Standard part parameters
mass = 4
dragModelType = default
maximum_drag = 0.1
minimum_drag = 0.1
angularDrag = 2
crashTolerance = 5
maxTemp = 5600

// Missile Launcher Module
MODULE
{
    name = MissileLauncher
    shortName = BSLCBM-N-MIRV
    thrust = 600
    cruiseThrust = 300
    dropTime = 0.05
    boostTime = 20.0
    cruiseTime = 1440
    guidanceActive = true
    maxTurnRateDPS = 28
    BallisticAngle = 45
    DetonateAtMinimumDistance = True
    decoupleSpeed = 8
    decoupleForward = true
    optimumAirspeed = 900
missileType = missile
    homingType = AGMBallistic
    targetingType = gps
    rotationTransformName = rotationTransform
    maxAoA = 25
    aero = true
    liftArea = 0.5
    steerMult = 150
    maxTorque = 1000
    terminalGuidanceType = radar
    terminalGuidanceDistance = 10000
    activeRadarRange = 9000
    maxOffBoresight = 100
    lockedSensorFOV = 6
    radarLOAL = true
    BallisticOverShootFactor = 0.5
    boosterMass = 1.25
    boosterDecoupleSpeed = 7
    decoupleBoosters = true
    boostTransformName = BoosterTransform
    boostExhaustTransformName = boostTransform
    exhaustPrefabPath = BDArmory/Models/exhaust/smallExhaust
    boostExhaustPrefabPath = BDArmory/Models/exhaust/largeExhaust
    audioClipPath = BDArmory/Sounds/rocketLoop
    boostClipPath = BDArmory/Sounds/rocketLoop
    minStaticLaunchRange = 10000
    maxStaticLaunchRange = 100000
    engageAir = false
    engageMissile = false
    engageGround = true
    engageSLW = false
}

// Multi Missile Launcher Module for Deploying Submunitions
MODULE
{
    name = MultiMissileLauncher
    launchTransformName = rails // Specify your transform name if applicable
    subMunitionName = thermoMIRVsub // Reference the existing MIRV part
    subMunitionPath = NKD/parts/Thermonuclear MIRV/mirvscaled // Adjust path if necessary
    salvoSize = 28 // Number of submunitions to deploy per fire command
    isClusterMissile = true // Defines it as a cluster missile
    isMultiLauncher = false
    useSymCounterpart = false
    overrideReferenceTransform = true
    tntMass = 475000000
    offset = 0
    rippleRPM = 10000
}

}
ThermoMirv (Sub Munition)PART
{
// General parameters
name = thermoMIRVsub
module = Part
author = Harpwner (modified by CustomAuthor)
// Asset parameters
mesh = mirvscaled.mu // This should be the correct path and file name for your scaled model
rescaleFactor = 1 // Assuming the model was already scaled in Blender

// Node definitions removed to hide the part and avoid attachment issues
// (comment out if not needed)

// Editor parameters
TechRequired = Unresearcheable
TechHidden = True
entryCost = 0
cost = 0
category = none
subcategory = 0
title = Hidden ThermoMIRV Scaled
manufacturer = North Kerbin Dynamics (modified)
description = A hidden version of the ThermoNuclear MIRV scaled for use in clusters.

// Attachment rules (kept hidden for submunition behavior)
attachRules = 1,1,0,0,0

// Standard part parameters
mass = 0.35 // Adjusted for scaled mass if necessary
dragModelType = default
maximum_drag = 0.01
minimum_drag = 0.01
angularDrag = 1
crashTolerance = 5
maxTemp = 3600 // Adjusted maxTemp if required

// Missile Launcher Module
MODULE
{
    name = MissileLauncher

    shortName = ScaledThermoMIRV

    thrust = 0 // Adjusted based on scaling
    cruiseThrust = 0
    dropTime = 1
    boostTime = 0
    cruiseTime = 80
    guidanceActive = true
    blastRadius = 70000 // Original value retained
    blastPower = 70000 // Original value retained
    maxTurnRateDPS = 15

    missileType = bomb
    targetingType = gps
    homingType = AGMBallistic
    optimumAirspeed = 1000

    aero = true
    liftArea = 0.02 // Adjusted for scaling
    steerMult = 0.2 // Adjusted for scaling
    maxTorque = 45 // Adjusted for scaling
}

// BDExplosivePart and other modules retained with original values
MODULE
{
    name = BDExplosivePart
    tntMass = 475000000 // Original value retained
    explModelPath = NKD/effects/Explosion_Megaton
    explSoundPath = BDArmory/Sounds/explode1
}

MODULE
{
    name = BDModuleNuke
    thermalRadius = 4000 // Original value retained
    yield = 2500 // Original value retained
    fluence = 5.0 // Original value retained
    isEMP = true
    reportingName = Scaled Warhead
    flashModelPath = BDArmory/Models/explosion/nuke/nukeFlash
    shockModelPath = BDArmory/Models/explosion/nuke/nukeShock
    blastModelPath = BDArmory/Models/explosion/nuke/nukeBlast
    plumeModelPath = BDArmory/Models/explosion/nuke/nukePlume
    debrisModelPath = BDArmory/Models/explosion/nuke/nukeScatter
    blastSoundPath = BDArmory/Models/explosion/nuke/nukeBoom
}

MODULE
{
    name = ModuleShockwave
    explosiveYield =<PHONE_NUMBER>0 // Original value retained
    particleSize = 500 // Original value retained
}

MODULE
{
    name = BDACategoryModule
}

}
`

Sorry for all the responses, I thought it would better organize the materials.
Here is a module the original bulava missile (parent) had:
	MODULE
	{
		name = ClusterBomb
		deployAltitude = 50000
		deployDelay = 1
		submunitionMaxSpeed = 1200
		swapCollidersOnDeploy = true
		subExplModelPath = BDArmory/Models/explosion/explosion
		subExplSoundPath = BDArmory/Sounds/subExplode
	}

This worked succesfully, but I could not emulate the nuclear effects of the sub munitions deployed, and I can't keep this module in there with MultiMissileLauncher, or else the game will crash. But, when this module was there, the fairings would deploy and the submunitions would release.

Ok. ClusterBomb and MultiMissilelauncher aren't really compatible.
Clusterbomb will take a number of child sub-models and eject them as submunitions, which will deploy at the set altitude and faull, unguided, to detonate on impact with something in a standard HE explosion; they do not have EMP/shapedCharge/Nuclear support.
MultiMissileLauncher will spawn one submunition per launchTransform present on the model, no need for a child mesh present on the model; submunition scale is set by whatever the scale of the submunition is (in terms of unity export) and the rescaleFactor = x.x value in the .cfg. MML submunitions are fully actualized 'missiles' in their own right, and capable of guiding themselves to a target using a specified guidance type and mode, and support standard/rod/shaped/emp/custom/nuke warheads.
MML fairing deploy requires tha the fairings on the parent missile have transforms named "fairing"; they will eject automatically on submunition launch. Submunition launchtransforms also need to be named 'missile1', 'missile2', etc, not missile1A.
You also shouldn't have both a BDExposivePart module and a BDModuleNuke module, you only need the latter, though your thermalRadius = 4000 will limit that 2.5mT warhead to a 4km blastradius

Hi SuicidalInsanity,
Thank you for your valuable feedback!
With your suggestions, I restructured the model and correctly implemented the clusterMissileTriggerDist code. However, after testing, I encountered two additional issues that have not been addressed. Even after fixing them, the original problem persists. I wanted to share my findings and tests to get more insight from you.
Issues Encountered:
Bulava Missile:
Part CFG: I realized I hadn't declared fairingTransformName = fairing, which I’ve now corrected.
Model: I noticed that I also didn’t have a missileTransform, which I identified after examining the source code.
After successfully implementing these changes, the problem was not resolved. To further investigate, I decided to modify the original ClusterMissile to test if my approach could be theoretically accomplished.
Testing with the ClusterMissile:

I modified the ClusterMissile from AAM/Radar to AGMBallistic/GPS.
I also updated the missile (submunition) to support AGMBallistic/GPS and added the nuclear module.
I test-fired it with both a terrain GPS target and a vessel GPS target.
Results:
Against Terrain: Submunitions were not released, even when the GPS target was valid.
Against Vessel: Submunitions were successfully released, and the nuclear module (along with its effects and explosion) was triggered as expected.

I’m still trying to understand:

Why my fairings won't deploy, and why the submunitions aren't released, instead of which parent Bulava duplicates.
Why the submunitions don't release when targeting terrain, but they work fine when targeting a vessel.

I look forward to hearing your thoughts on this and whether I might have missed any necessary steps.
Thanks in advance for your help!
Screenshots:

@SuicidalInsanity @BrettRyland Happy holidays, I just wanted to follow up on this.
Any advice on how to solve the issue of the recursively duplicating (up till salvo size) parent missile? I just can't seem to get it to deploy fairings, and spawn/fire the submunitions. I did modify the ClusterMissile.cfg and the Missile.cfg, converting them to AGM ballistic/GPS and the missile.cfg to a nuclear warhead/module. This worked successfully. So I know my theory of emulating this can work practically. I think my issue lies in the blender structure, model design, or some hidden scripting?
Here is what works about my Bulava missile.

Missile loads into game with dummy warheads/submunitions spawned onto "rails" transforms as intended.
Missile loads onto craft, with no issues.
Missile appears in Weapon Manager.
Missile can be tasked GPS coordinates and fired appropriately.
Missile flies and jettisons the booster stage nominally.
Missile honors ballistic flight path (despite any launch distance).
Missile will make the "trigger" sound at the trigger distance (if a vessel is on the GPS point - otherwise will not trigger).
Missile duplicates itself recursively to salvo size integer, does not deploy fairings, and does not deploy submunitions.
These "clones" will fly in random distances, and self-terminate in a small micro explosion.

What I have tried (to no avail):

Incorporated fairingTransform = fairing.

Incorporated a missileTransform (mimicking the ClusterMissile model)

reconsolidated model hierarchies to be more like ClusterMissile

Redesigned fairings to be less complicated

Removed booster stage collider, and maintained only upper stage collider.

Renamed transforms to mimic the ClusterMissile.

Reduced submunition spawn transforms and salvo count from 28 to 8 (more manageable for testing).

Set offset to 20 meters to try to get warheads to spawn outside of the fairings.

Replaced submunitions with Missile submunitions (from ClusterMissile). - Still clones/spawns parent missile instead.

Reconfigured ClusterMissile and Missile to be AGMballistic + GPS, with missile carrying a nuke module/warhead. - Works

I'm bamboozled, and I can't figure out a fix for this. Neither can any other experienced modders, or AI help.
Would sincerely appreciate a response, I'm very excited to get this working or to move on.


Sort posts by alternative date results in error

Hi, I'm building a music blog with paginated pages that lists albums by album release date instead of blog post date, the only problem is I get an error when trying to sort by any frontmatter date that isn't it's built-in date:. All other sort_field values work fine.
for example
The file named
2017-05-05-bibio_fix-this-thang.md
Has the Frontmatter
---
published: true
release_date: 2015-05-05
---

When in the config.yml I set the sort to sort_field: 'release_date' I get this error in the console:
jekyll 3.5.2 | Error:  comparison of Jekyll::Document with Jekyll::Document failed

Which version of the paginate-v2 gem are you using?

I will have to take a look at this better as it sounds like it might be a regression bug for an older issue. Give me a few days to find time to investigate. :)

I think I found the problem, some of the posts had a timestamp as well as the date, when I removed them (eg 2015-05-05 16:16:01). Not sure if this is expected behaviour or a bug.

Ah, great thanks for updating me on this issue. If removing the timestamp solved the ettor then this is most definitely a bug as I had intended for time to be supported as well. I will have a look and fix :)

Hi! It looks like the comparison fails when comparing a Time and Date...
a.inspect=2017-11-29 23:41:16 +0800
a.class=Time

b.inspect=#<Date: 2017-11-30 ((2458088j,0s,0n),+0s,2299161j)>
b.class=Date

Hi @MattGreyDesign ... Does the fix work for you?

@sverrirs Maybe this should be closed now..?

@ibrado I will test it when I can


cannot build scipy (0.18.1) on AIX (xlc_r, xlC_r and xlf)

Environment:
AIX 6.1, xlc v11, xlf v15
python 2.7.12
lapack 3.6.1 (static)
-- pip list --
Cython (0.24.1)
numpy (1.11.2)
pandas (0.19.0)
pip (8.1.1)
python-dateutil (2.5.3)
pytz (2016.7)
setuptools (20.10.1)
six (1.10.0)
scipy-0.18.1
python setup.py build
Question: what changes the symbol so that an extra _ is expected (e.g., a #define macro somewhere)?
Currently ends with:
/opt/lib/python2.7/config/ld_so_aix /opt/IBM/xlf/15.1.2/bin/xlf95 -bI:/opt/lib/python2.7/config/python.exp -bshared -F/tmp/tmp4qpCeS/2QOsK5_xlf.cfg build/temp.aix-6.1-2.7/scipy/cluster/vq.o -L/usr/lib -Lbuild/temp.aix-6.1-2.7 -llapack -llapack -lblas -lblas -o build/lib.aix-6.1-2.7/scipy/cluster/vq.so
ld: 0711-317 ERROR: Undefined symbol: .sgemm
ld: 0711-317 ERROR: Undefined symbol: .dgemm
ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information.
ld: 0711-317 ERROR: Undefined symbol: .sgemm_
ld: 0711-317 ERROR: Undefined symbol: .dgemm_
ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information.
error: Command "/opt/lib/python2.7/config/ld_so_aix /opt/IBM/xlf/15.1.2/bin/xlf95 -bI:/opt/lib/python2.7/config/python.exp -bshared -F/tmp/tmp4qpCeS/2QOsK5_xlf.cfg build/temp.aix-6.1-2.7/scipy/cluster/_vq.o -L/usr/lib -Lbuild/temp.aix-6.1-2.7 -llapack -llapack -lblas -lblas -o build/lib.aix-6.1-2.7/scipy/cluster/_vq.so" failed with exit status 8
both .sgemm and .dgemm are defined in /usr/lib/libblas.a (but not as .sgemm_ and .dgemm_)
root@x065:[/data/prj/python/pipbuilds/scipy-0.18.1]nm -Ae /usr/lib/libblas* | grep -E " .[sd]gemm" | grep -v " U "
/usr/lib/libblas.a[dgemm_64.o]: .dgemm               T           0
/usr/lib/libblas.a[dgemmU_64.o]: _dgemm               D        1336          24
/usr/lib/libblas.a[dgemmU_64.o]: _dgemm               d        1312           8
/usr/lib/libblas.a[sgemm_64.o]: .sgemm               T           0
/usr/lib/libblas.a[sgemmU_64.o]: _sgemm               D        1344          24
/usr/lib/libblas.a[sgemmU_64.o]: _sgemm               d        1312           8
FYI: this is a 64-bit build for all modules!
Had it been 32-bit the 'linking' would have been the same:
root@x065:[/data/prj/python/pipbuilds/scipy-0.18.1]nm -X32 -Ae /usr/lib/libblas* | grep -E " .[sd]gemm" | grep -v " U "
/usr/lib/libblas.a[dgemm.o]: .dgemm               T           0
/usr/lib/libblas.a[dgemmU.o]: _dgemm               D        1260          12
/usr/lib/libblas.a[dgemmU.o]: _dgemm               d        1248           4
/usr/lib/libblas.a[sgemm.o]: .sgemm               T           0
/usr/lib/libblas.a[sgemmU.o]: _sgemm               D        1264          12
/usr/lib/libblas.a[sgemmU.o]: _sgemm               d        1248           4

scipy.cluster has some special handling for sgemmanddgemminscipy/cluster/cluster_blas.*. That is from before the introduction of Cython bindings in scipy.linalg. Can you check if that is the only issue by just removing the cluster package and the line config.add_subpackage('cluster')inscipy.setup.py? If it is, we can fix that. But it could also be that it's just the first BLAS usage you're hitting and the linalg`` build also won't work.

Rebuilt test system to try again...
a) after install of AIX and install of python, plus numpy
need to add
'CXX': 'xlC_r',
to
$prefix/lib/python2.7/.sysconfigdata.py
This is just something for "google" to find - for this error message:
File "/opt/lib/python2.7/site-packages/numpy/distutils/ccompiler.py", line 516, in CCompiler_cxx_compiler
cxx.compiler_so = [cxx.compiler_cxx[0]] + cxx.compiler_so[1:]
Also, I think it was for scipy, I also had to build the libraries /usr/lib/liblapack.a and /usr/lib/libtmglib.a (i.e., an lapack dependency needed to be resolved) - as these (on my system) are static libraries - they will never show as a dependency that needs to be installed.
With "cluster" removed as you suggest - this is as far as we get:
building 'scipy.integrate._quadpack' extension
compiling C sources
C compiler: xlc_r -I/opt/include -O3 -qmaxmem=-1 -qarch=pwr5 -q64 -I/opt/buildaix/includes -DNDEBUG
compile options: '-DNO_ATLAS_INFO=1 -I/opt/lib/python2.7/site-packages/numpy/core/include -I/opt/include/python2.7 -c'
xlc_r: scipy/integrate/_quadpackmodule.c
"scipy/integrate/quadpack.h", line 69.12: 1506-1332 (W) A function with return type "double()(double)" may not return a value of type "void".
"scipy/integrate/quadpack.h", line 112.20: 1506-068 (W) Operation between types "void*" and "double()(double)" is not allowed.
"scipy/integrate/quadpack.h", line 113.20: 1506-068 (W) Operation between types "void" and "double()(double)" is not allowed.
"scipy/integrate/quadpack.h", line 116.30: 1506-068 (W) Operation between types "double()(double)" and "void*" is not allowed.
"scipy/integrate/quadpack.h", line 122.30: 1506-068 (W) Operation between types "double()(double)" and "void" is not allowed.
"scipy/integrate/quadpack.h", line 160.20: 1506-068 (W) Operation between types "void*" and "double()(int,double)" is not allowed.
"scipy/integrate/quadpack.h", line 162.16: 1506-068 (W) Operation between types "struct _object*" and "double*" is not allowed.
"scipy/integrate/quadpack.h", line 165.26: 1506-068 (W) Operation between types "double()(int,double)" and "double()(double)" is not allowed.
"scipy/integrate/quadpack.h", line 197.21: 1506-068 (W) Operation between types "double()(int,double*)" and "void*" is not allowed.
"scipy/integrate/quadpack.h", line 199.17: 1506-068 (W) Operation between types "double*" and "struct _object*" is not allowed.
/opt/lib/python2.7/config/ld_so_aix /opt/IBM/xlf/15.1.2/bin/xlf95 -bI:/opt/lib/python2.7/config/python.exp -bshared -F/tmp/tmpiFeREG/9nU7PW_xlf.cfg build/temp.aix-6.1-2.7/scipy/integrate/quadpackmodule.o -L/usr/lib -Lbuild/temp.aix-6.1-2.7 -lquadpack -lmach -llapack -llapack -lblas -lblas -o build/lib.aix-6.1-2.7/scipy/integrate/quadpack.so
ld: 0711-317 ERROR: Undefined symbol: .dgtsv
ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information.
ld: 0711-317 ERROR: Undefined symbol: .dgtsv
ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information.
error: Command "/opt/lib/python2.7/config/ld_so_aix /opt/IBM/xlf/15.1.2/bin/xlf95 -bI:/opt/lib/python2.7/config/python.exp -bshared -F/tmp/tmpiFeREG/9nU7PW_xlf.cfg build/temp.aix-6.1-2.7/scipy/integrate/_quadpackmodule.o -L/usr/lib -Lbuild/temp.aix-6.1-2.7 -lquadpack -lmach -llapack -llapack -lblas -lblas -o build/lib.aix-6.1-2.7/scipy/integrate/_quadpack.so" failed with exit status 8
root@x065:[/data/prj/python/pipbuilds/scipy-0.18.1]
With -bnoquiet added the messages end with:
ld: 0711-318 ERROR: Undefined symbols were found.
The following symbols are in error:
Symbol                    Inpndx  TY CL Source-File(Object-File) OR Import-File{Shared-object}
RLD: Address  Section  Rld-type Referencing Symbol
.dgtsv_                   [42]    ER PR scipy/integrate/quadpack/dqc25f.f(build/temp.aix-6.1-2.7/libquadpack.a[dqc25f.o])
00000d3c .text    R_RBR    [6]     .dqc25f_
00001750 .text    R_RBR    [6]     .dqc25f_
ER: The return code is 8.
FYI: there are also many "warning" messages about mismatched pointer types, etc., but shall worry about those when it finally get so far that "check" can be run.
nm -X64 -Ae /usr/lib/libblas* | grep -E "dgtsv"
returns nothing...

After review - this issue does not seem to be related to numpy #8173 - and should remain open.
I shall use some different flags to provide more detailed compiler output (source file with messages inserted). If I can find a solution on my own I shall post that, otherwise your assistance will be appreciated.

Have to rebuild a test system with all compilers. Will verify status of building scipy when I do.

@aixtools thanks. You may want to use latest master, I just merged gh-11139 which may have fixed this issue.

Will do.

Will see about rebuilding test system today. This is a module that will make an excellent wheel, once all the bits needed get merged into CPython and pypa!

That sounds good! Is there a standard AIX wheelhouse? I don't think AIX wheels can go on PyPI.

a) replied by email. short answer: wheels do not exist (yet) for AIX. Ongoing project to get them available (for all).
b) did not download master - instead tried pip download scipy and ran into other issues - that I'll start looking into:
Testing with AIX 7.1 and Python3.9 (a1); xlcv16 and xlf15 (but not gotten to needing xlf yet).
root@x069:[/python]pip3 download scipy
Collecting scipy
  Downloading https://files.pythonhosted.org/packages/a7/5c/495190b8c7cc71977c3d3fafe788d99d43eeb4740ac56856095df6a23fbd/scipy-1.3.3.tar.gz (23.8MB)
     |################################| 23.8MB 20kB/s
  Saved ./scipy-1.3.3.tar.gz
  Installing build dependencies ... error
  ERROR: Command errored out with exit status 1:
   command: /opt/bin/python3.9 /opt/lib/python3.9/site-packages/pip install --ignore-installed --no-user --prefix /tmp/pip-build-env-6p45kpel/overlay --no-warn-script-location --no-binary :none: --only-binary :none: -i https://pypi.org/simple -- wheel setuptools 'Cython>=0.29.13' 'numpy==1.13.3; python_version=='"'"'3.5'"'"' and platform_system!='"'"'AIX'"'"'' 'numpy==1.13.3; python_version=='"'"'3.6'"'"' and platform_system!='"'"'AIX'"'"'' 'numpy==1.14.5; python_version=='"'"'3.7'"'"' and platform_system!='"'"'AIX'"'"'' 'numpy==1.17.3; python_version>='"'"'3.8'"'"' and platform_system!='"'"'AIX'"'"'' 'numpy==1.16.0; python_version=='"'"'3.5'"'"' and platform_system=='"'"'AIX'"'"'' 'numpy==1.16.0; python_version=='"'"'3.6'"'"' and platform_system=='"'"'AIX'"'"'' 'numpy==1.16.0; python_version=='"'"'3.7'"'"' and platform_system=='"'"'AIX'"'"'' 'numpy==1.17.3; python_version>='"'"'3.8'"'"' and platform_system=='"'"'AIX'"'"''
       cwd: None
  Complete output (64 lines):
  Ignoring numpy: markers 'python_version == "3.5" and platform_system != "AIX"' don't match your environment
  Ignoring numpy: markers 'python_version == "3.6" and platform_system != "AIX"' don't match your environment
  Ignoring numpy: markers 'python_version == "3.7" and platform_system != "AIX"' don't match your environment
  Ignoring numpy: markers 'python_version >= "3.8" and platform_system != "AIX"' don't match your environment
  Ignoring numpy: markers 'python_version == "3.5" and platform_system == "AIX"' don't match your environment
  Ignoring numpy: markers 'python_version == "3.6" and platform_system == "AIX"' don't match your environment
  Ignoring numpy: markers 'python_version == "3.7" and platform_system == "AIX"' don't match your environment
  Collecting wheel
    Downloading https://files.pythonhosted.org/packages/00/83/b4a77d044e78ad1a45610eb88f745be2fd2c6d658f9798a15e384b7d57c9/wheel-0.33.6-py2.py3-none-any.whl
  Collecting setuptools
    Downloading https://files.pythonhosted.org/packages/54/28/c45d8b54c1339f9644b87663945e54a8503cfef59cf0f65b3ff5dd17cf64/setuptools-42.0.2-py2.py3-none-any.whl (583kB)
  Collecting Cython>=0.29.13
    Downloading https://files.pythonhosted.org/packages/9c/9b/706dac7338c2860cd063a28cdbf5e9670995eaea408abbf2e88ba070d90d/Cython-0.29.14.tar.gz (2.1MB)
      ERROR: Command errored out with exit status 1:
       command: /opt/bin/python3.9 -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-5uhkkyuz/Cython/setup.py'"'"'; __file__='"'"'/tmp/pip-install-5uhkkyuz/Cython/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base pip-egg-info
           cwd: /tmp/pip-install-5uhkkyuz/Cython/
      Complete output (43 lines):
      running egg_info
      creating pip-egg-info/Cython.egg-info
      writing pip-egg-info/Cython.egg-info/PKG-INFO
      writing dependency_links to pip-egg-info/Cython.egg-info/dependency_links.txt
      writing entry points to pip-egg-info/Cython.egg-info/entry_points.txt
      writing top-level names to pip-egg-info/Cython.egg-info/top_level.txt
      writing manifest file 'pip-egg-info/Cython.egg-info/SOURCES.txt'
      Unable to find pgen, not compiling formal grammar.
      Traceback (most recent call last):
        File "<string>", line 1, in <module>
        File "/tmp/pip-install-5uhkkyuz/Cython/setup.py", line 228, in <module>
          setup(
        File "/opt/lib/python3.9/site-packages/setuptools/__init__.py", line 145, in setup
          return distutils.core.setup(**attrs)
        File "/opt/lib/python3.9/distutils/core.py", line 148, in setup
          dist.run_commands()
        File "/opt/lib/python3.9/distutils/dist.py", line 966, in run_commands
          self.run_command(cmd)
        File "/opt/lib/python3.9/distutils/dist.py", line 985, in run_command
          cmd_obj.run()
        File "/opt/lib/python3.9/site-packages/setuptools/command/egg_info.py", line 296, in run
          self.find_sources()
        File "/opt/lib/python3.9/site-packages/setuptools/command/egg_info.py", line 303, in find_sources
          mm.run()
        File "/opt/lib/python3.9/site-packages/setuptools/command/egg_info.py", line 534, in run
          self.add_defaults()
        File "/opt/lib/python3.9/site-packages/setuptools/command/egg_info.py", line 570, in add_defaults
          sdist.add_defaults(self)
        File "/opt/lib/python3.9/distutils/command/sdist.py", line 228, in add_defaults
          self._add_defaults_ext()
        File "/opt/lib/python3.9/distutils/command/sdist.py", line 311, in _add_defaults_ext
          build_ext = self.get_finalized_command('build_ext')
        File "/opt/lib/python3.9/distutils/cmd.py", line 299, in get_finalized_command
          cmd_obj.ensure_finalized()
        File "/opt/lib/python3.9/distutils/cmd.py", line 107, in ensure_finalized
          self.finalize_options()
        File "/tmp/pip-install-5uhkkyuz/Cython/Cython/Distutils/build_ext.py", line 20, in finalize_options
          self.distribution.ext_modules[:] = cythonize(
        File "/tmp/pip-install-5uhkkyuz/Cython/Cython/Build/Dependencies.py", line 959, in cythonize
          module_list, module_metadata = create_extension_list(
        File "/tmp/pip-install-5uhkkyuz/Cython/Cython/Build/Dependencies.py", line 752, in create_extension_list
          elif isinstance(patterns, basestring) or not isinstance(patterns, collections.Iterable):
      AttributeError: module 'collections' has no attribute 'Iterable'
      ----------------------------------------
  ERROR: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.
  WARNING: You are using pip version 19.2.3, however version 19.3.1 is available.
  You should consider upgrading via the 'pip install --upgrade pip' command.
  ----------------------------------------
ERROR: Command errored out with exit status 1: /opt/bin/python3.9 /opt/lib/python3.9/site-packages/pip install --ignore-installed --no-user --prefix /tmp/pip-build-env-6p45kpel/overlay --no-warn-script-location --no-binary :none: --only-binary :none: -i https://pypi.org/simple -- wheel setuptools 'Cython>=0.29.13' 'numpy==1.13.3; python_version=='"'"'3.5'"'"' and platform_system!='"'"'AIX'"'"'' 'numpy==1.13.3; python_version=='"'"'3.6'"'"' and platform_system!='"'"'AIX'"'"'' 'numpy==1.14.5; python_version=='"'"'3.7'"'"' and platform_system!='"'"'AIX'"'"'' 'numpy==1.17.3; python_version>='"'"'3.8'"'"' and platform_system!='"'"'AIX'"'"'' 'numpy==1.16.0; python_version=='"'"'3.5'"'"' and platform_system=='"'"'AIX'"'"'' 'numpy==1.16.0; python_version=='"'"'3.6'"'"' and platform_system=='"'"'AIX'"'"'' 'numpy==1.16.0; python_version=='"'"'3.7'"'"' and platform_system=='"'"'AIX'"'"'' 'numpy==1.17.3; python_version>='"'"'3.8'"'"' and platform_system=='"'"'AIX'"'"'' Check the logs for full command output.
WARNING: You are using pip version 19.2.3, however version 19.3.1 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
root@x069:[/python]

Update: almost... will try with "master" tomorrow. But looks like something with numpy now (sigh)
with scipy-1.3.3 got as far as:
creating /tmp/tmpo0yudqk9/tmp/tmpo0yudqk9
compile options: '-MMD -MF /tmp/tmpo0yudqk9/file.c.d -c'
xlc_r: /tmp/tmpo0yudqk9/file.c
/opt/IBM/xlC/16.1.0/bin/.orig/xlc_r: 1501-208 (S) command option D is missing a subargument
customize UnixCCompiler using build_ext
Traceback (most recent call last):
  File "/python/scipy-1.3.3/./setup.py", line 505, in <module>
    setup_package()
  File "/python/scipy-1.3.3/./setup.py", line 501, in setup_package
    setup(**metadata)
  File "/opt/lib/python3.9/site-packages/numpy/distutils/core.py", line 171, in setup
    return old_setup(**new_attr)
  File "/opt/lib/python3.9/site-packages/setuptools/__init__.py", line 145, in setup
    return distutils.core.setup(**attrs)
  File "/opt/lib/python3.9/distutils/core.py", line 148, in setup
    dist.run_commands()
  File "/opt/lib/python3.9/distutils/dist.py", line 966, in run_commands
    self.run_command(cmd)
  File "/opt/lib/python3.9/distutils/dist.py", line 985, in run_command
    cmd_obj.run()
  File "/opt/lib/python3.9/site-packages/numpy/distutils/command/build.py", line 47, in run
    old_build.run(self)
  File "/opt/lib/python3.9/distutils/command/build.py", line 135, in run
    self.run_command(cmd_name)
  File "/opt/lib/python3.9/distutils/cmd.py", line 313, in run_command
    self.distribution.run_command(command)
  File "/opt/lib/python3.9/distutils/dist.py", line 985, in run_command
    cmd_obj.run()
  File "/opt/lib/python3.9/site-packages/numpy/distutils/command/build_ext.py", line 210, in run
    self._cxx_compiler = compiler.cxx_compiler()
  File "/opt/lib/python3.9/site-packages/numpy/distutils/ccompiler.py", line 92, in <lambda>
    m = lambda self, *args, **kw: func(self, *args, **kw)
  File "/opt/lib/python3.9/site-packages/numpy/distutils/ccompiler.py", line 685, in CCompiler_cxx_compiler
    cxx.compiler_so = [cxx.compiler_cxx[0]] + cxx.compiler_so[1:]
IndexError: list index out of range

That's new, could be a distutils or numpy.distutils thing.
We got the feedback from IBM that they care much more about GCC, so I don't think many people test with XLC anymore.

This depends on who you talk to is my experience.
GCC is a great compiler, but it also requires a run/time environment
that is not native to AIX. And that additional run/time environment is
not as dedicated to being ABI compatible as the environment provided by
IBM AIX. So, while using GCC as a developer makes life easy / it makes
life miserable for the admin who is responsible for maintaining security
and OSS updates with packagers using different versions of gcc, over
time, and-or because there are multiple packages being maintained by
multiple people, each who use, for various reasons, a different version
of gcc.
For stability - xlc is still my preferred compiler. Packages that can
only be compiled by gcc (i.e., not by xlc) are packages I tend to
backlist. I would have to create a special system administration policy
to support it.
On 12/11/2019 2:58 AM, Ralf Gommers wrote:

That's new, could be a |distutils| or |numpy.distutils| thing.

I'll try again this evening: with Python-3.7.5 (will fix the hiccup with
Cython, and make sure xlC is installed, in the hopes that CXX will be
filled in by the build process. I tried removing and then rebuilding
numpy after manually adding CXX to the sysconfig file - so I am not sure
where/by whom it is not being seen.
Question: does scipy also need xlC (aka C++)?
Regards,
Michael

We got the feedback from IBM that they care much more about GCC, so I
don't think many people test with XLC anymore.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/scipy/scipy/issues/6685?email_source=notifications&email_token=ACSZR5NLFYSTMOZWDNFWDL3QYBCLDA5CNFSM4CS3SYD2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEGRS4SY#issuecomment-564342347,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ACSZR5LQX5P2J3SETTOJL73QYBCLDANCNFSM4CS3SYDQ.

Yes, you need both a C and a C++ compiler (and Fortran as well).

As life - and numpy - has moved on, I'll close this issue for now - and open a new one later - with new AIX and python levels in any case. I also package Python for AIX - and am using wheels aka Python bdist for packaging things like numpy - which, I hope, will open up the availability of packages on AIX - especially those that require multiple compilers - to build.

Thanks @aixtools!


fix: import in config file

Description

fix: #5370 #15520 #12569
Additional context

What is the purpose of this pull request?

[x] Bug fix
[ ] New Feature
[ ] Documentation update
[ ] Other

Before submitting the PR, please make sure you do the following

[x] Read the Contributing Guidelines, especially the Pull Request Guidelines.
[x] Check that there isn't already a PR that solves the problem the same way to avoid creating a duplicate.
[x] Provide a description in this PR that addresses what the PR is solving, or reference the issue that it solves (e.g. fixes #123).
[x] Update the corresponding documentation if needed.
[x] Ideally, include relevant tests that fail without this PR but pass with it.

Can the next version fix this issue?

@tazyong can you explain how this fixes https://github.com/vitejs/vite/issues/5370 and can a test case be added if so?


Carthage CocoaLumberjack framework won't compile for simulator in Xcode 12

I'm consistently seeing the following error when compiling our project in Xcode 12 GM. Works if I compile for the device instead.
Showing All Errors Only
Building for iOS Simulator, but linking in dylib file (../Carthage/Build/iOS/CocoaLumberjack.framework/CocoaLumberjack) built for iOS, file '../Carthage/Build/iOS/CocoaLumberjack.framework/CocoaLumberjack' for architecture arm64

Looks like I need to remove VALID_ARCHS from the project configuration.

It seems removing VALID_ARCH from all the dependent targets didn't help

Seems like this is an issue with Carthage... See https://github.com/Carthage/Carthage/issues/3020 and https://github.com/Carthage/Carthage/issues/3019


Search issues

is the full data added to https://www.areg.metacell.us/ ??  This looks like there are only a small subset of data included still because all of my searches are failing. Here are the things I see so far, most of which may be addressable by data porting. Several can't.
Search for antibodies is incomplete:

general search for TSH fails to produce any useful results on the https://www.areg.metacell.us/  (no direct link possible)

search for antigen TSH leads to 1 antibody on the https://www.areg.metacell.us/  (no direct link possible)
The number should be closer to 1000, see:
https://scicrunch.org/resources/data/source/nif-0000-07730-1/search?filter[]=Target Antigen:TSH

search for biolegend fails to bring up biolegend antibodies on the https://www.areg.metacell.us/
should be ~27K results https://scicrunch.org/resources/data/source/nif-0000-07730-1/search?q=&l=&filter[]=Vendor:biolegend

search within columns covers the result, removing the search box puts users back to the full result set

filters do not include most useful columns

filters do not work properly (URL does not search all results, I searched for URLs that contain biolegend got back 1, but there are 3 on the page...not sure what is happening there)

0600 this is a catalog number when I search for this it brings back 13000 results but the record that matches exactly does not show up on top.

"Internal Server Error" when I search for 0600, then filter by 0600, then try to see the record by clicking off the filter

Let's consider changing the search features to the rrid.site portal
this search/database instability is going to reduce the usability of the antibodyregistry

search within columns covers the result, removing the search box puts users back to the full result set
Not sure what's the desired behaviour here. Should we reser column filters for new searches?
-yes please reset the filters when a new search is done. The filters do not work as search so it is not predictable what they will do.

filters do not include most useful columns
Some columns are not visible by default, and can be added through the "table settings" button. If anything else is missing, we can add it
vendor name
same issue 12. Please add search on top of all columns, especially the "proper citation" and the "Link to Vendor" columns, I currently can't search for vendor because neither one of the vendor containing columns has a search on it.
Filters are disabled for derived columns as it's not clear what exactly the filter should work on (the vendor name or the url?).
The simplest solution would be to add the raw url and vendor fields which might be optionally enable and filter on.

Here I mean that the vendor name is not searchable. This must change before release. Any way you want to implement that is fine, but the search for catalog number is difficult to accomplish without a vendor search. The simplest choice may be to create the clean vendor field and search on top of that. It can be a hidden field, but if it is in the dropdown then it should be workable

0600 this is a catalog number when I search for this it brings back 13000 results but the record that matches exactly does not show up on top.
0600 is a actually a good case as 21 results are shown the exact match does show up on top. Maybe something else was wrong there.
-Yes there seems to be multiple states that are happening here. The first state is usually functioning as expected, but if you wait for about 30 seconds then in about 50% of the cases the search resets itself and the results are then quite bad. I can't predict why this happens, but I have seen it on multiple searches.

Please update the big filter button to a really really noticeable color so that when it is on it is visible.
Sorry not sure I get this
-Ok, I am not sure how to specify. We need to make sure that users know that they are filtering. So highlighting the filtered column in some way is one possible way to do this. The users will be confused if that does not happen. Some of this will be removed if the filters reset when searching again (See #4 and duplicated by #10).

Please add a link to the RRID portal https://scicrunch.org/resources/data/source/nif-0000-07730-1/search in case people are confused by the new search paradigm.
Adding the link together with the "No results found" message is what you expect?
-No, please add a Beta tag to the search function; and please add a link just underneath it to the search page since many searches will simply come back with no usable results and not no results.

I understand that we stopped working on search, it made sense before I had the full dataset, because I could always just attribute the search issues with there not being the full data or there not being a stable system. We are not that far off, but we need to be more explicit with what we currently have implemented as it will absolutely make people complain and at least implement the search for vendor and clean up a few bugs.

I just had our group ~20 people test the antibody registry and here is the result; ~30% of searches ended in 500 errors, only one person was able to log in to test further; lots of good info from various people some of which can be easily fixable (FAQs do not respond to page search functionality because they are all closed by default) or that search function starts hitting the database after 1 character which overwhelms the system quickly with a few concurrent users - ajax errors, and the fact that the Chinese message is duplicated in chinese but not english, to things that will be harder to fix. For our conversation on Friday, you may want to take a look at this user testing data to see what is easy to fix and we can prioritize on Friday.
https://docs.google.com/presentation/d/1q65vzAfH7x23CKZB-OD2Wh6V-B6II1BM725rZlhhdKQ/edit?usp=sharing

Thanks, starting working on the issues we must obviously fix:

500 errors
Search on vendor name and other related data
Filter by vendor name
Inconsistent search (most certainly due to the form submission while typing)


Support custom http proxy outbound header

{
  "protocol": "http",
  "settings": {
    "servers": [
      {
        "address": "server.example.com",
        "port": 443,
        "users": [
          {
+                "headers": {
+                  "Foo": "bar"
+               }
          }
        ]
      }
  }
}

Codecov Report

Merging #1428 (0da25c6) into master (801d4a1) will decrease coverage by 0.15%.
The diff coverage is 8.33%.

@@            Coverage Diff             @@
##           master    #1428      +/-   ##
==========================================
- Coverage   39.62%   39.46%   -0.16%
==========================================
  Files         598      590       -8
  Lines       35029    34942      -87
==========================================
- Hits        13879    13791      -88
+ Misses      19633    19629       -4
- Partials     1517     1522       +5

Impacted Files
Coverage Δ

infra/conf/v4/http.go
30.30% <0.00%> (-0.95%)
:arrow_down:

proxy/http/client.go
0.58% <0.00%> (-0.02%)
:arrow_down:

proxy/http/config.pb.go
18.36% <20.00%> (-0.52%)
:arrow_down:

testing/servers/tcp/tcp.go
81.81% <0.00%> (-5.46%)
:arrow_down:

testing/scenarios/common.go
73.07% <0.00%> (-4.62%)
:arrow_down:

transport/internet/udp/hub.go
73.61% <0.00%> (-4.17%)
:arrow_down:

transport/internet/system_listener.go
50.00% <0.00%> (-4.00%)
:arrow_down:

transport/internet/system_dialer.go
46.83% <0.00%> (-2.54%)
:arrow_down:

transport/internet/kcp/connection.go
69.61% <0.00%> (-2.21%)
:arrow_down:

transport/pipe/impl.go
87.87% <0.00%> (-2.03%)
:arrow_down:

... and 14 more

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 801d4a1...0da25c6. Read the comment docs.

I think the headers could be add to account, and the config will be:
{
  "outbounds": [
    {
      "protocol": "http",
      "settings": {
        "servers": [
          {
            "address": "<IP_ADDRESS>",
            "port": 23333,
+           "headers": {
+             "X-Foo-Bar": "baz"
+            }
          }
        ]
      }
    }
  ]
}

I think the headers could be add to account

I would actually like to do this, but such a change would require very large changes to the existing code.
Since the servers field is filled in with an interface that is the same for all outbound protocols, modifying it could cause a lot of unnecessary changes
But I'm really not familiar with V2Ray's code, so can you point me in the right direction on how to do this?

I think the headers could be add to account

I would actually like to do this, but such a change would require very large changes to the existing code.
Since the servers field is filled in with an interface that is the same for all outbound protocols, modifying it could cause a lot of unnecessary changes
But I'm really not familiar with V2Ray's code, so can you point me in the right direction on how to do this?

Not, It will be a simple change. You can modify the v2ray.core.proxy.http.Account.
https://github.com/v2fly/v2ray-core/blob/b960d3f1fb9806dc7e2c73899342edb6b124bb70/proxy/http/config.proto#L11-L14
Here is a exmaple:
https://github.com/v2fly/v2ray-core/blob/b960d3f1fb9806dc7e2c73899342edb6b124bb70/proxy/http/client.go#L151-L155

It has been open 120 days with no activity. Remove stale label or comment or this will be closed in 5 days

Remove stale label


ja: Make docs/concepts/cluster-administration/cloud-providers.md follow v1.19 of the original text

This is a Feature Request

What would you like to be added
Update docs/concepts/cluster-administration/cloud-providers.md to follow v1.19 of the original (English) text.
Why is this needed
content/ja/docs/concepts/cluster-administration/cloud-providers.md is outdated.
Comments
/language ja
/good-first-issue
File to update
https://github.com/kubernetes/website/tree/dev-1.19-ja.1/content/ja/docs/concepts/cluster-administration/cloud-providers.md
Original
https://github.com/kubernetes/website/tree/release-1.19/content/en/docs/concepts/cluster-administration/cloud-providers.md
diff between translated and v1.19
https://gist.github.com/1660407fff6e4fbba4fb207ba4f19c3b
Note
Currently, we use dev-1.19-ja.1 branch. Please open a PR targeting the branch.
ref
https://kubernetes.io/ja/docs/contribute/localization/
If you have a question, feel free to ask us at slack.k8s.io #kubernetes-docs-ja channel.

メモ: git diffだけだと削除扱いになっているが、実際に削除されたのかどこか別のファイルに移動しているのか確認が必要

/triage accepted

/assign

/close


Retargeting option to use a template for silhouette.

Option to create and use SkeletonProfile as silhouette template.
Adds a few Skeleton3D options:

For a reference model, adds export_skeleton_profile_to_file/enabled and /path to export the Skeleton3D node as a SkeletonProfile before retargeting.
For retargeting, retarget/rest_fixer/silhouette_template option to replace bone rest with an exported SkeletonProfile before retargeting.

Example model showing this workflow before and after:
Here is a Maya FBX animation with a simple BoneMap applied but with silhouette fixer disabled.

I can use silhouette fixer, but it was not designed to recenter the hips position (I may attempt to fix this, since the lack of recentering is a bug IMHO), but even if the center were fixed, you can see here in the profile view that silhouette fixer just isn't able to correct the entire skeleton when the pose is too off-center (I think the hips is not being axis-aligned correctly: this might be another bug that I will solve separately):

Anyway, the fact is that the silhouette fixer is guesswork and will not be perfect in 100% of cases. That's where this PR comes in. I can pass in a profile exported from a model in t-pose, and voila! The model is now imported correctly:

Together this allows a purely importer based workflow to transfer a known good pose from one FBX to another.
Screenshots of preferred workflow.
First, how to export a known good reference pose. This can be T-Pose or anything reliably fixable by Silhouette Fixer (such as A-pose)

This exported profile goes into a new slot for "Silhouette Template" in the Rest Fixer

The importer performs validation of the silhouette to ensure it comes from a compatible rig:

This allows manually fine-tuning the silhouette pose which can be used to mitigate cases where Silhouette fixer cannot fix the initial pose.
Fixes #65656
(Note that the preview is invisible because #78188 was not yet merged)
Here is an archive of screenshots from a previous version of this PR:

Old version of the warning

Older / Manual workflow for creating a SkeletonProfile
BoneMap must not be used for the reference model. This is likely going to be the most confusing part of the process.

The "Export Skeleton Profile" feature in the Skeleton3D menu already existed, but was previously only used for constructing new types of rigs. If you adjust the rest pose, make sure to use "Apply all Poses to Rest" also in the Skeleton3D menu before exporting the profile.

Thoughts on a boolean that hides the bonemap. Like a switch between bone map or retarget/rest_fixer/silhouette_template where we control visibility.

We discussed a read-only multiline string property for displaying correction instructions.

Wasn't the real problem with this that all the other animations have T or A poses other than the top of the animation list?
I don't think this workflow requiring a separate model is a good idea. So the right way is to add a GUI to select the reference animation such as adding processing steps in the importer IMO.

There is no list of animations on Maya exports. It is very common for an animation export from Maya to be a single animation named "Take 001", which is why animation authors in Unity typically include a separate fbx file in the reference pose.
I do not know if there are different workflows common in other engines such as Unreal, but the suggestion to add additional animations in each file for t-pose or a-pose is impractical at least for FBX and Maya exports.
Can you explain why it is not a good idea?

There are several problems
Importing another model as an actual object increases the size of the project folder by the amount of the imported model.
It is difficult to detect the possibility that a profile has incorrect rests. This may have to be left to the user's file management practices, but at least it is a hassle to output a profile from the model each time and save it as a separate resource.
If managed as another model, it would be better to use a name suffix or special extension so that the collider uses _col and the external fbx can be specified directly from the importer as a file to be used only at import time.

Importing another model as an actual object increases the size of the project folder by the amount of the imported model.
Usually these models don't need the mesh, so they are just a skeleton posed in t-pose. So it may take on the order of one extra megabyte. For character models with separate animations, usually the character itself is the reference pose, so there is often no need to add additional files.

This is a critique of the workflow, but not a reason why it is wrong to do this, just that it is not as efficient. Also, there is no requirement to retain the original t-posed model in the project after extracting a skeleton profile. This is one of the reasons I decided to take this approach, since it creates an asset that can be reused for subsequent imports of a particular character.

It is difficult to detect the possibility that a profile has incorrect rests. This may have to be left to the user's file management practices, but at least it is a hassle to output a profile from the model each time and save it as a separate resource.

I warn if a SkeletonProfile is used which does not match up with the chosen BoneMap. If two models have the same sets of bones, my assumption is that they likely have the same rests, but of course it is no guarantee. This feature is designed to work when two files refer to precisely the same skeleton, but the burden is on the user to make sure not to mix up files. This is indeed a workflow challenge but not a reason why this cannot be used as a workflow.

If managed as another model, it would be better to use a name suffix or special extension so that the collider uses _col

I strongly dislike the collider suffix convention, and I would be unhappy creating a new workflow which depends on name suffixes, as other parts of the system may need to become aware of such rules..

and the external fbx can be specified directly from the importer as a file to be used only at import time.

This certainly could be done as an alternative to specifying a SkeletonProfile. It adds complexity because the external model would have to be loaded which creates an import dependency. If you insist that we implement the feature this way, I can try to work on it.
I have some concerns about referencing another scene file from the import. Godot might not have a guarantee that models are imported in a particular order, or it could create a cyclic import if the user by mistake sets two gltf files as each other's silhouette.

after fbx changes the rest, this steps is required again

It should not be required, because the model uses the same skeleton either way (For example, if I have Alicia in t-pose and Alicia doing a walk animation, the skeleton is the same, so it does not matter which version of Alicia's bone rest I use.
Overwriting the bone rest is merely adjusting the model into a known pose, Also, this known pose can be combined with silhouette fixer to account for any offset between the reference t-pose and the desired t-pose.

allow external fbxes to be specified IMO.

I'll have to figure out how to do this, but I assume it would be a scene file. We just need to make sure that the imports happen in the correct order if I lose my .godot directory. Perhaps it would be sufficient to call reimport_append if the dependency scene cannot be loaded.
We'd still have the problem that the target scene is not allowed to use BoneMap (since we lose the original bone rolls if the user has set a BoneMap, but it would be easy to detect this because the node names will not match (GeneralSkeleton vs Skeleton3D) as well as the bone names.
Anyway, I will work on this version of the change. From the user's perspective it should not be much different.
Technically I fear we are opening a can of worms that has not been tested. Do I use a PackedScene resource picker? a little scared to serialize a .glb or .fbx reference from a .import file
... or a PROPERTY_HINT_FILE file picker with *.fbx,*.glb,*.gltf,*.scn,*.tscn,*.dae ... but it can't target a .vrm if I do that: the user would have to inherit scene and reference the inherited .scn

Importing another model as an actual object increases the size of the project folder by the amount of the imported model.

But if you export the Skeleton Profile, and remove the model afterwards, it shouldn't be that big of an impact, right? And this approach would fit with a kind of workflow where source model files themselves are not version-controlled and are split into their respective resources. So the FBX (or GLTF or whatever) from which the correct pose was borrowed only bloats the project folder of the team member responsible for setting the models up.
Overall, I see merit in both approaches, and if it would be possible to reference either a scene file or a Skeleton Profile in the Silhouette Template field, that might be the best way to do it. Exporting a Skeleton Profile would be an extra step you have to do for each model, but it looks like a 'cleaner' workflow. Correct me if I'm wrong.^^'

If managed as another model, it would be better to use a name suffix or special extension so that the collider uses _col and the external fbx can be specified directly from the importer as a file to be used only at import time.

It might be an option, but I don't use suffixes in my workflow so I don't think it would necessarily be 'better' to do it this way.

It is true that SkeletonProfile is not referenced with the source model. It is focused to work in cases where changes to the source model are not important.
For example, SkeletonProfile is designed to be independently sharable for sharing among workers to allow retargeting of monster models with specific Rest, etc.
However, this is not the case in this PR case. If only one silhouette of one specific model is to be targeted, the Profile must have an reference with the source model. This is the same as the AnimationLibrary continuing to have an reference with the source file. In other words, if the referenced Profile is a tres, it must be generated with the .import through ImportedAs in Godot.

This is the same as the AnimationLibrary continuing to have an reference with the source file.

I think I get your point, but we have also independent Animation Libraries that are not "models imported as AnimationLibrary", but "A grouping of externally stored animations" so this analogy is not entirely correct.

In other words, if the referenced Profile is a tres, it must be generated with the .import through ImportedAs in Godot.

But wat if I don't want to import the file as this kind of resource, because it also holds a ton of other useful data, like meshes, materials, etc. Say we have one big blend file with character, animations and all the stuff. It's like 150Mb. I never ever plan to edit it under any circumstances. (because I'm not an artist) I want to export all of this useful data as separate resources and discard the source .blend file for good. Should I instead create multiple copies of this .blend file to import one as an AnimationLibrary, another as SkeletonProfileForBetterSilhouetteFix and save meshes and materials from the third one?

I think it would be suitable to have something like SilhouetteData

If it's a standalone file and it can safely lose reference to the imported model file that it got created from, it might be okay, but also as you've said, making a separate class just for this specific purpose seems wasteful.
Here's how I see my specific workflow with this in my imagination:

I bought a pack of animations from some store and want to retarget them to my character that has vastly different proportions to Unreal Mannequin or whatever the animation creators used as their base model.
I drop the folder with animation FBX files in the project hierarchy, open the file that says T-pose, set BoneMapHumanoid, reimport open it as a scene and export a SkeletonProfile or whatever it will be called from it.
I open each of the other animation files' advanced import dialogues, set BoneMapHumanoid, set the exported SkeletonProfile, set a destination to export the animations, reimport.
Then I delete the FBX source files and forget about their existence. I don't include them in the version control, I don't bloat my project folder, and feel happy about it.

TL;DR: all of the "ImportAs" and resource inheritance discussed previously is very good when you have a project where assets are in constant state of iteration and need updating, but it's not the only use case.

I think I get your point, but we have also independent Animation Libraries that are not "models imported as AnimationLibrary", but "A grouping of externally stored animations" so this analogy is not entirely correct.

Conversely, if the SkeletonProfile can also have a reference to the original model, it should do so.
Finally, it would be best if the split fbx could be imported as an AnimationLibrary and specified as per my comment above.
If that is possible, then we can share a method with the ability to specify animations other than the top of the animation list to address the two problem cases:

if the reference pose is in a separate file, we can load it as an external animation library and specify the reference  animation
if the reference pose is in the same file, but not at the beginning of the animation list, we can specify that reference animation

Revision 442bbced8512cb3e13c1f704d6cb7dff3fd1c10f adds a better warning to the SkeletonProfile template.

I have spent several hours prototyping a workflow for animations or AnimationLibrary or PackedScene references, but they all seemed so clunky, and animations in particular are highly error prone either due to mixing up post-retargeting animations from pre-retargeting animations, as well as the default setting of "Remove Immutable Tracks" being on (BoneMap forces immutable tracks to be written, but we can't use a BoneMap'ed animation)

If only one silhouette of one specific model is to be targeted, the Profile must have an reference with the source model. This is the same as the AnimationLibrary continuing to have an reference with the source file. In other words, if the referenced Profile is a tres, it must be generated with the .import through ImportedAs in Godot. Also, many fields are unnecessary for SkeletonProfile for this purpose.

Anyway, I was chatting with @Illauriel and thinking about your comment, and it occurred to me: I can make the SkeletonProfile generated by the .import.

This also adds a new workflow to easily create new workflow-specific profiles without having to open the scene and manually select "Export Skeleton Profile"
Further, since it is generated before the BoneMap is applied, it no longer requires an additional file for "retargeted" and "not retargeted" versions: you can enable the new Export Skeleton Profile to file and still perform the retarget, and the exported profile will be pre-retarget and hence suitable for use as a "Silhouette Template":

There at least two different type of animation in FBX Maya, one is one single clip and the other is a series of animations.

Thank you, fire. I appreciate that you have identified that there are multiple cases here. That's exactly right.
I am solving the FBX split case.
However, I would also be happy to solve the multiple animation case. I believe this is best solved using a different approach:

The current approach using SkeletonProfile does not look good as it is too specialized for the split fbx special case. The feature to select reference animation from AnimationLibrary would be a comprehensive solution to the problems with the order of blender's animation list in glTF as well as split fbx.

Rather than build one complexx comprehensive solution, we should take specific problems and solve both with specific solutions. That is the godot way.
The solution I built works extremely well for split FBX. It is difficult to improve on the workflow in terms of number of clicks or steps.
That leaves solving the gltf case.
I believe that can be done with a checkbox on the individual animation in the import settings for a given model. We can also make a dropdown if people prefer that.
Basically, it would be choosing an animation from the same model (not using an external AnimationLibrary) to use as the reference pose. I think this would be easy to do and I would be happy to implement this.
I am not going to compromise this design on the basis of forcing AnimationLibrary to be a suitable workflow. It simply is not a clean workflow

exported animations by default are missing immutable tracks
exported animations are subject to retargeting by default, so we need to remind the user to disable BoneMap from the reference model.
it is extremely difficult to include both an animation library reference as well as a dropdown for which animation wihtin the library. I don't even know where to start on building such a feature with godot's default inspector
Import As -> Animation library requires dedicating a whole model file just for the rest pose (since you then can't use as scene). exporting an individual animation would be simpler but we still have the first few issues.

Anyway I know I am not using SkeletonProfile the way you designed, but there was inspiration to do things this way, and I think it makes some sense to use the same datatype even if not 100% of the functionality of that data type is being used.

exported animations by default are missing immutable tracks
exported animations are subject to retargeting by default, so we need to remind the user to disable BoneMap from the reference model.
it is extremely difficult to include both an animation library reference as well as a dropdown for which animation wihtin the library. I don't even know where to start on building such a feature with godot's default inspector
Import As -> Animation library requires dedicating a whole model file just for the rest pose (since you then can't use as scene). exporting an individual animation would be simpler but we still have the first few issues.

So I mean that it is the role of the AnimationLibrary importer to solve these, not the post importer.

We talked in the meeting about it, there was a lot of pushback to using SkeletonProfile. I think we agreed that an Animation represents a skeleton pose.
There was some discussion that Animation is difficult to import currently, so we talked about adding Import As Animation (or animation pose?)
However, AnimationLibrary is difficult to reference because i would need a picker in the adv import dialog.
Furthermore, with sub-resource references, animation will become much easier to reference in 4.4+. Hence, I think we should reference Animation in anticipation of this change.

Updated the PR to accept animation libraries, either externally or animations from the same file's AnimationPlayer.
There are now a few different cases here, and I have some warnings to detect the common pitfalls, (these pitfalls are why I originally shied away from using animations). For example, using a BoneMap converted animation; or using an animation with (almost) no tracks -- both of these are easy to create by mistake due the remove immutable tracks.

Oh, glad to see this PR haha. I actually implemented this a couple months ago:
https://github.com/Invertex/godot/tree/fix-silhouette-using-other-source

But I never submitted a PR because I assumed it probably wouldn't get approved... Was waiting to see if I could think of some other solutions. This has been a pretty big issue for more as it has severly restricted what third party animations we can use as a smaller studio. Many of the animation packs people may buy will come in this "bad workflow" format.
I took a similar approach as here, but instead of storing the Resource as an externally referenced file, I embed it in the .import of the model it belongs to. My thought here is that it ensures there's no mistake of ownership or possibility of another asset instance overwriting the Resource.
Other models can choose the target source model and read the BindPose resource from its .import if it exists.
I also update the pose at the very start before any of the regular importing fixes happen, so that the file is basically utilized by the import system as though it actually contained the proper rest pose. Don't need to mess with any of the actual import code.
BoneMap can do its thing, working with a proper matching bindpose then.

A possibility for triggering dependency could be having a list in the source file of other assets that rely on this profile. When this source model reimports, it could trigger those list of files for reimport after the source file is done (and any paths that don't exist anymore can be culled and warned about).

@lyuma https://github.com/Invertex/godot/commit/62a98c4f4cbb8095b615c30f3f889ddbaa2cf16c#diff-d524f1765c15505d971875ccbf5ea13733989c77101db63a2f84fb09eb1b5ca3R57-R66

Before I update this PR, I would like to first understand the intended direction so that I can prepare both PRs: there is no point merging one feature without the other feature: a user cannot select a rest pose animation when there is no way to create a rest pose animation.
Sure, I would be fine without "Export Skeleton Rest Pose" since I am using Unidot to import fbx files, and Unidot now creates the rest pose animation automatically on 4.3. But losing this feature would interfere with ordinary users who are not using a third party tool script to create this animation automatically. While it does not need to be implemented in exactly this way, a way to create a "rest pose animation" does need to exist in some form in 4.3 for FBX animation import to be functional.
Therefore, I would like to understand the intended user-facing workflow / steps for FBX.
To be clear, here is the problem that is being solved with "Export Skeleton Rest Pose":
The user has two FBX files. One is in t-pose, call it "TPose.fbx". The other is an animation FBX, maybe "Walking.fbx" posed on the first frame (incorrect rest pose) and no mesh, so no bind pose.
Here is my understanding of the workflow you are proposing:

Open the advanced importer of TPose.fbx
Select "Include rests as "RESET" animation" checkbox on the Skeleton3D
The advanced importer will refresh and the RESET animation is now listed as an animation
The user selects to extract animations to a file or import as library
Open "Walking.fbx" in the advanced importer
Now select the extracted RESET animation in "Load pose"

Clearly, this "RESET" animation would always include all keys (ignore the immutable track policy), since all tracks are immutable when only one keyframe exists.
(also, is "REST" this the same thing as "RESET"? I think the similar names in all caps may be confusing me.)

I understand that REST animation and RESET animation are different things.
RESET was supposed to define a pause at load time, but as we discussed on RocketChat, if that is not currently working and AutoPlay is working as an alternative, then I think it is acceptable to include it in RESET.
Also, it would be ideal to include that setting in the normal importer settings rather than the advanced importer.

Because the rest extraction itself is done outside of the Retartget process and has no direct impact on Retartget.

I think I understand: if it's in the normal import settings, then it can be generated before _pre_import completes, so it will enforce the creation of an AnimationPlayer and a rest animation, which can then be extracted using Godot's standard animation flow (AnimationLibrary or extract animations)
Ok, so adjusting my above workflow, it would be:

Select TPose.fbx in the Import Dock
(Optional) Enable "Import as skeleton bones"
Enable "Generate Rest Pose Animation"
Do not enable humanoid import. Instead:

either: Switch "Import As" to AnimationLibrary and Reimport
or: Open advanced importer and selects Extract Animations and Reimport.

Select animation (e.g. Walking.FBX)
Enable "Import as skeleton bones"
Open advanced importer:
Enable BoneMap
Set "Rest Pose" to "External Animation"
Select the animation exported in step 4.
Click Reimport

Does this flow look correct?

Enable "Import as skeleton bones"

Does this mean that you implement something new? Does this mean that it uses the Skeleton as its root, unlike the import as Scene which uses the Node3D as its root?
I think it is sufficient to add the option "Import Rest as RESET" under "Remove Immutable Tracks".

Does this mean that you implement something new

No, since "Import as skeleton bones" is the feature implemented in #88819 and was already merged,
I am merely recommending to use this feature in conjunction: It should be documented as part of the recommended flow for animation import, since it will guarantee that the animation FBX contains a skeleton (otherwise, a FBX with no meshes might only contain nodes and no bones)

Does this mean that it uses the Skeleton as its root

No, that feature does not change the root of the scene to skeleton: this created too many compatibility problems, so the root is Node3D but the children are always Skeleton3D and AnimationPlayer if animations are present.

"Import Rest as RESET"

Sounds like a good name. I would be happy to implement this and name the resulting animation "RESET" by default.

Is the problem when there are more than one Skeletons?

It could be confusing when there are multiple skeletons.
However, the "Import as skeleton bones" feature above will guarantee that exactly one skeleton is present, since all nodes in the scene are now bones in that single skeleton.
Generally speaking, our workflow is not well suited to scenes with multiple skeletons, so this should be discussed separately with a specific example file (I have a few but they are not designed to be retargeted). The limitation of one logical skeleton per animation file seems fairly common across several engines / file formats, so I don't think we should try to solve this right now.

No, since "Import as skeleton bones" is the feature implemented in https://github.com/godotengine/godot/pull/88819 and was already merged,

Okay, so it is no problem. However, please keep in mind that ""Import Rest as RESET" option may be enabled even for Import as Scene. I think we now agree.

Updated this PR to remove the "Export Skeleton Rest Pose" option.
Opened #89629 to add a "Import Rest as Reset" option in the top-level import dock, which can be used to generate a compatible rest pose (t-pose) animation from fbx or similar files which did not come with one.

There seems to be a build issue for the editor:
Error: editor/import/3d/scene_import_settings.cpp:116:7: error: 'option' was not declared in this scope; did you mean 'options'?
  116 |   if (option.name == "rest_pose/load_pose") {
      |       ^~~~~~
      |       options
Error: editor/import/3d/scene_import_settings.cpp:121:7: error: 'option' was not declared in this scope; did you mean 'options'?
  121 |   if (option.name == "rest_pose/selected_animation") {
      |       ^~~~~~
      |       options

Thanks!


🚀 Feature: Implement Cryptocurrency Application as a example for react

🔖 Feature description
This feature is to implement the Cryptocurrency Application as an example in the repository. This is basically a react project which uses Api to fetch the data of coins.
🎤 Pitch
As Cryptocurrency is trending now so this project helps to know the price of coins and what the values of that coins are there in the market. It should be implemented because it keeps updated the user and aware about it. And I have implemented it. So please assign me this issue and please consider it under hacktoberfest so that I will create PR and this project might help others also.
👀 Have you spent some time to check if this issue has been raised before?

[X] I checked and didn't find similar issue

🏢 Have you read the Code of Conduct?

[X] I have read the Code of Conduct

I got the same problem and created SO question...
https://stackoverflow.com/questions/74999680/appwrite-cra-app-template-with-di-onion-architecture


add new arabic source

add KolNovel

See https://github.com/ahmedgamal17/QuickNovel/pull/1 for preventing beginning after the end causing crashes.

Yes it was using the same theme so I just modified little things but still the bug with (the beginning after the end) novel 🥲

Do you want to merge?

Ok you merge it


chore: improve typescript typings

Improves & simplifies the typescript typings by using the type of puppeteer directly.
This means that the types will always be accurate, as they'll be coming from the same types that would be used for native puppeteer.

Thanks @G-Rath! #114 and #122 are related if you wanna have a knack at them. :wink:


More control on new notification checking scheduling

Allow better scheduling for new notification checking - for example do not perform it during night not to wake you up by notification sound, another checking period when WiFi  connection is available etc.

check on wifi only is covered in #94

for example do not perform it during night not to wake you up by notification sound

While it's good to be able to setup an application to work on a schedule, I think this is wrong reasoning: users have "Do not disturb" mode built in the OS, it's not the applications concern when to send notifications. If I'm awake at 3am and working I want to see notifications, if I don't I turn off the sound or switch profile or whatever, but the application should deliver what it's made for: notifications.

I agree that app should not introduce own settings if android system itself provides reasonable feature. And it is case of "do not disturb during night" now, I do not plan to implement it anymore.


Support for Cassandra 4.0 beta images

In working with the K8ssandra project, it seems that the server version matching in cass-operator only supports matching on X.Y.Z versions. It would be beneficial if cass-operator could support 4.0 betas like 4.0-beta4.

@emerkle826 I know you started to look into this but I am not sure how far you got since you have been heads down with management-api work. Do you think will be able to work on a PR for this?

@jsanda I haven't made much progress on this unfortunately.


Duplicate Title Property in Universal Editor After #30 Merge

Since the merge of PR #30, the title field in the Universal Editor displays two properties instead of one, as it used to. Previously, the title field had the property name: "jcr:title", but now it shows name: "title".
It's unclear if this change was intentional or if we should revert to using jcr:title. Could you confirm whether this adjustment needs to be corrected?

That is indeed a regression and will be fixed with the next AEM CS release. In the meanwhile you can get that resolved on a project level by going back to jcr:title and type as properties for the Title component.

This is fixed in release 18459+ currently being rolled out. If you got the update already on any of your dev environments, would you mind to retest?


allow for use of the FCS_DNC env flag to skip doing DNC build steps

should help Dave out some :D
set FCS_DNC to false and then go nuts

To explain a little more having dnc and mono installed results in a non building FCS. See: #637

@baronfel Thanks for this!