Firebase icon doesn't show and sound not play

I am using this code to show notification.
private void sendNotification(String messageBody) {
    Intent intent = new Intent(this, MainActivity.class);
    intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
    PendingIntent pendingIntent = PendingIntent.getActivity(this, 0, intent,
            PendingIntent.FLAG_ONE_SHOT);
    Bitmap b = BitmapFactory.decodeResource(getResources(), R.drawable.moviesa);
    Uri defaultSoundUri= RingtoneManager.getDefaultUri(RingtoneManager.TYPE_ALARM);
    NotificationCompat.Builder notificationBuilder = new NotificationCompat.Builder(this)
            .setLargeIcon(b)
            .setContentTitle(getResources().getString(R.string.app_name))
            .setContentText(messageBody)
            .setAutoCancel(true)
            .setSound(defaultSoundUri)
            .setContentIntent(pendingIntent);

    NotificationManager notificationManager =
            (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);

    notificationManager.notify(0, notificationBuilder.build());
}

When i run application icon doesn't show and sound not playing when my phone in sleep mode.

Hi @paveltech what are you using to send the notification?

Seems like you are sending notifications from the Firebase console, which will automatically generate a notification when your app is in the background. In that case your code will not be run and that is likely the reason why you are not getting the type of notification you are expecting.
From the Firebase console sound is disabled by default and there is currently a known issue about notification icons which is known and will be fixed soon.


What happened here?

Describe your problem here.

I have the data chart and it worked completely fine yesterday
Are you modding a build from source or with Lua?
Lua
What is your build target?
Windows x64
Did you edit anything in this build? If so, mention or summarize your changes.
no

Chart isn't the problem, timeBar texture seems to be missing

Yeah, I tried adding some ddto plus assets, the note splash glitched because it was considered missing and so did the timebar


migrate to astro

we have many issue in nuxt so the goal is to migrate to stop this mess

/bounty $300

@riderx Do you want it to be like how I did the other one? Anything I should know to keep in mind?

/attempt #47

same :)

On it!

i also made the issue here for doc: https://github.com/Cap-go/capgo/issues/262

No problem take your time :)

Happy to give me some hints about the issue about the mess?

Sorry @Atinux i tried, I even tagged you on Nuxt content repo said I’m willing to pay to make it fix.
It has been 3 weeks since my blog was broken after a minor update.
Posted here:
https://github.com/nuxt/content/issues/2185
and
https://github.com/nuxt/content/issues/2128
So I create 2 tasks this week to get out of issues.
This one for Capgo: https://github.com/Cap-go/capgo/issues/261
And the one here for Captime.
Basically, I lost all my SEO effort, for 2 website for 3 weeks, just with auto merge fix update.
And I tried to revert it and couldn't even find a proper way to revert...
I really Like Nuxt but sometimes the "magic" of it make it a black box and without the Nuxt team help I couldn't get myself out of trouble.
So now my both websites left Nuxt for Astro, it seems a simpler approach for static website and my needs.
I was thinking to make my webapps with Nuxt but now I'm more thinking to keep using Vitesse who is also a simpler approach I can debug myself.
I really believe in Nuxt, but right now it seems not fitting my need of indie maker


Inspecting stateless components.

Fixes #4602
Fixes a bug where the app crashes when you try to inspect a stateless
component.
Fixed by replacing all occurrences of the getPublicInstance method in
Libraries/Inspector/Inspector.js with the _instance property instead.
Defaults to an empty object if _instance is falsy.

Tests seems to break but I don't think it's related to this commit.

Thanks for fixing @edvinerikson!

@facebook-github-bot shipit


New versions of vnet gateway for point 2 site configurations require more than 2 public ips

az feedback auto-generates most of the information requested below, as of CLI version 2.0.62

Describe the bug
New versions of vnet gateway for point 2 site configurations require more than 2 public ips.
The --public-ip-addresses parameter takes only 1 or 2.
To Reproduce
Try to deploy a point 2 site configuration with AAD authentication.
Expected behavior
Configuration done.
Environment summary

Additional context

network

This issue related to https://github.com/Azure/azure-cli/blob/49f9d6195c789be6fcf1f8a6b154aacd0c8cdcd4/src/azure-cli/azure/cli/command_modules/network/custom.py#L6780

@ShachafGoldstein Could you provide more information about New versions of vnet gateway? Thanks.

Sadly, only doc reg I found is this
https://docs.microsoft.com/en-us/azure/vpn-gateway/vpn-gateway-vpn-faq
Can i connect to Azure Gateway via Point-to-Site when located at a Site that has an active Site-to-Site connection?
Yes, but the Public IP address(es) of the Point-to-Site client need to be different than the Public IP address(es) used by the Site-to-Site VPN device, else the Point-to-Site connection will not work. Point-to-Site connections with IKEv2 cannot be initiated from the same Public IP address(es) where a Site-to-Site VPN connection is configured on the Same Azure VPN Gateway.


Built in a workaround for empty mixer on running engine bug.

If an AVAudioMixerNode's output connection is made while engine is running, and
there are no input connections on the mixer, subsequent connections made to
the mixer will silently fail.  A workaround is to connect a dummy node to the mixer
prior to making a connection, then removing the dummy node after the connection
has been made.

did you have time to file a bug with apple?

Not yet.

They might say that the empty mixer not rendering is a feature, but I think the mixer not accommodating new connections when one method is used vs another can’t be called anything but a bug.


how to run this for chatgpt, to login, post and get the results generated (without using api of course)

how to run this for chatgpt, to login, post and get the results generated (without using api of course)

@hiqsociety It's great that you're interested in using chromedp for this. It's worth noting, you absolutely could! However, this isn't the place to ask for help for that, as this is not really a help forum or a how-to/tutorial discussion place for scraping.

@kenshaw

possible to provide a discussion section on github?


Support uriBaseId

SARIF supports the concept of URIs which are relative to some uriBaseId. The spec includes this example:
"fileLocation": {
  "uri": "drivers/video/hidef/driver.c",
  "uriBaseId": "%srcroot%"
}

Here, uri is a relative reference to a given base - in this case %srcroot%. This makes it easier to provide portable SARIF files - typically, the uri property is given as a relative reference to the root directory of the project, removing the machine specific part. In fact, the spec states that if the uri is relative, a uriBaseId should also be provided.
In order to resolve the relative URI reference to create an absolute URI, the uriBaseId needs to be resolved. From the spec:

The uriBaseId property can be any string; it does not need to have any particular syntax or follow any particular naming convention. In particular, it does not need to designate a machine environment variable or similar value, although it might. The SARIF producer and any SARIF consumers need to agree on the meanings of any values for the uriBaseId property that appear in the log file.

For example, on opening a SARIF file including URI base ids, the Visual Studio SARIF extension asks for the location of the first file in the log, and then uses this to determine the value of the variable in the uriBaseId property, which is used when resolving further relative uri references to the same uriBaseId.
The VS Code extension currently ignores the uriBaseId property completely. When provided with a log file which uses such relative URI references, the remapping is actually somewhat unintuitive - as with the VS extension, it asks to remap the file. However, unlike the VS extension, it appears to treat the first element in the relative URI as the "base".
For example, in the example above if we gave C:\src\drivers\video\hidef\driver.c as the full path, the VS Code extension appears to store the mapping drivers/ -> c:\src\drivers. Further entries in the drivers directory are automatically mapped, but files in a different directory cause an additional dialog to be popped up, once for each top-level directory, requesting the location of the first file in that directory. This is particularly confusing in combination with #58, as the file dialogs don't mention the file that is being mapped.

thanks for the feedback, we have a task #25 that's on the backlog for adding this support. Looking to adding it in for the next milestone.

Oops, I see my confusion. This is a duplicate of #25 and that item is clearly marked for current release process. Sorry for the noise, closing this item.


upgrade to spark 2.3 and scala 2.11

upgrade spark version
unit tests all pass

to: @saurfang @jieyingchen

Also you might need to turn on travis for this repo again? https://travis-ci.org/airbnb/aerosolve

I see, just found the slack channel, will reach out to someone, thanks!


Create Table

I try create table with this code :
db.transaction((tx) => {
tx.executeSql("CREATE TABLE IF NOT EXISTS history ( id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT UNIQUE, description TEXT )", [], (tx) => {
});
});
but does not create. another option to create.

This is standard SQL. Please take a look at SQL spec to see what's supported for Table creation. See examples in this module for working CREATE Table statements.


UnderscoresInNumericLiterals acceptableDecimalLength is off by one

This rule was using the word "decimal" everywhere. It's correct to call a base 10 number "decimal" but it is saying the same thing twice. And the problem with "decimal" is that it have a lot of meanings so it can be missleading. For that reason I changed the documentation a bit removing the word "decimal" (first commit).
After that the only point where "decimal" was used is in the configuration so to avoid the breaking change and because it also improves "readability" I renamed "acceptableDecimalLength" to "acceptableLenght". All this rule is about base 10 numbers so there's is no need to point that out in the configuration too.
But this is a Draft an it's not a ready to merge PR because I found a missing feature in our new configuration system:
private val acceptableLength: Int by configWithFallback("acceptableDecimalLength", 4)

We can't use the value of acceptableDecimalLength as the value of acceptableLenght because it would be off by one. Should we care about this? We were talking about adding a "breaking change" to fix this so, maybe, we should not care.
Fix #3860

That api doesn't allow me to convert from one value to the other, I mean, do the - 1

:thinking: You could do val acceptableDecimalLength: Int by config(5) { it - 1 }.  So whenever the fallback property is used, the value is reduced by one. (I have not tested that yet).

🤔 You could do val acceptableDecimalLength: Int by config(5) { it - 1 }. So whenever the fallback property is used, the value is reduced by one. (I have not tested that yet).

Good point! That have sense.

Rebased and now it uses the new version of configWithFallback.

Please regenerate the default config to use the the property name.

Please regenerate the default config to use the the property name.

And not only the default config. The deprecation list too! We merged the PR just in time 😂.

Should we also update the test to use the new config property and keep only one or two with the deprecated value?

 Done :)


ImmutableJs not fully working (?)

Hi,
I plan to use ngrx on a large application.
I tried to build a reducer in order to handle a user :
import { ActionReducer, Action } from '@ngrx/store';
import { Map, fromJS } from 'immutable';

// actions
export const USR_CONNECT = 'USR_CONNECT';
export const USR_DISCONNECT = 'USR_DISCONNECT';

interface IUser {
  name?: string,
  isConnected: boolean
};

let initialUser = Map({
  isConnected: true
});

export const UserReducer: ActionReducer<Map<string, any>> = (userState: Map<string, any> = initialUser, action: Action) => {
  switch (action.type) {
    case USR_CONNECT:
      return userState.setIn(['isConnected'], true);

    case USR_DISCONNECT:
      return userState.setIn(['isConnected'], false);

    default:
      return userState;
  }
};

