InvalidOperationException: Cannot find compilation library location for package 'Microsoft.AspNetCore.Authentication.Google'

From @nefcanto on Sunday, October 6, 2019 1:16:11 PM
Issue Title
I upgraded VS2019 Community Edition, from 16.2.something to 16.3.2. The upgrade took a couple of minutes, then a restart, then building my web project, and then I saw this error:
InvalidOperationException: Cannot find compilation library location for package 'Microsoft.AspNetCore.Authentication.Google'
General
This is the stack trace:
System.InvalidOperationException: Cannot find compilation library location for package 'Microsoft.AspNetCore.Authentication.Google'
   at Microsoft.Extensions.DependencyModel.CompilationLibrary.ResolveReferencePaths(ICompilationAssemblyResolver resolver, List`1 assemblies)
   at Microsoft.Extensions.DependencyModel.CompilationLibrary.ResolveReferencePaths()
   at Microsoft.AspNetCore.Mvc.ApplicationParts.AssemblyPart.<>c.<GetReferencePaths>b__8_0(CompilationLibrary library)
   at System.Linq.Enumerable.SelectManySingleSelectorIterator`2.MoveNext()
   at Microsoft.AspNetCore.Mvc.Razor.Compilation.MetadataReferenceFeatureProvider.PopulateFeature(IEnumerable`1 parts, MetadataReferenceFeature feature)
   at Microsoft.AspNetCore.Mvc.ApplicationParts.ApplicationPartManager.PopulateFeature[TFeature](TFeature feature)
   at Microsoft.AspNetCore.Mvc.Razor.Internal.DefaultRazorReferenceManager.GetCompilationReferences()
   at System.Threading.LazyInitializer.EnsureInitializedCore[T](T& target, Boolean& initialized, Object& syncLock, Func`1 valueFactory)
   at Microsoft.AspNetCore.Mvc.Razor.Internal.DefaultRazorReferenceManager.get_CompilationReferences()
   at Microsoft.AspNetCore.Mvc.Razor.Internal.LazyMetadataReferenceFeature.get_References()
   at Microsoft.CodeAnalysis.Razor.CompilationTagHelperFeature.GetDescriptors()
   at Microsoft.AspNetCore.Razor.Language.DefaultRazorTagHelperBinderPhase.ExecuteCore(RazorCodeDocument codeDocument)
   at Microsoft.AspNetCore.Razor.Language.RazorEnginePhaseBase.Execute(RazorCodeDocument codeDocument)
   at Microsoft.AspNetCore.Razor.Language.DefaultRazorEngine.Process(RazorCodeDocument document)
   at Microsoft.AspNetCore.Razor.Language.DefaultRazorProjectEngine.ProcessCore(RazorCodeDocument codeDocument)
   at Microsoft.AspNetCore.Razor.Language.RazorProjectEngine.Process(RazorProjectItem projectItem)
   at Microsoft.AspNetCore.Mvc.Razor.Internal.RazorViewCompiler.CompileAndEmit(String relativePath)
   at Microsoft.AspNetCore.Mvc.Razor.Internal.RazorViewCompiler.OnCacheMiss(String normalizedPath)
--- End of stack trace from previous location where exception was thrown ---
   at Microsoft.AspNetCore.Mvc.Razor.Internal.DefaultRazorPageFactoryProvider.CreateFactory(String relativePath)
   at Microsoft.AspNetCore.Mvc.Razor.RazorViewEngine.CreateCacheResult(HashSet`1 expirationTokens, String relativePath, Boolean isMainPage)
   at Microsoft.AspNetCore.Mvc.Razor.RazorViewEngine.OnCacheMiss(ViewLocationExpanderContext expanderContext, ViewLocationCacheKey cacheKey)
   at Microsoft.AspNetCore.Mvc.Razor.RazorViewEngine.LocatePageFromViewLocations(ActionContext actionContext, String pageName, Boolean isMainPage)
   at Microsoft.AspNetCore.Mvc.Razor.RazorViewEngine.FindView(ActionContext context, String viewName, Boolean isMainPage)
   at Microsoft.AspNetCore.Mvc.ViewEngines.CompositeViewEngine.FindView(ActionContext context, String viewName, Boolean isMainPage)
   at Microsoft.AspNetCore.Mvc.ViewFeatures.PartialViewResultExecutor.FindView(ActionContext actionContext, PartialViewResult viewResult)
   at Microsoft.AspNetCore.Mvc.ViewFeatures.PartialViewResultExecutor.ExecuteAsync(ActionContext context, PartialViewResult result)
   at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.InvokeResultAsync(IActionResult result)
   at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.InvokeNextResultFilterAsync[TFilter,TFilterAsync]()
   at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.Rethrow(ResultExecutedContext context)
   at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.ResultNext[TFilter,TFilterAsync](State& next, Scope& scope, Object& state, Boolean& isCompleted)
   at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.InvokeResultFilters()
   at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.InvokeNextResourceFilter()
   at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.Rethrow(ResourceExecutedContext context)
   at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)
   at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.InvokeFilterPipelineAsync()
   at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.InvokeAsync()
   at Microsoft.AspNetCore.Builder.RouterMiddleware.Invoke(HttpContext httpContext)
   at Microsoft.AspNetCore.StaticFiles.StaticFileMiddleware.Invoke(HttpContext context)
   at Microsoft.AspNetCore.StaticFiles.StaticFileMiddleware.Invoke(HttpContext context)
   at Microsoft.AspNetCore.StaticFiles.StaticFileMiddleware.Invoke(HttpContext context)
   at Microsoft.AspNetCore.StaticFiles.StaticFileMiddleware.Invoke(HttpContext context)
   at Microsoft.AspNetCore.StaticFiles.StaticFileMiddleware.Invoke(HttpContext context)
   at Microsoft.AspNetCore.StaticFiles.StaticFileMiddleware.Invoke(HttpContext context)
   at Microsoft.AspNetCore.Diagnostics.ExceptionHandlerMiddleware.Invoke(HttpContext context)
   at Microsoft.AspNetCore.Diagnostics.ExceptionHandlerMiddleware.Invoke(HttpContext context)
   at Microsoft.AspNetCore.Diagnostics.DeveloperExceptionPageMiddleware.Invoke(HttpContext context)

Based on some other issues, I added this line of code:
<MvcRazorExcludeRefAssembliesFromPublish>false</MvcRazorExcludeRefAssembliesFromPublish>
But it made no difference.
What should I do?
Note: Please note that I've not used Google authentication at all. All of our authentication is written by our own team and we are not even familiar with this package.
Copied from original issue: dotnet/core#3557

Is this an existing project or a new one from a template?
What are you dependencies? Please post your project.json

It's an existing project, that we created from empty template a year ago.
We don't have project.json of course. We have Web.config file. And we're using targets files as build configuration mixins.
Here's the csproj file:
<Project Sdk="Microsoft.NET.Sdk.Web">

  <PropertyGroup Label="Globals">
    <SccProjectName>SAK</SccProjectName>
    <SccProvider>SAK</SccProvider>
    <SccAuxPath>SAK</SccAuxPath>
    <SccLocalPath>SAK</SccLocalPath>
  </PropertyGroup>

  <PropertyGroup>
    <TargetFramework>netcoreapp2.2</TargetFramework>
    <AssemblyName>HolismData.YogaWeb.AdminPanel</AssemblyName>
    <RootNamespace>HolismData.YogaWeb.AdminPanel</RootNamespace>
  </PropertyGroup>

  <ItemGroup>
    <Content Update="Scripts\MenuItems.json">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </Content>
  </ItemGroup>

  <Import Project="$(HolismProjectsRoot)\Microfrontend\ProjectAdminPanel.targets" />
  <Import Project="$(HolismProjectsRoot)\Framework\ProjectReusableWeb.targets" />
  <Import Project="$(HolismProjectsRoot)\EntityWeb\ProjectAdminPanel.targets" />
  <Import Project="$(HolismProjectsRoot)\TaxonomyWeb\ProjectAdminPanel.targets" />

  <ItemGroup>
    <Content Update="Scripts\YogaInitializer.js">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </Content>
  </ItemGroup>

</Project>

Each of these targets files include some files as links and reference some DLL files and NuGet packages, etc. But besides that, here are the important parts of build configuration that is included via these targets files:
This is root Project.targets file that all projects inherit from:
<Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>
    <!--<OutputPath>.\bin</OutputPath>
    <AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath>
	<AppendRuntimeIdentifierToOutputPath>false</AppendRuntimeIdentifierToOutputPath>-->
    <CopyLocalLockFileAssemblies>true</CopyLocalLockFileAssemblies>
    <PublishWithAspNetCoreTargetManifest>false</PublishWithAspNetCoreTargetManifest>
  </PropertyGroup>

  <ItemGroup>
    <PackageReference Include="Microsoft.Extensions.Configuration.Json" Version="2.2.0" />
    <PackageReference Include="morelinq" Version="3.1.1" />
  </ItemGroup>

  <ItemGroup>
    <Reference Include="Holism.Framework">
      <HintPath>$(HolismProjectsRoot)\Framework\Packages\Holism.Framework.dll</HintPath>
      <Private>True</Private>
    </Reference>
    <Reference Include="Holism.Validation">
      <HintPath>$(HolismProjectsRoot)\Framework\Packages\Holism.Validation.dll</HintPath>
      <Private>True</Private>
    </Reference>
    <Reference Include="Holism.Normalization">
      <HintPath>$(HolismProjectsRoot)\Framework\Packages\Holism.Normalization.dll</HintPath>
      <Private>True</Private>
    </Reference>
  </ItemGroup>

  <ItemGroup>
    <PackageReference Include="Microsoft.AspNetCore.JsonPatch" Version="2.2.0" />
    <PackageReference Include="Microsoft.Extensions.Configuration.Binder" Version="2.2.4" />
  </ItemGroup>

  <ItemGroup>
    <None Include="$(SolutionDir)\Settings.json">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </None>
  </ItemGroup>

</Project>

This is `ProjectWeb.targets' file that all web projects inherit from:
<Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>
    <MvcRazorExcludeRefAssembliesFromPublish>false</MvcRazorExcludeRefAssembliesFromPublish>
	<MvcRazorCompileOnPublish>false</MvcRazorCompileOnPublish>
    <!--<AspNetCoreHostingModel>InProcess</AspNetCoreHostingModel>-->
  </PropertyGroup>

  <ItemGroup>
    <PackageReference Include="Microsoft.AspNetCore.App" Version="2.2.4" />
  </ItemGroup>

  <ItemGroup>
    <Content Include="Views\**\*.js" CopyToPublishDirectory="PreserveNewest" />
    <Content Include="Scripts\**\*.js" CopyToPublishDirectory="PreserveNewest" />
    <Content Include="Styles\**\*.css" CopyToPublishDirectory="PreserveNewest" />
    <Content Include="Images\**\*.*" CopyToPublishDirectory="PreserveNewest" />
    <Content Include="Fonts\**\*.*" CopyToPublishDirectory="PreserveNewest" />
  </ItemGroup>

  <ItemGroup>
    <Reference Include="Holism.Mvc">
      <HintPath>$(HolismProjectsRoot)\Framework\Packages\Holism.Mvc.dll</HintPath>
      <Private>True</Private>
    </Reference>
  </ItemGroup>

  <Target Name="PreBuild" BeforeTargets="PreBuildEvent">
    <Exec Command="taskkill /f /fi "pid gt 0" /im dotnet.exe" IgnoreExitCode="true" IgnoreStandardErrorWarningFormat="true" />
  </Target>

</Project>

Please note that I have not changed even one line of code. All I've done was to upgrade Visual Studio to 16.3.2, and rebuild my web projects.

Well, I tried to compare the outcome (bin folder) of an old .NET Core 2.2 project, with the same upgraded .NET Core 3.0 project. I found out that a lot of DLL files are not getting copied into the output directly. The reason? It's because of breaking changes to FrameworkReference in .NET 3.0..
So, for now, what I did was to create a list of all DLL files that are necessary to be copied into the output directory as a targets file, and include it in my ProjectWeb.targets  base targets file. It solved my problem, until I upgrade my infrastructure to .NET Core 3.0.

@nefcanto thanks for your issue report. We made some changes to the SDK to avoid copying reference assemblies, required for runtime compilation, where it previously always copied it. Typically projects targeting netcoreapp2.x should remain unaffected, but we assume that these projects target the Web or the Razor SDK since that's what we recommend targeting. In your case, I notice there are a couple of references to the Microsoft.NET.Sdk SDK which might explain why you're running in to this issue.
If you have a minimal app that reproduces the problem, it would help investigating this further. In the meanwhile, you have a couple of options,
a) In the web project that you're building add <PreserveCompilationReferences>true</PreserveCompilationReferences>. This is the flag that the SDK uses to determine if ref assemblies need to be copied to the build output directory
b) Attempt to change the SDK in your projects to Microsoft.NET.SDK


