text:
似乎没有适配Gradle插件8.1，Gradle 版本8.0

Describe the feature
构建环境：
plugins {
id 'com.android.application' version '8.1.1' apply false
id 'com.android.library' version '8.1.1' apply false
id 'org.jetbrains.kotlin.android' version '1.8.0' apply false
}
distributionUrl=https://services.gradle.org/distributions/gradle-8.0-all.zip
Android Studio Giraffe | 2022.3.1 Patch 1
Build #AI-223.8836.35.2231.10671973, built on August 17, 2023
Runtime version: 17.0.6+0-b2043.56-10027231 amd64
VM: OpenJDK 64-Bit Server VM by JetBrains s.r.o.
Windows 10 10.0
=============================================
报错提示：
An exception occurred applying plugin request [id: 'com.blankj.bus']

Failed to apply plugin 'com.blankj.bus'.
API 'android.registerTransform' is removed.

Exception is:
org.gradle.api.plugins.InvalidPluginException: An exception occurred applying plugin request [id: 'com.blankj.bus']
at org.gradle.plugin.use.internal.DefaultPluginRequestApplicator.exceptionOccurred(DefaultPluginRequestApplicator.java:222)
at org.gradle.plugin.use.internal.DefaultPluginRequestApplicator.applyPlugin(DefaultPluginRequestApplicator.java:204)
at org.gradle.plugin.use.internal.DefaultPluginRequestApplicator.applyPlugin(DefaultPluginRequestApplicator.java:146)
at org.gradle.plugin.use.internal.DefaultPluginRequestApplicator.access$200(DefaultPluginRequestApplicator.java:60)
at org.gradle.plugin.use.internal.DefaultPluginRequestApplicator$1$1.lambda$add$1(DefaultPluginRequestApplicator.java:119)
at org.gradle.plugin.use.internal.DefaultPluginRequestApplicator.lambda$applyPlugins$0(DefaultPluginRequestApplicator.java:142)
at org.gradle.plugin.use.internal.DefaultPluginRequestApplicator.applyPlugins(DefaultPluginRequestApplicator.java:142)
at org.gradle.configuration.DefaultScriptPluginFactory$ScriptPluginImpl.apply(DefaultScriptPluginFactory.java:117)
at org.gradle.configuration.BuildOperationScriptPlugin$1.run(BuildOperationScriptPlugin.java:65)
at org.gradle.internal.operations.DefaultBuildOperationRunner$1.execute(DefaultBuildOperationRunner.java:29)
at org.gradle.internal.operations.DefaultBuildOperationRunner$1.execute(DefaultBuildOperationRunner.java:26)
at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:66)
at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:59)
at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:157)
at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:59)
at org.gradle.internal.operations.DefaultBuildOperationRunner.run(DefaultBuildOperationRunner.java:47)
at org.gradle.internal.operations.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:68)
at org.gradle.configuration.BuildOperationScriptPlugin.lambda$apply$0(BuildOperationScriptPlugin.java:62)
at org.gradle.configuration.internal.DefaultUserCodeApplicationContext.apply(DefaultUserCodeApplicationContext.java:44)
at org.gradle.configuration.BuildOperationScriptPlugin.apply(BuildOperationScriptPlugin.java:62)
at org.gradle.api.internal.project.DefaultProjectStateRegistry$ProjectStateImpl.lambda$applyToMutableState$0(DefaultProjectStateRegistry.java:388)
at org.gradle.api.internal.project.DefaultProjectStateRegistry$ProjectStateImpl.fromMutableState(DefaultProjectStateRegistry.java:406)
at org.gradle.api.internal.project.DefaultProjectStateRegistry$ProjectStateImpl.applyToMutableState(DefaultProjectStateRegistry.java:387)
at org.gradle.configuration.project.BuildScriptProcessor.execute(BuildScriptProcessor.java:42)
at org.gradle.configuration.project.BuildScriptProcessor.execute(BuildScriptProcessor.java:26)
at org.gradle.configuration.project.ConfigureActionsProjectEvaluator.evaluate(ConfigureActionsProjectEvaluator.java:35)
at org.gradle.configuration.project.LifecycleProjectEvaluator$EvaluateProject.lambda$run$0(LifecycleProjectEvaluator.java:109)
at org.gradle.api.internal.project.DefaultProjectStateRegistry$ProjectStateImpl.lambda$applyToMutableState$0(DefaultProjectStateRegistry.java:388)
at org.gradle.api.internal.project.DefaultProjectStateRegistry$ProjectStateImpl.lambda$fromMutableState$1(DefaultProjectStateRegistry.java:411)
at org.gradle.internal.work.DefaultWorkerLeaseService.withReplacedLocks(DefaultWorkerLeaseService.java:345)
at org.gradle.api.internal.project.DefaultProjectStateRegistry$ProjectStateImpl.fromMutableState(DefaultProjectStateRegistry.java:411)
at org.gradle.api.internal.project.DefaultProjectStateRegistry$ProjectStateImpl.applyToMutableState(DefaultProjectStateRegistry.java:387)
at org.gradle.configuration.project.LifecycleProjectEvaluator$EvaluateProject.run(LifecycleProjectEvaluator.java:100)
at org.gradle.internal.operations.DefaultBuildOperationRunner$1.execute(DefaultBuildOperationRunner.java:29)
at org.gradle.internal.operations.DefaultBuildOperationRunner$1.execute(DefaultBuildOperationRunner.java:26)
at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:66)
at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:59)
at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:157)
at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:59)
at org.gradle.internal.operations.DefaultBuildOperationRunner.run(DefaultBuildOperationRunner.java:47)
at org.gradle.internal.operations.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:68)
at org.gradle.configuration.project.LifecycleProjectEvaluator.evaluate(LifecycleProjectEvaluator.java:72)
at org.gradle.api.internal.project.DefaultProject.evaluate(DefaultProject.java:792)
at org.gradle.api.internal.project.DefaultProject.evaluate(DefaultProject.java:156)
at org.gradle.api.internal.project.ProjectLifecycleController.lambda$ensureSelfConfigured$2(ProjectLifecycleController.java:84)
at org.gradle.internal.model.StateTransitionController.lambda$doTransition$13(StateTransitionController.java:247)
at org.gradle.internal.model.StateTransitionController.doTransition(StateTransitionController.java:258)
at org.gradle.internal.model.StateTransitionController.doTransition(StateTransitionController.java:246)
at org.gradle.internal.model.StateTransitionController.lambda$maybeTransitionIfNotCurrentlyTransitioning$10(StateTransitionController.java:207)
at org.gradle.internal.work.DefaultSynchronizer.withLock(DefaultSynchronizer.java:34)
at org.gradle.internal.model.StateTransitionController.maybeTransitionIfNotCurrentlyTransitioning(StateTransitionController.java:203)
at org.gradle.api.internal.project.ProjectLifecycleController.ensureSelfConfigured(ProjectLifecycleController.java:84)
at org.gradle.api.internal.project.DefaultProjectStateRegistry$ProjectStateImpl.ensureConfigured(DefaultProjectStateRegistry.java:362)
at org.gradle.execution.TaskPathProjectEvaluator.configure(TaskPathProjectEvaluator.java:33)
at org.gradle.execution.TaskPathProjectEvaluator.configureHierarchy(TaskPathProjectEvaluator.java:49)
at org.gradle.configuration.DefaultProjectsPreparer.prepareProjects(DefaultProjectsPreparer.java:42)
at org.gradle.configuration.BuildTreePreparingProjectsPreparer.prepareProjects(BuildTreePreparingProjectsPreparer.java:64)
at org.gradle.configuration.BuildOperationFiringProjectsPreparer$ConfigureBuild.run(BuildOperationFiringProjectsPreparer.java:52)
at org.gradle.internal.operations.DefaultBuildOperationRunner$1.execute(DefaultBuildOperationRunner.java:29)
at org.gradle.internal.operations.DefaultBuildOperationRunner$1.execute(DefaultBuildOperationRunner.java:26)
at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:66)
at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:59)
at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:157)
at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:59)
at org.gradle.internal.operations.DefaultBuildOperationRunner.run(DefaultBuildOperationRunner.java:47)
at org.gradle.internal.operations.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:68)
at org.gradle.configuration.BuildOperationFiringProjectsPreparer.prepareProjects(BuildOperationFiringProjectsPreparer.java:40)
at org.gradle.initialization.VintageBuildModelController.lambda$prepareProjects$2(VintageBuildModelController.java:84)
at org.gradle.internal.model.StateTransitionController.lambda$doTransition$13(StateTransitionController.java:247)
at org.gradle.internal.model.StateTransitionController.doTransition(StateTransitionController.java:258)
at org.gradle.internal.model.StateTransitionController.doTransition(StateTransitionController.java:246)
at org.gradle.internal.model.StateTransitionController.lambda$transitionIfNotPreviously$11(StateTransitionController.java:221)
at org.gradle.internal.work.DefaultSynchronizer.withLock(DefaultSynchronizer.java:34)
at org.gradle.internal.model.StateTransitionController.transitionIfNotPreviously(StateTransitionController.java:217)
at org.gradle.initialization.VintageBuildModelController.prepareProjects(VintageBuildModelController.java:84)
at org.gradle.initialization.VintageBuildModelController.prepareToScheduleTasks(VintageBuildModelController.java:71)
at org.gradle.internal.build.DefaultBuildLifecycleController.lambda$prepareToScheduleTasks$3(DefaultBuildLifecycleController.java:134)
at org.gradle.internal.model.StateTransitionController.lambda$doTransition$13(StateTransitionController.java:247)
at org.gradle.internal.model.StateTransitionController.doTransition(StateTransitionController.java:258)
at org.gradle.internal.model.StateTransitionController.doTransition(StateTransitionController.java:246)
at org.gradle.internal.model.StateTransitionController.lambda$maybeTransition$9(StateTransitionController.java:198)
at org.gradle.internal.work.DefaultSynchronizer.withLock(DefaultSynchronizer.java:34)
at org.gradle.internal.model.StateTransitionController.maybeTransition(StateTransitionController.java:194)
at org.gradle.internal.build.DefaultBuildLifecycleController.prepareToScheduleTasks(DefaultBuildLifecycleController.java:132)
at org.gradle.internal.buildtree.DefaultBuildTreeWorkPreparer.scheduleRequestedTasks(DefaultBuildTreeWorkPreparer.java:36)
at org.gradle.configurationcache.VintageBuildTreeWorkController$scheduleAndRunRequestedTasks$1.apply(VintageBuildTreeWorkController.kt:36)
at org.gradle.configurationcache.VintageBuildTreeWorkController$scheduleAndRunRequestedTasks$1.apply(VintageBuildTreeWorkController.kt:35)
at org.gradle.composite.internal.DefaultIncludedBuildTaskGraph.withNewWorkGraph(DefaultIncludedBuildTaskGraph.java:109)
at org.gradle.configurationcache.VintageBuildTreeWorkController.scheduleAndRunRequestedTasks(VintageBuildTreeWorkController.kt:35)
at org.gradle.internal.buildtree.DefaultBuildTreeLifecycleController.lambda$scheduleAndRunTasks$1(DefaultBuildTreeLifecycleController.java:68)
at org.gradle.internal.buildtree.DefaultBuildTreeLifecycleController.lambda$runBuild$4(DefaultBuildTreeLifecycleController.java:98)
at org.gradle.internal.model.StateTransitionController.lambda$transition$6(StateTransitionController.java:177)
at org.gradle.internal.model.StateTransitionController.doTransition(StateTransitionController.java:258)
at org.gradle.internal.model.StateTransitionController.lambda$transition$7(StateTransitionController.java:177)
at org.gradle.internal.work.DefaultSynchronizer.withLock(DefaultSynchronizer.java:44)
at org.gradle.internal.model.StateTransitionController.transition(StateTransitionController.java:177)
at org.gradle.internal.buildtree.DefaultBuildTreeLifecycleController.runBuild(DefaultBuildTreeLifecycleController.java:95)
at org.gradle.internal.buildtree.DefaultBuildTreeLifecycleController.scheduleAndRunTasks(DefaultBuildTreeLifecycleController.java:68)
at org.gradle.internal.buildtree.DefaultBuildTreeLifecycleController.scheduleAndRunTasks(DefaultBuildTreeLifecycleController.java:63)
at org.gradle.tooling.internal.provider.runner.BuildModelActionRunner.run(BuildModelActionRunner.java:53)
at org.gradle.launcher.exec.ChainingBuildActionRunner.run(ChainingBuildActionRunner.java:35)
at org.gradle.internal.buildtree.ProblemReportingBuildActionRunner.run(ProblemReportingBuildActionRunner.java:49)
at org.gradle.launcher.exec.BuildOutcomeReportingBuildActionRunner.run(BuildOutcomeReportingBuildActionRunner.java:65)
at org.gradle.tooling.internal.provider.FileSystemWatchingBuildActionRunner.run(FileSystemWatchingBuildActionRunner.java:140)
at org.gradle.launcher.exec.BuildCompletionNotifyingBuildActionRunner.run(BuildCompletionNotifyingBuildActionRunner.java:41)
at org.gradle.launcher.exec.RootBuildLifecycleBuildActionExecutor.lambda$execute$0(RootBuildLifecycleBuildActionExecutor.java:40)
at org.gradle.composite.internal.DefaultRootBuildState.run(DefaultRootBuildState.java:122)
at org.gradle.launcher.exec.RootBuildLifecycleBuildActionExecutor.execute(RootBuildLifecycleBuildActionExecutor.java:40)
at org.gradle.internal.buildtree.DefaultBuildTreeContext.execute(DefaultBuildTreeContext.java:40)
at org.gradle.launcher.exec.BuildTreeLifecycleBuildActionExecutor.lambda$execute$0(BuildTreeLifecycleBuildActionExecutor.java:65)
at org.gradle.internal.buildtree.BuildTreeState.run(BuildTreeState.java:53)
at org.gradle.launcher.exec.BuildTreeLifecycleBuildActionExecutor.execute(BuildTreeLifecycleBuildActionExecutor.java:65)
at org.gradle.launcher.exec.RunAsBuildOperationBuildActionExecutor$3.call(RunAsBuildOperationBuildActionExecutor.java:61)
at org.gradle.launcher.exec.RunAsBuildOperationBuildActionExecutor$3.call(RunAsBuildOperationBuildActionExecutor.java:57)
at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:204)
at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:199)
at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:66)
at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:59)
at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:157)
at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:59)
at org.gradle.internal.operations.DefaultBuildOperationRunner.call(DefaultBuildOperationRunner.java:53)
at org.gradle.internal.operations.DefaultBuildOperationExecutor.call(DefaultBuildOperationExecutor.java:73)
at org.gradle.launcher.exec.RunAsBuildOperationBuildActionExecutor.execute(RunAsBuildOperationBuildActionExecutor.java:57)
at org.gradle.launcher.exec.RunAsWorkerThreadBuildActionExecutor.lambda$execute$0(RunAsWorkerThreadBuildActionExecutor.java:36)
at org.gradle.internal.work.DefaultWorkerLeaseService.withLocks(DefaultWorkerLeaseService.java:249)
at org.gradle.internal.work.DefaultWorkerLeaseService.runAsWorkerThread(DefaultWorkerLeaseService.java:109)
at org.gradle.launcher.exec.RunAsWorkerThreadBuildActionExecutor.execute(RunAsWorkerThreadBuildActionExecutor.java:36)
at org.gradle.tooling.internal.provider.continuous.ContinuousBuildActionExecutor.execute(ContinuousBuildActionExecutor.java:110)
at org.gradle.tooling.internal.provider.SubscribableBuildActionExecutor.execute(SubscribableBuildActionExecutor.java:64)
at org.gradle.internal.session.DefaultBuildSessionContext.execute(DefaultBuildSessionContext.java:46)
at org.gradle.tooling.internal.provider.BuildSessionLifecycleBuildActionExecuter$ActionImpl.apply(BuildSessionLifecycleBuildActionExecuter.java:100)
at org.gradle.tooling.internal.provider.BuildSessionLifecycleBuildActionExecuter$ActionImpl.apply(BuildSessionLifecycleBuildActionExecuter.java:88)
at org.gradle.internal.session.BuildSessionState.run(BuildSessionState.java:69)
at org.gradle.tooling.internal.provider.BuildSessionLifecycleBuildActionExecuter.execute(BuildSessionLifecycleBuildActionExecuter.java:62)
at org.gradle.tooling.internal.provider.BuildSessionLifecycleBuildActionExecuter.execute(BuildSessionLifecycleBuildActionExecuter.java:41)
at org.gradle.tooling.internal.provider.StartParamsValidatingActionExecuter.execute(StartParamsValidatingActionExecuter.java:63)
at org.gradle.tooling.internal.provider.StartParamsValidatingActionExecuter.execute(StartParamsValidatingActionExecuter.java:31)
at org.gradle.tooling.internal.provider.SessionFailureReportingActionExecuter.execute(SessionFailureReportingActionExecuter.java:50)
at org.gradle.tooling.internal.provider.SessionFailureReportingActionExecuter.execute(SessionFailureReportingActionExecuter.java:38)
at org.gradle.tooling.internal.provider.SetupLoggingActionExecuter.execute(SetupLoggingActionExecuter.java:47)
at org.gradle.tooling.internal.provider.SetupLoggingActionExecuter.execute(SetupLoggingActionExecuter.java:31)
at org.gradle.launcher.daemon.server.exec.ExecuteBuild.doBuild(ExecuteBuild.java:65)
at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:37)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:104)
at org.gradle.launcher.daemon.server.exec.WatchForDisconnection.execute(WatchForDisconnection.java:39)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:104)
at org.gradle.launcher.daemon.server.exec.ResetDeprecationLogger.execute(ResetDeprecationLogger.java:29)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:104)
at org.gradle.launcher.daemon.server.exec.RequestStopIfSingleUsedDaemon.execute(RequestStopIfSingleUsedDaemon.java:35)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:104)
at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.create(ForwardClientInput.java:78)
at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.create(ForwardClientInput.java:75)
at org.gradle.util.internal.Swapper.swap(Swapper.java:38)
at org.gradle.launcher.daemon.server.exec.ForwardClientInput.execute(ForwardClientInput.java:75)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:104)
at org.gradle.launcher.daemon.server.exec.LogAndCheckHealth.execute(LogAndCheckHealth.java:64)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:104)
at org.gradle.launcher.daemon.server.exec.LogToClient.doBuild(LogToClient.java:63)
at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:37)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:104)
at org.gradle.launcher.daemon.server.exec.EstablishBuildEnvironment.doBuild(EstablishBuildEnvironment.java:84)
at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:37)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:104)
at org.gradle.launcher.daemon.server.exec.StartBuildOrRespondWithBusy$1.run(StartBuildOrRespondWithBusy.java:52)
at org.gradle.launcher.daemon.server.DaemonStateCoordinator$1.run(DaemonStateCoordinator.java:297)
at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64)
at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:49)
Caused by: org.gradle.api.internal.plugins.PluginApplicationException: Failed to apply plugin 'com.blankj.bus'.
at org.gradle.api.internal.plugins.DefaultPluginManager.doApply(DefaultPluginManager.java:173)
at org.gradle.api.internal.plugins.DefaultPluginManager.apply(DefaultPluginManager.java:137)
at org.gradle.plugin.use.internal.DefaultPluginRequestApplicator.lambda$applyPlugin$1(DefaultPluginRequestApplicator.java:148)
at org.gradle.plugin.use.internal.DefaultPluginRequestApplicator.applyPlugin(DefaultPluginRequestApplicator.java:199)
... 165 more
Caused by: com.android.builder.errors.EvalIssueException: API 'android.registerTransform' is removed.