My component looks like this :
import { Component, OnInit } from '@angular/core';
import { Store } from '@ngrx/store';
import { Observable } from 'rxjs/Observable';
import { USR_CONNECT, USR_DISCONNECT } from '../reducers/user.reducer';

interface IUser {
  name?: string,
  isConnected: boolean
};

@Component({
  selector: 'app-login',
  templateUrl: './login.component.html',
  styleUrls: ['./login.component.scss']
})
export class LoginComponent {
  private user: Observable<IUser>;

  constructor(public store: Store<IUser>) {
    this.user = store.select('user');
  }
}

And within my app.module.ts I have in NgModule/imports :
...
StoreModule.provideStore({
  user: UserReducer
})
...

The problem here is (probably with immutableJs).
In my view :

is user connected ?
 {{ (user | async) | json }}

Is connected !

Is NOT connected !

It's always red and NOT connected. BUT, The json display is :
{ "isConnected": true }
I think I might need to convert the immutable object to a Javascript object.
Any idea on that ?
After some research, I found this library : https://www.npmjs.com/package/ng2-storeservice
And this part is interesting : https://www.npmjs.com/package/ng2-storeservice#usage-with-immutable-structures
StoreService.setTransformFunction(obj => obj.toJS());
Is there something similar with ngrx ?
Thanks for any help =)

In LoginComponent, the declaration user: Observable<IUser>; doesn't match the data coming out of the store, which will be an Observable<Map<string, any>. This is an ongoing irritation of using a data structure library like ImmutableJS - it moves the actual data types up beyond where the Typescript type system can reach them. In you case I think you can easily get an Observable<IUser> by adding .map(x => x.toJS()) to the end of your select(...) invocation - though Typescript has no way of knowing if this type is true.
(I haven't used ng2-storeservice, and the question about it maybe goes in its repo or other communication channel?)

See #23

Thanks @kylecordes & @awerlang !
I did found @teropa repo https://github.com/teropa/harmonics-explorer which is make with typed reducers and I love this way of doing it.
I'll give a try.
Cheers !


feat: add support for cocoapods, nuget, and ruby gems scanners

Opening a PR to demonstrate the contributions of this fork.

Closing in favour of https://github.com/snyk/artifactory-snyk-security-plugin/pull/103


Update munit to 1.0.0-M9

About this PR
📦 Updates org.scalameta:munit from 1.0.0-M7 to 1.0.0-M9
📜 GitHub Release Notes - Version Diff
Usage
✅ Please merge!
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

⚙ Adjust future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "org.scalameta", artifactId = "munit" } ]

Or, add this to slow down future updates of this dependency:
dependencyOverrides = [{
  pullRequests = { frequency = "30 days" },
  dependency = { groupId = "org.scalameta", artifactId = "munit" }
}]

labels: test-library-update, early-semver-pre-release, semver-spec-pre-release, commit-count:1

Superseded by #105.


Setup enigma

I've tried different options but regardless of what stated in the docs, I am still not able to make it work.
I've created a pen here http://codepen.io/yumyo/pen/MpXqam/
While it is possible to see that js-offcanvas adds markup to the aside the trigger button does not actually "trigger" any class change.

Ok, was missing the $( document ).trigger( "enhance" ); bit

data-offcanvas-options='{"modifiers":"left,reveal,shadow,shadow-right"}'


Unable to copy pem file to ec2

Hi I am using below scp command and endedup in lost connection error.
scp -i test.pem ./test.pem ec2-user@:/home/ec2-user/
Warning: Identity file test.pem not accessible: No such file or directory.
Permission denied (publickey,gssapi-keyex,gssapi-with-mic).
lost connection

follow this syntax:
scp -i <your pem file> <sourcefile>  <destinationserveuser>@<publicip>:<homedirectory/path>

*Example:
scp -i ./test.pem test.pem ec2-user@<publicip>:/home/ec2-user


DevWorkspace controller is OOMKilled with just one DevWorkspace existing

I face from time to time when DevWorkspace operator is OOMKilled and the last time I face it after I created one DevWorkspace which was only on the cluster.
So, we should better understand how much resources do you need and how devworkspaces number influences it.

quick fix is merged into v0.2.0 and backported to v0.1.x, but the proper solution is not planned yet


Implement menu bar mode (for macOS and Windows)

This pull requests implements menu bar mode on macOS (and Windows) so that the DevDocs app is accessible from anywhere when you need it as a popover. It's implemented as a config in the Preferences menu, off by default.

I realized that since app.relaunch() is built-in functionality and since devdocs-desktop has a pretty limited scope, I figured that just automatically relaunching the app would work just as well as recreating the main window, and much, much simpler for that matter.

Let me know what you think @egoist 🙂

app.relaunch looks good to me 😄

Great! 🙂  This PR is complete on my end pending any code style changes or recommendations from you.

@egoist Any update on merging this in?

@egoist Don't mean to be a bother! Let me know if there's anything that needs to change in order for this to be merged. Would really love to see this as a feature in the official release.

Would be nice to have this landed.


Add ratatui examples