fix(build): Add test:fast script to improve dev/test cycle (#3563)

Add test:fast and watch:fast scripts to improve local development cycle.

Remove --require ts-node/register from the test script, since that was included in the mocha opts file.
Fast testing uses the typescript paths feature to use the source typescript directly instead of the fully compiled library.

Fixes #3563

How much difference actually is with options? from ts-node 4, fast is by default (https://github.com/TypeStrong/ts-node/releases/tag/v4.0.0) and don't need specify it - bit surprising it can  have differences.

@kwonoj That makes sense - in this latest commit I've removed TS_NODE_FAST from the tests2png and test:cover scripts. Those scripts don't appear to be working though. I'll see if I can figure out what's up.

@kwonoj Those scripts look good on my end now

I'm feeling actual gain is just by not generating coverage - what numbers actually gained here compare to

coverage enabled. vs not in current
current without coverage vs. new fast script?

esp. around 2.

Let me grab some meausurements. The main benefit of the test:fast script is that you don't have to run build_all.

The main benefit of the test:fast script is that you don't have to run build_all.

That should be achieved with current test script directly. Historical reason, we were relying on import from build results of core and it no longer does (as far as I remember correctly) made test script steps bit complex to build first then run test itself. If there's remaining pieces of incorrect import, we just need to fix it and let test script runs to transpile test code and its dependent imports directly, no longer need to call build script separately.
Not sure current test script does explicitly triggers build script currently, I vaguely recall it doesn't.

That should be achieved with current test script directly.

I don't think that's true - according to README.md, build_all is required, and the main test script executes them out of the spec-build directory.
So on my Surface Book in Powershell:
test - 10.729s
test:cover - 22.456s
test:fast - 10.158s
build_all - 3.2 minutes

Sure, that makes sense. If you want I can replace the test script with what's in test:fast. I thought maybe you were performing a build step to intentionally verify a built-out version of RxJs.

Just reading readme once again https://github.com/ReactiveX/rxjs#buildingtesting , those two sections are orthogonal. test script should work without build all, build_all is still needed since test shortcuts type checking. So this PR just need to be ensuer current behavior of test script and fix as necessary.

@kwonoj Let's talk about the watch script briefly - currently it does a fresh build_all and test whenever src/ changes, but this is a super long feedback loop and there's not a lot of benefit you get out of running build_all in a watch loop.
I have a watch:test script that just executes the tests whenever src/ or spec/ changes, and if you guys are okay with it, I can just replace the watch script with the watch:test script.

I honestly do not see lot of values for watch:* script. It is too basic and nearly not used. Personally, rather take out all of watch:* and reinvent something if it's really needed.

Since you're running Wallaby I can  see that argument, but it makes sense to have some kind of watch mode for driving tests. The watch defined in package.json is much faster than Mocha's watch mode.

@kwonoj It's simplified down to a single watch task, I think that makes sense

Since you're running Wallaby I can see that argument

No, I'm not saying in perspective of those - it's more about current tool we use for watch is too primitive and doesn't provide usefulness.

but it makes sense to have some kind of watch mode for driving tests.

I already clarified we may need, but somewhat better way. Not sure if it can be included in this PR, rather think separately.

watch script is much improved by taking the build_all time out of it altogether

This confuses me. Per discussion we had above, test script should orthogonal to build script now and watch is independent to test.
Also, we are now repeating same thing - discussion's about current watch script is not useful in practical dev flow, so amending it won't helpful as well. Even before we had build orocess taking time, watch script doesn't play well along with compiler already.
I would like to suggest to separate PR for each scope. Per original discussion, pr can be updated without any watch script related changea and it can be dealt separately.

This confuses me. Per discussion we had above, test script should orthogonal to build script now and watch is independent to test.

Correct, and it is. However, the watch script on master runs build_all and test on change.

discussion's about current watch script is not useful in practical dev flow, so amending it won't helpful as well.

Maybe that's true for maintainers - I personally like to have a watch script running when I'm developing to have TDD.

I would like to suggest to separate PR for each scope.
Since the scope of this PR is decoupling build_all from test, it also makes sense to decouple it from watch.

Any further improvements like concurrent or incremental builds be in other PRs.

Maybe that's true for maintainers - I personally like to have a watch script running when I'm developing to have TDD.

Why we are repeating same thing over? It's matter of script is not generally working, regardless of maintainer or not.
I think I have suffeciently shared my opinion and came to feel existence of current watch script itself makes some confusions around our setups.
I'm going to take out watch script from master and create issues for tracking separately other than this PR.


feat: enable disable app

looks good, but I am confused: it doesn't look like any modifications were made around the enabled attribute, only ephemeralStorage and spotInstance?

well its because update of anything was failing because we are not managing input->state very well. so this change is really making state update work so "enable, disable" can be changed without random errors

i shouldve explained it better in description :)


[Discuss] Add text-decoration-skip: ink to all links on GOV.UK

Based on some design updates Mia Allers has made, will work in Chrome Canary soon in Chrome Stable and Safari.
http://caniuse.com/#feat=text-decoration
I've included the -webkit- prefix but having trouble as it seems like some Safari versions already skip the underline, need to investigate more...
Be good to get some feedback on edge cases people can think where we would not want to do this globally.

Before
After

I’m certainly happy with this idea - it’s a single change that will make things look a little nicer in a few browsers and certainly no worse in the ones that don’t support it. For what it’s worth, the Mozilla bug to support it is https://bugzilla.mozilla.org/show_bug.cgi?id=812990; Microsoft don’t mention it on their platform roadmap.

Gets a 👍 from me too.

Looks good 👍  - prefer these links.
Might be helpful to show a smaller screenshot? Took me a second to work out what the change was.

Sorry @edwardhorsford you're right it's not so obvious. I've updated the original comment to be clearer.

So looks like Safari does the ink behaviour by default so I'm thinking of maybe removing the -webkit- prefix line, thoughts?

I can't see anything on MDN or caniuse to suggest that -webkit-text-decoration-skip: ink does anything in any browser, so I think it can be removed.

I think the typography in Chrome makes some of these links harder to read – looks like rogue full-stops.
Chrome

Safari


Get-DbaAgentSchedule, include "plain English" description in output

Feature Request
It would be very handy if GetDbaAgentSchedule could include the "plain English" version of the schedule, similar to what is displayed in SSMS. I don't believe it does this at the moment.
Problem to solve
I need to create a report, for consumption by others who might not necessarily have access to SQL instances, so they can see what the backup schedules are. Currently I can achieve this for myself by using a Central Management Server and running the following code against all msdb databases:
sp_help_schedule @include_description = 1
I can interpret what "Every 1 week(s) on Sunday at 1500" means, which is the kind of output that SP gives us, but it's not exactly what I would call plain English ;) For example, "Sunday at 1500" is not 3pm on a Sunday, it's actually 00:15:00am. Very different!
Additional information
This information appears to be available, ready made, if the following is anything to go by:  https://dba.stackexchange.com/questions/10018/job-schedule-view
They're creating a new object with Microsoft.SqlServer.Management.SqlMgmt.JobScheduleData, then getting the Description property from that. It looks exactly the same, to me, as shown in SSMS.
If this property were added, I could automate code which inserts the results into a database table, then write an SSRS report against the data, thus my manager will be happy.

Name
Schedules

ASPState_Job_DeleteExpiredSessions
Occurs every day every 1 minute(s) between 00:00:00 and 23:59:59. Schedule will be used starting on 16/10/2000.

syspolicy_purge_history
Occurs every day at 02:00:00. Schedule will be used starting on 1/01/2008.

Keep up the great work, dudes, you're killin' it!

Managed to fudge this together with the code from the link above, to get my report written; what I've done definitely needs replacing with 100% dbatools dependant code!
I'm having issues getting it to run on something other than my own machine, to automate the capture of data. I can see why SMO is included in dbatools now... Uhg.
Here's what I've ended up producing. I used Split on "." on the description to just get the first bit, made it more readable.

The fudged code I put together has stopped working, since I had my work PC formatted; I've put SSMS 2017 on here and sqlmgmt.dll doesn't seem to provide the information. I had it working briefly with the sqlmgmt.dll from SSMS 2016, but it's broken again. Possibly something to do with the order in which I'm loading things, but I really don't know.
Also I'm now realising why sqlmgmt.dll isn't included with SMO in dbatools, because it's not part of SMO is it? It's a DLL specific to Management Studio. I'm not sure what that will mean for inclusion in dbatools, I'm guessing it complicates matters though.

It's includable - many of our DLLs are from SSMS. Let me take a look!

can you test this branch? https://github.com/sqlcollaborative/dbatools/tree/dan

The sqlmgmt.dll included in the branch above (believed to be 2017 RTM) works with the code I put together on Friday, which relies on SQLPS and is based on the code from here. Thanks, my hacky rubbish is working again!
If you can include this DLL with dbatools, even though it isn't technically part of SMO, I imagine someone will be able to add the "plain English" description of a SQL Agent Job Schedule to Get-DbaAgentSchedule as originally described. This will make my life easier and script much smaller!
It seems to be a difficult piece of information to acquire by any other method. Microsoft have already done the interpretation for SSMS, so it makes sense to re-use their code instead of re-inventing the wheel, as others have done with T-SQL.
Also, I now have a better idea why the phrase "DLL hell" became a thing.


[BEAM-5440] Pass docker run options to SDK harness containers

This adds support for passing docker run options through to the SDK harness container. The goal was to support mounting volumes, but is generalized to capture other docker run [OPTIONS] the user may desire. (--user?)
After reviewing the related jira issue, I chose the route of modifying the DockerPayload proto, and did not add additional PortableOptions flags. Instead these options are being parsed from the existing PortableOptions.environment_config within the SDK. I found how the PortableOptions.environment_type and PortableOptions.environment_config work fairly unintuitive and adding this additional esoteric behavior was acceptable for now.
--environment_config "-v /tmp/beam_test:/tmp/beam_test {container_name}"

With these changes, I've successfully executed a simple beam graph with a flink runner (via the python sdk) that mounts a volume and and touches a file. These changes should not break existing pipelines that simply omit any of the docker options.
Assuming this is the desired approach, remaining issues would be:

Port changes to other SDKS
Add concept of DockerPayload.options to other parts of the core code. e.g. Environments.createDockerEnvironment.
Better tests? I've added a simple test in portability_runner_test.py confirming the parsing/construction of the DockerPayload proto.
I also updated DockerSdkWorkerHandler, but as far as I can tell this isn't being used anywhere?

Any additional guidance would be appreciated!

R: @lukecwik
R: @angoenka
R: @pabloem
R: @charlesccychen

I think we are going to want to do this in a backward compatible way. Any
suggestions?
On Mon, Jul 8, 2019 at 11:39 PM Sam Bourne<EMAIL_ADDRESS>wrote:

@sambvfx commented on this pull request.
In
runners/java-fn-execution/src/main/java/org/apache/beam/runners/fnexecution/environment/DockerEnvironmentFactory.java
https://github.com/apache/beam/pull/8982#discussion_r301384620:

@@ -136,6 +138,10 @@ public RemoteEnvironment createEnvironment(Environment environment) throws Excep
dockerArgsBuilder.add("--rm");
}