Reference
Hope to give some reference articles, links, code, if any.

https://developer.android.com/studio/releases/gradle-plugin-api-updates?hl=zh-cn#transform-api

repo: Blankj/AndroidUtilCode


text:
Review for kanban board

The link to our project :
https://github.com/Bleu-Yves-Sopoude/spacet-travel-app
In this project, we are two of us: @Bleu-Yves-Sopoude and @malikhaiderkhan

Status: Approved :heavy_check_mark:
Hi Team,
Your task is complete! 🍾🍾 Congratulations!  🎉💯🌟
Highlights 🎯
💠 Fairly distributed tasks!
Keep soaring higher! 💻 🍷 🚀
Feel free to leave any questions or comments in the PR thread if something is not 100% clear. Please, remember to tag me in your question so I can receive the notification.
Please, do not open a new Pull Request for re-reviews. You should use the same Pull Request submitted for the first review, either valid or invalid unless it is requested otherwise.

As described in the Code reviews limits policy  you have a limited number of reviews per project (check the exact number in your Dashboard). If you think that the code review was not fair, you can request a second opinion using this form.

source: gharchive/issue

authors: Bleu-Yves-Sopoude rloterh

repo: Bleu-Yves-Sopoude/spacet-travel-app

license: MIT

license_type: permissive