closing as this is too noisy (didn't intend 1217 commits to be part of the PR - 1 is enough)


Glitch

@agirault @floryst check it out!

I get this error when loading a mesh in the webpack example:
itk-js-webpack-example.glitch.me/:1 Uncaught (in promise) {message: "Could not find IO for: Segment_1.stl", stack: "Error: Could not find IO for: Segment_1.stl↵    at…glitch.me/itk/WebWorkers/ImageIO.worker.js:2:3404"}

Also, the npm test for the webpack example fails for me:
><EMAIL_ADDRESS>test /Users/agirault/Projects/web/itk-js/examples/Webpack
> karma start ./karma.conf.js

18 03 2019 15:44:46.360:WARN [watcher]: Pattern "/Users/agirault/Projects/web/itk-js/examples/Webpack/dist/itk/ImageIOs/**" does not match any file.
18 03 2019 15:44:46.364:WARN [watcher]: Pattern "/Users/agirault/Projects/web/itk-js/examples/Webpack/dist/itk/MeshIOs/**" does not match any file.
18 03 2019 15:44:46.365:WARN [watcher]: Pattern "/Users/agirault/Projects/web/itk-js/examples/Webpack/dist/itk/WebWorkers/**" does not match any file.
(node:50220) DeprecationWarning: Tapable.plugin is deprecated. Use new API on `.hooks` instead
TAP version 13
18 03 2019 15:44:46.390:WARN [watcher]: Pattern "/Users/agirault/Projects/web/itk-js/examples/Webpack/dist/itk/ImageIOs/**" does not match any file.
18 03 2019 15:44:46.390:WARN [watcher]: Pattern "/Users/agirault/Projects/web/itk-js/examples/Webpack/dist/itk/MeshIOs/**" does not match any file.
18 03 2019 15:44:46.390:WARN [watcher]: Pattern "/Users/agirault/Projects/web/itk-js/examples/Webpack/dist/itk/WebWorkers/**" does not match any file.
18 03 2019 15:44:46.895:INFO [karma]: Karma v2.0.5 server started at http://<IP_ADDRESS>:9876/
18 03 2019 15:44:46.896:INFO [launcher]: Launching browser Chrome with unlimited concurrency
18 03 2019 15:44:46.924:INFO [launcher]: Starting browser Chrome
18 03 2019 15:44:48.053:INFO [Chrome 73.0.3683 (Mac OS X 10.14.3)]: Connected on socket wtalVeK2wV4HPTuIAAAA with id 85993876
Chrome 73.0.3683 (Mac OS X 10.14.3) LOG: 'TAP version 13'
Chrome 73.0.3683 (Mac OS X 10.14.3) LOG: '# Loading an image file and displaying its contents'
18 03 2019 15:44:48.442:WARN [web-server]: 404: /base/dist/itk/WebWorkers/ImageIO.worker.js
18 03 2019 15:44:58.304:WARN [Chrome 73.0.3683 (Mac OS X 10.14.3)]: Disconnected (1 times), because no message in 10000 ms.
Chrome 73.0.3683 (Mac OS X 10.14.3) ERROR
  Disconnected, because no message in 10000 ms.

1..0
# tests 0
# pass  0

# ok

npm ERR! Test failed.  See above for more details.

Thanks for the feedback :calling:
Yes, we have to fix the mesh issue -- Issue #100
Did you run npm run build before npm run test in the Webpack example?


Explosions when attaching EnderIO capacitor to TE Cryo-Stabilized FLuxducts

Issue Description:
There is an issue where whenever I place down a cryo-stabilized fluxduct from Thermal Expansion and attach it to a capacitor or power buffer from EnderIO, it begins to create explosion noises and explosion particles where the connection is made. It doesn't do this with any of the other TE fluxducts either. I have included a screenshot of this occurring.

What happens:
When I attach a Cryo-Stabilized Fluxduct to anything in EnderIO (like the capacitor banks and power buffers) it begins to create explosion noises and particles where the connection is made.
What you expected to happen:
I wouldn't expect it to be making explosions where the two connect.
Steps to reproduce:

Place down either a power buffer or a capacitor bank.
Attach a Thermal Expansion cryo-stabilized fluxduct to the power buffer/capacitor.
Power the cryo-stabilized fluxduct so power flows into the power buffer/capacitor.

Affected Versions (Do not use "latest"):
EnderIO: 1.12.2-5.0.44
EnderCore: 1.12.2-0.5.57
Minecraft: 1.12.2
Forge: <IP_ADDRESS>72 (we can't update this though as it causes the server and game to not start at all)
SpongeForge? No
Optifine? Yes (1.12.2_HD_U_E2)
Single Player and/or Server? Server

Your most recent log file where the issue was present:
[pastebin/gist/etc link here]

Working as intended, this is an issue with the other mod pushing power multiple times a tick, not EIO.


Decouple Modular system from Asp.Net MVC

ASP.Net Modules
Modules provides a mechinism to have a self contained modular system where you can opt in to a specific application framework and not have the design of you application be dictated to by such.
This directly allows you to decouple the Hosting application from the independent modules. So no more redeploying the whole application for one simple change, instead you can just deploy a single module and recycle you application.
Getting started
First, create a brand new web application.
Within this new application we are initially going to focus on two files, project.json and Startup.cs. If you dont have etiher of these... start again!
Okay so first lets open up project.json.
Within the ConfigureServices method add these lines
services.AddModuleServices(configure => configure
    .AddConfiguration(Configuration)
);

Next, at the end of the Configure method, add these lines
app.UseModules();

Thats it. Erm, wait, what? Okay so right now you must be thinking, well what the hell does this do? good question.
AddModuleServices will add the container middleware to you application pipeline, this means in short that It will look in to a folder called Modules within you application for all folders that contain the mainfest file Module.txt. IF you looked on the file system it would look like this:
MyNewWebApplicaion
  \ Modules
    \ Module1
    \ Module2

Once it has found that manifest file, and said file is valid, it will then look for all classes that implement IStartup, instansiate them and then call the methods on here. An example of one is using the abstract class off of IStartup
public class Startup : StartupBase
{
    public override void ConfigureServices(IServiceCollection services)
    {
        services.AddScoped<ISomeInterface, SomeImplementedClass>();
    }
}

By doing this you allow your modules to be self contained, completely decoupled from the Hosting applicaiton.

Note: If you drop a new module in, then you will need to restart the application for it to be found.

Add Extra Locations
By default module discovery is linked to the Modules folder. This however can be extended.
Within the Startup.cs file in your host, within the ConfigureServices method, add
services.AddExtensionLocation("SomeOtherFolderToLookIn");

Add Extra Manifest filenames
By default the module manifest file is Module.txt. This however can be extended.
Within the Startup.cs file in your host, within the ConfigureServices method, add
services.AddManifestDefinition("ManifestMe.txt", "module");

Additional framework
You can add your favourite application framework to the pipeline, easily. The below implementations are designed to work side by side, so if you want Asp.Net Mvc and Nancy within your pipeline, just add both.
The modular framework wrappers below are designed to work directly with the modular application framework, so avoid just adding the raw framework and expect it to just work.
Asp.Net Mvc
Within your hosting application add a reference to Microsoft.AspNetCore.Mvc.Modules
Next, within Startup.cs modify the method AddModuleServices to look like this
services.AddModuleServices(configure => configure
    .AddMvcModules(services.BuildServiceProvider())
    .AddConfiguration(Configuration)
);

Note the addition of .AddMvcModules(services.BuildServiceProvider())

Thats it, done. Asp.Net Mvc is now part of your pipeline
NancyFx
Within your hosting application add a reference to Microsoft.AspNetCore.Nancy.Modules
Next, within Startup.cs modify the method Configure to look like this
app.UseModules(modules => modules
    .UseNancyModules()
);

Note the addition of .UseNancyModules()

Thats it, done. NancyFx is now part of your pipeline. What this means is that Nancy modules will be automatically discovered.

Note. There is no need to register a Nancy Module within its own Startup class.

Change Notes for Orchard Team
I have moved asp.net mvc out of the Host project Orchard.Cms.Web, and MVC is now a dependency of the Startup project and is also inside of the recipe.
Created a NancyFx implementation, thus allowing us to have Nancy in a module or referenced from the host, similar implementation to MVC.
Removed MVC from the core Orchard startup pipeline

that inherit off of StartupBase

It should use IStartup instead, or is that a typo?
How did you do to have custom MVC/Razor configuration done from a module?

How is the RouteCollection handed over to a module, or the MVC configuration object?

I will do some local perf tests to ensure the raw perf has not been impacted (theorically it should have no impact) and the multi-tenant scenario is still good (I expect some impact on this one as you told me the MVC pipeline is different now for each pipeline).
Maybe @jersiovic should try it too as the way MVC is setup might impact his branch.

Typo - good catch! - Will answer the other questions on my way home.

@Jetski5822
When i was saying that for MetadataPaths we need to exclude ambient assemblies, maybe it is not necessary because just seen that before adding an assembly in _loadedAssemblies or _compileOnlyAssemblies we always use before IsAmbientAssembly(). So maybe i was wrong, sorry.
That said, as i remember, we need preservecompilationcontext because we use in some places the default DependencyContext. Maybe it could work if you still have Orchard.Cms.Web.deps.json in your bin folder.
Best.

Yo JT - could do with your help on the compilation side of things.
I'm trying to stay clear of preservecompilationcontext as it places certain constraints on the environment you roll out to.
Sent from my iPhone

On 28 Jan 2017, at 00:36, jtkech<EMAIL_ADDRESS>wrote:
preservecompilationcontext

No problem i will search on this but i would need more infos on the constraints it places.

@Jetski5822 just done some quick tests but only through Orchard.Cms.Web. Here my findings.

So ok, without preserveCompilationContext there is still a Orchard.Cms.Web.deps.json file (not tried with the cli) and we can still use e.g DependencyContext.Default.RuntimeLibraries. The only difference i've seen is that when the option is used i can get the following.

But without preserveCompilationContext the above collection is empty. We use it to compile modules in the same configuration (Release / Debug) as the ambient app has been built. E.g, the compiler uses it to resolve the binaries paths of referenced projects. Note: When empty we fallback to Default.
That said, if we can't keep this option, here i think we can find another strategy.

Then, i've seen that modules are not compiled / loaded in parallel. I think it's because now there are 1st loaded through LoadFeaturesAsync() when creating the shell. And all LoadExtensionAsync() in a Parallel.ForEach() are now called after. So, maybe just use a parallel loop in LoadFeaturesAsync().
Note: we use MaxDegreeOfParallelism = 4, maybe we can increase it, VStudio uses 8 by default.

Also seen that it creates an app_data folder with a lower case

Then, i started Orchard.Cms.Web and i got the following.

So, i tried a fresh setup, then i got the following.

So, i've tried before your last cleanup commit, then i could run the setup view. But i couldn't submit the setup form. Notice the warning message i had on the 1st view rendering before having input anything.

Best.

@jtkech thanks man for the feedback.
The site loads when I add builder.AddTagHelpersAsServices(); - but you end up with it being in a wierd state.
I've removed the Parallel.ForEach(), and will add it to the extension manager in a later PR when I perf test it.
I have also fixed the app_data casing issue.
If you pull latest you will only see the last error you got, which is to do with missing tag helpers.... I am not sure what is going on to be fair. Even with Compilation Context set to true we would still end up with this issue.
I was trying to avoid preserveCompilationContext as we provide the assemblies at run time. preserveCompilationContext is used for the compilation of razor view, but by providing the assemblies at runtime I have worked around that.
 I am wondering if I am providing something that overrides some other implementation somewhere... I just dont know.
What do you think?

@Jetski5822
preserveCompilationContext

Just re-tried, in fact without this option a .deps.json is still created but with less infos.

From the cli repo: ... .deps.json contains data used for runtime compilation ... without this setting, the compilationOptions will not be present, and it will contain only the runtime targets.

So, no compilation options and only runtime assemblies. Notice that compilation assemblies are not always the same as runtime assemblies. And compile only assembly are not loaded.

We just use the main app compilation options to use the same config (Debug / Release) to compile modules. Then we resolve ourselves modules compilation assemblies through the project model.

But razor compilation also need compilation assemblies retrieved through AssemblyPart which uses DependencyContext, see here.

Test Orchard.Cms.Web

Then, just re-tried with your last commit and, as you, i got the same TagHelper issue. Then, i added AddTagHelpersAsServices() but i still had the weird issue where i can't input anything.

After a quick look, i've seen that now some mvc configurations are done through the Orchard.Mvc module. So it seems that some mvc configurations are done in the context of a child container.

Normally ApplicationParts are already populated with ambient assemblies (our ambient projects, mvc libraries). Then the razor engine retrieve reference from these application parts, see here.

So, i think this is why you now need to retrieve all ambient assemblies. But here, you would need to use DependencyContext (as razor) to retrieve compilation assemblies (not always the same as runtime ones).

Indeed, by moving some configurations to the main app, i could run the setup.

ExtensionLibraryService

If we re-use GetMetadataReferences() (moved to MetadataPaths and not used here), normally we need not to add a _loadedAssemblies if it has its counterpart in _compileOnlyAssemblies. So, maybe better to use Union() in place of Concat().

Note: Here a Lazy initialization was used before because it was called by the razor engine on each request, so to be done only once. But it seems that now this is no more the case.

Best.

@jtkech thanks man, pushed some updates.
I have added a ModularApplicationPart, this should provide all Paths of all assemblies at run time. This is scoped to the request, so that we know we are not serving up modules that are not enabled, which is good.
I have cleaned up the ServiceCollectionExtensions, and added the metadata stuff back in there. That however is no scoped so will need to think about this.
ExtensionLibraryService: reverted the metadata to how you were doing it.
Still hitting that dam TagManager thing. I might have to debug the TagManager stuff.... I think its a bug in their stuff as controllers work....

I think it might be their code... https://github.com/aspnet/Razor/blob/bdbb854bdbde260b3c70f565a93ebbb185a7c5a7/src/Microsoft.AspNetCore.Razor.Runtime/Runtime/TagHelpers/TagHelperTypeResolver.cs#L72
This means that it will try to resolve a reference from the Host and not from the module... Ill override it

Totally!
Sent from my iPhone

On 2 Feb 2017, at 21:03, Sébastien Ros<EMAIL_ADDRESS>wrote:
@sebastienros commented on this pull request.
In src/Microsoft.AspNetCore.Mvc.Modules/Mvc/ModularApplicationPart.cs:

@@ -136,34 +138,12 @@ private static IList GetAssemblies(HashSet assemblyNames, Asse
return locations;
}

   public static IEnumerable<Assembly> GetModularAssemblies(IServiceProvider services)

   public static IEnumerable<TypeInfo> GetModularAssemblies(IServiceProvider services)

Maybe rename the method?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.

Lots of changes today.

Removed custom exceptions and are now using just the raw Exception class.
Updated nancy module, now its super slick.
created a IModularAssemblyProvider to get all assemblies for a given shell. (name might change)
Lots of renaming and moving things.

Next up..

Remove the Microsoft.AspNetCore.Mvc.Modules.Abstractions project.
move HomePageRoute to its own 'thing'
Introduce a Swagger module

@jtkech check it out and give me your thoughts.

@Jetski5822 Sorry for the delay because of other works, just done some tests and here my findings.
Awesome work, i like the idea of the modular app part which is a types and references provider.
So, because you add mvc services through a module, we need to provide more types and references  which are related to the main app, this through app parts or razor options for references.
ModularApplicationPart.Types
Called many times, each call takes 10ms, 20000 types are returned. In fact, here we can 1st consider only extensions but we also need to add dependencies we now load ourselves. So, i've exposed our loaded assemblies and by only doing the following it works, each call takes 1ms and 9000 types are returned.
public IEnumerable<TypeInfo> Types
...
  var serviceProvider = HttpContextAccessor.HttpContext.RequestServices;
  var extensionLibraryServices = serviceProvider.GetRequiredService<IExtensionLibraryService>();
  return extensionLibraryServices.LoadedAssemblies.SelectMany(x => x.DefinedTypes);

ModularApplicationPart.GetReferencePaths()
Called only once and when done here we don't need to do it through razor options. But we can't do it through a regular app part because it would use the dependency context on dynamic loaded modules.
I've seen you use GetReferencedAssemblies() but it is related to loaded runtime assemblies, not compilation ones (which may not be loaded). It can works but you can have e.g the same compilation assembly but different runtime ones according to the environment. By using compilation assemblies (see below) i can see that some of them are referenced in the /refs subfolder where this kind of assemblies are stored.
So, here we can still provide our MetadataPaths but we also need to provide compilation references related to the main app, so to the default dependency context. So, by only doing the following it works. Note: 1st it was not working because i didn't see that preserveCompilationContext on Orchard.Cms.Web was removed again. We need this option to be consistent with runtime compilation, see the last comment here.
public IEnumerable<string> GetReferencePaths()
...
var serviceProvider = HttpContextAccessor.HttpContext.RequestServices;
var extensionLibraryServices = serviceProvider.GetRequiredService<IExtensionLibraryService>();

var assemblyLocations = new List<string>();
assemblyLocations.AddRange(DependencyContext.Default.CompileLibraries.SelectMany(library => library.ResolveReferencePaths()));
var locations = assemblyLocations.Union(extensionLibraryServices.MetadataPaths);

return locations;

Menu
The menu shape implemented through a ShapeTagHelper was not working. It's because services need to be added in the right order, the Orchard.Mvc needs to be called first. I could fix this issue by using a negative priority to this module (higher priorities are called after).
Little things
Unused methods: AddFeatureProvider().
Not sure but in my tests with the above code it also works without AddDefaultFrameworkParts().
If references paths are provided through an app part, no need to do it through razor options.
Dynamic compilation / loading / storing
Here, just to be aware of what we would need because, beyond dynamic compilation, we are very tied to what dynamic loading and storing do specifically.
See all assemblies in Orchard.Mvc bin folder and there is a /refs folder for compilation ones as dotnet build do, and see how this folder is stored in /dependencies. Note: There could be also a /runtimes folder with different runtime ids subfolders as dotnet publish do to store specific runtime assets.
You've done an amazing work and, while we could reconsider what we really need about all the dynamic stuff, you are defining part of the framework dynamically through a module. Just a little afraid :)
Best.

hey @jtkech did you pull latest when you took a look?

No, sorry forgot to mention that i was still on the cleanup and removing things that arent needed commit.
This because i mainly worked on the ModularApplicationPart Types and GetReferencePaths() and i thought that you are using the same here.
So, it works but i'm trying to well understand what happens here and then just add what was missing before. E.g for references, just also add those related to the main app and by using the dependency context to grab compilation assemblies and to be consistent with runtime compilation.
For Types i just re-use the assemblies already loaded when modules was loaded ...
For the menu it's about the main menu on the front end where you have the Home link and which is not displayed. Here we are dependent on the order of module executions. But maybe this now works for you.

@Jetski5822

Just re-tried with your last commit. So, 1st with the menu it's the same, the front end main menu is not displayed (the one which has the Home link).

As mentioned above i can fix it by using a negative priority to the Orchard.Mvc module, this to force its startup execution to run first. But this was breaking the setup.

This because then during a Setup the shape table provider is registered. Then shape tag helpers use shape table provider which uses shell features ... Then, ShellDescriptorManager fails because its _session is null.

I could fix it by adding a null check, then returning an empty ShellDescriptor.
      if (_shellDescriptor == null && _session != null)
      {
          _shellDescriptor = await _session.QueryAsync<ShellDescriptor>().FirstOrDefault();
      }

      return _shellDescriptor ?? new ShellDescriptor();

For Types and References i'll retry with this last commit and update my comments.

Best.

@jtkech hey man, im having issues trying to repo, have you done a git clean -fxd?

Yes.
But notice that the 1st issue was that the main menu (with the Home link) is not rendered.
So, the work around was to use a negative priority to the  Orchard.Mvc module (then it runs 1st).
Then, when doing this, you get the above issue on a new setup.
Best.

Ah okay, im following. Let me have a think about this....

So, step by step, here just about app part Types.
I've seen that the collection of about 20000 types is now cached. In my above solution where i only use dynamic loaded assemblies i have around 10000 types. Then, just for testing i could get a solution with only 2000 types. So, even it is cached maybe good if we can provide only needed types.
So, i'm learning how mvc 1st add app parts when doing AddMvcCore(), see here . It seems they add libraries which reference some of the mvc assemblies and without including these last ones, see here.
Note that it needs to resolve an IHostingEnvironment which is null in our case. So, for testing i got the host from app services, then registered it before calling AddMvcCore(), then no part is added. But if i add in Orchard.Cms.Web a reference to mvc, then i get the following where we can see that it now adds a part.

So, just talking about Types, because here the main app is mvcless, we don't need to provide types coming through the main app, we only need to consider dyn loaded assemblies which is my first solution with 10000 types. But i think we don't need all.
So, for testing i've only use orchard projects main assemblies, here not only modules but also core projects which are not ambient but referenced by modules. Then it works with only 1860 types.
But maybe a problem if a project reference a library which reference an mvc one, then we would need to include the types of this referenced library. But note that in the master branch currently we don't check this when the main assembly of a module is added to an app part.
Need more thinking and will let you know my findings.
Note: About GetReferencePaths() and the needed references of compilation assemblies (not the loaded ones) i'm more clear, i'll post a comment tomorrow.
Best.

While testing the above solution with only 1860 types (seems to work until now), due to some recent changes i found another little issue.
Repro: In the admin edit the main menu content item, the view fails.
To fix it, in MenuPart.Edit.cshtml and MenuItem.Admin.cshtml you need to replace.
Orchard.DisplayManagement.ModelBinding.IModelUpdaterAccessor

To
Orchard.DisplayManagement.ModelBinding.IUpdateModelAccessor

@Jetski5822 about Types here my last findings.
Note: I consider separately IApplicationPartTypeProvider and ICompilationReferencesProvider.
So, just try to understand, maybe i'm wrong but because i could get it working with about 1800 types, maybe worth to try it, this to provide only 1800 types in place of 20000 types and for each tenant.

I've done another test where i call AddMvcCore() on app services. Then an app part is added only if, in one of the ambient projects, i add a reference on one of the primary mvc assemblies (see below). This confirms that here Orchard.Cms.Web is really mvcless, so no need to provide types from the main app.
      // just for testing how mvc adds or not application parts
      var appServices = applicationServices.GetService<IServiceCollection>();
      var appBuilder = appServices.AddMvcCore();

Then, i've tried to do what mvc do with the main runtime libraries and by using the dependency context, but here only on our dyn loaded assemblies and without the dependency context we can't use for them.
Here, a comment grabbed from here.

Returns a list of libraries that references the assemblies in .
By default it returns all assemblies that reference any of the primary MVC assemblies
while ignoring MVC assemblies.

So, i've just copy paste and adapted their GetCandidateAssemblies() to return candidate assemblies based on our LoadedAssemblies which are our modular runtime assemblies. There are modules main assemblies and their dependencies, unless those which are ambient but we don't care here.
So, because here we can't use the dependency context, one adaptation, as you have done, is to use recursively GetReferencedAssemblies(). We can do this here because we don't deal with compilation references. A 2nd adaptation is to not fail if a dependency is not found because ambient to the app.
So, i use it like this, without caching it just for testing. Then seems to work with only 1811 types.
  // not cached, only for testing
  public IEnumerable<TypeInfo> Types
  {
      get
      {
          var serviceProvider = HttpContextAccessor.HttpContext.RequestServices;
          var extensionLibraryServices = serviceProvider.GetRequiredService<IExtensionLibraryService>();

          return GetCandidateAssemblies(extensionLibraryServices.LoadedAssemblies)
              .SelectMany(x => x.DefinedTypes);

          //return AssemblyProvider.GetAssemblies().SelectMany(x => x.DefinedTypes);
      }
  }

Here the implementation of their GetCandidateAssemblies() quickly adapted. I'm sure you can make it simpler and, if it is worth to use it, you could integrate it in the right way.
Note: I already seen some uneeded code in our context, e.g no need to check if there are duplicate assemblies in our LoadedAssemblies, i will update my post when ready.
    internal static HashSet<string> ReferenceAssemblies { get; } = new HashSet<string>(StringComparer.OrdinalIgnoreCase)
    {
        "Microsoft.AspNetCore.Mvc",
        "Microsoft.AspNetCore.Mvc.Abstractions",
        "Microsoft.AspNetCore.Mvc.ApiExplorer",
        "Microsoft.AspNetCore.Mvc.Core",
        "Microsoft.AspNetCore.Mvc.Cors",
        "Microsoft.AspNetCore.Mvc.DataAnnotations",
        "Microsoft.AspNetCore.Mvc.Formatters.Json",
        "Microsoft.AspNetCore.Mvc.Formatters.Xml",
        "Microsoft.AspNetCore.Mvc.Localization",
        "Microsoft.AspNetCore.Mvc.Razor",
        "Microsoft.AspNetCore.Mvc.Razor.Host",
        "Microsoft.AspNetCore.Mvc.TagHelpers",
        "Microsoft.AspNetCore.Mvc.ViewFeatures"
    };

    // Returns a list of assemblies that references the assemblies in <see cref="ReferenceAssemblies"/>.
    // By default it returns all assemblies that reference any of the primary MVC assemblies
    // while ignoring MVC assemblies.
    // Internal for unit testing
    internal static IEnumerable<Assembly> GetCandidateAssemblies(IEnumerable<Assembly> assemblies)
    {
        if (ReferenceAssemblies == null)
        {
            return Enumerable.Empty<Assembly>();
        }

        var candidatesResolver = new CandidateResolver(assemblies, ReferenceAssemblies);
        return candidatesResolver.GetCandidates();
    }

    private class CandidateResolver
    {
        private readonly IDictionary<string, Dependency> _dependencies;

        public CandidateResolver(IEnumerable<Assembly> assemblies, ISet<string> referenceAssemblies)
        {
            var dependenciesWithNoDuplicates = new Dictionary<string, Dependency>(StringComparer.OrdinalIgnoreCase);
            foreach (var assembly in assemblies)
            {
                if (!dependenciesWithNoDuplicates.ContainsKey(assembly.GetName().Name))
                {
                    dependenciesWithNoDuplicates.Add(assembly.GetName().Name, CreateDependency(assembly, referenceAssemblies));
                }
            }

            _dependencies = dependenciesWithNoDuplicates;
        }

        private Dependency CreateDependency(Assembly assembly, ISet<string> referenceAssemblies)
        {
            var classification = DependencyClassification.Unknown;
            if (referenceAssemblies.Contains(assembly.GetName().Name))
            {
                classification = DependencyClassification.MvcReference;
            }

            return new Dependency(assembly, classification);
        }

        private DependencyClassification ComputeClassification(string dependency)
        {
            if (!_dependencies.ContainsKey(dependency))
            {
                return DependencyClassification.Unknown;
            }

            var candidateEntry = _dependencies[dependency];
            if (candidateEntry.Classification != DependencyClassification.Unknown)
            {
                return candidateEntry.Classification;
            }
            else
            {
                var classification = DependencyClassification.NotCandidate;

                foreach (var candidateDependency in candidateEntry.Assembly.GetReferencedAssemblies())
                {
                    var dependencyClassification = ComputeClassification(candidateDependency.Name);
                    if (dependencyClassification == DependencyClassification.Candidate ||
                        dependencyClassification == DependencyClassification.MvcReference)
                    {
                        classification = DependencyClassification.Candidate;
                        break;
                    }
                }

                candidateEntry.Classification = classification;

                return classification;
            }
        }

        public IEnumerable<Assembly> GetCandidates()
        {
            foreach (var dependency in _dependencies)
            {
                if (ComputeClassification(dependency.Key) == DependencyClassification.Candidate)
                {
                    yield return dependency.Value.Assembly;
                }
            }
        }

        private class Dependency
        {
            public Dependency(Assembly assembly, DependencyClassification classification)
            {
                Assembly = assembly;
                Classification = classification;
            }

            public Assembly Assembly { get; }

            public DependencyClassification Classification { get; set; }

            public override string ToString()
            {
                return $"Library: {Assembly.GetName().Name}, Classification: {Classification}";
            }
        }

        private enum DependencyClassification
        {
            Unknown = 0,
            Candidate = 1,
            NotCandidate = 2,
            MvcReference = 3
        }
    }

Best.

Then, about the ICompilationReferencesProvider part.
Here again i'm not sure, just thinking it would be better to use the dependency context, as mvc do, when it is possible, here for the main app. For our modules, where it is not possible, we use the project model which will be obsolete without project json files :(
Note: For a precompiled module without projects json files, we know where compile only assemblies are because when we compile modules we store them in a specific subfolder as dotnet do.
So here, in our context, for runtime compilation of razor views we need to add framework references. So here i use the default dependency context to grab CompileLibraries related to the main app. Then i do an Union() on our MetadataPaths related to our modular compilation assemblies.
So, here the goal is to reference compilation assemblies which can be different of runtime ones and then stored in different loacations. As mentioned, to use this solution we need the preserveCompilationContext option on the main app. Note: we also use this option to determine under which config we compile modules.
Note: If we add MetadataPaths here, we don't need to do it through the razor view engine options.
var serviceProvider = HttpContextAccessor.HttpContext.RequestServices;
var extensionLibraryServices = serviceProvider.GetRequiredService<IExtensionLibraryService>();

return DependencyContext.Default.CompileLibraries
    .SelectMany(library => library.ResolveReferencePaths())
    .Union(extensionLibraryServices.MetadataPaths);

//return AssemblyProvider.GetAssemblies().Select(x => x.Location);

Best.

Just for infos i had an issue when starting a Tenant setup.
Same kind of issue we already fixed but on the main setup, shape tag helpers need shape table manager which needs shell features which needs shell descriptor ... But here the message was saying that Alpha_Document is not valide.
I'm not based on your recent commits, so maybe it is already fixed. So, just for infos, here i could fix it by checking the tenant state.
public async Task<ShellDescriptor> GetShellDescriptorAsync()
{
    // Prevent multiple queries during the same request
    if (_shellDescriptor == null && _session != null && _shellSettings.State != TenantState.Uninitialized)
    {
        _shellDescriptor = await _session.QueryAsync<ShellDescriptor>().FirstOrDefault();
    }

    return _shellDescriptor ?? new ShellDescriptor();
}

Best.

@jtkech TBH I am a bit confused :).
Fancy doing a PR to my branch with your ideas?

Ok, you're right i will do it, not so easy to be clear because i'm discovering things ;)
So, the idea is to provide Types only from assemblies which reference a primary mvc assembly (without including the mvc ones), as mvc do. E.g not provide the 1842 types from System.Private.Corelib. Note: i'm trying to make the above code simpler, e.g without an hardcoded list of primary mvc assemblies names.
About RefPaths, the goal is to use the right compilation references by using the dependency context. Here, as a bad example, from the package storage in a dev env, otherwise e.g from the runtime refs subfolder.
"C:\\Users\\JeanThierry\\.nuget\\packages\\System.Linq\\4.3.0\\ref/netstandard1.6/System.Linq.dll"
"C:\\Users\\JeanThierry\\.nuget\\packages\\System.Linq.Expressions\\4.3.0\\ref/netstandard1.6/System.Linq.Expressions.dll"