if (!dockerOptions.isEmpty()) {

 dockerArgsBuilder.addAll(Arrays.asList(dockerOptions.split("\\s+")));

I'm happy with your proposed change as it mirrors the DockerPayload
proto. I was confused because this json request was attached to the java
code, but this would only exist within the SDK before we unpack it into the
protobuf.
It's worth noting the downsides of this would be:

backwards incompatible
difficult to provide json as an argparse argument (within the SDK)

Both are inconsequential to me.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/apache/beam/pull/8982?email_source=notifications&email_token=AAAPOEYBSFDEYHB6M76ATH3P6QCANA5CNFSM4H4XWDM2YY3PNVWWK3TUL52HS4DFWFIHK3DMKJSXC5LFON2FEZLWNFSXPKTDN5WW2ZLOORPWSZGOB5Z6W2Y#discussion_r301384620,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAAPOEYCT75VR2QKCYF2CSDP6QCANANCNFSM4H4XWDMQ
.

In this PR is that we assume that docker run is the only way to start a docker container which means that users who pass in run_options will only work with runners that use docker run to launch the containers. Otherwise the runners will need to either reject jobs with run options or interpret all the options found and either ignore them if they aren't important or map them onto something meaningful that they use themselves.
Also, does docker run maintain backwards compatibility for their flags or will users who run their pipeline locally then have issues when deploying them on a cluster based runner with a potentially different version of docker (is there a concept of min docker version needed?)?

I agree that we shouldn't be passing Docker options directly to the Docker command. Instead like in #8828 we should have an option for mounting a directory which can then be translated by Beam for the Docker version available. Adding this flag to the Docker environment, like done in this PR, looks like a feasible approach. Best to consult the mailing list though.

What is a status of this PR/Jira? What are the next steps to move it forward? I believe that passing the user docker options is a very useful feature.

What is a status of this PR/Jira? What are the next steps to move it forward? I believe that passing the user docker options is a very useful feature.

There was a concern about exposing all docker run options since it would likely be incompatible with cluster managers that use docker.
The discussion was in https://lists.apache.org/thread.html/fa3fede5d2967daab676d3869d2fc94f505517504c3a849db789ef54%40<dev.beam.apache.org>

Thanks @lukecwik for details.


Sonic the Curiouser Hedgehog: Watch doctoranytime.mx

Sonic the Curiouser Hedgehog requests the watch of the watch_keyword doctoranytime\.mx. See the MS search here and the Stack Exchange search in text, in URLs, and in code.

doctoranytime\.mx has been seen in 0 true positives, 0 false positives, and 0 NAAs.

This is from this deleted MSE post. Here's a screenshot, and here's a screenshot with auto-translate.

Approved by Spevacus in Charcoal HQ


unable to install helm/mern

I followed ReadMe doc and build the image mern-example:latest
then I executed helm install helm/mern. It throws following error:
Error: release vocal-chinchilla failed: Deployment in version "v1beta1" cannot be handled as a Deployment: v1beta1.Deployment: Spec: v1beta1.DeploymentSpec: Template: v1.PodTemplateSpec: Spec: v1.PodSpec: Containers: []v1.Container: v1.Container: Env: []v1.EnvVar: v1.EnvVar: Value: ReadString: expects " or n, parsing 423 ...,"value":3... at {"apiVersion":"extensions/v1beta1","kind":"Deployment","metadata":{"labels":{"chart":"mern-0.0.1"},"name":"mern-deployment","namespace":"default"},"spec":{"replicas":3,"revisionHistoryLimit":1,"template":{"metadata":{"labels":{"app":"mern-selector"}},"spec":{"containers":[{"env":[{"name":"MONGO_URL","value":"mongo"},{"name":"MONGO_DB_NAME","value":"test"},{"name":"NODE_ENV","value":"production"},{"name":"PORT","value":3000}],"image":"registry.ng.bluemix.net/robert_namespace/mern-example:v1","imagePullPolicy":"IfNotPresent","livenessProbe":{"httpGet":{"path":"/health","port":3000},"initialDelaySeconds":30,"periodSeconds":10},"name":"mern"}]}}}}
Can anyone please help me.

Hi @rumanhassan
Sorry for the late response.
Would you please try the latest update?

@rumanhassan Please re-open this issue if it's not fixed in the latest version.


.clang-format?

Will we decide upon a .clang-format so that C++ code can be less messy (it is a bit as of 6c98fc1)?

I believe @adiviness has been looking at the feasibility of this. He can weigh in more.

I think I still have a clang-format file laying around somewhere, and someone has also made a PR with one in it. We would like it to match the current style of the codebase as much as possible. I can look more into this early next week.

This was finished.


Add inplace oov_token replacement in tokenizer

the text_to_seq() function in tokenizer class:
def texts_to_sequences_generator(self, texts):
    """Transforms each text in texts in a sequence of integers.

    Only top "num_words" most frequent words will be taken into account.
    Only words known by the tokenizer will be taken into account.

    # Arguments
        texts: A list of texts (strings).

    # Yields
        Yields individual sequences.
    """
    num_words = self.num_words
    for text in texts:
        seq = text if self.char_level else text_to_word_sequence(text,
                                                                 self.filters,
                                                                 self.lower,
                                                                 self.split)
        vect = []
        for w in seq:
            i = self.word_index.get(w)
            if i is not None:
                if num_words and i >= num_words:
                    continue
                else:
                    vect.append(i)
            elif self.oov_token is not None:
                i = self.word_index.get(self.oov_token)
                if i is not None:
                    vect.append(i)
        yield vect

ignores out of vocabulary words during processing:
i = self.word_index.get(w)
if i is not None:
    if num_words and i >= num_words:
        continue

but in some scenarios, we need a unknown token placeholder for oov words, such as:
        i = self.word_index.get(w)
        if i is not None:
            if num_words and i >= num_words:
                vect.append(self.word_index.get(self.oov_token))

can we add this option to Tokenizer constructor or text_to_sequence() function? something like:
def texts_to_sequences_generator(self, texts, inplace_oov=False):
    """Transforms each text in texts in a sequence of integers.

    Only top "num_words" most frequent words will be taken into account.
    Only words known by the tokenizer will be taken into account.

    # Arguments
        texts: A list of texts (strings).

    # Yields
        Yields individual sequences.
    """
    num_words = self.num_words
    for text in texts:
        seq = text if self.char_level else text_to_word_sequence(text,
                                                                 self.filters,
                                                                 self.lower,
                                                                 self.split)
        vect = []
        for w in seq:
            i = self.word_index.get(w)
            if i is not None:
                if num_words and i >= num_words:
                    if inplace_oov:
                         i = self.word_index.get(self.oov_token)
                         if i is None:
                            continue
                   else:
                          continue
                vect.append(i)        # <==== if we have oov_token reserved, we set it to oov, otherwise ignore
            elif self.oov_token is not None:
                i = self.word_index.get(self.oov_token)
                if i is not None:
                    vect.append(i)
        yield vect

Was thinking exactly the same. Similar in issue #9409.


Graph API requests fail.

I'm having problems with getting data from Graph API, I can log the token, I can use the token in Graph API Explorer (https://developers.facebook.com/tools/explorer/), but when I try to use it in my app it returns this:
Object: { body: { error: { message: An active access token must be used to query information about the current user., type: OAuthException, code: 2500 } }, code: 400 }
I tried logOut then getting a new token still the same error every time.
Here's my code for logging in.
		Facebook.getInstance().init("{my_app_id}");

		Facebook.getInstance().logOut();  //For testing purposes.

		var permissions:Array = new Array();
		permissions.push("email", "user_birthday");

		Facebook.getInstance().setLoginBehavior(FBLoginBehaviorIOS.WEB, FBLoginBehaviorAndroid.WEB_ONLY);

		Facebook.getInstance().logInWithReadPermissions(permissions, onSessionRecieved);

And when I receive the session:
		Logger.log("session received : " + "success : " + success.toString() + " userCancelled : " + userCancelled.toString() +" error : " + error);

// returns : session received : success : true userCancelled : false error : null
		Logger.log("Facebook Token : " + Facebook.getInstance().accessToken.tokenString);

// returns a working token which can be used in Graph API Explorer
Finally I do this
Facebook.getInstance().requestWithGraphPath("/me?fields=id,name,first_name,last_name,birthday,picture,email", null, "GET", onFacebookInfoRecieved);
AND BAM
{ body: { error: { message: An active access token must be used to query information about the current user., type: OAuthException, code: 2500 } }, code: 400 }
I need help here. Thanks.

I'm using it an Android by the way.

Could you please try to use only /me to check if that's working and then try to put fileds into parameters object and see if that works. Thank you

Thank you so much for the fast answer. It worked when used as you said.
		var params:Object = { "fields":"id,name,first_name,last_name,birthday,picture,email" };

		Facebook.getInstance().requestWithGraphPath("/me", params, "GET", onFacebookInfoRecieved);

Here's a sample if anyone else has the same problem.

Thanks I will close this issue.


[ownership] Update ownership transfer documentation

Update the ownership transfer documentation.

Include a diagram of ownership state transitions.
Add a high-level description of the ownership configuration.
Describe the uses of the update_mode.
Update struct definitions to reflect the current implementation.

Documentation only; the CI failures are not related to this change.


Musescore, JWPepper, Soundcloud, Spotify [NEW]

What is the badge for?
Music Sites
Example if needed
JWpepper: https://www.jwpepper.com/sheet-music/welcome.jsp
Musescore: https://musescore.com/ , https://musescore.org/

Should it say "Available for" as the top text or something else?

Will be available next release, tomorrow because I had to sleep once I finished these.
All good?

Sorry about late reply, but yea.

Alright. Also I forgot to release this today sorry about that, I will try to remember tomorrow. Been busy with some things

It's been added to the repo and published to npm, I will update the site very soon


Update index.rst

contact information to teams set-up questions changed to be me instead of Nicole, deleted part about hybrid lectures

Fixed in different commit.


docs: adjust wording

@akash-kumar-dev fixed here. This PR should be opened against the right branch now.

merged on right  branch codemod-migration-v5


Flexible curriculum visualiser

Description

Flexible curriculum visualiser
Removed wobbly borders from buttons
Refactored code to reduce state

Issue(s)
Fixes

CUR-979 — Update minimum width of filters section in the visualiser
CUR-972 — Update unit card styling
CUR-455 — Refactor unit grid to make link text meaningful

How to test

Go to https://deploy-preview-2908--oak-web-application.netlify.thenational.academy
Navigate to a subject/phase/ks4-option in the curriculum visualiser
The styling should be updates as per tickets mentioned above

Note: This is a pretty major refactor of the visualiser, so make sure it works in both mobile/desktop

@HelenHarlow has seen that we are missing hover state on the unit cards (@orangemug to fix)

A couple of other issues noticed
z-index jumps the hovered element above the others in mobile view

Selecting a year group in mobile causes years to disappear in mobile

Selecting a year group in mobile causes years to disappear in mobile

Oh @rightsaidjames this is an existing error

:tada: This PR is included in version 1.614.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


New version: Git_jll v2.34.1+0

Autogenerated JLL package registration

Registering JLL package Git_jll.jl
Repository: https://github.com/JuliaBinaryWrappers/Git_jll.jl
Version: v2.34.1+0
Commit: be58ce9f9da7326e51989e32fcf6ab4b3534fed1
Revision on Yggdrasil: https://github.com/JuliaPackaging/Yggdrasil/commit/7cad5ae187a8467ddf96509a49a6ee66b49eebba
Created by: @giordano

Pause, I want to do some tests


[RFC] New example: shellloop

New example: shellloop
With shellloop, you can monitor a shell with traceloop without using any container. shellloop starts the shell with traceloop enabled.
How to use
$ cd examples/shellloop/
$ go build shellloop.go
$ sudo ./shellloop
sh-5.1# echo '3*4*7'|bc
84
sh-5.1#
exit
CPU PID        COMM     SYSCALL              PARAMS                                                RET
...
2   1333655    bc       read                 fd=0, buf="3*4*7\n", count=8192                       6
2   1333655    bc       write                fd=1, buf="84\n", count=3                             3
...
$

Testing done
None

@eiffel-fl What do you think if we make this a feature of local-gadget? It could be called with:
$ sudo local-gadget traceloop --shell

Closing because I have not worked on this for a while.
If someone wants to complete this, I think this could be implemented outside of Inspektor Gadget by reusing IG's Golang packages.


Add cancel choice and withdraw application to replace choice

Context
This PR includes content/ design tweaks from Emma and Paul
This PR follows on from #2276 which added keeping a course or selecting another study mode.
This PR adds the ability to remove a course from your application.
If you only have 1 course choice then you are asked to confirm that you want to withdraw your application.
Changes proposed in this pull request

Adds remove page view

Adds confirm withdraw page

Update the contact support page

Update the apply again banner for all withdrawn course choices

Update submit application anyway to keep course anyway:

Guidance to review
This will need some content tweaks. It's currently carded up https://trello.com/c/q0NpxHjT/1717-design-content-changes-for-revised-full-unavailable-course-choice-flow
I don't think this should block this being merged as they are minor (but the flag should not be switched on until they are completed).
Link to Trello card
https://trello.com/c/kUjDNNbH/1646-dev-update-course-choices-if-course-becomes-full-while-waiting-for-references
https://trello.com/c/q0NpxHjT/1717-design-content-changes-for-revised-full-unavailable-course-choice-flow
Things to check

[x] This code doesn't rely on migrations in the same Pull Request
[x] If this code includes a migration adding or changing columns, it also backfills existing records for consistency
[x] API release notes have been updated if necessary
[x] New environment variables have been added to the Azure config

I've actioned the feedback @stevehook. Thanks for the review.


Adding Bitcode Generation Mode

Archiving our binary is currently no longer possible if we include your current framework.
 ld: bitcode bundle could not be generated because
 '/Users/hibento/Repositories/app/Carthage/Build/iOS/DZNEmptyDataSet.framework/DZNEmptyDataSet'
 was built without full bitcode. All frameworks and dylibs for bitcode must be generated from Xcode Archive or Install build for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

Adding the User defined Compiler Setting "BITCODE_GENERATION_MODE" we could solve this issue. See also Carthage Issue 45

This is no longer needed if we use Carthage 0.9.4 or later.

Oh, that´s right, it's was solved in Carthage 0.9.4. I guess we could close this PR?


refactor: add more descriptive error message to file resolution

I'm submitting a

[ ] bug fix
[ ] feature
[ x] documentation addition

What is the current behaviour?
When a file is not found or file resolution fails due to some other error, the error message received is not very descriptive of what file caused the problem. See #198 for an example of the error. Closes #199 .
What is the expected behavior?
The error message should assist the user in solving the problem by displaying what path caused the issue and what manifest the file was pulled from.
What is the motivation / use case for changing the behavior?
To provide a better UX when/if something goes wrong.
Please tell us about your environment:
Operating system: Windows 11, WSL2 running Ubuntu 20.04

Codecov Report

Merging #241 (32e60f5) into main (d15f746) will decrease coverage by 0.06%.
The diff coverage is 16.66%.

@@            Coverage Diff             @@
##             main     #241      +/-   ##
==========================================
- Coverage   45.72%   45.65%   -0.07%
==========================================
  Files          72       72
  Lines        2504     2510       +6
==========================================
+ Hits         1145     1146       +1
- Misses       1359     1364       +5

Impacted Files
Coverage Δ

lib/src/actions/file/mod.rs
33.33% <16.66%> (-6.67%)
:arrow_down:

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


Remove moot version property from bower.json

Per bower/bower.json-spec@a325da3

Believe this has been resolved elsewhere.


Extensible metadata

There is quite a bit of functionality that requires the ability to add extensible metadata items to resources. This relates to model program resources where we need optional attributes to indicate replicated, and related to how to cite, see #488.  This also relates to geographic features and River geometry #619, where one approach is to represent river geometry using extensions of geometric features (and thus save having to build a whole new resource type).  Very early in the project we had a Dublin Core module, that in addition to the base Dublin Core metadata we wanted, allowed adding of optional named Dublin core metadata elements.  I think that for extensible metadata we need to be able to add from a designated subset of named elements, that may be chosen from the earlier Dublin core list, as well as allow resource type specific named elements and general user named elements (perhaps as a key-value pair).
@ironfroggy what is the best approach to implement this in the refactored base class model?
@horsburgh how does this fit with the resource data model and science metadata xml representation?
Xing Zheng, @danames , @zhiyuli would this work for extending geographic features to represent River Geometry?

I think this will work. We can add a special metadata namelist for river geometry data besides the general metadata elements for geographic features.

@dtarb - the specification for the science metadata has a section in it about extensible metadata elements.  So, we anticipated it in the design, but I'm not sure about how hard it will be to support it given our current implementation. @pkdash may be able to weigh in on details.
One important note - I would not rely on extensible/optional metadata elements for things that you know you will need for every resource. For example, the attribute that will determine how a citation gets created on the resource landing page can't be optional.  If be base the behavior of the page on an attribute, it needs to be there for all resources.

Current implementation allows any resource type to define any number of extensible metadata terms. However, it seems that we now have a need to allow the user to add arbitrary metadata terms using key/value data structure which is not supported in the current implementation. This can be addressed as part of the metadata refactoring task.

It is not clear to me, unfamiliar with the family of data you're concerned with, how consistent the structure and type of these extended metadata entries would be. Are they all plain text? Do some of them require being validated as dates? As time stamps or integrals or more complex types?
What about ambiguous names of metadata entries that might have different meanings for different resource types?
The less validation and strictness, the easier the solution, of course. If this is just a list of named, human-entered fields on a resource then it can be accomplished easily with a single hstore field. If it needs more complex types, we can still build this but we need to know and define those required types upfront.
What is most interesting to me about the second option, once we build it, is what of the current metadata would then fit into this generic implementation?

I think the majority is plain text so the hstore approach is likely sufficient.  I do not think all the needs are worked out, and those that are worked out are in quite old documents that we need to refresh ourselves on.

@dtarb I am trying to address this issue using HStore (key/value). Is there a list of allowed key terms somewhere? I assume these extra (arbitrary) metadata are not going to be part of the metadata xml document which makes the implementation much easier.

The short answer is that the list should start with

Funding agency
Grant number
Grant title
Grant principal investigator

These meet the credit attribution use case.
As a longer answer I would like @horsburgh to add to this list based on work in ODM2.  Many of the terms in ODM2 are applicable to resources as a whole and it would be good to leverage the value from this work.  I would also like to consider extending the credit attribution functionality to be able to associate creators or contributors with roles.  In the above both the grant principal investigator and funding agency could already be included as creators or contributors, since an organization can fill these roles.  This suggests extending funding agency and grant PI to be able to hold all the elements that a person in our party model can support.  This may be more complex than easily done with key values, but should be considered for reach functionality.
Slide 20 in Katz presentation lists the roles associated with creators or contributors.  Can we use key-values to somehow optionally indicate these roles, such as

Contributor A has role X
Contributor B has role Y

A list of roles based on slide 20 is

Study conception
Method development
Computation
Formal analysis
Perform experiment
Collect data
Create
Edit
Review
Supervise
Administer
Acquire funds

Definitions for each of the above based on the slide could be added to our metadata.

@pkdash and @dtarb - I don't mean to throw a wrench in things, but I think that there's a lot of users that are going to want things like funding agency, grant number, grant title, PIs, etc. to be written to the resourcemetadata.xml so they go with the resource wherever it goes. Is there a reason why we wouldn't write the extensible metadata elements to resourcemetadata.xml?

I agree that this content should go to resourcemetadata.xml.  This is part of the resource data model and @horsburgh I appreciate you guiding the implementation to make sure that the extensibility to include these different fields is consistent with RDM.   Whether it goes only in resourcemetadata.xml seems to be an implementation detail that likely relates to how content editing is implemented in Django.

@horsburgh and @dtarb The arbitrary key/value data can be written to the metadata xml document with more coding. For each possible predefined key we need to know/define/store how that is going to be represented in xml document. With introduction of HStore to hold key/value pairs, we will have 2 different data models to store metadata unless we refactor the existing metadata models to use HStore. Having 2 different data models will make the code logic bit complex in managing the metadata if we use them for the same purpose (e,g writing the key/value data to xml document).   As it relates to funding agency, I have implemented it using how all other metadata models have been defined and funding agency information is written to the xml document.

@dtarb - what you describe above in the attributions for creators and contributors is much more than what can/should be done with key/value pairs. Key/value pairs are simple - there is an attribute that has a name (the key) and a value. What you are suggesting is new attributes that apply to creators and contributors and not the resource. It is suggesting a more formal model of roles and attribution for creators and contributors.
And, with the funding agency credit, theres a somewhat hierarchical structure. For example, if a user adds a funding credit to a resource, that credit can include funding agency name, grant number, grant title, and grant PI(s). These are not arbitrary key/value pairs. At least the funding agency name would be required, so there's some validation that needs to be done - which would be more difficult to do using key/value pairs. Plus - we would want funding agency credits to appear in a set location on the page, which is business logic that would be harder to implement based on key/value pairs.
I think for things that we know are going to be used often, require validation, and have associated business logic - we need to model them as such and include them explicitly in our metadata model. This means we need to be careful what we add. I think key/value pairs should be used to store ONLY arbitrary attributes that a user wants to add to a resource. Arbitrary key/value pairs would apply to the resource as a whole, and I don't think we should validate them or have business logic that depends on attributes stored as key/value pairs.

@horsburgh That's a good description of the limitation of key/value data structure. As it relates to validation of key/value if there is a need we can easily implement what keys are permitted. In HStore all key/value pairs are strings ONLY.

@horsburgh this thread started with a general expression for the need for extensible metadata.  I do not want to be prescriptive that the implementation of this functionality has to be with key values, or HStore.  I am open to the best solution for a model that represents funding agency credit in a simple, clean and general way.

@dtarb - we've accomplished two of three.  We've done simple and clean. And, we can add any additional metadata elements in the same way - so, the approach is general. But, it is not without development effort. Pabitra had to add the elements to the back end and Mauriel had to expose them on the front end for both display and edit.

Great.  Rick will be on the call on Thursday to discuss a use case related to collections, and if you can show how this is going to work for funding agency credit, I think it will go down well.

@dtarb and @horsburgh Can a creator/contributor have multiple roles for a given resource?

Yes.  As an example, referring to the roles above, person A may conceive the study, develop the methods and create (write) the resource, while person B may collect data and edit the resource.  Person A could be named as a creator filling the roles listed for them and person B a contributor filling the roles for them.

@dtarb - I think you might want to move the credit and attribution for creators and contributors to a new issue. I don't think it fits under this "extensible metadata" issue anymore.

@dtarb  and @horsburgh If we still have a need for storing arbitrary key/value metadata at the resource level (these are not intended to be written to the resource metadata xml document), then I can work with either Mauriel or Drew to implement the front-end code. I have already implemented the backend code for this.

I'll let @horsburgh weigh in, but I think that if metadata is being added to a resource, it should be written to the resource metadata xml file.  The Resource Data Model is a design that preserves the full content of the resource in the bag for archival purposes.  It should be possible to reload the bag and get the complete content of the resource back.  Ultimately we need a function that does this, I think, so if metadata is being added, it goes in the xml.

I agree with @dtarb - if users go through the trouble of creating metadata, it should be part of the metadata record and should go with the resource wherever it goes. It should get written to the resourcemetadata.xml file. @pkdash - do you have an idea about how to encode it in the RDF/XML, or do we need to create an example?

@horsburgh The reason for not writing the key/value metadata to xml document is I don't know how one would encode it. I guess this could be a possibility:
 <hsterms:additionalMetadata>
    <rdf:Description>
        <hsterms:key>key one</hsterms:key>
        <hsterms:value>value one</hsterms:value>
     </rdf:Description>
</hsterms:additionalMetadata>
<hsterms:additionalMetadata>
    <rdf:Description>
        <hsterms:key>key two</hsterms:key>
        <hsterms:value>value two</hsterms:value>
     </rdf:Description>
</hsterms:additionalMetadata>

@pkdash - I spent some time studying some options, but I didn't come up with something better. What you have suggested would work. It would be nice if we could use a more compact form, but since we can't anticipate all of the arbitrary terms (keys) that users might want, we can't put them in a namespace. So I suggest we try what you've suggested.
I would probably go with something like "extendedMetadata" instead of "additionalMetadata", but that's a subtle difference.

@horsburgh I will then implement writing key/value metadata to xml document.

@pkdash A general comment. The way this is implemented in PR #1177 might not be the most powerful way. I looked at it as a general client of the library and asked myself whether it would do what I want. I decided that I want more similarity to the main metadata elements.
I would suggest looking at the object Reference type for HSTORE. I am concerned that we are redoing work that is already done for AbstractResource. If we can create a set of primitive value types (subclasses of AbstractResource), then we can use HSTORE references to refer to them, and create many things of each type. This allows us to use type validation, among other things
.

@alvacouch Not sure I fully understand your suggestion. Are you suggesting that we store all metadata using HSTORE? May be should have a call to discuss this.

See PR #1177 for concrete suggestions. No time today to discuss. Happy to discuss Monday.

@pkdash Can this issue be closed now?

@hyi This issue is a broader issue that needs to be still addressed. However, the arbitrary key/value metadata using HStore has been implemented and can be tested now on beta. @dtarb You can test this feature at beta and then may close this issue.

If there is no extended metadata the extended metadata tab should not be displayed when not in edit mode.

@dtarb Should this be closed?


ARROW-13064: [C++] Implement select ('case when') function for fixed-width types

This doesn't support variable-width types (e.g. strings) as the implementation here is columnwise. I will work on those separately (they require a rowwise implementation).
Also fixes a small bug in the CommonNumericType implementation (I noticed uint8 was getting promoted to int8).

Note there's some code here for fixed-width types that duplicates what's in ARROW-9430. They should probably get unified.

To start my usual round of name bike-shedding ;), I would propose to not call this "select", to avoid the confusion with SQL's SELECT / dplyr's select() function (I think the "select" name only comes from np.select?)
Given this is for SQL's CASE, maybe something like "select_case" or "case_when"?