license_source: github-api


text:
Problem loading audio file

@TheREALSaibot said in #12:

[...] in the home component I cant load in the sound file. My component is in 'src/components' and the audio file is in 'src/assets/audio' folder. I tried to replace the file and rewrite the route but nothing really works [...]

@TheREALSaibot are there any errors/warnings in the console? If you open the browser devtools and check the network tab, is the audio file loading there?

Glad to hear you figured it out 🙂

repo: Blocklevel/vue-howler


text:
Ranged descriptors

Adds rudimentary support for ranged descriptors. ~We could add more convenience methods, but this requires us to copy / implement a lot of traits such as ForEachKey.~

Loosened the trait bound in Descriptor<Pk> as FromStr. Now Pk can be pretty much any MiniscriptKey.

Fixed the issue. Now we can decode arbitrary Policys and Descriptors.

str::split_once() is available from 1.52.0 so I need to find a workaround.

Fixed and rebased on master.

Same CI failure as in #158 . Cherry-picked the fix.

Superseded by #162. We will use ideas from this PR when we implement Simplicity descriptors over in elements-miniscript. But there is no reason to keep this PR open.

source: gharchive/pull-request

repo: BlockstreamResearch/rust-simplicity


text:
Allow doubles via CMake option #162

By using -DUSE_DOUBLE=ON MorphIO is using doubles instead of floats. Default value is OFF.
Btw, getting these errors via nosetests (even with master):
======================================================================
ERROR: test_0_API.test_doc_exists
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/Users/savulesc/Workspace/MorphIO/venv/lib/python3.7/site-packages/nose/case.py", line 198, in runTest
    self.test(*self.arg)
  File "/Users/savulesc/Workspace/MorphIO/tests/test_0_API.py", line 15, in test_doc_exists
    morphio.mut.EndoplasmicReticulum,
AttributeError: module 'morphio.mut' has no attribute 'EndoplasmicReticulum'

======================================================================
ERROR: Both modules morphio and morphio.mut should expose the same API
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/Users/savulesc/Workspace/MorphIO/venv/lib/python3.7/site-packages/nose/case.py", line 198, in runTest
    self.test(*self.arg)
  File "/Users/savulesc/Workspace/MorphIO/tests/test_0_API.py", line 47, in test_mut_immut_have_same_methods
    methods(morphio.mut.EndoplasmicReticulum))
AttributeError: module 'morphio.mut' has no attribute 'EndoplasmicReticulum'

----------------------------------------------------------------------

TIHI.
Left some nitpicky comments. Will all this make neuron numbers match to the internal parser?

Thank you for the CR. Numbers should match, given that ASC and H5 have the same values. That's why I took out the precision when writing out morphs for doubles. IIRC, from original ASCII we get H5 and then write back ASCII.

In https://github.com/BlueBrain/MorphIO/blob/master/.github/workflows/run-tests.yml#L39,
could you now call cpp_test.sh twice, one for the float build and one for the double ?

authors: alexsavulescu wizmer

repo: BlueBrain/MorphIO


text:
Data confidentiality / security: Make the workflow very clear

Especially with MINDS data, make sure that only public data will ever be aggregated or made publicly accessible. When users upload private data, it has to remain private and we have to set up the necessary measures to guarantee it.

please view the readme of the minds-web branch for an explanation. https://github.com/BlueBrain/nexus-search-webapp/tree/minds-web

authors: kenjinp mdupont

repo: BlueBrain/nexus


text:
Messages are reversed in date order

Found by @chrundl in discord (alpha builds)

Here are some sample message dates from @Chrundl
649449342470999936
649449314921067776
649449305825000064
649449279288297856
649449126551000064
649449115938000000
649449097989558912
649448072496000000
649448059447810688
649448048757461248
649447969193999744

Marking this to be done for v1.3.0, however, we will. need to work with Chrundl to get the required logs to debug the actual issue. May take longer than the release date

I believe this was due to High Sierra issues. Closing

authors: tneotia zlshames

repo: BlueBubblesApp/bluebubbles-app


text:
🛑 hosted-PalmettoGBA is down