When using GetReferencedAssemblies()
"C:\\Program Files\\dotnet\\shared\\Microsoft.NETCore.App\\1.1.0\\System.Linq.dll"
"C:\\Program Files\\dotnet\\shared\\Microsoft.NETCore.App\\1.1.0\\System.Linq.Expressions.dll"

One of the side effects could be as described in this comment (from an mvc issue) i think is still valid.

A side effect of this was that the view could be compiling against newer APIs than the app targets (for instance when the app targets net451 but is running using net452)

So, when ready i will rebase and do a PR to show the ideas. Note: i will just consider the mvc part, so maybe it could break what is done e.g for the nancy part.
Best.

Okay so woke up with a solution...
At the moment I'm saying that what goes in to the compilation references is the same as what's returned from the modular assembly part. This is wrong.
I will change this! Fail!
Sent from my iPhone

On 7 Feb 2017, at 22:56, jtkech<EMAIL_ADDRESS>wrote:
Ok, you're right i will do it, not so easy to be clear because i'm discovering things ;)
So, the idea is to provide Types only from assemblies which reference a primary mvc assembly (without including the mvc ones), as mvc do. E.g not provide the 1842 types from System.Private.Corelib. Note: i'm trying to make the above code simpler, e.g without an hardcoded list of primary mvc assemblies names.
About RefPaths, the goal is to use the right compilation references by using the dependency context. Here, as a bad example, from the package storage in a dev env, otherwise e.g from the runtime refs subfolder.
"C:\Users\JeanThierry\.nuget\packages\System.Linq\4.3.0\ref/netstandard1.6/System.Linq.dll"
"C:\Users\JeanThierry\.nuget\packages\System.Linq.Expressions\4.3.0\ref/netstandard1.6/System.Linq.Expressions.dll"
When using GetReferencedAssemblies()
"C:\Program Files\dotnet\shared\Microsoft.NETCore.App\1.1.0\System.Linq.dll"
"C:\Program Files\dotnet\shared\Microsoft.NETCore.App\1.1.0\System.Linq.Expressions.dll"
One of the side effects could be as described in this comment (from an mvc issue) i think is still valid.
A side effect of this was that the view could be compiling against newer APIs than the app targets (for instance when the app targets net451 but is running using net452)
So, when ready i will rebase and do a PR to show the ideas. Note: i will just consider the mvc part, so maybe it could break what is done e.g for the nancy part.
Best.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.