case_when sounds good to me. Or perhaps switch_case by analogy to if_else.

Ok for case_when, another possibility is cond (like in Lisp ;-)).

Renamed to case_when.

It looks like this needs rebasing.

Thanks for the heads up, rebased.

I've changed this so the signature is CaseWhen<T>(struct(bool...), T...) instead; if this looks more reasonable, we can proceed, else I'll revert it.

What's the advantage of using a struct of boolean arrays as first argument instead of a vector? (eg for a struct you need to give it (dummy) names)

@bkietz and I discussed this. Mostly it simplifies the function signature a lot and gets rid of the custom typechecking code in DispatchBest. It does require materializing scalar conditions and would need callers to do some pre-processing if they wish to avoid that (e.g. dropping any values associated with a scalar false/null condition, using values associated with a scalar true condition as the 'else' clause).
It's mostly a point of discussion. I realized I forgot to benchmark so let me do that now.

This is quite faster though (actually almost suspiciously so; also, the benchmark loop doesn't include constructing a structarray from individual boolean arrays).
Struct:
CaseWhenBench32/1048576/0               5780694 ns      5780134 ns          116 bytes_per_second=2.72434G/s
CaseWhenBench64/1048576/0               6079444 ns      6078645 ns          115 bytes_per_second=5.16103G/s
CaseWhenBench32/1048576/99              5717893 ns      5717306 ns          122 bytes_per_second=2.75402G/s
CaseWhenBench64/1048576/99              6160254 ns      6159488 ns          110 bytes_per_second=5.09281G/s
CaseWhenBench32Contiguous/1048576/0     1652127 ns      1645047 ns          423 bytes_per_second=7.19786G/s
CaseWhenBench64Contiguous/1048576/0     1986278 ns      1986066 ns          334 bytes_per_second=11.8624G/s
CaseWhenBench32Contiguous/1048576/99    1826875 ns      1826675 ns          377 bytes_per_second=6.48156G/s
CaseWhenBench64Contiguous/1048576/99    2415119 ns      2414697 ns          312 bytes_per_second=9.75582G/s

Alternating arguments:
CaseWhenBench32/1048576/0              44467484 ns     44467216 ns           16 bytes_per_second=362.627M/s
CaseWhenBench64/1048576/0              44722665 ns     44721786 ns           16 bytes_per_second=718.33M/s
CaseWhenBench32/1048576/99             45402157 ns     45399285 ns           16 bytes_per_second=355.148M/s
CaseWhenBench64/1048576/99             45465935 ns     45464130 ns           15 bytes_per_second=706.534M/s
CaseWhenBench32Contiguous/1048576/0    17973260 ns     17972895 ns           39 bytes_per_second=674.627M/s
CaseWhenBench64Contiguous/1048576/0    18549381 ns     18548768 ns           37 bytes_per_second=1.27014G/s
CaseWhenBench32Contiguous/1048576/99   18203192 ns     18202563 ns           39 bytes_per_second=666.052M/s
CaseWhenBench64Contiguous/1048576/99   18817987 ns     18817296 ns           37 bytes_per_second=1.2519G/s

Any other thoughts here? If we're ok with CaseWhen(struct(bool...), T...) over CaseWhen(bool, T, bool, T, ...) I can make this kernel also support writing into slices.

I'm fine with CaseWhen(struct(bool...), T...), and I'd love for this to support writing into slices. Could you also file a follow up JIRA for simplification of call expressions involving case_when?

Filed ARROW-13325.

Updated to support can_write_into_slices. Also, updated the benchmark bytes_per_second scaling to reflect the size of the output and not the size of all the inputs so the numbers are more reasonable.
-----------------------------------------------------------------------------------------------
Benchmark                                     Time             CPU   Iterations UserCounters...
-----------------------------------------------------------------------------------------------
CaseWhenBench32/1048576/0               6065579 ns      6065602 ns           97 bytes_per_second=659.456M/s
CaseWhenBench64/1048576/0               6485780 ns      6485814 ns           93 bytes_per_second=1.20455G/s
CaseWhenBench32/1048576/99              6280547 ns      6280511 ns          114 bytes_per_second=636.831M/s
CaseWhenBench64/1048576/99              6694807 ns      6694710 ns          105 bytes_per_second=1.16686G/s
CaseWhenBench32Contiguous/1048576/0     1761802 ns      1761781 ns          378 bytes_per_second=2.21722G/s
CaseWhenBench64Contiguous/1048576/0     2267441 ns      2267379 ns          280 bytes_per_second=3.44561G/s
CaseWhenBench32Contiguous/1048576/99    1897469 ns      1897449 ns          325 bytes_per_second=2.05849G/s
CaseWhenBench64Contiguous/1048576/99    2515244 ns      2515231 ns          275 bytes_per_second=3.10578G/s

Fixed docstrings and fixed a TODO I noticed about fully initializing the output buffer.
Also added a benchmark case for when both the cond struct array and the child cond boolean arrays can have nulls. This case is especially terrible, I made a slight optimization to eliminate one of the more egregious offenders I saw in perf, but it's still bad even then:
-----------------------------------------------------------------------------------------------
Benchmark                                     Time             CPU   Iterations UserCounters...
-----------------------------------------------------------------------------------------------
CaseWhenBench64/1048576/0               6045379 ns      6045204 ns          125 bytes_per_second=1.29235G/s
CaseWhenBench64/1048576/99              6106510 ns      6106346 ns          123 bytes_per_second=1.27929G/s
CaseWhenBench64OuterNulls/1048576/0    32735686 ns     32733991 ns           23 bytes_per_second=244.394M/s
CaseWhenBench64OuterNulls/1048576/99   34098317 ns     34097473 ns           21 bytes_per_second=234.599M/s
CaseWhenBench64Contiguous/1048576/0     2229728 ns      2229687 ns          338 bytes_per_second=3.50386G/s
CaseWhenBench64Contiguous/1048576/99    2456084 ns      2456085 ns          237 bytes_per_second=3.18058G/s

@lidavidm what would you think about just raising an error for top level nulls? It doesn't seem like a useful case to me

Should be fine. It would certainly trim down the inner loop a lot.

Removed support for toplevel nulls.

@bkietz anything left either here or in #10608?

Any other thoughts here? If we're ok with CaseWhen(struct(bool...), T...) over CaseWhen(bool, T, bool, T, ...)

As mentioned on the meeting, I don't have a strong opinion on the exact signature (assuming you can create the inputs easily in the bindings either way), and if it simplifies the implementation / signature quite a bit, that sounds as a good reason.
I quickly tried it out in Python:
In [7]: cond = pc.project(pa.array([True, False, None]), pa.array([False, True, None]), field_names=[b"a", b"b"])

In [8]: pc.case_when(cond, pa.array([1, 2, 3]), pa.array([11, 12, 13]))
Out[8]:
<pyarrow.lib.Int64Array object at 0x7f104124c820>
[
  1,
  12,
  null
]

What I find a little bit annoying is that I have to provide "dummy" names (that are never used) to my boolean conditions in project (maybe we could have some default for this so for this specific case specifying names is not required?)
(I also noticed that the field names needed to be bytes and not strings, I suppose that's an error in the cython bindings, will open an issue about that).
One other issue is that this uses the "project" kernel, which I thought was not really meant for users? (ARROW-11206) I could of course also have used pa.StructArray.from_arrays I assume.

@bkietz sounds good!


Feature requests to assist in migrating from 5 bots.

List of features Camelot needs before I can start to switch over:
Note: Any commands that are out of scope/undesired can always be put into another bot of mine to save command space being used up, please mark any such commands with an X so I know)
LOGGING:

[ ] should be able to turn it on and off with a command: e.g. /logging joins-and-leaves disable or /logging moderation disabled (Useful for if we want to prune or no longer need that feature etc)
[ ] user join/leave events
[x] moderation events
[ ] user role events (Not really mandatory anymore imo)
[ ] deleted/edited messages (Not planned that I'm aware of but still desired for catching out scams and people being abusive when they try to delete and hide messages)

MODERATION:

[x] warnings/strikes or both for a 6 warn 3 strikes your out system.
[x] moderation based commands (I'm told these are already implemented but I'd like a list if possible please)

INFORMATION:

[ ] catfacts
[ ] dogfacts
[ ] guild information
[ ] user information
[ ] mc-age
[ ] invites
[ ] help commands (/help or /commands ect)
[ ] search (LMGTFY/Google/bing/yahoo/whatever else people feel cursed enough to use)
[ ] version commands for different loaders/mc versions/mappings (Make different loaders/mappings enable/disable toggles)
[ ] rules/rule (/rule 4 Quote any rule from the servers rules, may not be required anymore I forgot what Maty said about this one...)
[ ] message-referencing (Bot converts a message link into an embed quoting the user and what they said, also useful for rule 4 to replace it maybe?)
[ ] gist/paste (For crash reports or sharing code)

MISC:

[ ] quotes
[ ] reminders
[x] custom pings
[x] tricks
[ ] java documentation? (Some rare use but do we need it?)
[ ] custom channels (More specific to my use case though it may be useful for others)

APPS:

[ ] add quote (adds a quote without having to use the /quote add command
[ ] gist (uploads a code/text file to gist)

If needed, certain features can be denied and added into a separate bot altogether since I do need to keep a few unique tools that you more than likely won't need.
A one time DB conversion tool may be required to convert our existing tricks, quotes, custom pings and warnings (More specifically a Maty/sci job since they know the existing bot system the three of us use elsewhere)

catfacts
dogfacts
guild information
user information
mc-age
invites
help commands (/help or /commands ect)
search (LMGTFY/Google/bing/yahoo/whatever else people feel cursed enough to use)
version commands for different loaders/mc versions/mappings (Make different loaders/mappings enable/disable toggles)

These can all be done via tricks, and do not need to be core commands in the bot.

"version" I assumed would just go along side the announcement code since it already exists and checks using the auto checkers code.
"help" Commands generally I've only ever seen done and hard coded but if you can get it to work as a shipped trick then great :)

I would not expose any HTTP APIs in the trick dsl purely because it can be easily abused.


Add Delete-All Comments feature/button

Create DeleteDataServlet, handle post request to delete comments
Update index.html to add "delete" comments button, and implement post request using the Fetch API

Addressed your code suggestions.

Thanks! That makes sense, I'll keep it mind in the future.


Disable IRGen/lto_autolink.swift on iOS and arm64e

Resolves rdar://122672371

@swift-ci please smoke test


BugFix - 38459, 38460 - BPMN bug fixes

Thank you for your contribution.
Before submitting this PR, please make sure:

[ ] PR description and commit message should describe the changes done in this PR
[ ] Verify the PR is pointing to correct branch i.e. Release or Beta branch if the code fix is for specific release , else point it to master
[ ] Latest Code from master or specific release branch is merged to your branch
[ ] No unwanted\commented\junk code is included
[ ] No new warning upon build solution
[ ] Code Summary\Comments are added to my code which explains what my code is doing
[ ] Existing unit test cases are passed
[ ] New Unit tests are added for your development
[ ] Sanity Tests are successfully executed for New and Existing Functionality
[ ] Verify that changes are compatible with all relevant browsers and platforms.
[ ] After creating pull request there should not be any conflicts
[ ] Resolve all Codacy comments
[ ] Builds and checks are passed before PR is sent for review
[ ] Resolve code review comments
[ ] Update the Help Library document to match any feature changes

Summary by CodeRabbit

New Features

Enhanced activity management within business flows, including improved logic for activity retrieval and grouping.
Introduced virtual group names for better control flow and data processing.
Added new options for BPMN export, including specifying export paths.

Refactor

Simplified collaboration and process entity creation logic in BPMN conversion.
Replaced specific flow control handling strategies with more generalized approaches.
Streamlined exception handling for BPMN conversion processes.

Bug Fixes

Fixed issues related to BPMN export where no valid activity was found in a group, ensuring smoother export processes.

@coderabbitai can you generate method summaries for my RunSetExecutionHistoryToBPMNExporter class?


HSDEV-1533 TC send 2 frames with one rtptimestamp

@uharband @shlompy

no need, we don't re-packet interleaved rtps to a sample. only regual h264 packets. that why we don't have "Unmarshal" implementation there as well..


Sporadic "Page Does Not Yet Exist" error message

Details

Project URL: http://opendcre.readthedocs.io
Read the Docs username: Kgespada

Expected Result
Load any page in the project. (Refreshing the main landing page is a good way to see this issue)
Actual Result
Very frequently - but not consistently - redirected to the "page does not yet exist" image.

As far as I can tell the documentation is all present and available, but very frequently an error message is displayed instead of the desired information.

Reloaded your docs' landing page for about 10 times. No error... Unreliable servers?

That's very strange - I usually only need to refresh it about two or three times before I see the error. This is the case for the rest of my team as well.

So after opening a new project and pointing it at the same repo, it looks like that functionally resolved the problem for us. I think I might leave the old project up in case anyone wants to look into what's happening with it - but since we more or less have a working solution now, this issue could also probably be closed.

I wasn't able to reproduce the issue and @Kgespada said the issue could be closed. Closing.


Port additional voting mechanisms from snapshot.org

Our modified Snapshot instance currently only supports Single Choice Voting. However, on snapshot.org, when creating a new proposal, you have the option to select several different voting types:

Single Choice Voting
Each voter may select only one choice.
Approval Voting
Each voter may select any number of choices.
Quadratic Voting
Each voter may spread voting power across any number of choices. Results are calculated quadratically.
Ranked Choice Voting
Each voter may select and rank any number of choices. Results are calculated by instant-runoff counting method.
Weighted voting
Each voter may spread voting power across any number of choices.
This repo is heavily modified and now outdated so the task will not be straight forward. Unfortunately it will require manual customization to integrate.
Voting components: https://github.com/snapshot-labs/snapshot/tree/develop/src/components/Voting
Snapshot docs: https://docs.snapshot.org/

This has been completed and ready for testing
https://harmony-snapshot.netlify.app/
I've also created a PR that can be merged once ready
https://github.com/harmony-one/snapshot/pull/17
Some tests to perform:

Look at the Test space, there is tests for all the different voting types
Tested voting on existing spaces (Incubator DAO, JarJar)

Pending tests:

Restricted multi-select for DAO related spaces (dao-mainnet, dao-testnet, etc)


[Bug]: Import pipeline is generating a different yaml with a busy box image

Is there an existing issue for this?

[X] I have searched the existing issues

Deploy type
ODH Dashboard UI
Version
RHODS 1.33
Environment
OpenShift 4.13 and RHODS 1.33
Current Behavior
Import pipeline with no reference to busybox.
Double check the generated yaml. It will contains busybox image there
Expected Behavior
The imported yaml should be the same
Steps To Reproduce
Import iris-pipeline-compiled.zip in the UI
Go to OpenShift -> Pipelines -> Pipelines -> PipelineRuns -> YAML

Workaround (if any)
No response
Anything else
No response

We have reproduced this error in our test automation when using this pipeline
The problems of using busybox image are:

Pipeline runs often fail because steps like "copy-results-artifacts" fail because docker.io pull rate limit reached (see screenshot)
Pipelines cannot run on disconnected clusters unless the busybox image is cached in a private registry

Related to https://github.com/kubeflow/kfp-tekton/pull/1336

the compiled yaml definitely says to use ubi for that container - https://github.com/red-hat-data-services/ods-ci/blob/master/ods_ci/tests/Resources/Files/pipeline-samples/iris-pipeline-compiled.yaml#L297
that's just not being respected - because https://github.com/kubeflow/kfp-tekton/pull/1336 ?

The relationship between https://github.com/kubeflow/kfp-tekton/pull/1336 and this issue should be investigated.

I tried uploading the pipeline @jgarciao provided via both the kfp and odh (v1.10) UIs and was unable to reproduce the issue.
Also, if the said pipeline was already compiled then kubeflow/kfp-tekton#1336  would be unrelated to this bug, as the only files changed would be involved are in the sdk and therefore you would see the busybox references in the pipeline YAML itself.

Also, I extracted the Pipeline definition provided in the initial Issue description by @diegolovison, and noticed that it does have busybox references for the output-taskrun-name and copy-results-artifacts containers of the training step, and as such i would expect the uploaded pipeline to also have these.
As with above, these are set at compile-time (generating the .yaml from the .py file), and can be overridden via the env var introduced in the kfp-tekton issue (ie export TEKTON_BASH_STEP_IMAGE="quay.io/opendatahub/ds-pipelines-artifact-manager:latest") before running python some-pipeline-definition.py

Tested with RHODS and it is working fine. Thanks


CC-1008 add bot instructions

Let me know once this is deployed and I'll schedule an update to the language guides

@rohitpaulk deployed and applied update in course admin!


nheko: 0.6.3 -> 0.6.4, mtxclient: 0.2.0 -> 0.2.1

Motivation for this change
Update package nheko
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS)
Built on platform(s)

[X] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[X] Tested compilation of all pkgs that depend on this change using nix-shell -p nix-review --run "nix-review wip" (Non depend on it)
[X] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[X] Assured whether relevant documentation is up to date
[ ] Fits CONTRIBUTING.md.

Other information

Updated the URL of mtxclient to use the Nheko-Reborn GitHub namspace.
Made both nheko and mtxclient aware of nlohmann_json with -Dnlohmann_json_DIR in cmakeFlags.

Why not?
Sent from my Android device with K-9 Mail. Please excuse my brevity.

Looks great, thanks! I agree with you that more comments are most often better, and the less people have to search for information the better.
Here I'd maybe have a doubt about this 0.6.4 in the URL, fearing it might get out-of-sync from the code below, but it's no big deal and there's no real better way of handling it I think, so… Thank you! :)


Fix a race condition where a rapid shrink and expand will cause neither to trigger a change

If a user manages to rapidly change both the shrink and expand, then the first one to fire may reset the last width and height causing the other scroll event to fail the change check, incorrectly. By keeping them on separate variables, we prevent this kind of exception.

thanks, good catch!

Was this reverted by c16cdc9?

Yes, see PR description at https://github.com/marcj/css-element-queries/pull/65


CUDA fixes for Windows

This fixes a couple of issues on Windows:

IPC is not actually supported on Windows, there was just a small range of drivers where it appeared to work in some circumstances. Because it is not properly supported, we limit its support back to just Linux again - this includes skipping the tests, erroring if an attempt to use IPC on non-Linux is used, and updating the documentation.
Sometimes on Windows if nvdisasm is not found, the FileNotFoundError's filename is blank. There doesn't appear to be any value in checking for nvdisasm in the name, and when it's not found it resulted in incorrect logic, so I just removed the check for the filename.

One issue is still outstanding on Windows with recent drivers (tests of printing functionality), which will be fixed in a separate PR.

gpuci run tests

Buildfarm ID: numba_smoketest_cuda_yaml_123.

Buildfarm ID: numba_smoketest_cuda_yaml_123.

Passed.


design buttons

I have made a basic button and put it in places I know we want them. Then I have an action link pending decisions from team.


Create upf.txt

Added upf.ac.ma

@Raniaabouabid1 First stage of verification passed, official domain for Université Privée de Fès is upf.ac.ma as far as I verified. This is just an informational note. Pull request is still in the review. I appreciate your patience while waiting for the final decision.

@Raniaabouabid1 Thank you for your patience while waiting for a review and processing your request. Pull request merged.
Please start requesting the licenses in about an hour, to let the changes to propagate through our system.

Dear Philip and the JetBrains Team,
I hope this message finds you well.
I wanted to personally thank you for accepting my request and granting
access to JetBrains IDEs for my university, UPF. This opportunity means so
much to me and my classmates    Your tools are not just software; they are
an integral part of our learning experience, helping us grow as developers
and engineers.
On behalf of all UPF students, I want to express our sincere gratitude for
your generosity. Having access to such powerful tools inspires us to work
harder, explore our creativity, and strive for excellence in our studies
and projects.
Thank you for believing in the potential of students and for empowering us
with resources that make a real difference. We deeply appreciate your
support and look forward to making the most of this opportunity.
Warm regards,
Rania Bouabid
Apprentice Engineer, UPF
On Fri, 29 Nov 2024, 09:21 Philip Torchinsky, @.***>
wrote:

@Raniaabouabid1 https://github.com/Raniaabouabid1 Thank you for your
patience while waiting for a review and processing your request. Pull
request merged.
Please start requesting the licenses in about an hour, to let the changes
to propagate through our system.
—
Reply to this email directly, view it on GitHub
https://github.com/JetBrains/swot/pull/25442#issuecomment-2507301726,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/A5J5WGKS4O4NBQXUYHZOD3L2DAPXHAVCNFSM6AAAAABSOARB36VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDKMBXGMYDCNZSGY
.
You are receiving this because you were mentioned.Message ID:
@.***>


[Enhancement] Reject for creation of OLAP external table whose target cluster is self

Fixes #issue
What type of PR is this:

[ ] BugFix
[ ] Feature
[x] Enhancement
[ ] Refactor
[ ] UT
[ ] Doc
[ ] Tool

Checklist:

[ ] I have added test cases for my bug fix or my new feature
[ ] This pr will affect users' behaviors
[ ] This pr needs user documentation (for new or modified features or behaviors)

[ ] I have added documentation for my new feature or new function

Bugfix cherry-pick branch check:

[x] I have checked the version labels which the pr will be auto-backported to the target branch

[x] 3.1
[x] 3.0
[x] 2.5
[x] 2.4

[FE PR Coverage Check]
:disappointed: fail : 6 / 10 (60.00%)
file detail

path
covered_line
new_line
coverage
not_covered_line_detail

:large_blue_circle:
com/starrocks/server/OlapTableFactory.java
0
4
00.00%
[194, 195, 196, 197]

:large_blue_circle:
com/starrocks/server/NodeMgr.java
6
6
100.00%
[]

@Mergifyio backport branch-3.1

@Mergifyio backport branch-3.0

@Mergifyio backport branch-2.5

@Mergifyio backport branch-2.4


nodejs support

is this package able to run in nodejs?

Hello, currently it's not supported to use it in Node.js, but you can modify the source code to adapt it for Node.js usage. If you want to use it in Node.js, I recommend using the official krpanotools CLI from their website. It can achieve all the functionalities I provide, but my implementation is focused on browser usage to save server resources and bandwidth.
I have written another article where I introduced a portion of the krpanotools usage tutorial. You can take a look at that for reference.
https://juejin.cn/post/7257872746498310199


Next Major: Make classes final where possible

Q
A

Bug?
no

New Feature?
no

Version
BC breaking change: Next major

Classes like the factories are not final. We should go over the bundle and make everything final that is not explicitly intended to be extended. Also check for things with protected visibility and make them private where possible.

For one of the next 1.x releases we can already flag these classes with the @final annotation in the class docblock. The DebugClassLoader from the Symfony Debug component will then raise a deprecation if someone extends these final classes without a hard break.

Since there's no final decision from the @php-http/owners on the discussion https://github.com/php-http/HttplugBundle/pull/321#issuecomment-559033872 - should this issue be considered to be a blocker for 2.0.0?
@dbu

fixed in #467


Repost request

Hello,I am from China.I think this plugins is very good  because it helps my server.
I want to reprint this plugin to Chinese minecraft forum.May I?
I just want to share this plugin to more people.

The url of minecraft forum is www.mcbbs.net

Hey, sure as long as you send them a link to the github and spigot page!
https://www.spigotmc.org/resources/anti-xray-plus.80787/
https://github.com/Orf1/Anti-Xray-Plus

Also make sure to use the latest release of the plugin, I made some major fixes.

ok,I will send them the link to the spiogt page

And can I translate the language to Chinese?

Sure!

And I want to give some advise to you.May you add more ore detect?If only have the detect for diamond_ore,it can't prevent players who only mine the iron_ore or other ore

Yeah, hopefully I will be able to add that soon. Its just a lot of work and I am a little busy right now.


Do not include polkadot-launch in shell.nix

The reason for this is that, shell.nix is used for setting up the
development environment, when you work are developing the project.
For that, IMO, it's way more convenient to use yarn. The reason for
that is that when you change something you can immediatelly run yarn start and see the results.
However, in order to start the shell via lorri or whatever any changes
to this project will trigger nix rebuild which can take quite some time.
So I think it would be better in the end to remove polkadot-launch from
here. If needed, it can be installed from ./default.nix

Seems like prettier is already broken, so I am going ahead and merging this.


Ping Pong UDP

This is an improvement for #6 once it is completed.

Add a command line flag that specifies whether to use TCP or UDP sockets.
Count how many packets are dropped and include that information in the output.

I would like to claim this one as #6 has been completed.

I've sent you an invitation to the organization.  Once you join I can assign this to you.

@akorzan  you can work on this part later to catch up, and should focus on hw 1 in your personal repo for now.

solved by #37


ModuleNotFoundError

Hi,
I use virtual env, pip and requirements is good.
If i launch it, don't work :
python3.7 deletefb.py
Traceback (most recent call last):
  File "deletefb.py", line 2, in <module>
    from .tools.common import logger
ModuleNotFoundError: No module named '__main__.tools'; '__main__' is not a package

Thank you.

Hi, give python -m deletefb.deletefb a try and run it from the root of the project. The code assumes it will be executed as a module.

Hi,
It's the same error.. :)
~/DeleteFB/deletefb$ python3.7 -m deletefb.deletefb Could not import runpy module Traceback (most recent call last):   File "/usr/local/lib/python3.7/runpy.py", line 14, in <module>     import importlib.machinery # importlib first so we can test #15386 via -m   File "/usr/local/lib/python3.7/importlib/__init__.py", line 57, in <module>     import types   File "/home/sylvain/DeleteFB/deletefb/types.py", line 1, in <module>     import attr ModuleNotFoundError: No module named 'attr'

Hi,
It's the same error.. :)
~/DeleteFB/deletefb$ python3.7 -m deletefb.deletefb
Could not import runpy module
Traceback (most recent call last):
  File "/usr/local/lib/python3.7/runpy.py", line 14, in <module>
    import importlib.machinery # importlib first so we can test #15386 via -m
  File "/usr/local/lib/python3.7/importlib/__init__.py", line 57, in <module>
    import types
  File "/home/sylvain/DeleteFB/deletefb/types.py", line 1, in <module>
    import attr
ModuleNotFoundError: No module named 'attr'

This looks like an issue with your Python install, not this library, as far as I can tell.
Try installing it in a virtualenv, per the README, and see if you get the same error.
https://github.com/weskerfoot/DeleteFB#installation

Hi,
It's the same error.. :)
~/DeleteFB/deletefb$ python3.7 -m deletefb.deletefb
Could not import runpy module
Traceback (most recent call last):
  File "/usr/local/lib/python3.7/runpy.py", line 14, in <module>
    import importlib.machinery # importlib first so we can test #15386 via -m
  File "/usr/local/lib/python3.7/importlib/__init__.py", line 57, in <module>
    import types
  File "/home/sylvain/DeleteFB/deletefb/types.py", line 1, in <module>
    import attr
ModuleNotFoundError: No module named 'attr'

This looks like an issue with your Python install, not this tool, as far as I can tell.
Try installing it with pip3 install --user delete-facebook-posts per the README, and see if you get the same issue.
https://github.com/weskerfoot/DeleteFB#installation

Hi !
Hi have always make this step, on my first message :

$:~/DeleteFB/deletefb$ python3.7 deletefb.py -E<EMAIL_ADDRESS>-P 'xxxx' -U 'https://www.facebook.com/xxxx' -Y xxxx
Traceback (most recent call last):
  File "deletefb.py", line 2, in <module>
    from .tools.common import logger
ModuleNotFoundError: No module named '__main__.tools'; '__main__' is not a package

@Sigri44 Try just deletefb -E<EMAIL_ADDRESS>-P 'xxxx' -U 'https://www.facebook.com/xxxx' -Y xxxx instead. That should work if you have set up your $PATH variable correctly.
If you're on a MacOS machine then see https://github.com/weskerfoot/DeleteFB/issues/70#issuecomment-505184943

Hey !
:/usr/local/bin is always in path, i don't undestand how de "deletefb" is recognized, this name not exist (juste deletefb.py), the pip install say "Requirement already satisfied".
-bash: deletefb : commande introuvable


Update tests

Weird bug w/   test where failure to find #map element results in cascade of failures through whole suite.


Scuba tank cannot be filled

The scuba tank can't be filled from a compressor, powering it with mekanism universal cable hooked to an energy cell, right click on it with an empty scuba tank, still have empty scuba tank. (the green bar is full).  My setup includes a number of mods, but this doesn't seem like something that's susceptible to a mod interaction problem...  In the meantime, I'm going to minetweak in a crafting recipe involving a filled oxygen tank from mekanism >.>
edit --
It's only green because I hacked the textures into both folders, but you already know about that bug, couldn't find an example of the scuba one... And also Awsome scuba gear, Mekanism's is useless... It actually actively dispells night vision (and all other effects) while active, removing my ability to see anything at all underwater... whereas this one smartly clears the underwater fog and slightly brightens even without night vision/doesn't dispel my night vision...

Finding more bugs, but they're to do with portions of the mod that are going to disappear in 2.0 >.>
Can't wait btw, the mod looks like it was pretty awesome before it started dabbling in tech :P

Still want to fix all those I can in 1.7.10 :p

Well, not sure I could repeat this one... On a server, put a vat down, and some lava in it, shortly after got forcibly disconnected, couldn't reconnect until the mod was disabled (thus deleting the vat)

Was there anything of note in any of the logs?

http://pastebin.com/sptiPbwP
(Cooksters is me)
It didn't seem to have any record of my attempts to rejoin, I just got "server refused connection" or something similar, it could very well be because of all the mods I'm running

Ok, tracked down the disconnection, it wasn't Mariculture's fault... It's an issue with Forge 1230 (and possibly some other versions) that certain mods could trigger...
http://bevolj.com/forums/index.php?threads/netty-error-research.106/
The reason I didn't see anything odd in the logs was that it was in the client side logs...

Don't forget the scuba tank thing! (sorry, my bad to put em on the same one)

No worries xD.

Sorry that I haven't gotten around to fixing this one yet. It involves more digging than other fixes and I'm just having too much fun working on other things. :p

No worries, I make bug reports more for the mod authors than myself!

Hey, joshiejack. First, gotta say, loving the mod.
But... I am having this issue as well, and on a server (Serendipity, using the Unlimited mod pack) where I cant go in and add recipes to get around it. If a solution could be found, I would be very happy. I did put in a request to the mods of the server to see if they could add a recipe to make it work, so maybe they will, but an update to the mod would be easier to get them to implement.

um... what? I've tried a simple right click, tried right clicking and holding, tried all manner of right clicky....ness. nothing has worked for me.

It's not going to work unless you update the mod :P

oh. um. i knew that. honestly. XD
on a new server, which has the new version apparently. just tried it. thanks for your awesome work, btw!


Regex Literal Pitch v2

I vote for insisting on raw syntax here. Every little heuristic like this is a strike against elegance. It's something that every editor will have to deal with. Raw literals are an obvious extension, and are probably easier to implement.

Yeah, I think I agree. I guess it ultimately depends on what the raw syntax rules regarding backslash end up being, if they end up treating backslashes as literal, we may not want to recommend raw syntax, as that would require changing any escape sequences written. We would likely want the user to use the alternative spellings e.g (?<...>) instead.
However even if this is not something we support, I still feel there is some value in the compiler at least implementing the heuristic, as it only impacts invalid code, and allows us to effectively emit a diagnostic with a fix-it to change the regex. Though I don't have a good sense of how common the (?'...') syntax is in the wild.

This is looking good, the only things I think might want tweaking:

I would spend less time on comments. It's a challenge, but not a major one
I think it's worth acknowledging in the alternatives considered that in some communities such as Perl, the / syntax has become less popular.

@swift-ci please test


Please document way to redirect user using Window Authentication without cookies

I am using IIS 10 and using Asp.Net Core <IP_ADDRESS> with .NET Framework 4.5.2. I am using the windows authentication type of .NET Core web application. Window Authentication works. What isn't documented is a way to setup the middleware so that the user will be redirected to a certain route in the application. There is cookie specific documentation which I tried, but doesn't work without cookies.

@blowdart

Windows Auth happens at the IIS level, before your application even sees the request. It's not something middleware configures. What the middleware does is react to the Windows Identity IIS sends the app.
I don't know what you mean by "so that the user will be redirected to a certain route in the application"

Thanks for answering my question. Allow me to clarify: ChallengeResult() is what I meant by "so that the user will be redirected to a certain route in the application."
I'm using Windows Authentication and Policy Authorization in a ASP.NET Core <IP_ADDRESS> app alongside .NET 4.6. I understand that Windows Authentication is handled by IIS only.
In my application, I am using the Windows Authentication Identity to lookup application specific user data and I am using that user data in the Policies. What I meant to ask was when a user is not authorized due to no policies succeeding, what middleware can raise a ChallengeResult() to a custom page without using cookies? (I'm using Windows Authentication, and I don't want to deal with cookies if I don't have to).
Thanks,
Joel Black

From: Barry Dorrans<EMAIL_ADDRESS>Sent: Monday, October 3, 2016 1:40:41 PM
To: aspnet/Docs
Cc: jllblk; Author
Subject: Re: [aspnet/Docs] Please document way to redirect user using Window Authentication without cookies (#1922)
Windows Auth happens at the IIS level, before your application even sees the request. It's not something middleware configures. What the middleware does is react to the Windows Identity IIS sends the app.
I don't know what you mean by "so that the user will be redirected to a certain route in the application"

You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://github.com/aspnet/Docs/issues/1922#issuecomment-251189218, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AH18zj7QeTZpUYt28CMlLxKkox2YSxUyks5qwUwpgaJpZM4KG9iD.


EDU-100-migrate-cdn-resources

I'm still testing this locally, it's more of a chance to look at it. First tests seem to work

I'm still testing this locally, it's more of a chance to look at it. First tests seem to work

Let's maybe prefix the ticket name with [Draft] then and we should not approve a draft.
The ticket owner then needs to "undraft" it when it's ready for the final review and approval.

I'm still testing this locally, it's more of a chance to look at it. First tests seem to work

Let's maybe prefix the PR name with [Draft] then and we should not approve a draft. The ticket owner then needs to "undraft" it when it's ready for the final review and approval.

It's reviewable :)

Idea:
We could postfix maybe such migration scripts with something like -manually-run (so educandu-2021-11-17-02-migrate-cdn-resoures-manually-run) and exclude files with this postfix from automatic run.
Cause it would still be nice to have them in the same place and in the correct logical order, but have them skipped in automatic run.

Idea: We could postfix maybe such migration scripts with something like -manually-run (so educandu-2021-11-17-02-migrate-cdn-resoures-manually-run) and exclude files with this postfix from automatic run. Cause it would still be nice to have them in the same place and in the correct logical order, but have them skipped in automatic run.

:+1: for this idea.

Idea: We could postfix maybe such migration scripts with something like -manually-run (so educandu-2021-11-17-02-migrate-cdn-resoures-manually-run) and exclude files with this postfix from automatic run. Cause it would still be nice to have them in the same place and in the correct logical order, but have them skipped in automatic run.

good idea, done!

Idea: We could postfix maybe such migration scripts with something like -manually-run (so educandu-2021-11-17-02-migrate-cdn-resoures-manually-run) and exclude files with this postfix from automatic run. Cause it would still be nice to have them in the same place and in the correct logical order, but have them skipped in automatic run.

good idea, done!

Can you please also do the "exclude files with this postfix from automatic run" part of my comment? 😅 Otherwise this makes no difference.