In f58294c, hosted-PalmettoGBA (https://palmettogba.com/) was down:

HTTP code: 0
Response time: 0 ms

Resolved: hosted-PalmettoGBA is back up in 4a8ab36.


text:
🛑 hosted-PalmettoGBA is down

In 4dd69ba, hosted-PalmettoGBA (https://palmettogba.com/) was down:

HTTP code: 0
Response time: 0 ms

Resolved: hosted-PalmettoGBA is back up in 64c5972 after 19 minutes.


text:
🛑 DRMedRemote is down

In 7be2ec6, DRMedRemote (https://drmedremote.bcbssc.com/) was down:

HTTP code: 0
Response time: 0 ms

Resolved: DRMedRemote is back up in d4f2dff after 15 hours, 8 minutes.


text:
Deleting digits in the middle of a number can be confusing

Say you have typed the number (702) 418-1234 but then you realised you made a mistake in the 3rd digit, so you go back and delete it, you get (704) 181-234. Should it be (70) 418-1234? But that wouldn't work if they had accidentally typed an extra digit that they just wanted to get rid of.
Other solutions: try to keep the formatting somehow - insert an X or a space in the place of missing digits? Same problem if you just wanted to go back and delete an extra digit.
Or: add a timeout which is reset every time you hit delete/backspace, but when it hits a threshold (maybe 1 second?) it only then does the re-format.
Again with this issue: we need to decide if it's worth the extra filesize for this edge-case feature.

After thinking about this for some time, I don't think it's worth the additional filesize to worry about potential small confusions like this.

repo: Bluefieldscom/intl-tel-input

license: mit

license_source: bigquery


text:
"Fork us on Github" image runs into the logo on the splash page on mobile sites

assigned it to me

@vicheanath Thanks for taking this on! Assigned

authors: kehoecj vicheanath

repo: Boeing/config-file-validator


text:
Draw.io using SVG to support links within diagram

Describe the feature you'd like
If the draw.io integration saved the diagram as SVG rather than png then links created within the diagram could also be followed directly from the bookstack page
Describe the benefits this feature would bring to BookStack users
Diagrams elements can be used as shortcuts to access other pages within bookstack.
Often more visual representations are easier to understand. So a diagram could replace a table of contents.
This provides another form of interlinking between pages within bookstack.
Additional context
With E11 support for bookstack disappearing anyway, is there a reason not to use SVG instead?

Thanks for the suggestion @mark-james, I had not thought about links within drawings.
Would somewhat rely on #1103 in addition to many other changes.

is there a reason not to use SVG instead?

Yeah, SVG's are harder to deal with, There's a lot more to them (From an editor/display point of view) whereas with a PNG everything is effectively encapsulated within a single unit.

Ok. Thanks @ssddanbrown .
I'm happy to contribute a pull request if you could point me in the right direction as far as changes that need to be made? (Or at least things I need to consider)
This is a fairly important change to me as I'm going to start moving a knowledge base onto bookstack soon. The existing solution while inferior in many ways unfortunately does allow for links within diagrams. So it's going to cause me some conflict if I can't provide users this feature.

Considerations

The back-end image upload endpoints would need to be made compatible with SVG.
The front-end image manager would need to be updated to work with SVG.
The draw.io front-end code would need to be updated to handle draw.io SVGs while ensuring full feature compatibility when re-importing (So no layer loss for example, Would need to check if SVG's retain all data themselves or if extra metadata needs to be saved).
All of the above would need to be made backwards compatible with the existing png-based system.
Both the markdown editor and WYSWIYG editor drawing implementations would need to be updated to handle SVG's, Might be a challenge to cleanly a large drawing as SVG content in markdown due to the amount of content that will be embedded. Might tie into next point:
Need to consider how to display SVG drawings without issue, Without limited possibility of external page styles affecting them. This will be tricky as I think draw.io drawings can contain standard elements such as <h1> or <p> tags. Maybe you could iframe them into the page? Would mean cleaner markdown code but sizing/layout gets trickier. Perhaps shadow DOM could work here? Needs investigation.

Thanks @ssddanbrown.
Lots to consider!
I'll begin looking at this early next week.

Hi
Since this topic is regarding svg, thought would add in my use case
As of now I  can use the markdown editor in bookstack to copy paste the xml content from an svg and paste it so that it renders on bookstack including links - i can then use the svg viewBox attribute to control how it fits/scales in the page. See screenshots
I currently use Plantuml to generate UML diagrams with SVG and these are interactive, e.g. i can click on a ref in one diagram to take me to another page - i use a common constants file to maintain the links to wiki pages and also the skin to ensure that the uml diagram looks consistent.
However the process of copy pasting svg into a page is cumbersome and if i change one link or colour in my constants, while i have a script to regenerate all my uml svgs, i do need to manually update them one by one on each equivalent wiki pae.
As a starting point, It would be great if there was a way for me to refer to svgs from an attachment rather than having to paste them inline in html - in wikijs or confluence, i can use jquery to load them into an svg tag from using the link to the attachment. Which means that when i do mass updates i simply upload all the svgs and it overwrites the older content which then gets loaded on the page - links and all.
One obvious answer is iframe but would prefer if object tag was supported
I also noticed that when i upload svgs, and try reuploading them into bookstack it creates a new copy - it would be great if the files could simply be overriden.
Of course even better if bookstack supported plantuml directly such that i could type plantuml syntax inline which gets rendered (including the ability to include external plantuml files as skins/constants) but that is a bit of a pain as it needs graphviz/plantuml to be setup on the server with the wiki which may not always be possible.
In wikijs and confluence i can use the {html} markdown mode to use jquery to dynamically load html from an attachment into an svg tag like this

That's obviously cumbersome and a security risk and not user friendly so it would be nice if bookstack had a way to insert svgs like the way it can insert images but maintain interactiveness

Draw.io can generate embeded html.
Would integrating this functionnality as html code be easier ?

@simchanu29 Unfortunately not really. Some considerations above would be lesser, but some new considerations would be introduced.

Is there any update on this issue? Would be really nice to have links within the created diagrams.

@bakkertjebrood No, No update.

Are there any updates on this or do you plan to support SVG/HTML embeds in the future?

No, no further update on this. Would likely be activity here if anything was in progress.

Is it possible to use Draw.io in a view only mode? https://www.diagrams.net/blog/online-diagram-viewer I don't know how exactly this works but it seems to indicate that there is a view only mode.
This might be a solution to getting links made in the diagrams to be usable and allowing viewers a better way to look at them.

Would you want to consider to merge this feature, even without SVG support for embedded drawings?

@fmos No, the same issues for drawings would apply for images. The referenced checked off todo item was not in relation to full supported and accepted SVG support for image uploads, it was just in reference to adding support to the image manager functions.

Alternatively, we could double the size of the PNG. This can be done by adding scale: 2 to the export action. We can apply 50% for width/height styles to get back the image in the right format. However, I don't know how to handle the transition. The scale should be stored somewhere.

@vincentbernat That wouldn't address the fundamental request here, of supporting links within drawings.
I'd consider resolution/pixel-density to be a separate desire/request/issue/conversation.

Could a possible solution to handle this is using a javascript canvas with the background image as a png, and links as regions with onclick events?

Just bumping this to show there is still interest in allowing links in diagrams

I just checked the two SVG options and the first one is as simple and easy as the PNG option:

Save the draw.io diagram as a SVG file -> http/s links are working fine in browsers, but not links to subpages  of the diagram
Use draw.io SVG Embedding -> all links are working, but only in the fullscreen view calling the draw.io-viewer

I guess this could be somehow customized to use a self-hosted viewer instance

IMHO: For me, the most interactive / convenient way would be to use the draw.io HTML Embedding directly, fully inline with full interaction/link capabilities.

To get this functionality, we currently export diagrams as iframes and embed them into BookStack. The only downside is that every time you open the diagram and perform a change, you have to again, export it as an iframe again and replace the existing diagram on the BookStack page. I think this is what @Matthew2000 suggested.
Export as iframe (with base64 encoded diagram in iframe URL)

Embedded as media into BookStack page

have clickable links in BookStack (diagrams.net viewer)

It's a workaround, but it works for us as we don't change most flow charts on a daily basis.

authors: Matthew2000 PhilippRieth bakkertjebrood bharatrajagopalan hdeppert mark-james passchn sarang-apps simchanu29 ssddanbrown syh7 vincentbernat

repo: BookStackApp/BookStack


text:
"Override permissions for role" Not Working

Describe the Bug
When attempting to set override permissions per role, the dropdown does not function (displays grey hash lines when role is selected).
Steps to Reproduce

Open Book
Select "Permissions" at right side
Select a role from the "Override permissions for role" dropdown

Expected Behaviour
Dropdown should allow role selection so that permissions can be set.
Screenshots or Additional Context

Browser Details
Chrome v125.0.6422.61
Exact BookStack Version
v24.05.1

Hi @MichelfrancisBustillos,
This would indicate an error is occuring on your instance when attempting to select a role.
Are you familiar with browser development tools?
Is so, please open the "console" of the development tools, and then re-create the issue, then share back any messages that appear in the console when attempting to select a role.

I found the issue. HTTP vs HTTPS. Console info below if you still wanted it but I'd say this can be marked as close. Thank you!!

Failed to load resource: net::ERR_NAME_NOT_RESOLVED		permissions:1
Mixed Content: The page at 'https://knowledge.katoteros.org/books/meeting-notes/permissions' was loaded over HTTPS, but requested an insecure element 'http://knowledge.katoteros.org/uploads/images/system/2024-05/6TSamerican-black-bear-ursus-americanus-close-up.webp'. This request was automatically upgraded to HTTPS, For more information see https://blog.chromium.org/2019/10/no-more-mixed-messages-about-https.html		permissions:1
Error while trying to use the following icon from the Manifest: http://knowledge.katoteros.org/uploads/images/system/2024-05/6TSamerican-black-bear-ursus-americanus-close-up.webp (Resource size is not correct - typo in the Manifest?)
app.js?version=v24.05.1:3 Mixed Content: The page at 'https://knowledge.katoteros.org/books/meeting-notes/permissions' was loaded over HTTPS, but requested an insecure resource 'http://knowledge.katoteros.org/permissions/form-row/book/2'. This request has been blocked; the content must be served over HTTPS.Yn @ app.js?version=v24.05.1:3
app.js?version=v24.05.1:3
   Uncaught (in promise) TypeError: Failed to fetch
at Yn (app.js?version=v24.05.1:3:1317)
at Object.Io (app.js?version=v24.05.1:3:1824)
at si.addRoleRow (app.js?version=v24.05.1:4:66290)
at HTMLSelectElement.<anonymous> (app.js?version=v24.05.1:4:66127)

Good to hear you found the cause! Will therefore close this off.

authors: MichelfrancisBustillos ssddanbrown


text:
Blackbox log retrieval now honors a new "blackbox_fieldflags" descrip…

Blackbox log retrieval now honors a new "blackbox_fieldflags" descriptor that was added to the "flash file"; this allows sparse data to be logged rather than all blackbox fields (good for Gyroflow usage)
This implementation should be backwards compatible for "flash file" versions that don't provide the "blackbox_fieldflags" descriptor as it is able to detect that and default to processing all fields.

Neat! thanks!

authors: bkleiner sakitume

repo: BossHobby/Configurator


text:
🛑 minisocl is down

In 7f96386, minisocl (https://minisocl.botslovers.com) was down:

HTTP code: 0
Response time: 0 ms

Resolved: minisocl is back up in ee0e052.

repo: Botslovers-SL/uptime


text:
🛑 pikolin is down

In 100bbc6, pikolin (https://pikolin.botslovers.com) was down:

HTTP code: 404
Response time: 627 ms

Resolved: pikolin is back up in 129e42a after 11 minutes.


text:
🛑 heytrade is down

In 06a254b, heytrade (https://heytrade.botslovers.com) was down:

HTTP code: 503
Response time: 292 ms

Resolved: heytrade is back up in 1186338 after 8 minutes.


text:
🛑 spell is down

In a6a9356, spell (https://spell.botslovers.com/spell/spells) was down:

HTTP code: 502
Response time: 352 ms

Resolved: spell is back up in 73e98a6.


text:
queryParameters not marked as Deprecated

After upgrading to Hyperspace 2.0.0, it looks like the old query parameters are no longer utilized. I'm assuming the intended use is now to return a URL with the query parameters already appended. This is of course acceptable, but it would be best to have a compiler warning to let the developer know that this value does not work as expected.
The following code no longer appends the querystring parameter type to a URL, for instance.
    var queryParameters: [URLQueryItem]? {
        if let type = type {
            return [URLQueryItem(name: "type", value: type.rawValue)]
        }

        return nil
    }

Good catch. Will take a look at an appropriate deprecation warning.

Fixed by #61 . Thanks @GrandLarseny !

authors: GrandLarseny wmcginty

repo: BottleRocketStudios/iOS-Hyperspace


text:
Feature/project restructure

Project restructure to conform to conform to other BR open source projects
Added swiftlint
Added a changeling

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

authors: CLAassistant earlgaspard

repo: BottleRocketStudios/iOS-KeyboardSupport


text:
SyntaxWarning: "is not" with a literal

Describe the bug
This appeared in the logs on start up, not seen it in previous versions
Reproduction steps
Restart HA
Expected behaviour
NA
Tariff Code
E-1R-FLUX-IMPORT-23-02-14-M
Integration Version
v10.0.0
Home Assistant Version
2023.12.4
Fresh Install?
After upgrading
Home Assistant Logs
This error originated from a custom integration.
Logger: py.warnings
Source: custom_components/octopus_energy/number.py:4
Integration: Octopus Energy (documentation, issues)
First occurred: 9:05:57 am (1 occurrences)
Last logged: 9:05:57 am
/config/custom_components/octopus_energy/intelligent/charge_limit.py:102: SyntaxWarning: "is not" with a literal. Did you mean "!="? if last_state.state is not "unknown":
Confirmation

[X] I confirm that I cannot find my solution within the documentation
[X] I confirm that I cannot find my solution within the FAQ

Thanks for raising. I'll try and fix this warning over the weekend.

This should now be fixed in v10.0.1.

authors: BottlecapDave holdestmade


text:
Accept arrays in feature functions

Summary
To reduce the number of temporary files we may need to write, we should allow the feature functions to accept arrays in addition to files.

Additional Detail

Next Steps

Check datatypes of inputs to feature functions. If str, load the file. If array, use that directly.
Update the docstrings.
Add tests for both types of inputs.

Should we wait for complete python implementation? is because i am seeing the inputs and most of the time is something generated by melodic

Indeed, we cannot work on this issue until we drop MELODIC.

authors: eurunuela tsalo vinferrer

repo: Brainhack-Donostia/aroma


text:
feat: support for StrictMode#detectUntaggedSockets

The TrafficStats.setThreadStatsTag() should be added just before using the OutputStreamWriter to abide the thread policy for Android O or above.
We don't need to use tagSocket() as we are not using any custom Socket, it's system default only.
Docs for ref: https://developer.android.com/reference/android/os/StrictMode.VmPolicy.Builder#detectUntaggedSockets()
Reviewers:
@Sarkar @aaaronlopez @apeterson-branch

So nice. 👍

👍 staging please my friend!

authors: Sarkar aaaronlopez code-crusher


text:
Bevy 0.14

Let's just skip all the other versions and jump straight to latest Bevy version

I'll try to look into this after Bevy 0.15 is released.


text:
Delegate responsibility to engine to create grid data for simulation

:rocket:

[ ] Is your feature request essential for your project?

Describe the workflow you want to enable
Move the writing of the transformed grid into the binary file read by the engine into the wrapper. Different engine need different data to run. To illustrate, REISE.jl can now handle demand flexibility while MATPOWER can't. Keeping the current MAT-file structure to run CEM scenarios with PyPSA in the future will also  be extremely challenging.
Describe your proposed implementation, if applicable

Pickle the transformed grid in the SimulationInput class.
Send the binary file to the tmp folder on the server/container along with the profiles.
Give to each wrapper the responsibility to load the transformed grid enclosed in the pickle file and operate on the object to create the adequate input for the engine. The current export_case_mat function located in the powersimdata.input.exporter.export_to_reise module can be moved in the REISE and REISE.jl repositories. The extra-column giving the demand flexibility located in the bus data frame of a Grid object can be added to the bus table of the case.mat file for REISE.jl.
Convert the grid.mat into a pickle file in each wrapper after a run (applicable to REISE and REISE.jl engine). Classes and functions enclosed in the powersimdata.input.converter.reise_to_grid module can be moved in each wrapper.
Fetch the id_grid.pkl in theReady class via the get_grid method.

The wrappers will likely depend on PowerSimData. For example the class responsible for converting the grid.mat file created after the simulation (REISEConverter) inherits from the AbstractGrid. We will have to add PowerSimData as a dependency in the wrappers.
Describe alternatives you've considered, if relevant
We spent a considerable amount of time trying to figure out a way to use the same input files for different engines and there is no easy solution. Moving away from MAT-file is also very appealing.
Additional context
This is a multi-repository feature. We will also need to convert all existing scenario's grid.mat file on the server/blob. Note that this can easily be done with the current version of the code by:

Looping over the scenario list, using the current get_grid method;
Dumping the Grid object in a pickle file;
Uploading the files on the server/blob

Addressed in #701

repo: Breakthrough-Energy/PowerSimData


text:
使用 pipx 安装的包

安装这些包

rich-cli
shadowsocksr-cli
考虑打包时如何将pipx的包打包进去

finish

repo: BrightXiaoHan/HOME


text:
Migrate to Docker Compose

Closes #18
Using the docker-compose command should make docker management much more easier. You no longer have to manually specify which container to run or even use the Docker Desktop GUI (maybe).
This also has the added benefits of scaling our backend services better, as eventually we would want to run the database, server, and other services on docker to emulate a production environment locally as much as possible.
There are really just two commands to remember to start/stop the backend services:
docker-compose up -d and docker-compose down.
I’ve added instructions in the README on how to update the database image whenever it’s outdated. I’ll probably ping the teams chat whenever there’s an update to the database .sql files.
Known issues

Existing MySQL installations might conflict with ports (3306)
Docker does not start on some computers
As a workaround, using your existing MySQL installation and running the server manually should be fine.

ready for review - not going to bother making a container for back-end server until much later into the project

repo: BrowseBox/browsebox-web


text:
Market place

Frontend Summary 📝
Ui
Development Approach 🚀
Market place
Deployment Status
None
Select the open source program you are contributing to
Other
Code of Conduct

[X] I adhere to the CONTRIBUTING GUIDELINES of this project.

Hey @shuvadeepmondal👋! Thanks for raising this issue and demonstrating your interest in contributing to our project!🚀
We value your engagement and eagerly anticipate your contributions. Should you wish to get involved, please use the /assignme command to self-assign the issue.
This issue provides an excellent opportunity for us to enhance our project, and we're excited to have you join us! Please take a moment to review our CONTRIBUTING GUIDELINES before getting started.
If you have any questions or need assistance, feel free to reach out to us on LinkedIn.❤

/assignme

authors: Puskar-Roy shuvadeepmondal


text:
UI: Improve Mobile Header Layout

What is it?

[x] Feature / enhancement
[ ] Bug
[ ] Docs / tests

Description
Improve mobile user interface in mobile screens.
Use cases and why

Before (iPhone 14 Pro Max)

After

Desktop and tablet Retesting

Checklist:

[x] My code follows the developer guidelines of this project
[x] I have performed a self-review of my own code
[x] I have made corresponding changes to the documentation
[ ] Added new tests to cover the fix / functionality

Amazing job man! love it Thank you so much for your work!

authors: manucorporat reemardelarosa

repo: BuilderIO/qwik


text:
Share Application Intent

Issue #1
Bug No 1 . Solved.

@batraabhishek  If possible review the patch :)

@batraabhishek  Fixed that ... Please check :)

repo: BuildmLearn/Mobile-applications


text:
Improve LinkedIn scraper robustness

Reviewing some posts about scraping LinkedIn Jobs I found that the same data extracted from https://www.linkedin.com/jobs/view/<JOB_ID> is coming from https://www.linkedin.com/jobs-guest/jobs/api/jobPosting/<JOB_ID>.
Then, it makes me think that maybe using this second URL could make the scraper more robust to not get blocked by LinkedIn. I haven't tried, but it could be interesting to make a stress test to see if it has better behavior.

Should be able test just call the each endpoint x times and see which gets 429 first. However, we get 429 quickly with jobs page search and it's same api format as that endpoint

authors: cullenwatson lluissalord

repo: Bunsly/JobSpy


text:
Update prettytable-rs to 0.6.6 and bump version to 0.1.4

This fixes a panic in prettytable-rs when using cargo benchcmp inside Emacs's
M-x shell.

Any chance we could merge this one too, @BurntSushi?

@fitzgen Ah yeah I forgot about this one. Could you remove the version bump though? I have an automated script that does that (with git tags and such).

Sure thing -- it must be outside the repo, because when I saw the #:version, I looked for a script :P

@fitzgen Haha yeah. It's a pretty dumb shell script. This is the current version: https://gist.github.com/anonymous/c15b439376facb8884627d00ab912b86

Oof dah, that's quite a bit of shell script ;)
Updated the PR to remove the self version bump.

All right, off we go! Thanks again!

No problem!

All rights, 0.1.4 is now on crates.io!

authors: BurntSushi fitzgen

repo: BurntSushi/cargo-benchcmp

license: Unlicense


text:
Absolute UTC datetime a play occured on

I couldn't find this is the docs.  Is it possible to get this info?

I'd really really like this too, but I don't see anywhere this is available. The closest solution is to pull tweet time-stamps from the play by play twitter account. Please let me know if you found a better way.

authors: Arro RobMulla

repo: BurntSushi/nflgame


text:
PopupBox is not open if layout is changed

Hello!
I've encountered bug with PopupBox control:
If it placed on control which layout is changed in runtime (for example, grid's row become visible or hidden), it show content only while layout is unchanged. If it's changed, PopupBox seems to be inactive
Sample repository below:
https://github.com/Sergey-Terekhin/MaterialDesignPopupBoxTest

@ButchersBoy I believe this issue can be closed now.

authors: Keboo Sergey-Terekhin

repo: ButchersBoy/MaterialDesignInXamlToolkit


text:
[FEATURE REQUEST] Compatibility with Create Threshold Switches

Description:
Currently the Threshold Switch added by the Create mod (which can look at an inventories contents and output a redstone signal based on it's contents) doesn't work with storage drawers or storage controllers. It would be nice if we could connect the two and have readings to check if a drawer is full or not.

yes please add


text:
Unique Node with software

Currently it is not possible to upload two softwares with the same name, but different versions.
    rdkitA = cript.Software(proj.group, "rdkit", "2020.9", "https://anaconda.org/rdkit/rdkit")
    api.save(rdkitA)
    rdkitB = cript.Software(proj.group, "rdkit", "2021.9", "https://anaconda.org/rdkit/rdkit")
    api.save(rdkitB)

should work, but it fails with:
Traceback (most recent call last):
  File "/home/ludwig/git/sim_data_model/refactor_sdk.py", line 303, in <module>
    main(sys.argv[1:])
  File "/home/ludwig/git/sim_data_model/refactor_sdk.py", line 65, in main
    api.save(rdkit)
  File "<@beartype(cript.api.API.save) at 0x7fbd061c8a60>", line 66, in save
  File "/home/ludwig/.local/lib/python3.9/site-packages/cript/api.py", line 177, in save
    raise UniqueNodeError(display_errors(response.content))
cript.exceptions.UniqueNodeError: [
    "A Software with the same name and created_by already exists: https://criptapp.org/api/software/00b0a435-b9b6-46e1-8aea-859209f42feb/."
]

Update:
New Python SDK on Master branch:
this code:
    try:
        rdkit = cript.Software.get(name = "rdkit", version = "2020.9")
    except ValueError:
        rdkit = cript.Software(name = "rdkit", version = "2020.9", group=proj.group)
        rdkit.save()

Produces this error:
Traceback (most recent call last):
  File "/media/data/elwood/chimad/hongbo4/upload_cript.py", line 42, in main
    rdkit = cript.Software.get(name = "rdkit", version = "2020.9")
  File "<@beartype(cript.data_model.nodes.base_node.BaseNode.get) at 0x7f2f9612fc10>", line 29, in get
  File "/home/ludwig/.local/lib/python3.9/site-packages/cript/data_model/nodes/base_node.py", line 175, in get
    raise ValueError("Your query did not match any existing nodes.")
ValueError: Your query did not match any existing nodes.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/media/data/elwood/chimad/hongbo4/upload_cript.py", line 57, in <module>
    main(sys.argv[1:])
  File "/media/data/elwood/chimad/hongbo4/upload_cript.py", line 45, in main
    rdkit.save()
  File "<@beartype(cript.data_model.nodes.base_node.BaseNode.save) at 0x7f2f9612f670>", line 47, in save
  File "/home/ludwig/.local/lib/python3.9/site-packages/cript/data_model/nodes/base_node.py", line 78, in save
    raise UniqueNodeError(response["errors"][0])
cript.data_model.exceptions.UniqueNodeError: A Software with the same name and created_by already exists: https://criptapp.org/api/software/00b0a435-b9b6-46e1-8aea-859209f42feb/.

The reason appears to be this.
The first line fails, because there is no Software node on CRIPT that has "rdkit" as a name and version "2020.9".
That is OK!
But the second line in the except fails too.
And here it fails, because it finds a node with the name "rdkit" already in the databank.
But this node has a different version: 2021.9.
CRIPT should treat software with different versions as different and allow uploading multiple.

repo: C-Accel-CRIPT/cript


text:
[ICON] Run an experiment in test_spack.py

Icon is only built not tested in test_spack.py.
In order to detect wrong linking or problems with the runtime environment this is needed.

Basically spack needs to parse the lines below correct and create and submit the runscripts accordingly.
# CSCS
# Additional tests for GPU

# But add the RTE-RRTMGP based tests
$addexp checksuite.icon-dev/check.atm_amip_diagparams_constbc_nojsb_notransport_nodynamics --builders DAINT_CPU_cce DAINT_CPU_pgi DAINT_GPU_pgi DAINT_CPU_nvidia DAINT_GPU_nvidia --list $listname

# NVIDIA for GPU: failing currently because:
#              mo_ice_interface:ice_fast_interface: This part has not been ported to GPU.
./rmexp checksuite.ocean_internal/technical/exp.ocean_omip_ptest                  --builders DAINT_GPU_pgi DAINT_GPU_nvidia --list $listname
./rmexp checksuite.ocean_internal/technical/exp.test_ocean_omip_technical         --builders DAINT_GPU_pgi DAINT_GPU_nvidia --list $listname

# add tolerance check to daint builders
$addexp checksuite.icon-dev/check.mch_ch_lowres                                   --builders DAINT_CPU_pgi DAINT_GPU_pgi DAINT_CPU_nvidia DAINT_GPU_nvidia --list $listname
$addexp "checksuite.icon-dev/check.mch_opr_r04b07*"                               --builders DAINT_CPU_pgi DAINT_GPU_pgi DAINT_CPU_nvidia DAINT_GPU_nvidia --list $listname
# GPU builders explicitly turned off due to unresolved bug
$addexp "checksuite.icon-dev/check.mch_opr_r19b07_midnight"                       --builders DAINT_CPU_pgi DAINT_CPU_nvidia --list $listname
# add tolerance check for 2-moment scheme
$addexp "checksuite.icon-dev/check.mch_opr_r19b07_2m"                             --builders DAINT_CPU_pgi DAINT_GPU_pgi DAINT_CPU_nvidia DAINT_GPU_nvidia --list $listname
# add tracer only test to DAINT builders (for checking equivalence of vertical transport code for GPU vs CPU)
$addexp checksuite.icon-dev/check.atm_tracer_Hadley                                  --builders DAINT_CPU_pgi DAINT_CPU_nvidia --list $listname
#$addexp checksuite.icon-dev/check.atm_tracer_Hadley                                  --builders DAINT_GPU_pgi DAINT_GPU_nvidia --list $listname

spack install  --until build #srun
spack install --test=root --dont-restage #login-node

For ICON we currently have two problems:
Problem 1: Get up-to-date experiment list
Problem 2: Compile on compute-node, but test cannot be submitted from there.
Solution 1
Implement simple parser (either in ICON (C2SM, EXCLAIM) or use something on the spack side to read the line above.
Based on the entries the respective runscrips are generated using make_runscripts
Solution 2
Split spack install into two parts:
spack install --until build # compute-node

spack install --dont-restage --test=root # on login node

This proposal requires changes in test_spack.py, a script to parse the buildlbot-script and a wrapper for runexp.bash
A bash version of the wrapper is already implemented in C2SM-ICON

The reason for the test is: # So our quick start tutorial works: https://c2sm.github.io/spack-c2sm/QuickStart.html.
So by changing the test to
spack install --until build
spack install --dont-restage --test=root

we would not be testing the quick start tutorial; unless we change it accordingly.

But currently it does not test anything at all. And thats a problem too

authors: PanicSheep jonasjucker


text:
Movie crashes

Movie crashes when the device is connected to an external display.

Tested on an external monitor, connected via HDMI.
The c4-presentation (i.e. cocoaconf) app doesn't crash when switching to video.
I downloaded the crash logs from CocoaConf, they don't say much either: https://files.slack.com/files-pri/T03F11137-F1E3CCMT9/download/logs.zip
I did NOT test against an external projector, which may have something to do with the crash... audio? In 3/4 logs there is a reference on various threads (in diff logs) to MediaToolbox.


text:
How to port CANopenNodel to TMS320F28375D

Hello, I would like to ask you some questions. Based on your case, I have ported CANopenNode to F28375D, which can send heartbeat and PDO. However, I have a serious problem: my CPUTimer1 is 1ms, Heartbeat and PDO settings are sent once a second, but the sending speed is very fast, never 1s.
I can ensure that the heartbeat messages and timer events in PDO I set are set every 1s, as I am proficient in configuring and using CANopenNode's heartbeat messages, PDO, and SDO on STM32. After setting up the heartbeat message and PDO, 375D will send me a message in approximately 30-100ms, which I have never seen before on STM32。
The attachment contains my preliminary ported project, using CCS10.0.0 and TI18.0 as the compilation chain. The library function uses driverlib. The attachment contains settings for the heartbeat message I received and screenshots of the received message. You can watch it。
I followed the migration steps, first configuring the sending and receiving interrupts of the CANB bus, then configuring the CPUTimer1 timer bit 1ms interrupt, and then initializing the CANopenNode. I added the CANopenNode function to the CPUTimer1 interrupt and CANBISR, and also added it to while1,
The possible problem is on the CPUTimer1 timer, but I haven't found out exactly where the problem is.
Thank you very much for taking the time to reply to me.
F28375d_CAN_CANopenNode.zip

Porting is not easy.
You can check timeDifference_us argument in CO_process(), etc.

I'll give it a try，Thank you very much for taking the time to reply to me.

authors: CANopenNode WeiShengxiujing

repo: CANopenNode/CANopenNode


text:
chore(main): release 0.35.4

:robot: I have created a release beep boop
0.35.4 (2023-04-15)
Bug Fixes

deps: update dependency fl_chart to ^0.62.0 (#309) (8e71896)

Code Refactoring

label-card: void Function() -> VoidCallback (#306) (6aae7f3)

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/CCXXXI/ecg_monitor/releases/tag/v0.35.4 :sunflower:


text:
Save all conda packages for a cdat release in a private repo

While working on a different project I noticed the following behavior for C++ conda packages.
I think cdat suffers from the same issues. I propose we adderess these issues as outlined.

Conda packages with older versions may disappear (or be rebuilt with different dependencies) in public repositories.

To fix this we store all conda packages in a repository in our own private channels. Anaconda has a limit of 3 GB which may be a problem. Packages can be stored on a regular web server though (http)

Having a number of packages built and rebuilding just one package a few weeks later may result in dependency mismatch and in a non working environment.

This is because, at build time, conda pulls the most recent dependencies and makes the package depend on those.
At install time, if there is no dependency on the version number, conda installs the latest version which may not work with packages build a few weeks prior.
Adding version dependency does not solve the problem because of issue 1.
To fix this, I always rebuilt all packages when I had to rebuild one, especially if that rebuild happens a few weeks after I rebuild everything.

@doutriaux1 @aashish24 @scottwittenburg What do you think?

This seems like a reasonable path to me, and could make sense to ease some of the issues we always see with installing the environment.  But I have a couple questions:

How much developer time do see it taking to maintain this approach over time?  And who will be responsible for building and uploading whenever that is needed?

Same question for setup and maintenance of the web server for hosting those packages if we exceed the 3GB limit on anaconda.org?

This seems like a reasonable path to me, and could make sense to ease some of the issues we always see with installing the environment. But I have a couple questions:

How much developer time do see it taking to maintain this approach over time?  And who will be responsible for building and uploading whenever that is needed?

I don't think this is much harder than just the building we are doing now. So whoever is building the packages now could do the extra step.
We need a few days at the beginning to port a script I have that pulls packages from a conda env, figure out what binary packages we need rebuilding every time and get rid of most version pinning that we use.

Same question for setup and maintenance of the web server for hosting those packages if we exceed the 3GB limit on anaconda.org?

I don't know of public http server that we could use. I am sure we could find a server here at Kitware without too much trouble, but probably llnl could find one as well.

@danlipsa we already have this setup with our cdat-forge channel. I also have an upload script to it somewhere. The first use case was the pcmdi-metrics. See: https://github.com/CDAT/conda-recipes/blob/master/push_env_packages.py and https://anaconda.org/cdat-forge

Then we should only have our private channel in the lists of channels we download packages from isn't it?
See:
https://raw.githubusercontent.com/cdat/cdat/master/conda/cdat-v80_py2.Linux.yaml

authors: danlipsa doutriaux1 scottwittenburg

repo: CDAT/conda-recipes


text:
Alignment taking a long time

I'm finding that it takes an inordinate amount of time to align evern just 12 sequences in WebMicrobeTrace, and that this appears to be true regardless of my alignment options (e.g., aligner/algorithm, local vs global, number of cores, etc.). The application hasn't gotten past the below for about 30 minutes now! The same set of sequences align in a split second in the desktop application, but I'd like to be able to use the web application if possible as my understanding is that that's what's being actively maintained and developed. Any help? Thanks!

Hmmm, It probably broke in the background. Would you mind doing the following?

Load up the sequences using a set of configurations that takes too long to load
Once the network is loading and it's hanging on the alignment step, hit F12. This should open your browser's developer tools.
Click on the "Console" tab.
Take a screenshot of its contents and post it here.

Thanks!

Yup, that definitely failed! One more request: try the same thing on the MicrobeTrace Bleeding-Edge Development Version https://devmicrobetrace.herokuapp.com/
If that hangs, please repeat those screenshot steps. Sorry, this should be the last diagnostic test, and hopefully I'll be able to fix your problem

Doesn't hang!

We've just replicated this with a handful of completely different FASTA files in the production branch (confirmed issue not present in the development branch). Not sure of the cause but definitely a showstopper. For now the 'bleeding edge' version is your best bet until we can pin it down.

The Bleeding-Edge version has succeeded the production release that was throwing that error.

authors: AABoyles ells rlechtenberg

repo: CDCgov/WebMicrobeTrace


text:
Use the HL7 diff tool when testing that two HL7 outputs are the same

User Story
As a report stream developer, I would like the utility that confirms two HL7 outputs are equivalent to use the HL7 diff tool
Description/Use Case
This tool was written to assist in onboarding new senders and confirming the data is losslessly converted.  It can also be integrated into the test harness in order to provide more useful output when analyzing a test failure, highlighting specifically how the HL7 is different.
Risks/Impacts/Considerations

Small risk that the HL7 diff tool is missing cases, but there are tests written for it.

Dev Notes
An example of the tool integrated into the CLI can be found here
Acceptance Criteria

[ ] Tests that assert against two HL7 outputs being the same runs the comparison via the HL7 Diff tool

Hey team! Please add your planning poker estimate with Zenhub @adegolier @arnejduranovic @brick-green @jack-h-wang @jalbinson @JFisk42 @mkalish

Please add your planning poker estimate with Zenhub @thetaurean

authors: Andrey-Glazkv mkalish

repo: CDCgov/prime-reportstream


text:
Complete PRT mappings

User Story
As a RS engineer, I want to ensure all FHIR mappings are completed so that they are maintainable and concise.
Description/Use Case
PRT mappings other than PRT[Device] require changes to the HL7 to FHIR converter library (#15511). The remaining PRT mappings should be completed after supporting changes to the library are complete.
Risks/Impacts/Considerations
This mapping does not exist in the NIST ELR spec. We should confirm UP HL7 receivers would be able to support this segment if sent to them (PRT in ORU_R01 is supported in version 2.7 and later).
Dev Notes
The mappings needing completion are:

PRT[Observation-Location]
(note: may need to be integrated with the OBX[Observation] mapping)
PRT[PractitionerRole]
PRT[RelatedPerson]

The library change is needed specifically to allow PRT mappings to be selected at the message level based on the presence or absence of certain fields within the segment.
Acceptance Criteria

[ ] Additional PRT mappings and integration tests are implemented

Hey team! Please add your planning poker estimate with Zenhub @adegolier @arnejduranovic @jack-h-wang @jalbinson @JFisk42 @kant777 @thetaurean @wcutshall

authors: MichaelEsuruoso jack-h-wang


text:
[Bug]: Admin Settings: Adding a valid filter value to NM-DOH did not save

Describe the bug
A bug was encountered by Mo when entering a valid filter value for the top level org info for org NM-DOH:
"Adding a valid filter value to the organization and hitting save did not save my filter settings, but I didn't get an error"
Impact
Filter at an org level possibly not updatable.
To Reproduce
Steps to reproduce the behavior:

Login as admin, go to Admin->Organization Settings (on staging)
Choose 'nm-doh' from the organization list
Enter a valid filter value and click Save
Hitting refresh reveals that the value wasn't saved.

Expected behavior
A valid filter value should be updateable for an org
Screenshots

@loripusey might want to close this one in favor of #4476 just created above. We didn't have proper repro steps anyway, and it's very likely related

Can't repro, likely OBE


text:
DTM/DT/(TS) mapping updates

This PR updates some DTM/DT mappings to match the v2-to-fhir inventory while preserving HL7 DTM/DTs in and out.
Test Steps:

Run the integration tests
Convert a sample hl7 message containing PID.7, NK1.8/9, and OBR.22 to fhir and back and observe the results

Changes

Updated mappings for PID.7, PID.29, and OBR.22 from v2-to-fhir to include extension with the original HL7 string (inlined)
Updated mappings from HL7 back to PID.7, PID.29, and OBR.22 to use new sub-schema DTM.yml
Added mapping for NK1.8 and NK1.9
Added many tests for different combinations of datatypes and dateTime precision
Adjusted many existing tests

Checklist
Testing

[x] Tested locally?
[x] Ran ./prime test or ./gradlew testSmoke against local Docker ReportStream container?
[x] Added tests?

Linked Issues

Addresses #11664

Added one last commit to remove an empty identifier from FHIR, and it required an update to tons of tests, feel free to ignore that commit (or review it independently) when doing your review.


text:
Refactored mapped condition filter; added fhir expression + condition lookup filters

This PR introduces a new design pattern for filters in ReportStream and adds legacy conditionFilter support to the recently added mappedConditionFilter (which has been refactored to use the new design pattern). This adds two new types of filter: FHIRExpressionConditionFilter and ConditionLookupConditionFilter.
Test Steps:

Run full test suite
Manually test a legacy condition filter
Manually test a mapped condition filter
Manually test a combination of 2 & 3

Changes

Refactor abstract ConditionFilter and related implementations
Update FHIRRouter to utilize new filter design pattern properly
Added FHIRExpressionConditionFilter and ConditionLookupConditionFilter

Checklist
Testing

[x] Tested locally?
[x] Ran ./prime test or ./gradlew testSmoke against local Docker ReportStream container?
[x] (For Changes to /frontend-react/...) Ran npm run lint:write?
[ ] Added tests? One still needs fixed and a couple more added

Linked Issues

Fixes #12705
Fixes #12706

To Be Done
Before Merge / Review

Add comments
Manual test steps
Address 1 minor TODO
Fix 1 broken test
Finish adding test coverage for new ConditionFilter pattern
Add test coverage for ConditionLookupConditionFilter and FHIRExpressionConditionFilter

Tech Debt

Refactor rest of filters (create ticket)

Deployment Strategy

Code: Add temporary no-op on mappedConditionFilter

DEPLOY Prime can now handle the new mappedConditionFilter but is not using them

Config: Duplicate production conditionFilters as mappedConditionFilters
Code: Remove legacy conditionFilter code and temporary no-op

DEPLOY Prime is now using only the new condition filters but with the mapped moniker

Config: Configure production conditionFilter as duplicates of mappedConditionFilter
Code: Adjust implementation to use conditionFilter instead of mappedConditionFilter

DEPLOY Prime is now using the new condition filters without the mapped moniker

Config: Remove mappedConditionFilter from production config
Code: Remove mappedConditionFilter from codebase

passed all tests locally

I saw migration of existing settings on deployed ENVs w.r.t this filter changes being planned

Intro of abstract and open classes on condition filter look neat and could help potential future impl of condition filtering of different flavors

Nothing to add w.r.t coding style as Micheal already covered that.

I'll ping you (and @mkalish) once tests changes and code comments are up.

Super neat stuff, I really like the direction where this is heading. Have some comments, let me know if you want to chat about any of them
* Missing a lot of documentation; I'm liking the changes but I think KDoc would be really helpful

Heard and addressing.

* I think a lot of places the default params can get dropped

👍

* I'm not sure bundling in the removing of observations into the "filter" behavior makes sense (and realistically is a problem that exists before this change).  The code uses the filter to mean two different things

In a previous version of this I had two abstract methods: evaluate (for qualifying receivers) and filter (for filtering the bundle). I'm not against splitting them, but implementation ends up being the same algorithm just returning different data (and noop for the filter).

Run all these filters and let me know if any of them passed
Run all these filters and let me know what observations failed which filters

  * Filter the list of the receivers for a topic; for the condition case that means a receiver is filtered if none of the condition filters evaluate to true
  * For an individual receiver, the bundle is then filtered such that the a observation is only included if any of the condition filters evaluate to true
    I think these distinctions need to be better surfaced; for example the idea of a "not" condition filter might be difficult to configure correctly to work for both of the cases

Could a wrapper class or a an added class member (val not: Boolean = false) achieve this effectively?

* I'd like to see a lot more unit tests around all the new condition code

Wrapping up, thanks for reviewing what's up :).


text:
Turn Palo Alto on for production

This PR flips the switch to enable the Palo Alto in production. (A retry from https://github.com/CDCgov/prime-reportstream/pull/2828)
Deployment Checklist

[ ] Ensure changes to CDC DNS are applied (Richard Teasley should notify us)
[ ] Notify senders of downtime - Anshul
[ ] Disable the release GitHub Action - Chris
[ ] Merge this PR - Chris
[ ] Deploy Terraform to production - Chris

[ ] Deploy tf-01-network to production
[ ] Deploy tf-02-config to production
[ ] Deploy tf-03-persistent to production
[ ] Deploy tf-04-app to production

[ ] Verify we have App Insights logs - Jim
[ ] Verify we have no blocked SFTP connection to senders - Jim
[ ] Inspect Palo Alto logs to see if any unexpected traffic is blocked - Timothy
[ ] Perform post-deployment validations - Jim
[ ] Enable the release GitHub Action - Chris
[ ] Notify receivers they can remove our old IP address from their firewall - Ming/Adrian

@cwinters-usds Thanks for updating the checklist! These steps are no longer needed:

[ ] Update the dnsmasq mapping file for production IP addresses - Chris

[ ] Submit a PR with the changes
[ ] Apply tf-01-network to force the dnsmasq server to update

@ronaldheft-usds thanks much for the pointer, fixed

@ronaldheft-usds good point -- I forgot to add that after bringing it up in our standup!
Is there any reason not to make this change in the terraform here? It'd get applied in the 'Deploy Terraform to Production' step and the function app would be restarted as a result.

@ronaldheft-usds good point -- I forgot to add that after bringing it up in our standup!
Is there any reason not to make this change in the terraform here? It'd get applied in the 'Deploy Terraform to Production' step and the function app would be restarted as a result.

Nope! That's the perfect spot! I would add it to this PR, so when we merge, that change will be included.

@ronaldheft-usds added that config item, also a short doc about DNS -- hopefully it makes sense.

authors: cwinters-usds ronaldheft-usds


text:
Generate api docs via annotations

This PR ...
If you are suggesting a fix for a currently exploitable issue, please disclose the issue to the prime-reportstream team directly outside of GitHub instead of filing a PR, so we may immediately patch the affected systems before a disclosure. See SECURITY.md/Reporting a Vulnerability for more information.
Test Steps:

Include steps to test these changes

Changes

Include a comprehensive list of changes in this PR
(For web UI changes) Include screenshots/video of changes

Checklist
Testing

[ ] Tested locally?
[ ] Ran ./prime test or ./gradlew testSmoke against local Docker ReportStream container?
[ ] (For Changes to /frontend-react/...) Ran npm run lint:write?
[ ] Added tests?

Process

[ ] Are there licensing issues with any new dependencies introduced?
[ ] Includes a summary of what a code reviewer should test/verify?
[ ] Updated the release notes?
[ ] Database changes are submitted as a separate PR?
[ ] DevOps team has been notified if PR requires ops support?

Linked Issues

Fixes #issue

To Be Done
Create GitHub issues to track the work remaining, if any

#issue

Specific Security-related subjects a reviewer should pay specific attention to

Does this PR introduce new endpoints?

new endpoint A
new endpoint B

Does this PR include changes in authentication and/or authorization of existing endpoints?
Does this change introduce new dependencies that need vetting?
Does this change require changes to our infrastructure?
Does logging contain sensitive data?
Does this PR include or remove any sensitive information itself?

If you answered 'yes' to any of the questions above, conduct a detailed Review that addresses at least:

What are the potential security threats and mitigations? Please list the STRIDE threats and how they are mitigated

Spoofing (faking authenticity)

Threat T, which could be achieved by A, is mitigated by M

Tampering (influence or sabotage the integrity of information, data, or system)
Repudiation (the ability to dispute the origin or originator of an action)
Information disclosure (data made available to entities who should not have it)
Denial of service (make a resource unavailable)
Elevation of Privilege (reduce restrictions that apply or gain privileges one should not have)

Have you ensured logging does not contain sensitive data?
Have you received any additional approvals needed for this change?

@arnejduranovic No rush on this, but just a quick trial balloon that I wanted to throw out that might help keep the api docs more up to date

Closing this since it was a draft and the functionality has now been implemented


text:
Upgrade Cypress to latest version

We're running version 9. Version 12 is latest.
Migration guide:
https://docs.cypress.io/guides/references/migration-guide#Migrating-to-Cypress-12-0

Adding a note here that Cypress 13 was release recently!

repo: CDCgov/prime-simplereport


text:
Upgrade spring to 2.7 and switch to spring-boot-starter-graphql

BACKEND PULL REQUEST
Related Issue

addresses #2634

Changes Proposed

upgrade to spring 2.7.3
move to spring-boot-starter-graphql

Additional Information

see notes below
following this PR there will be a PR that moves all file uploads to a rest endpoint
and also another PR to remove unused code, such as all the dataloader files

Testing

deployed on dev2, we will conduct a bug bash
Please run e2e locally
new graphql lib only matches argument when its exactly the same in java and graphql schema, part of the review is to make sure every param that's tagged with @Argument matches exactly to the graphql schema arguments
the test coverage will be low, there is no way around it since this pr touches a lot of config files

Checklist for Primary Reviewer

[x] Any large-scale changes have been deployed to test, dev, or pentest and smoke tested
[x] GraphQL schema changes are backward compatible with older version of the front-end
[x] Any dependencies introduced have been vetted and discussed

Spring graphql doc

Hi @zdeveloper! @emmastephenson asked me to run the e2e tests locally on your branch. I noticed that a couple were only failing due to an unrelated change (likely introduced because the e2e test check is broken in CI). That being said, once I changed the following:

02-add_patient_spec.js lines 40-41 to:

    cy.get(".prime-edit-patient").contains("Last name is missing");
    cy.get(".prime-edit-patient").contains("Testing facility is missing");

the add patient spec passed

05-self_registration_spec.js line 39 to:

    cy.get(".prime-formgroup").contains("Last name is missing");

The 07-account_creation_spec fails  because for I believe all the tests in that file I see "Your SimpleReport account invitation has expired" -- I'll check to see if I can repro this in the app 🤔

Hi @zdeveloper! @emmastephenson asked me to run the e2e tests locally on your branch. I noticed that a couple were only failing due to an unrelated change (likely introduced because the e2e test check is broken in CI). That being said, once I changed the following:

02-add_patient_spec.js lines 40-41 to:

    cy.get(".prime-edit-patient").contains("Last name is missing");
    cy.get(".prime-edit-patient").contains("Testing facility is missing");

the add patient spec passed

05-self_registration_spec.js line 39 to:

    cy.get(".prime-formgroup").contains("Last name is missing");

The 07-account_creation_spec fails because for I believe all the tests in that file I see "Your SimpleReport account invitation has expired" -- I'll check to see if I can repro this in the app thinking

Yeah @alismx was looking into the e2e failures and their initial assessment was that its okta related and possibly introduced by this PR #4142

E2E's are passing! thank you @BobanL, @alismx for fixing it! 🚀

@emmastephenson

Clean up ticket
File upload ticket


text:
Attach Application Insights objects to global Log Analytics Workspace

DEVOPS PULL REQUEST
Related Issue

Resolves #6218.

Changes Proposed

Attach existing Insights object to global analytics workspace.

Additional Information

Log Analytics should offer additional features above what is currently offered. These are likely worth a further look for diagnostic/on-call purposes.

Testing

Test to ensure usual queries and other methods of diagnostics are still operational after the migration.
This item has been deployed to pentest, and remains available accordingly for verification.

Checklist for Primary Reviewer
Infrastructure

[x] Consult the results of the terraform-plan job inside the "Terraform Checks" workflow run for this PR. Confirm that there are no unexpected changes!

Cloud

[ ] Oncall has been notified if this change is going in after-hours
[x] If there are changes that cannot be tested locally, this has been deployed to our Azure test, dev, or pentest environment for verification

The main file looks good, but what's up with the tf lock file? Should that be included in this PR?

That was totally my fault! 😓 Fixed!


text:
Enhance search accessibility and utility

I have LMS's Full Text Search plugin enabled.

This causes LMS to return search results relating to return Album, Artist and Track results that match the search term, which is what I'd expect.  Given that search returns these results that are not specific to browse context would it not be better placed next to the volume controls, making searchy instantly accessible no matter where one is in the Material UI?  Having to find and navigate back to home every time I want to find something is probably the single jarring experience I have when using LMS.
If none of the above is agreeable, could the  button at least be placed next to the volume controls so users can get "home" and able to access search quickly (albeit I think this is the poorer of the two options).
In regards to browse context it'd be very useful to be able to filter the browse by keyword(s) e.g. when browsing artists a

that enables the user to enter text that then dynamically filters the contents of the browse would be really useful.  This could apply to All Artists, Albumartists, Composers, Albums, Artist browse (filter on matching albums) and even Album view (filter on track title).

Duplicate of https://github.com/CDrummond/lms-material/issues/623

I'm struggling to understand the underlying rationale for marking as invalid  when LMS in effect only has one type of search.  All people are asking for is the ability to access search from anywhere, in the knowledge that contextual search does not exist in LMS.

authors: CDrummond audiomuze

repo: CDrummond/lms-material


text:
Enable Identification of Employer of Staff vs. Owner of Staff Work Location

This is for capturing needs not currently supported by the CEDS model.  Please do not send or share actual data as examples in this issue or in attachments.
Author(s): CJ Gilbert; Kristy Webber
Authoring Organization(s): State of Michigan/CEPI
Email address: gilbertc6@michigan.gov
Use Case Title
Enable Identification of Employer of Staff vs. Owner of Staff Work Location
Use Case Description
Element Name: Employer LEA Identifier
Element Definition: Stores the LEA identifier of the employing entity
Element Name: Employer IEU Identifier
Element Definition:  Stores the ISD identifier of the employing entity
Use Case Background
The entity that owns the school building is not always the same entity paying the salary of the staff member assigned to that building. Some of our reports call for aggregations based on where people have been assigned to work, and other reports call for aggregations based on who has employed those persons.
Right now, our state stores employment data and assignment data in two separate tables which allows us to differentiate between the district that owns the building and the district paying the salary.
In the CEDS Data Warehouse, there is only a single fact table that houses both employment and assignment data, and that table only has elements for linking to a single district or a single ISD.  CEDS does not currently have a way to store separate districts so that we can aggregate numbers separately for these two types of relationships.
Adding these element would allow us to use the (already existing) fields of a) SchoolId, b) LeaId, and c) IeuId in the Data Warehouse to represent a) the school to which a staff member is assigned, b) the LEA which owns that building, and c) the IEU in which that building is located.
And then we’d could use EmployerLEAId and EmployerIEUId to point to the employing entities.
Location of Element in the Domain Entity Schema
K12 -> K12 Staff -> Assignment
K12 -> K12 School -> Job
K12 -> LEA  -> Job

An updated solution that reflects that the solution requires changes to the DW FactK12StaffAssignment table rather the addition of new elements.
CEDS OSC DW_Issue_93 EmployerLEAId - Proposed Solution - V2.docx

repo: CEDStandards/CEDS-Data-Warehouse