@jtkech Or menu shows, site kicks up. I think there is an issue with the Layouts modules but @sebastienros is going to take a look at that.
The menu is also displaying. I changed how Types are returned too... check it out.

@Jetski5822
I was quite ready to create a PR to show the ideas and all seemed to work on my side. But now i think it's better to 1st do a rebase to see what is done and check it, then maybe create a PR. I will do it.
Meanwhile, after a quick look of some of your recent commits. But need to check it again.

When i was saying to use preserveCompilationContext it was only for the main app Orchard.Cms.Web, not for modules. This to use the dependency context but only for the main app, not for modules.

Note: without this option we can still use a dependency context for runtime assemblies, but not for compilation ones. We could use this option for modules but it adds many libraries in modules bin folders and as i remember there was some problems with modules assemblies which have not an entry point.
Note: So, currently for modules we use the project model. Notice that there are already more assemblies in modules bin folders because of dependencies of mvc assemblies which are now not ambient.

So, i use the dependency context only to retrieve compilation references of the main application. For our modules we resolve ourselves compilation references (MetadataPaths).

For Types we need runtime assemblies but here only those that are dynamically loaded because the app is mvcless. And here also we resolve ourselves our modules runtimes assemblies (LoadedAssemblies) which are main assemblies of modules and their non ambient dependencies which are dyn loaded.

So, for Types i use LoadedAssemblies but i have also adapted GetCandidateAssemblies() to not use dependency context because we already provide just needed dynamically loaded dependencies.

But here i need to check it again to see what happens with your last code. Will do it soon.
Best.

@sebastienros can you try a bit of perf on this now.
I still need to look at the amount of types we return for the ModularApplicationPart....

Will try. Also don't forget our discussion about the fact that ModularApplicationPart should actually be a FeatureApplicationPart.

Yeah I will rename

This code:
        public IEnumerable<TypeInfo> Types
        {
            get
            {
                return DefaultAssemblyDiscoveryProvider
                    .DiscoverAssemblies(
                        ShellBlueprint.Dependencies.Select(dep => dep.Type.GetTypeInfo().Assembly).ToList(),
                        ReferenceAssemblies)
                    .SelectMany(x => x.DefinedTypes);
            }
        }

It's returning all the types of all the dependency assemblies. It should only return the types from the ShellBlueprint. That's why you renamed it ShellFeaturePart.

@sebastienros you think I should have two application parts? one for the shell assemblies, and one for the dependencies?

Maybe as many as there are features, or just one with all features, but they should return only the TYPES that are white listed from the features list, not the full assemblies. You don't want a Controller from a feature that hasn't been enabled. This is why the types from the ShellBluePrint are a very convenient way to do that, they are already filtered.

Couldnt I use ITypeFeatureProvider here?

Why can't you return the types of the ShellBluePrint, explain to me what the issue is, looks like I am missing something.

You think we should be doing this...;???
        public IEnumerable<TypeInfo> Types
        {
            get
            {
                return ShellBlueprint
                    .Dependencies
                    .Select(dep => dep.Type.GetTypeInfo().Assembly)
                    .Distinct()
                    .SelectMany(a => a.DefinedTypes);
            }
        }

        /// <inheritdoc />
        public IEnumerable<string> GetReferencePaths()
        {
            return ShellBlueprint
                .Dependencies
                .Select(dep => dep.Type.GetTypeInfo().Assembly)
                .Distinct()
                .Select(a => a.Location);
        }

The issue is the mvc framework needs all the compilation libs too.... its a bit weird. Try it, you will see.

I don't think you get my point, you are still loading all the types of the assemblies.
We already talked about it on skype, i thought it was clear. An extension has an Assembly, but can convey multiple features. Each feature can be enabled independently. MVC should only register the types from the enabled features. Hence you can't return all the types of the assembly when for instance a single feature of this extension is enabled.
The ShellBluePrint contains a collection of types already filtered with only the types associated to the enabled features.
Here is something that should do it:
public IEnumerable<TypeInfo> Types
        {
            get
            {
                return ShellBlueprint
                    .Dependencies
                    .SelectMany(dep => dep.Type);
            }
        }

As for the other property (GetReferencePath) I don't know what it represent.

Oops, I was running out the door.
That doesn't work as MVC doesn't have the required types to compile.
Will look when I get back, but yeah... it's a bit dumb
Sent from my iPhone

On 13 Feb 2017, at 17:21, Sébastien Ros<EMAIL_ADDRESS>wrote:
I don't think you get my point, you are still loading all the types of the assemblies.
We already talked about it on skype, i thought it was clear. An extension has an Assembly, but can convey multiple features. Each feature can be enabled independently. MVC should only register the types from the enabled features. Hence you can't return all the types of the assembly when for instance a single feature of this extension is enabled.
The ShellBluePrint contains a collection of types already filtered with only the types associated to the enabled features.
Here is something that should do it:
public IEnumerable Types
{
get
{
return ShellBlueprint
.Dependencies
.SelectMany(dep => dep.Type);
}
}
As for the other property (GetReferencePath) I don't know what it represent.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.

maybe you need another ApplicationPArt with something else, and it worked because you just returned everything with this one. What are the missing types?
Also you might keep the same current code for GetReferencePaths (this is for RAzor I think)

Here, just for infos the last time i tried nick's branch (not with the latest commits).
Types
Before, by using GetReferencedAssemblies() about 20000 types was provided, but now, because dependency context doesn't work on a dyn loaded assembly, only 259 Types are provided, only those related to main modules assemblies, not their dependencies, which is not enough.
So, i still use GetReferencedAssemblies() on shell features assemblies, but only those which are dyn loaded (app is mvcless) and that reference a primary mvc assembly. Then 1760 Types are provided.
References
Here we need the ambient framework compilation assemblies because AddMvcCore() is not done at the app level. I think we will not need it if we reference modules and then Orchard.Mvc through the main app.
So right now, i use DependencyContext.Default.CompileLibraries.
And, for the non ambient libraries, here also we can't use the dependency context, so right now i use our ExtensionLibraryService.ReferencePaths which uses the project model (here not filtered by features).
Best.

When re-trying my branch, just seen that again the main menu was not always rendered. Not sure it's the case with your branch but i've seen that now the 2 LoadFeaturesAsync() no longer return ordered features.
So, because of the blueprint features order, even Orchard.Mvc has a negative priority, its startup is not always executed first, so shape tag helpers may not be registered ...
Just for infos i could fix it with this temporary workaround.
Best.

@jtkech hang on dude, I'm breaking things at the moment. Use the code before the commit WIP
Sent from my iPhone

On 14 Feb 2017, at 06:18, jtkech<EMAIL_ADDRESS>wrote:
When re-trying my branch, just seen that again the main menu was not always rendered. Not sure it's the case with your branch but i've seen that now the 2 LoadFeaturesAsync() no longer return ordered features.
So, because of the blueprint features order, even Orchard.Mvc has a negative priority, its startup is not always executed first, so shape tag helpers may not be registered ...
Just for infos i could fix it with this temporary workaround.
Best.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.

@Jetski5822
Just for infos, after all the updates i also had an issue due to bg tasks running during a fresh setup. If you get the same, see here #583 how i fixed it on my side.
Have a good harvest.

What!!! @jtkech you not gunna be there?
Sent from my iPhone

On 18 Feb 2017, at 17:38, jtkech<EMAIL_ADDRESS>wrote:
@Jetski5822
Just for infos, after all the updates i also had an issue due to bg tasks running during a fresh setup. If you get the same, see here #583 how i fixed it on my side.
Have a good harvest.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.

Not, sorry. Promised, next year ;)

@sebastienros Can we now merge this?

I'm ok with the current implementation, i was too polarized on assemblies deps and types and then not on those related to shell features. So, here only 2 remarks.

Just for infos mvc uses DefinedTypes and we are using ExportedTypes.

Maybe not important but for infos when we create a tenant container, there are also DIed types that we add to typeFeatureProvider but which are not added to shellBluePrint types.

That said, if it is still possible to have some missing types as we seen with shape helpers, i have another suggestion which maybe will provide a more complete list of types (without custom code).
The strategy is to 1st grab all mvc types by using the mvc DefaultAssemblyPartDiscoveryProvider (not a custom one). Then, we exclude types which are specific to features which are not enabled.
Here, how app mvc types could be grabbed and cached. Then the same list is used by all tenants.
            // we use the public static mvc class which filter mvc types

            _applicationTypes = DefaultAssemblyPartDiscoveryProvider
                .DiscoverAssemblyParts(hostingEnvironment.ApplicationName)
                .Where(p => p is AssemblyPart)
                .SelectMany(p => (p as AssemblyPart).Assembly.ExportedTypes);

            //Note: for each part we could use the regular Types property (but more types)

Then, for a given tenant, something like this.
            var excludedTypes = extensionManager
                .LoadFeaturesAsync().GetAwaiter().GetResult()
                .Except(shellBluePrint.Dependencies.Values.Distinct())
                .SelectMany(f => f.ExportedTypes);

            return GetApplicationTypes()
                .Except(excludedTypes)
                .Select(type => type.GetTypeInfo());

I will do a PR just as a suggestion.
I hope your harvest presentation was great and that there will be a video.


[IGNORE]Angular dependency update

Just testing these.

Next time you can simply send it as a draft PR.


BUG Fix critical issue with incorrectly saved session data

Removed / cleared information was not being correctly unset from $_SESSION on save. Data could be unset via the following ways:

Session::set() being called with a replacement array, with a set of keys which may not match existing data
Session::clear() being called on either a top level item or a nested item.

This fix ensures that:

Partial unsets on arrays are properly completed
clear() actually removes these values from the resulting $_SESSION, and doesn't simply leave hanging array keys with null values

New methods are marked as @internal because otherwise it's not semver.

Ok done @flamerohr

is 3.x not affected?

@tractorcow mentioned this dates back to 2.x days... so most likely will need to prod him to backport it next week :)


Allow gettext's placeholders

Hi!
In pybabel you could use _("$(name)s's house", name = "Garito")
Whould be nice to have it here
Thanks!

The other way of writing it looks good if supported...
from fastapi_babel.core import lazy_gettext as _l
_l("Not support type: {mytype}").format(mytype=cls._type)

But I got an error:

AttributeError: '__LazyText' object has no attribute 'format'

In my mind, fastapi-babel should mimick pybabel as much as possible, otherwise should not be called fastapi-babel

In my mind, fastapi-babel should mimick pybabel as much as possible, otherwise should not be called fastapi-babel

Is it better to mimic babel/python's original gettext? And not pybabel?

python gettext doesn't allow placeholders and, with fastapi-babel, one expects the pybabel api integrated as well as possible with fastapi, no?

@Garito

Python gettext doesn't allow placeholders and, with fastapi-babel, one expects the pybabel API integrated as well as possible with fastapi, no?

I agree with you but we have to consider backend ecosystems like databases, forms, views, templates, and so on.
so we have to make some APIs that work well with pybabel and Fastapi. I am working on some issues that handle all conflicts.

The other way of writing it looks good if supported...
from fastapi_babel.core import lazy_gettext as _l
_l("Not support type: {mytype}").format(mytype=cls._type)

But I got an error:

AttributeError: '__LazyText' object has no attribute 'format'

Add one thing: gettext supports format but lazy_gettext does not, I think it should have methods supported by string objects, otherwise, it would be weird.

LazyGettext is not the main gettext, It's only a wrapper around the gettext object that when we need to apply translation texts into params without calling them explicitly like database orm fields, Wtform model fields, and ...
so you cannot merge these two approaches and invoke them directly from the initialized object.
for example:
from fastapi_babel.core import lazy_gettext as _

class Model(BaseModel):
     text: str = Field(default=_("Write what you want")

model = Model()
model.text.format()

Hi! In pybabel you could use _("$(name)s's house", name = "Garito") Whould be nice to have it here
Thanks!

the best approach is:

name = "Parsa"
welcome_text = _("Welcome %s" % name)

If this works well with po editors and allows the normal string formatting, would be good for my part

@Garito
I have been many issues and please upgrade your babel

The new version raises this error:
ImportError: cannot import name '_context_var' from 'fastapi_babel.core' (/usr/local/lib/python3.12/site-packages/fastapi_babel/core.py)
Should I open a new issue?

@Garito
I have checked everything
please refactor your code:
from fastapi_babel import Babel, _, BabelConfigs, BabelMiddleware
from fastapi import FastAPI

app = FastAPI()
babel_config = BabelConfigs(
    __file__,
    BABEL_DEFAULT_LOCALE="en",
    BABEL_TRANSLATION_DIRECTORY="lang",
)
babel = Babel(babel_config)

app.add_middleware(BabelMiddleware, babel_configs=babel_config)

uninstall previous version and install it again

or use this
from fastapi_babel.local_context import context_var


Addon wont save after map change

This addon wont write the text files for some reason on the server. It is not saving changes between map changes and reboots.

These are the ONLY addons that i have installed as a test and it still wont create or write the config files called restrictions.txt, log.txt, and loadouts.txt.
Build Mode (chat command) - View on Workshop
CustomCommands - View on Workshop
ULib - View on Workshop
ULX - View on Workshop
ULX Cleanup Kit - View on Workshop
ULX Server Mail - View on Workshop
WUMA - View on Workshop

ok i went through your coding and corrected a couple things. Changing the directories to the ulx directory corrected the problem. Here is the corrected code.
16 --Paths
17 WUMA.DataDirectory = "ulx/"
18 WUMA.SharedDirectroy = "wuma/shared/"
19 WUMA.ClientDirectory = "wuma/client/"
20 WUMA.ObjectsDirectory = "wuma/objects/"
21 WUMA.UserDataDirectory = "ulx/"
22WUMA.HomeDirectory = "wuma/"
Changing the directories allowed xgui to write to those directories and now the config files are being written and loaded properly.

Restore the addon to its orginal state and change data_save_delay option in Advanced Server Settings to 0. That will make the changes to be saved to file immediately, check if the changes get saved between map changes and reboots.

This was fixed by 4dcd2bff4416bc27b4d33a9f90b3bf6da2fcf78c
Thank you for bringing this to my attention.


help

May I ask why the dsc coefficient of isic2017 data set in the paper is only 85.95, I see many papers are above 90

Thanks for your observation. We have 85.95% DICE score because we reported the DICE score in the original competition test split. However, if you use your own train, val, and test splits, you will get more than 90% DICE score.


Postgres Enum Support

Describe the bug
Code generation fails for Postgres Enums.
--
-- Name: task_type; Type: TYPE; Schema: tasks; Owner: -
--

CREATE TYPE tasks.task_type AS ENUM (
    'S3:INIT',
    'PCAP:MERGE',
    'CTRL:SUBMIT',
    'CTRL:STOP'
);

CREATE TABLE tasks.task (
    task_id bigint NOT NULL,
    task_reference text,
    context_id smallint,
    task_type tasks.task_type NOT NULL,
    task_status tasks.task_status NOT NULL,
    creation_date timestamp with time zone DEFAULT now() NOT NULL,
    last_modified timestamp with time zone DEFAULT now() NOT NULL,
    task_data jsonb DEFAULT '{}'::jsonb,
    CONSTRAINT referencechk CHECK ((char_length(task_reference) <= 20))
);

jet    -dsn="postgresql://ht_controller_user:secret@localhost:5432/funcap_controller?sslmode=disable" -schema=tasks -path=./.gen
Connecting to postgres database...
Retrieving schema information...
FOUND 2 table(s), 0 view(s), 2 enum(s)
Destination directory: .gen/funcap_controller/tasks
Cleaning up destination directory...
Generating table model files...
Generating enum model files...
Error trace:

failed to generate schema tasks:
&{%!d(string=failed to generate model types:
failed to process enum types:
failed to save 'task_type' enum type:
failed to format 'task_type', check '.gen/funcap_controller/tasks/model/task_type.go' for syntax errors:
16:13:
expected ';', found ':' (and 3 more errors))<PHONE_NUMBER>904}

**Environment (please complete the following information):**
 - OS: [e.g. linux, windows, macosx]
 - Database: [e.g. postgres, mysql, sqlite]
-  Database driver: [e.g. pq, pgx]
 - Jet version [e.g. 2.6.0 or branch name]

**Code snippet**

Generated Code:

```go
const (
	TaskType_S3:init TaskType = "S3:INIT"
	TaskType_Pcap:merge TaskType = "PCAP:MERGE"
	TaskType_Ctrl:submit TaskType = "CTRL:SUBMIT"
	TaskType_Ctrl:stop TaskType = "CTRL:STOP"
)

Obviously this fails as it's invalid Go syntax.
Expected behavior
The code to actually generate without errors.

You can customize the generator, and replace : character with a character of your choosing. https://github.com/go-jet/jet/wiki/Generator#generator-customization

I'm assuming that the only way to do this, is if you invoke the Generator from code?

I've made a quick fix for this bug on bug290 branch. Special characters are removed from go identifiers.

Sounds good, thank you!

I've changed my mind on this one. There were couple of bugs opened before for similar invalid character issues. To prevent any additional bugs from opening, I've made a change on master that does not remove but replaces all invalid ascii characters with the description.
So in your case, it would be S3ColonInit for S3:Init enum value.

That seems like a perfectly reasonable change. Thanks for the update.

Fixed in Release v2.11.0.


no stats.db3

Hello,
I just installed the wp-update-server-stats. It keeps saying "Error: Database hasn't been initialised. See readme.md for usage instructions.". i Can not find the database file anywhere. How do i get the database with correct tables. Do i need to create it by myself or am i missing a package?

Have you executed the update command listed in the Usage section? If not, do that to initialise the database.

Aaah maybe that it is! So i need to install the wp-update-server package on a different location inside the same domain to gain access to the logs so i can run the updater? Then i will get the database?

As the usage instructions say, this tool works by analysing log files. And yes, the easiest way to get access to logs would be to install it on the same site as the update server.
However, if you don't want to do that, you can install it elsewhere and then manually copy the logs from the update server to that location (and then run the update command). It works, but it takes more time.


For 7.1.x: move http 408 response logic into transaction

[approve ci fedora]

[approve ci fedora]

[approve ci fedora-github]

Could you append commit id and uncomment the conflicted files in commit message? :)
https://cwiki.apache.org/confluence/display/TS/Git#Git-Cherry-Pick

@masaori335 updated!

Looks good. The Release Manager will merge this :)

[approve ci fedora]


CCL paper

With the renaming of the CCL branch, the old pull request #247 was closed. I'm opening it again, now with he new branch. We should bear in mind the comment thread in the old one though.

For reference, here are @timeifler's comments:
https://www.dropbox.com/s/194um1za83qtnv2/ccl_paper.pdf?dl=0
Updates will follow.


Add Schedule Airing Feature.

Describe your suggested feature
Hello! Please add this (Schedule Airing) feature.
This feature helps you to find ongoing,upcoming animes for a week.
This feature has been used by many anime sites like miruro etc. but they don't have anime app.
So I hope you add this feature.
Thank you.
Other details

Acknowledgements

[X] I have searched the existing issues and this is a new ticket, NOT a duplicate or related to another open or closed issue.
[X] I have written a short but informative title.
[X] If this is a request regarding an extension, I should be opening an issue in the extension's repository.
[X] I have updated the app to version <IP_ADDRESS>.
[X] I will fill out all of the requested information in this form.

Duplicate of #1414


Images are rotated 90 degrees after capture on Android

When I capture an image on Android the produced image is rotated 90 degrees no matter the Rotation configuration, on iPhone it works fine though.
Tested on: Pixel 8 pro, Pixel 6a, and samsung s23 ultra.
vide: https://drive.google.com/file/d/18800sMrycA-a-STcLOG6A20CgBbi4GBJ/view?usp=sharing

Hi! Same issue.
Tested on: Pixel 9 pro, Pixel 7a.

I have reproduced the issue thanks for taking time out for testing and the video. Will try to fix this asap

Please check this fix by a friend of mine on another library that had a similar issue, it could be helpful:
https://github.com/MoyuruAizawa/Cropify/pull/26

Hey @RaedGhazal  , apologies for the delay. It's a fairly common issue in Android, and I already know the fix. I've been traveling a lot lately, but I'll make sure to address it this week.


english spaCy models not found in spacy-en docker image

Rasa version: latest (1.5.0a1), also tested on 1.4.5 (most recent stable release)
Operating system (windows, osx, ...): running docker-ce on debian 10
Issue: When using the rasa/rasa:latest-spacy-en docker image, starting the HTTP API and trying to train NLU, the server reports that the spaCy models are not installed/linked. (Note: I also tried version 1.4.5). When using the rasa/rasa:latest-full docker image instead, there are no issues.
Error (including full traceback):
{"version":"1.5.0a1","status":"failure","message":"An unexpected error occurred during training. Error: Model 'en' is not a linked spaCy model.  Please download and\/or link a spaCy model, e.g. by running:\npython -m spacy download en_core_web_md\npython -m spacy link en_core_web_md en","reason":"TrainingError","details":{},"help":null,"code":500}

Command or request that led to error:
$ docker run -p 5005:5005 rasa/rasa:latest-spacy-en run --enable-api
$ curl --header "Content-Type: application/json" \
    --request POST \
    --data '{"config": "language: en\npipeline: pretrained_embeddings_spacy", "nlu": "## intent:test\n- Please run the tests\n", "force": true, "save_to_default_model_directory": true}' \
    http://localhost:5005/model/train

Content of configuration file (config.yml) (if relevant):
language: "en"
pipeline: "pretrained_embeddings_spacy"

I'm sorry, it looks like latest-full in fact has the same issue. It works as expected in version 1.4.1-full. Im going to test a few more tags and report my results by editing this comment.

Thanks for raising this issue, @erohmensing will get back to you about it soon✨
Please also check out the docs and the forum in case your issue was raised there too 🤗

Thanks for the detailed write up of what works! I'm looking into it, so far the linking seems to work fine when i build locally from master but will check it out.

The issue is fixed in the current latest-image, thanks!


IDeleteLogRow cannot log DeleteUserIdField when GuidField is used.

I am using using serenity to develop an application. I changed the default Id to Guid as it is of requirement.So i noticed that
IDeleteLogRow cannot log DeleteUserIdField when GuidField is used.

Delete log and other logs expects numerical ids due to historical reasons. You may implement your own behavior / interface.


Fix exception when core type cannot be read

Log "unknown" for core type when it cannot be read rather than raising a KeyError. This makes it possible to run scripts on locked ST targets.

CC @brianesquilona

/morph test


Change exit code of clang-format

Because clang-format always returns an exit code of 0,
We must check the output of the clang-format as a law string
and re-returns exit code 0 or 1.
So I would like to change clang-format exit code.

There is no need to change format (exit 0).
There is need to change format (exit 1).

Finally, I want to contribute this to the upstream.
ISSUE=#191

LGTM.

Please review @romandev , @nadongguri
I update clang format logic !

LGTM :)

build error is about electron-rebuild

@yjaeseok LGTM but I'll merge this patch after fixing bot error.


MLZ Configuration Resources (TF State, Key Vaults) are always created in the Hub subscription

Description
Should I try a multi-subscription deployment with a subscription for MLZ configuration other than the hub like below, applying Terraform via deploy.sh will fail because it will always look in the hub subscription for the Terraform state storage account:
src/scripts/deploy.sh -s {config_sub_id} \
-u {hub_sub_id} \
-0 {t0_sub_id} \
-1 {t1_sub_id} \
-2 {t2_sub_id} \
-3 {t3_sub_id}

Steps to Reproduce
Steps to reproduce the behavior:

Run deploy.sh with a configuration subscription -s as a subscription other than the Hub subscription -u
You'll receive this error: Terraform State Resource Group '{the tf state account}' does not exist...validate config.vars file and re-run script

Expected behavior
I can deploy the MLZ configuration resources into whatever subscription I want
Actual behavior
MLZ configuration resources always end up in the Hub subscription.

+@RKauf00


irmin-pack: fast migration to lower by copy

(builds on top of #2204)
A draft for the fast migration when enabling lower volumes from an existing store (which only had an upper suffix file, never garbage collected or chunk splitted). I went with a file copy rather than a move when initializing the lower volume to avoid any surprise if the operation fails midway... it should be as efficient as a rename when happening on the same hard drive anyway :) But the code is still missing some way of recovering and cleaning up the drive if the migration fails!

Codecov Report

Merging #2205 (15e299e) into main (101dccf) will increase coverage by 0.05%.
The diff coverage is 76.36%.

:exclamation: Current head 15e299e differs from pull request most recent head d67aaec. Consider uploading reports for the commit d67aaec to get more accurate results

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
@@            Coverage Diff             @@
##             main    #2205      +/-   ##
==========================================
+ Coverage   67.95%   68.01%   +0.05%
==========================================
  Files         135      135
  Lines       16435    16472      +37
==========================================
+ Hits        11168    11203      +35
- Misses       5267     5269       +2

Impacted Files
Coverage Δ

src/irmin-pack/unix/control_file_intf.ml
82.14% <ø> (ø)

src/irmin-pack/unix/errors.ml
28.88% <ø> (ø)

src/irmin-pack/unix/io_errors.ml
58.33% <ø> (ø)

src/irmin-pack/unix/file_manager.ml
84.67% <75.75%> (-0.61%)
:arrow_down:

src/irmin-pack/unix/lower.ml
63.69% <77.27%> (+5.48%)
:arrow_up:

src/irmin-fs/unix/irmin_fs_unix.ml
67.74% <0.00%> (-0.65%)
:arrow_down:

src/irmin-test/store.ml
94.89% <0.00%> (-0.06%)
:arrow_down:

src/irmin-pack/unix/sparse_file.ml
77.98% <0.00%> (+1.83%)
:arrow_up:

src/irmin-pack/unix/utils.ml
93.10% <0.00%> (+3.44%)
:arrow_up:

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Help: Use a production WSGI server instead

Hello and thank you for this great API.
when running the server using the command: youtube-dl-server
i get a waring saying:
Serving Flask app 'youtube_dl_server.app' (lazy loading)
 * Environment: production
   WARNING: This is a development server. Do not use it in a production deployment.
   Use a production WSGI server instead.

can please someone help here to tell, what changes needed to be done, to run the server as WSGI.
i made some google search and tried waitress and Gevent but unfortunately i didn't get it to work.

You can use gunicorn like this (running from root of this repository):
gunicorn --bind <IP_ADDRESS>:8080 youtube_dl_server.app:app

There's also a pull request about docker (#78), I've commented with a Dockerfile using gunicorn, so you can use that as well.


Fix platform detection

The merge https://github.com/liteflow-labs/demo/pull/8 removed the platform detection that is needed to have the .liteflow.dev automatically detected.
This PR adds it back and update the code to reduce as much as possible changes from the starter kit

@ismailToyran just added you so you get the notification, this demo is particular and requires a custom detection that has been removed during the merge


Support composite primary keys

I believe this should be straightforward. There's a couple of things to consider

Right now Table::PrimaryKey has the constraint Column<Table=Self>. Unsure if we want to relax that to SelectableExpression, or if we want to introduce the Columns trait. We could even implement Column for tuples now if we really want to, as there's no longer any automatically added behaviors.
With the way our type system is set up, conn.find(&posts_tags, &(1, 1)) would be more likely to generate SELECT * FROM posts_tags WHERE (post_id, tag_id) = $1, instead of SELECT * FROM posts_tags WHERE post_id = $1 AND tag_id = $2. Might be fine for an initial implementation, but we do eventually need to solve this to support other databases.

This will likely be much easier once we implement the Identifiable trait that we're looking to add to support associations as part of 0.6


Added new Strings and fixed some others

Added new Strings out of the en.json and translated them and fixed some others.

Nice! If you're really hardcore into translating, the sv.json has some hints how to translate more dynamic fields lol
No idea how many people are gonna use translations honestly, mostly just a programming exercise.

I will take a look. But now I'm tired and have to go to sleep now. have a good one.


[Bug]: Suggestion from LS with quoted Identifier in Open API

Description

For the above cursor position, the completion gives by the LS is
import ballerina/http;
import ballerinax/wso2.apim.catalog as _;
import ballerina/openapi;

@openapi:ServiceInfo {
    'version: ""
}
service /sales on new http:Listener(9098) {
    resource function get orders() {

    }

    resource function get customers() {

    }
}

Imo, it should give the suggestion without quoted variable
import ballerina/http;
import ballerinax/wso2.apim.catalog as _;
import ballerina/openapi;

@openapi:ServiceInfo {
    version: ""
}

Steps to Reproduce
No response
Affected Version(s)
No response
OS, DB, other environment details and versions
No response
Related area
-> Compilation
Related issue(s) (optional)
No response
Suggested label(s) (optional)
No response
Suggested assignee(s) (optional)
No response

This is caused by the OpenAPI library itself since the record definition has declared version as a quoted field name.
https://github.com/ballerina-platform/openapi-tools/blob/388a2b4685d61b5874a3246a47c8e223d4fd2ea0/module-ballerina-openapi/annotation.bal#L36


Add IUH University into the domains

@kriscao123 I am sorry, the domain student.iuh.edu.vn is removed from our trusted domains list because it was abused in the past. If you are the student of this school, please enroll to GitHub Student Developer Program. Then apply for JetBrains educational subscription with your GitHub account (GitHub tab at https://www.jetbrains.com/shop/eform/students).


Bug fix for issue #155

#155

Fix for prematurely released view models.
I have run the tests, but I was unable to test the ORM plugins. I could not get the dependencies working in my environment. Sorry about that. It does seem to pass the knockback core tests though.
I'll include the full test output below.
additional comments in issue #155 discussion.
[22:54:58] Starting 'test'...
[22:54:58] Running Node.js tests
DISABLING TESTS FOR SUPERMODEL - DOES NOT SUPPORT LATEST BACKBONE.JS

  ․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․․

  127 passing (1s)
  20 failing

  1) defaults @quick @defaults 1. Standard use case: just enough to get the picture:
     TypeError: kb.Backbone.ModelRef is not a constructor
    at Context.<anonymous> (test/spec/plugins/localization_and_defaults.tests.coffee:736:23)

  2) defaults @quick @defaults 2. Standard use case with kb.ViewModels:
     TypeError: kb.Backbone.ModelRef is not a constructor
    at Context.<anonymous> (test/spec/plugins/localization_and_defaults.tests.coffee:813:23)

  3) Knockback.js with Backbone-Associations.js @backbone-associations TEST DEPENDENCY MISSING:
     AssertionError: Backbone.Associations: expected false to be truthy
    at Function.assert.isOk (node_modules/chai/lib/chai/interface/assert.js:85:31)
    at Context.<anonymous> (test/spec/ecosystem/backbone-associations.tests.coffee:18:12)

  4) Knockback.js with Backbone.ModelRef.js @backbone-modelref TEST DEPENDENCY MISSING:
     AssertionError: Backbone.ModelRef: expected false to be truthy
    at Function.assert.isOk (node_modules/chai/lib/chai/interface/assert.js:85:31)
    at Context.<anonymous> (test/spec/ecosystem/backbone-modelref.tests.coffee:15:12)

  5) Knockback.js with BackboneORM @backbone-orm 1. Model with HasMany relations: A house with multiple people living in it:
     Error: the string "findOrCreate requires object data" was thrown, throw an Error :)

  6) Knockback.js with BackboneORM @backbone-orm 2. Collection with models with HasMany relations: Multiple houses with multiple people living in them:
     Error: the string "findOrCreate requires object data" was thrown, throw an Error :)

  7) Knockback.js with BackboneORM @backbone-orm 3. Model with recursive HasMany relations: Person with users who are people:
     Error: the string "findOrCreate requires object data" was thrown, throw an Error :)

  8) Knockback.js with BackboneORM @backbone-orm 4. After view model create, add models:
     Error: the string "findOrCreate requires object data" was thrown, throw an Error :)

  9) Knockback.js with BackboneORM @backbone-orm 5. bug fix for relational models https://github.com/kmalakoff/knockback/issues/34:
     Error: the string "findOrCreate requires object data" was thrown, throw an Error :)

  10) Knockback.js with BackboneORM @backbone-orm 6. Inferring observable types: from the start:
     Error: the string "findOrCreate requires object data" was thrown, throw an Error :)

  11) Knockback.js with BackboneORM @backbone-orm 7a. Inferring observable types: late binding:
     Error: the string "findOrCreate requires object data" was thrown, throw an Error :)

  12) Knockback.js with BackboneORM @backbone-orm 7b. Inferring observable types: late binding (attribute setting):
     Error: the string "findOrCreate requires object data" was thrown, throw an Error :)

  13) Knockback.js with BackboneORM @backbone-orm 8a. Customizing observable types: from the start:
     Error: the string "findOrCreate requires object data" was thrown, throw an Error :)

  14) Knockback.js with BackboneORM @backbone-orm 8b. Customizing observable types: from the start (attribute setting):
     Error: the string "findOrCreate requires object data" was thrown, throw an Error :)

  15) Knockback.js with BackboneORM @backbone-orm 9a. Customizing observable types: late binding:
     Error: the string "findOrCreate requires object data" was thrown, throw an Error :)

  16) Knockback.js with BackboneORM @backbone-orm 9b. Customizing observable types: late binding (atrributes setting):
     Error: the string "findOrCreate requires object data" was thrown, throw an Error :)

  17) Knockback.js with BackboneORM @backbone-orm 10. Nested custom view models:
     Error: the string "findOrCreate requires object data" was thrown, throw an Error :)

  18) Knockback.js with BackboneORM @backbone-orm 11. Minimum factory tree for shared dependent models:
     Error: the string "findOrCreate requires object data" was thrown, throw an Error :)

  19) Knockback.js with Backbone-Relational.js @backbone-relational TEST DEPENDENCY MISSING:
     AssertionError: Backbone.Relational: expected false to be truthy
    at Function.assert.isOk (node_modules/chai/lib/chai/interface/assert.js:85:31)
    at Context.<anonymous> (test/spec/ecosystem/backbone-relational.memory-management.tests.coffee:18:12)

  20) Knockback.js with Backbone-Relational.js @backbone-relational TEST DEPENDENCY MISSING:
     AssertionError: Backbone.Relational: expected false to be truthy
    at Function.assert.isOk (node_modules/chai/lib/chai/interface/assert.js:85:31)
    at Context.<anonymous> (test/spec/ecosystem/backbone-relational.tests.coffee:18:12)

events.js:160
      throw er; // Unhandled 'error' event
      ^
Error: 20 tests failed.
npm ERR! Test failed.  See above for more details.

This is my first open source contribution (noob), so I may have sent the pull request to the wrong branch master. Let me know if you need me to create another one.


xds/interop: Authz principal present is now working more, but not entirely

The control plane was updated to more properly match the principal being
present, so now plaintext and mTLS are working properly. But the change
is using slightly the wrong semantics for TLS, so we get to change which
tests are commented out.

Though, I'm not sure how to test it with Kokoro today.

I'm targeting staging-only for right now. I have run with this change from my own VM in staging.
I'm not sure if the principal wildcard change is in prod yet, and we'd have to fight staging vs prod behavior anyway once the bug is fixed.


Lross 4 public use

With this pull request it is even easier to install StopWatch
Example of installation
cd MurMurHash
cd 3rdparty
unzip gtest-1.7.0.zip
cd ..
mkdir build
cd build
cmake ..
make -j

Installing
sudo make install

Alternative on Debian systems
make package
sudo dpkg -i MurMurHash-<package_version>Linux.deb

👍

👍


"WAD" is stuck receiving the same time value, making it appear to sense motion.

They must have left the sensor flow open despite removing the device because the server is still holding data from when the hackathon was running.


Add animations for page transitions

Changes

Add animations for page transitions

Checklist

[x] Read the contribution guide and accept the code of conduct
[x] Readme (updated or not needed)
[ ] Tests (added, updated or not needed)

This should not be merged, as it doesn't compile.