Add epel prepare plugin using feature

Add option --epel in tmt try to enable epel repository.
Pull Request Checklist

[x] implement the feature
[x] write the documentation
[x] extend the test coverage
[x] adjust plugin docstring
[x] mention the version
[x] include a release note

Adding blocked label, to get https://github.com/teemtee/tmt/pull/2986 in first to simplify this patch a bit.

@falconizmi commit message and PR $SUBJ would deserve a small tweak: "Add epel prepare plugin using feature" is technically correct, but it looks like the epel support is added in general, which is not true; "Add epel prepare plugin using feature into tmt try" would be more precise, or something along the lines of extending tmt try rather than adding epel to prepare/feature, because we already have that.

@falconizmi it does nto work for me, testing with tmt try --epel CentOS-Stream-9
tmt try --epel CentOS-Stream-9

fails with
        prepare task #1: tmt-try-epel on default-0
        how: feature
        name: tmt-try-epel
        order: 50
        Enable EPEL
        fail:

prepare step failed

The exception was caused by 1 earlier exceptions

Cause number 1:

diff --git a/tmt/steps/prepare/ansible.py b/tmt/steps/prepare/ansible.py
index d3745cc4..008050b7 100644
--- a/tmt/steps/prepare/ansible.py
+++ b/tmt/steps/prepare/ansible.py
@@ -164,4 +164,4 @@ class PrepareAnsible(tmt.steps.prepare.PreparePlugin[PrepareAnsibleData]):

                 logger.info('playbook-path', playbook_path, 'green')

-            guest.ansible(playbook_path, extra_args=self.data.extra_args)
+            guest.ansible(playbook_path, playbook_root=self.step.plan.fmf_root, extra_args=self.data.extra_args)
diff --git a/tmt/steps/prepare/feature.py b/tmt/steps/prepare/feature.py
index 4209d52a..115d16f6 100644
--- a/tmt/steps/prepare/feature.py
+++ b/tmt/steps/prepare/feature.py
@@ -58,7 +58,7 @@ class ToggleableFeature(Feature):
                 f"{op.capitalize()} {self.NAME.upper()} is not supported on this guest.")

         self.info(f'{op.capitalize()} {self.NAME.upper()}')
-        self.guest.ansible(playbook_path.relative_to(self.get_root_path()))
+        self.guest.ansible(playbook_path)

     def _enable(self, playbook_filename: str) -> None:
         self._run_playbook('enable', playbook_filename)
diff --git a/tmt/steps/provision/__init__.py b/tmt/steps/provision/__init__.py
index fb5defba..43f02ac4 100644
--- a/tmt/steps/provision/__init__.py
+++ b/tmt/steps/provision/__init__.py
@@ -951,14 +951,18 @@ class Guest(tmt.utils.Common):
                 tasks = fmf.utils.listed(matched.group(1), 'task')
                 self.verbose(key, tasks, 'green')

-    def _ansible_playbook_path(self, playbook: Path) -> Path:
+    def _ansible_playbook_path(self, playbook: Path, playbook_root: Path) -> Path:
         """ Prepare full ansible playbook path """
-        self.debug(f"Applying playbook '{playbook}' on guest '{self.primary_address}'.")
+        # self.debug(f"Applying playbook '{playbook}' on guest '{self.primary_address}'.")
         # FIXME: cast() - https://github.com/teemtee/tmt/issues/1372
-        parent = cast(Provision, self.parent)
-        assert parent.plan.fmf_root is not None  # narrow type
+        # parent = cast(Provision, self.parent)
+        # assert parent.plan.fmf_root is not None  # narrow type
+
         # Playbook paths should be relative to the metadata tree root
-        playbook = parent.plan.fmf_root / playbook.unrooted()
+        playbook = playbook_root / playbook.unrooted()
+        if not playbook.exists() or not playbook.is_relative_to(playbook_root):
+            raise Exception()
+
         self.debug(f"Playbook full path: '{playbook}'", level=2)
         return playbook

@@ -1040,6 +1044,7 @@ class Guest(tmt.utils.Common):
     def _run_ansible(
             self,
             playbook: Path,
+            playbook_root: Optional[Path] = None,
             extra_args: Optional[str] = None,
             friendly_command: Optional[str] = None,
             log: Optional[tmt.log.LoggingFunction] = None,
@@ -1066,6 +1071,7 @@ class Guest(tmt.utils.Common):
     def ansible(
             self,
             playbook: Path,
+            playbook_root: Optional[Path] = None,
             extra_args: Optional[str] = None,
             friendly_command: Optional[str] = None,
             log: Optional[tmt.log.LoggingFunction] = None,
@@ -1089,6 +1095,7 @@ class Guest(tmt.utils.Common):

         output = self._run_ansible(
             playbook,
+            playbook_root=playbook_root,
             extra_args=extra_args,
             friendly_command=friendly_command,
             log=log if log else self._command_verbose_logger,
@@ -1512,6 +1519,7 @@ class GuestSsh(Guest):
     def _run_ansible(
             self,
             playbook: Path,
+            playbook_root: Optional[Path] = None,
             extra_args: Optional[str] = None,
             friendly_command: Optional[str] = None,
             log: Optional[tmt.log.LoggingFunction] = None,
@@ -1532,7 +1540,8 @@ class GuestSsh(Guest):
         :param silent: if set, logging of steps taken by this function would be
             reduced.
         """
-        playbook = self._ansible_playbook_path(playbook)
+        if playbook_root:
+            playbook = self._ansible_playbook_path(playbook, playbook_root)

         ansible_command = Command('ansible-playbook', *self._ansible_verbosity())

diff --git a/tmt/steps/provision/local.py b/tmt/steps/provision/local.py
index c25cc3e1..7b7ee505 100644
--- a/tmt/steps/provision/local.py
+++ b/tmt/steps/provision/local.py
@@ -29,6 +29,7 @@ class GuestLocal(tmt.Guest):
     def _run_ansible(
             self,
             playbook: Path,
+            playbook_root: Optional[Path] = None,
             extra_args: Optional[str] = None,
             friendly_command: Optional[str] = None,
             log: Optional[tmt.log.LoggingFunction] = None,
diff --git a/tmt/utils/__init__.py b/tmt/utils/__init__.py
index 916f2ea7..966a0935 100644
--- a/tmt/utils/__init__.py
+++ b/tmt/utils/__init__.py
@@ -4524,6 +4524,13 @@ def git_add(*, path: Path, logger: tmt.log.Logger) -> None:
         raise GeneralError(f"Failed to add path '{path}' to git index.") from error

+def git_ignore(*, root: Path, logger: tmt.log.Logger) -> list[Path]:
+    output = Command('git', 'ls-files', '--exclude-standard', '-oi', '--directory') \
+        .run(cwd=root, logger=logger)
+
+    return [Path(line.strip()) for line in output.stdout.splitlines()] if output.stdout else []
+
+
 def default_branch(
         *,
         repository: Path,

/packit build

Thanks for implementing this! Looks good. The only thing is the extra option-handling action which should not be needed. Tried to remove in 4d5bf16 and everything seems to be working just fine. @falconizmi, could you please have a look if the change is ok?

Looks good to me


adding New Jersey medicare exclsions crawler

I'm getting an warning about an invalid date, even though I added it to the lookup:


Prediction results are very different from the one in AzureML

Doing the same test (for Boosted Decision Tree Regression) in AzureML and on SQLR, resulting predictions are very different. Here are the result in SQLR
Mean Absolute Error: 21.1772554
Root Mean Squared Error: 27.6586547
Relative Absolute Error: 0.5759823
Relative Squared Error: 0.4429988
Coefficient of Determination 0.5570012

and these are the one produced by AzureML
Mean Absolute Error: 0.123788
Root Mean Squared Error: 0.248766
Relative Absolute Error: 0.003367
Relative Squared Error: 0.000036
Coefficient of Determination 0.999964

To be honest the AzureML results seems to be even too great :)
Do you have the same results that I have?

Can you specify which sample you are referring to?

A sure, sorry. I'm using the "PredictiveMaintenance" sample

Any news on this?

I got the similar result as you with SQLR approach. For AzureML, the following is the result I got:
Mean Absolute Error: 21.283579
Root Mean Squared Error: 29.615866
Relative Absolute Error: 0.578874
Relative Squared Error: 0.507913
Coefficient of Determination 0.492087
Could you double check your AzureML experiment?
Thanks,
Zhxing

Sure I'll do right now, thanks

I can't repro the problem :( Now I have the same results as yours. I'll try to figure out what happened - unfortunately  the experiment was for a customer that deleted it.... - and let you. Closing the Issue right now


System iterators returning data out of order

Currently system iterators are not being merged correctly across multiple shards. Specifically they're being merged out-of-order.
While it appears as if this issue is only affecting the tsi1 index, the iterators are incorrectly being merged in both the inmem and tsi1 indexes. However, since the inmem index is actually duplicated across shards, the result of merging system iterators is correct (even though the logic to merge them is faulty!!!)
This caused me much frustration and amusement at the same time when debugging this issue.
Using the tsi1 index, here are some examples of incorrect behaviour:
SHOW SERIES
>
> create database db
> insert cpu,host=serverB value=1
> insert cpu,host=serverA value=1<PHONE_NUMBER>000000000
>
>
> show series
key
---
cpu,host=serverB
cpu,host=serverA
>
>
> show shards
name: _internal
id database  retention_policy shard_group start_time           end_time             expiry_time          owners
-- --------  ---------------- ----------- ----------           --------             -----------          ------
1  _internal monitor          1           2017-08-11T00:00:00Z 2017-08-12T00:00:00Z 2017-08-19T00:00:00Z
10 _internal monitor          10          2017-08-14T00:00:00Z 2017-08-15T00:00:00Z 2017-08-22T00:00:00Z

SHOW TAG KEYS
> create database db
> insert cpu,region=west value=1
> insert cpu,host=serverA value=1<PHONE_NUMBER>000000000
>
>
> show tag keys
name: cpu
tagKey
------
region
host
>
>
> show shards
name: _internal
id database  retention_policy shard_group start_time           end_time             expiry_time          owners
-- --------  ---------------- ----------- ----------           --------             -----------          ------
1  _internal monitor          1           2017-08-11T00:00:00Z 2017-08-12T00:00:00Z 2017-08-19T00:00:00Z
10 _internal monitor          10          2017-08-14T00:00:00Z 2017-08-15T00:00:00Z 2017-08-22T00:00:00Z

SHOW FIELD KEYS
> create database db
> insert cpu value=1
> insert cpu count=1<PHONE_NUMBER>000000000
> show field keys
name: cpu
fieldKey fieldType
-------- ---------
value    float
count    float
>
>
> show shards
name: _internal
id database  retention_policy shard_group start_time           end_time             expiry_time          owners
-- --------  ---------------- ----------- ----------           --------             -----------          ------
1  _internal monitor          1           2017-08-11T00:00:00Z 2017-08-12T00:00:00Z 2017-08-19T00:00:00Z
10 _internal monitor          10          2017-08-14T00:00:00Z 2017-08-15T00:00:00Z 2017-08-22T00:00:00Z

SHOW TAG VALUES and SHOW MEASUREMENTS are unaffected because they use the index directly and are not converted into SELECT queries.
The issue boils down to the merging operations in influxql, which currently considers the following facets of a point when merging it with others: (1) its measurement name; (2) its tag keys/values; (3) time.
Since regular points usually have all three of those, they're always sorted correctly across shards. The results of system iterators however do not have names, tags or time values and so end up being merged arbitrarily between streams of iterators. Since the inmem index streams are always identical though, the result is always correct.

I have a fix for this, but I won't be able to get the PR up until later in the week.


[DISCUSSION] Simplify CocoaLumberjack

New Issue Checklist

[x] I have read and understood the CONTRIBUTING guide
[x] I have read the Documentation or CocoaDocs
[x] I have searched for a similar issue in the project and found none

IMHO, the structure of CocoaLumberjack is becoming complicated.
Then, I want to simplify CocoaLumberjack in order to maintain it flexibly and easily for the future.
2 necessary things to simplify

I want to change minimum os versions to iOS 8.0, macOS 10.10, tvOS 9.0, and watchOS 2.0.
These values should be low enough for many developers and, furthermore, these are the same as the minimum versions of most libraries.

I want to limit podspecs to only 2 specs. default(Objective-C) subspec and swift subspec.
I think most developers use only these 2 specs. Of course, I'll add the old subspecs(extension and cli subspecs) to the new default and swift subspec.

What do you think about this?
If you agree, I'll be glad to create a PR for it.

Background
After finishing the above, I want to introduce universal(multi platform) framework instead of each targeted platform framework.

CocoaLumberjack- {iOS, macOS, tvOS, watchOS} (4 frameworks) -> CocoaLumberjack (1 framework)
CocoaLumberjackSwift- {iOS, macOS, tvOS, watchOS} (4 frameworks) -> CocoaLumberjackSwift (1 framework)

I also think the simplicity as above is necessary as a first step to support SwiftPM in the near future.
Thanks.

@ffried the idea with xcconfig files was to simplify all our projects (since we have a lot in this repo) and to have a central place with these settings. I have used this approach in other projects and it reduces the conflicts, basically the xcodeproj will keep files and targets and the Xcode settings are in the xcconfig files.

Yea, I saw that there are a few projects in the repo. I think we can already improve things a lot by merging these into one project. And I think once we have merged these, there won't be many settings that can't be set on a project level. The universal frameworks I've worked with (e.g. DDMathParser or my own FFFoundation) don't really have conflicts in the project file. It'll basically only change when someone adds a file and two or three times a year for the Xcode / Swift upgrades.
Unless I'm missing something, currently, there are only two sets of settings: One for the frameworks and one for the test apps. Once the frameworks are merged, there's only one framework left, so its settings can be set on the target directly. For the test app it's then probably not much of a difference if they're set on a project level or in an xcconfig file.

Just a proposal, not an enforcement :)

Don't get me wrong, I'm not voting against xcconfig files here. Maybe I just don't see the advantage in this case (yet). 🙂 But I also don't really care where I change build settings (as long as its clear where I have to change them). xcconfig files or Xcode's build settings editor - either way is fine by me. 🙂

(Sorry, wrong button 😬)

@ffried I think it's good to discuss those details :)
We have a lot of Xcode projects (I didn't get to change those in my branch).
./Lumberjack.xcodeproj
./Tests/CocoaLumberjack Tests.xcodeproj
./Tests/Pods/Pods.xcodeproj - we can exclude this one
./Demos/Benchmark/Desktop/BenchmarkMac.xcodeproj
./Demos/Benchmark/Mobile/BenchmarkIPhone.xcodeproj
./Demos/SQLiteLogger/SQLiteLogger.xcodeproj
./Demos/FineGrainedLogging/FineGrainedLogging.xcodeproj
./Demos/CustomLogLevels/CustomLogLevels.xcodeproj
./Demos/CustomLogLevels/Pods/Pods.xcodeproj
./Demos/ContextFilter/ContextFilter.xcodeproj
./Demos/DispatchQueueLogger/DispatchQueueLogger.xcodeproj
./Demos/LogFileCompressor/LogFileCompressor.xcodeproj
./Demos/CustomFormatters/CustomFormatters.xcodeproj
./Demos/GlobalLogLevel/GlobalLogLevel.xcodeproj
./Demos/CLI/CLI.xcodeproj
./Demos/PerUserLogLevels/PerUserLogLevels.xcodeproj
./Demos/WebServerIPhone/WebServerIPhone.xcodeproj
./Demos/UniversalApp/UniversalApp.xcodeproj
./Demos/OverflowTestMac/OverflowTestMac.xcodeproj
./Demos/CaptureASL/CaptureASL.xcodeproj
./Demos/CoreDataLogger/CoreDataLogger.xcodeproj
./Demos/TestXcodeColors/Desktop/TestXcodeColors.xcodeproj
./Demos/TestXcodeColors/Mobile/TextXcodeColors.xcodeproj
./Demos/RollingTestMac/RollingTestMac.xcodeproj
./Demos/NonArcTest/NonArcTest.xcodeproj
./Demos/RegisteredDynamicLogging/Desktop/RegisteredLoggingTest.xcodeproj
./Demos/RegisteredDynamicLogging/Mobile/RegisteredLoggingTest.xcodeproj

The cleanup will affect all of those projects.
Also, it will be super easy to change a setting in one place for all the repos. For example when upgrading the SWIFT_VERSION, one will just go to the Module-Shared.xcconfig and change it, all the projects picking that up.

I think we should also consider removing some outdated demos (like the NonArc one).

@ffried I really enjoy this talk :)

But still the question is: Why don't we merge these into one project and use targets instead?
Or at least merge all demos into one project. And tests and frameworks into one.

I think that is a good idea. Will do.

There's only one risk, though. As soon as someone does not know about the xcconfig files and changes a setting directly on the target, the xcconfig file has lost and this setting is overwritten by the one in the project file. But I guess that's our responsibility to look out for this when reviewing changes.

I want to begin using Danger for our project and that will allow to auto-check certain things for each PR. For example, give a warning if xcodeproj settings were changed.

I think we should also consider removing some outdated demos (like the NonArc one).

Agree about the NonArc.

@bpoplauschi

I think that is a good idea. Will do.

👍

I want to begin using Danger for our project and that will allow to auto-check certain things for each PR. For example, give a warning if xcodeproj settings were changed.

Heard a lot good about Danger, yea. Would be great if we can teach it to look out for build settings changes but accept changes like adding files or updating the project file version.
If you need any support setting it up, I'd be glad to help and learn about Danger, too. 🙂

Agree about the NonArc.

👍

@ffried created #956 - just a draft of ideas

Thanks for your idea.

I'm not why we would remove the other subspecs. But I agree CocoaPods subspecs are not 1:1 correspondents with Carthage or the manual installation.
We can easily merge the Extensions into the Core subspec.
Not sure about CLI since that only works on macos. But we already do it for Carthage so it should be fine.

I had thought I would make CocoaPods correspond to Carthage(1 to 1).
But CLI subspec is actually used only by macOS, you say. So I'll left CLI subspec.
To summarize, subspecs will be Core(including Extension) aka Default, CLI, and Swift.
In addition, I'll fix CocoaLumberjack.modulemap file because it is different from the one created by CocoaPods. modulemap file must be considered when we support SwiftPM anyway.
I'll create a PR at the end of this week(Sadly, I don't have enough time today and tomorrow...😅).

Also, as @ffried pointed, I did start to do do this merge - see the xcode_10_merged_targets_use_xcconfig branch

Thanks. I confirmed.
P.S.
I have several other projects that use universal framework.
And some project use xconfig and others don't use it.
(I feel it depends on the preference of the project members☺)

And tests and frameworks into one.

I also agree.

@sushichop maybe you should wait until I am done with xcode_10_merged_targets_use_xcconfig branch - I will try to work on it until the weekend ... keep in touch :)

@bpoplauschi
OK. I'll wait for it. Thanks.

In addition, I'll fix CocoaLumberjack.modulemap file because it is different from the one created by CocoaPods. modulemap file must be considered when we support SwiftPM anyway.

Why do we have to manually create a module map? This is usually created automatically by the compiler / Xcode, right? Also, I don't think we need that for SwiftPM...

@ffried
Sorry, I may have misled you... We don't need to create a module map. It is automatically created by CocoaPods. It is just used by CocoaLumberjack target now.
About SwiftPM,  I think it will be needed if we support both Objective-C and Swift based target. It is not always need. See the good reference as following. I actually have the similar other project(private repo at the Github Enterprise).
https://github.com/google/promises

@sushichop

Sorry, I may have misled you... We don't need to create a module map. It is automatically created by CocoaPods. It is just used by CocoaLumberjack target now and Carthage integration.

No worries and thanks for the clarification!

About SwiftPM, I think it will be needed if we support both Objective-C and Swift based target. It is not always needed.

Looking at what Ankit wrote in his blog about ObjC support in Swift PM, I don't think we need one. And IMHO it would be better if we don't needed one, since A) they're format is not final (yet) AFAIK, and B) it is again a easy target for problems if e.g. someone forgets to add a header file.
But we'll see once we're ready to add SwiftPM support I guess. 🙂

@sushichop you were correct the first time: we do have a manual modulemap: https://github.com/CocoaLumberjack/CocoaLumberjack/blob/master/Framework/Lumberjack/CocoaLumberjack.modulemap
CC @ffried

@ffried

Looking at what Ankit wrote in his blog about ObjC support in Swift PM, I don't think we need one. And IMHO it would be better if we don't needed one

All right. I agree with you. Then let's support only Swift😁
@bpoplauschi

@sushichop you were correct the first time: we do have a manual modulemap: https://github.com/CocoaLumberjack/CocoaLumberjack/blob/master/Framework/Lumberjack/CocoaLumberjack.modulemap
I don't know why we need it :)

This module map is basically used for Cocoalumberjack target when you integrate with Carthage.
For example, when if you use DDDispatchQueueLogFormatter.h with Cocoapods, it is OK by specifying import CocoaLumberjack.
On the other hand, when if you use DDDispatchQueueLogFormatter.h with Carthage, you need to specify import CocoaLumberjack.DDDispatchQueueLogFormatter.
I think this difference makes developers confused. Actually I have was confused.
In order to fix this(correspond to as possible),  I think it had better change module map file.

I have rewrited above.
Sorry guys! I'll go to bed... It is midnight here(Japan)😪

@sushichop

I just have considered about the following.
See 0038-swiftpm-c-language-targets.md

You mean this part:

The package manager will (a) construct a synthesized module map including all of the exported API headers, for use in Swift, and (b) will provide a header search path to this directory to any targets which transitively depend on this one.
Module maps will only be synthesized for targets which either have a completely flat header layout (e.g., src/foo/include/*.h) or a single subdirectory (e.g., src/foo/include/foo/**.h). Any other structure requires the library author to provide explicit module maps. We may revisit this as we gain practical experience with it.

Our (current) structure would allow the module map file to be generated. And I think maintaining such a structure is probably easier than maintaining a module map ourselves. 🙂

Sorry guys! I'll go to bed... It is midnight here(Japan)😪

Have a good night!

One suggestion about the minimum deployment version: I'd vote for watchOS 3.0. Targeting watchOS 3 or later is required to submit any watchOS app built for arm64_32, so target 2.0 will require that everyone either manually override the deployment version using CocoaPods or create a separate fork of lumberjack if not using CocoaPods (which is what we do).

@ffried

Our (current) structure would allow the module map file to be generated.

Thanks for sharing your idea. Until you heard your opinion, I convinced myself that the latest SwiftPM specification always needed a module map...
But now, finally I understood that it is not always necessary.

And I think maintaining such a structure is probably easier than maintaining a module map ourselves. 🙂

Yes. I also prefer this way now! I am really glad to discuss this😁
Thanks again!

One suggestion about the minimum deployment version: I'd vote for watchOS 3.0.

Thanks for your suggestion. I'd vote for watchOS 3.0 too.
Any idea? >all

One more suggestion.
Lumberjack.xcodeproj has a lot of "deployment app targets" to test frameworks targets ( not test targets, hah ).
If they are necessary, it would be nice to put them in separate .xcodeproj as "DeploymentTestTargets.xcodeproj" and put them in "Integration" or "Tests" subdirectory.
And after that there is only two (three?) targets in main Lumberjack.xcodeproj:

CocoaLumberjack ( for iOS )
CocoaLumberjackSwift (for Swift)
(optional) CocoaLumberjackStatic ( static lib )

We have cleaned up the project significantly, but there are still some items remaining here.
From what I could capture from the thread above:

[ ] watchos 3.0 deployment target
Swift package manager - tracked with #869
[ ] module map - auto generate ?
[ ] reduce the subspecs to 2 (core and swift) and match Carthage

Feel free to add if I missed anything

@bpoplauschi
Thanks for summary. I created the PR about subspecs.

@sushichop @ffried I think the warning started appearing after #959
The cause is probably: #if __has_include("CLIColor.h") && TARGET_OS_OSX.
We should just remove the && TARGET_OS_OSX.
Basically always import the header and if the target is macos, then the file will actually have content.
For consistency, my opinion is to only have 2 subspecs and match the Carthage options:

subspec CocoaLumberjack/Core matches exactly the Carthage CocoaLumberjack.framework
subspec CocoaLumberjack/Swift matches exactly the Carthage CocoaLumberjackSwift.framework

Details: In #959 , I did put everything inside CLIColor.{h,m} between #if TARGET_OS_OSX and #endif because I did add it to the CocoaLumberjack unified target. Before we had a dedicated target for each platform, so the macOS target did contain it but the others didn't.

@ffried @bpoplauschi

@sushichop @ffried I think the warning started appearing after #959
The cause is probably: #if __has_include("CLIColor.h") && TARGET_OS_OSX.
We should just remove the && TARGET_OS_OSX.
Basically always import the header and if the target is macos, then the file will actually have content.

Yes, you are right. In more detailed, now we almost prevent importing CLI.h at CocoaLumberjack.h and CLI.h, but customized modulemap still exports CLI.h implicitly. That's why its warning is displayed.
https://github.com/CocoaLumberjack/CocoaLumberjack/blob/master/Framework/Lumberjack/CocoaLumberjack.modulemap
I don't know the historical reason why customized modulemap is adopted(because it had already been adopted when I joined CocoaLumberjack😝). But I assume developer adopted it in order to make it easy to prevent importing duplicated MACROS in those days.
Then, now I think we don't need it. Because now CocoaLumberjack's headers prevent importing duplicated MACROS(by using #ifndef for example), though we need to confirm it. I haven't confirmed it  yet.

For consistency, my opinion is to only have 2 subspecs and match the Carthage options:

subspec CocoaLumberjack/Core matches exactly the Carthage CocoaLumberjack.framework
subspec CocoaLumberjack/Swift matches exactly the Carthage CocoaLumberjackSwift.framework

Yeah. I agree with you absolutely. I have been thinking this for a long time.Now it's time😃
Then I'll close #974 and create the other PR in order to reduce podspec to 2 subspecs.

Yea, like I already mentioned previously in another PR/issue, if anyhow possible I'd like to remove the custom module map and let Xcode do its job.

@ffried @bpoplauschi
I did create the PR in order to reduce podspec to 2subspecs and remove customized modulemap😃
See #976 .

@sushichop @ffried I think the warning started appearing after #959
The cause is probably: #if __has_include("CLIColor.h") && TARGET_OS_OSX.
We should just remove the && TARGET_OS_OSX.
Basically always import the header and if the target is macos, then the file will actually have content.
For consistency, my opinion is to only have 2 subspecs and match the Carthage options:

subspec CocoaLumberjack/Core matches exactly the Carthage CocoaLumberjack.framework
subspec CocoaLumberjack/Swift matches exactly the Carthage CocoaLumberjackSwift.framework

Details: In #959 , I did put everything inside CLIColor.{h,m} between #if TARGET_OS_OSX and #endif because I did add it to the CocoaLumberjack unified target. Before we had a dedicated target for each platform, so the macOS target did contain it but the others didn't.

This file CLIColor.h contains only a definition of structure Color.
Also, this file is imported only in one logger ( DDTTYLogger if I remember correctly ).
I suggest to put its definition and implementation into DDTTYLogger.

Since #981 was merged, I think we can close this issue. Right?

@bpoplauschi
I suggest to put CLIColor into TTYLogger.
Could it be considered and merged?

I don't know. I wouldn't change it without a good benefit and I don't see one.
What do other people think? @CocoaLumberjack/collaborators

I'm with @bpoplauschi on this one. I don't see any benefit - especially since TTYLogger could probably be deprecated soon in favor of OSLogger.

@lolgear we can clean that up in our next major release.


i2c support with ESP32 and SDD1306?

I'm trying to upload a test to a ESP32 with a SDD1306 that uses I2c instead of SPI
I find no documentation on how to configure this, and on the files it looks like ther is only support to SPI
How can I use GuiSlice with this hardware?

@X3msnake I assume you really mean the SSD1306 OLED display driver?
In this case you first try and get  it working with Adafruit SSD1306 library and Adafruit GFX library by running the examples inside Adafruit SSD1306 library.
Then use GUIslice config ard-adagfx-ssd1306-notouch.h for GUIslice support.
Paul--

Hi @X3msnake — yes, I should be able to add support for I2C mode in the Adafruit_SSD1306 driver. As Paul mentions, we would usually start with confirming your test setup & initialization values needed to run the display with the Adafruit library directly.
Once confirmed, I will need to enhance GUIslice to add the I2C variant as an option. For this particular driver, I believe it should only involve adding a new m_disp instantiation and an updated call to m_disp.begin() in gslc_DrvInit(). I’ll take a look... in the meantime if you could provide me with a list of any mods you needed to the Adafruit library example to get it going, that would be great.

What is needed is a way to initialize the i2c with custom pins.
Most examples i have tested don't work on the hardware i'm using without custom pins. I'm currently using a integrated ESP32 with integrate LION Battery and SSD1306 on pins 4 and 5
It is programable with the lolin D32 or D32 Pro

i can't seem to find how to define the pins on the Adafruit library

So i managed to hack the pins_arduino.h file for the lolin32 board and i can run the SSD1306 demo files directly from the examples without any need to declare pins
https://github.com/lexus2k/ssd1306
Unfortunately the Adafruit Still returns a blank screen

so after the pin map modification i am able to run the feather demo and it shows on screen but not the other i2c demos

Plot thickens.
All 128x32 examples work (with missing lines as expected) but none of the 64px do

And if i change the screen heigh to 64 it displays correctly the demo
So this works with the adafruit and even tho it does not have a way to set the SDA/SLC pins by modifying the pins_arduino.h file of the board i'm using.
I guess the correct way would be to find the propper pinout and make a controller for this board.

@X3msnake -- I have now added support for Adafruit_SSD1306 in I2C mode (in branch https://github.com/ImpulseAdventure/GUIslice/compare/WIP248-SSD1306_Ada_I2C).
From your description above, I understand that you are now evaluating the lexus2k/ssd1306 library.
GUIslice doesn't currently support lexus2k/ssd1306, however it does support the lexus2k/lcdgfx which was supposed to be a replacement.
Could you try to see if you can run the lcdgfx library with your display (with the appropriate local mods you need for software I2C and display dimensions)?
thanks

getting this error on compile time :|
ResolveLibrary(avr/pgmspace.h)
-> candidates: []
compilation terminated.

https://arduino-esp8266.readthedocs.io/en/latest/faq/a03-library-does-not-work.html ??

so i changed every item found from avr/pgmspace.h to pgmspace
it compiled but no image

i don't see how to use the lcdgfx library with guislice where do i set it up?
i can use lcdgfx demos directly

Hi @X3msnake --
Thanks for confirming that the LCDGFX examples work when run standalone.
You're right... it looks like we might be missing an entry for LCDGFX in the GUIslice_config.h file... I'll fix that shortly.
To use LCDGFX, can you try the following:

Edit /src/GUIslice_config.h:
Add the following line under where it says "Arduino, ARM SAMD":
#include "../configs/ard-lcdgfx-notouch.h"
Edit /configs/ard-lcdgfx-notouch.h:
Uncomment the one line corresponding to your SSD1306 display config and comment out any others (eg. ILI9341). For example:
#define DRV_DISP_LCDGFX_SSD1306_128x64_I2C
Launch Arduino IDE
Run examples/arduino/ex01_ard_basic. Any output on the display or serial monitor?
Run examples/arduino/ex40_ard_ctrls_small

thanks!

Error!
GUIslice_drv.h:57:4: error: #error "Driver needs to be specified in GUIslice_config_.h (DRV_DISP_)"
#error "Driver needs to be specified in GUIslice_config_.h (DRV_DISP_)"

There is no LCDGFX driver

Or any handling of that Library in the file

@X3msnake — the LCDGFX handler should already exist in the library (it is defined by DRV_DISP_LCDGFX in GUIslice_drv_adagfx.cpp).
That error message is a bit surprising to see as it suggests that you might not have been using the example config file.
Can you confirm that you did each of the steps I listed in https://github.com/ImpulseAdventure/GUIslice/issues/248#issuecomment-681628862 ?
Thanks!

same error with the example file
No dia sábado, 29 de agosto de 2020, Calvin Hass<EMAIL_ADDRESS>escreveu:

@X3msnake https://github.com/X3msnake — the LCDGFX handler should
already exist in the library (it is defined by DRV_DISP_LCDGFX in
GUIslice_drv_adagfx.cpp).
That error message is a bit surprising to see as it suggests that you
might not have been using the example config file.
Can you confirm that you did each of the steps I listed in #248 (comment)
https://github.com/ImpulseAdventure/GUIslice/issues/248#issuecomment-681628862
?
Thanks!
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/ImpulseAdventure/GUIslice/issues/248#issuecomment-683285520,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ACUR56W7ORE5JB3BRKDEYELSDDZZVANCNFSM4QKDEIBQ
.

--
Com os melhores cumprimentos,
Vinicius Silva

Arduino\libraries\GUIslice-master\src\GUIslice.c:59:48: fatal error: avr/pgmspace.h: No such file or directory
-> candidates: []compilation terminated.
Following exactly the instructions with a clean library download i get this

hacking the library by replacing avr/

I get this
In file included from C:\Users\USERNAME\Documents\Arduino\libraries\GUIslice-master\src\GUIslice_th.h:11:0,

                 from C:\Users\USERNAME\Documents\Arduino\libraries\GUIslice-master\src\GUIslice_th.cpp:8:

C:\Users\USERNAME\Documents\Arduino\libraries\GUIslice-master\src\GUIslice_th.cpp: In member function 'THPoint TouchHandler::scale(THPoint)':

C:\Users\USERNAME\AppData\Local\Arduino15\packages\esp32\hardware\esp32\1.0.4\cores\esp32/Arduino.h:71:39: warning: comparison is always false due to limited range of data type [-Wtype-limits]

 #define constrain(amt,low,high) ((amt)<(low)?(low):((amt)>(high)?(high):(amt)))

                                       ^

C:\Users\USERNAME\Documents\Arduino\libraries\GUIslice-master\src\GUIslice_th.cpp:65:14: note: in expansion of macro 'constrain'

     pOut.x = constrain(pOut.x,0,disp_xSize-1);

              ^

C:\Users\USERNAME\AppData\Local\Arduino15\packages\esp32\hardware\esp32\1.0.4\cores\esp32/Arduino.h:71:39: warning: comparison is always false due to limited range of data type [-Wtype-limits]

 #define constrain(amt,low,high) ((amt)<(low)?(low):((amt)>(high)?(high):(amt)))

                                       ^

C:\Users\USERNAME\Documents\Arduino\libraries\GUIslice-master\src\GUIslice_th.cpp:66:14: note: in expansion of macro 'constrain'

     pOut.y = constrain(pOut.y,0,disp_ySize-1);

              ^

C:\Users\USERNAME\AppData\Local\Arduino15\packages\esp32\hardware\esp32\1.0.4\cores\esp32/Arduino.h:71:39: warning: comparison is always false due to limited range of data type [-Wtype-limits]

 #define constrain(amt,low,high) ((amt)<(low)?(low):((amt)>(high)?(high):(amt)))

                                       ^

C:\Users\USERNAME\Documents\Arduino\libraries\GUIslice-master\src\GUIslice_th.cpp:67:14: note: in expansion of macro 'constrain'

     pOut.z = constrain(pOut.z,0,4095);

              ^

C:\Users\USERNAME\Documents\Arduino\libraries\GUIslice-master\src\GUIslice_drv_adagfx.cpp: In function 'bool gslc_DrvGetTxtSize(gslc_tsGui*, gslc_tsFont*, const char*, gslc_teTxtFlags, int16_t*, int16_t*, uint16_t*, uint16_t*)':

C:\Users\USERNAME\Documents\Arduino\libraries\GUIslice-master\src\GUIslice_drv_adagfx.cpp:952:57: error: no matching function for call to 'NanoFont::getTextSize(const char*&, uint16_t*&)'

   *pnTxtSzW = m_disp.getFont().getTextSize(pStr,pnTxtSzH);

                                                         ^

In file included from C:\Users\USERNAME\Documents\Arduino\libraries\lcdgfx\src/canvas/canvas.h:34:0,

                 from C:\Users\USERNAME\Documents\Arduino\libraries\lcdgfx\src/lcdgfx.h:34,

                 from C:\Users\USERNAME\Documents\Arduino\libraries\GUIslice-master\src\GUIslice_drv_adagfx.cpp:128:

C:\Users\USERNAME\Documents\Arduino\libraries\lcdgfx\src/canvas/font.h:122:15: note: candidate: lcduint_t NanoFont::getTextSize(const char*, lcduint_t*)

     lcduint_t getTextSize(const char *text, lcduint_t *height = nullptr);

               ^

C:\Users\USERNAME\Documents\Arduino\libraries\lcdgfx\src/canvas/font.h:122:15: note:   no known conversion for argument 2 from 'uint16_t* {aka short unsigned int*}' to 'lcduint_t* {aka unsigned int*}'

C:\Users\USERNAME\Documents\Arduino\libraries\GUIslice-master\src\GUIslice_drv_adagfx.cpp:880:13: warning: unused variable 'nTxtScale' [-Wunused-variable]

   uint16_t  nTxtScale = 0;

             ^

C:\Users\USERNAME\Documents\Arduino\libraries\GUIslice-master\src\GUIslice_drv_adagfx.cpp: In function 'bool gslc_DrvDrawTxt(gslc_tsGui*, int16_t, int16_t, gslc_tsFont*, const char*, gslc_teTxtFlags, gslc_tsColor, gslc_tsColor)':

C:\Users\USERNAME\Documents\Arduino\libraries\GUIslice-master\src\GUIslice_drv_adagfx.cpp:1082:13: warning: unused variable 'nTxtScale' [-Wunused-variable]

   uint16_t  nTxtScale = pFont->nSize;

             ^

C:\Users\USERNAME\Documents\Arduino\libraries\GUIslice-master\src\GUIslice_drv_adagfx.cpp:1084:13: warning: unused variable 'nCurPosY' [-Wunused-variable]

   int16_t   nCurPosY = 0;

             ^

C:\Users\USERNAME\Documents\Arduino\libraries\GUIslice-master\src\GUIslice_drv_adagfx.cpp: In function 'bool gslc_DrvRotate(gslc_tsGui*, uint8_t)':

C:\Users\USERNAME\Documents\Arduino\libraries\GUIslice-master\src\GUIslice_drv_adagfx.cpp:2971:27: error: 'class InterfaceSSD1306<PlatformI2c>' has no member named 'setRotation'

     m_disp.getInterface().setRotation(0);

                           ^

C:\Users\USERNAME\Documents\Arduino\libraries\GUIslice-master\src\GUIslice_drv_adagfx.cpp:2975:27: error: 'class InterfaceSSD1306<PlatformI2c>' has no member named 'setRotation'

     m_disp.getInterface().setRotation((pGui->nRotation + 2) & 0x3);

                           ^

Foram encontradas múltiplas bibliotecas para «SPI.h»
Utilizado: C:\Users\USERNAME\AppData\Local\Arduino15\packages\esp32\hardware\esp32\1.0.4\libraries\SPI
Foram encontradas múltiplas bibliotecas para «GUIslice.h»
Utilizado: C:\Users\USERNAME\Documents\Arduino\libraries\GUIslice-master
Foram encontradas múltiplas bibliotecas para «Adafruit_GFX.h»
Utilizado: C:\Users\USERNAME\Documents\Arduino\libraries\Adafruit_GFX_Library
Foram encontradas múltiplas bibliotecas para «lcdgfx.h»
Utilizado: C:\Users\USERNAME\Documents\Arduino\libraries\lcdgfx
Foram encontradas múltiplas bibliotecas para «Adafruit_I2CDevice.h»
Utilizado: C:\Users\USERNAME\Documents\Arduino\libraries\Adafruit_BusIO
Foram encontradas múltiplas bibliotecas para «Wire.h»
Utilizado: C:\Users\USERNAME\AppData\Local\Arduino15\packages\esp32\hardware\esp32\1.0.4\libraries\Wire
A utilizar a biblioteca GUIslice-master com a versão 0.15.0 na pasta: C:\Users\USERNAME\Documents\Arduino\libraries\GUIslice-master
A utilizar a biblioteca Adafruit_GFX_Library com a versão 1.10.0 na pasta: C:\Users\USERNAME\Documents\Arduino\libraries\Adafruit_GFX_Library
A utilizar a biblioteca lcdgfx com a versão 1.0.5 na pasta: C:\Users\USERNAME\Documents\Arduino\libraries\lcdgfx
A utilizar a biblioteca Adafruit_BusIO com a versão 1.4.1 na pasta: C:\Users\USERNAME\Documents\Arduino\libraries\Adafruit_BusIO
A utilizar a biblioteca Wire com a versão 1.0.1 na pasta: C:\Users\USERNAME\AppData\Local\Arduino15\packages\esp32\hardware\esp32\1.0.4\libraries\Wire
A utilizar a biblioteca SPI com a versão 1.0 na pasta: C:\Users\USERNAME\AppData\Local\Arduino15\packages\esp32\hardware\esp32\1.0.4\libraries\SPI
exit status 1
Erro ao compilar para a placa LOLIN D32.

Thanks @X3msnake — I think I have enough info now to make some updates to the library to support your I2C display fully with LCDGFX I2C, and address a few of the things you have encountered. Will take me a few days to get back to my development environment to test and will let you know when I have something ready for you to try out.
Thx

awsome. thanks a bunch

Hi @X3msnake -- I have now completed a number of fixes to address problems you reported here.
Could you try downloading and installing the latest GUIslice from the GitHub repository and let me know if the compilation works better for you?
thanks

Will do this weekend. Thanks :)
Calvin Hass<EMAIL_ADDRESS>escreveu no dia sexta, 4/09/2020
à(s) 08:21:

Hi @X3msnake https://github.com/X3msnake -- I have now completed a
number of fixes to address problems you reported here.
Could you try downloading and installing the latest GUIslice from the
GitHub repository
https://github.com/ImpulseAdventure/GUIslice/wiki/Installing-GUIslice-on-Arduino#installing-from-github-source
and let me know if the compilation works better for you?
thanks
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/ImpulseAdventure/GUIslice/issues/248#issuecomment-686965667,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ACUR56QMLILFAIJLYNZO6E3SECIPZANCNFSM4QKDEIBQ
.

--
Com os melhores cumprimentos,
Vinicius Silva

Ironically I was actually working on this tonight with an Lolin/Wemose ESP32 with built in OLED.
What I did was use ard-lcdgfx-notouch and made a copy for i2c.
Using the following:
#define DRV_DISP_LCDGFX           // lexus2k/lcdgfx
#define DRV_DISP_LCDGFX_SSD1306_128x64_I2C      // lexus2k/lcdgfx display: SSD1306 128x64 (I2C)
Then inside of my main.ino I just use Wire.begin(GPIO_NUM_5, GPIO_NUM_4); where my pins are the i2c pins.
So really their is already a working example of I2C SSD1306, its just inside of all of the configs and examples. This GUI slice library is really amazing, cant wait for my m5stack core2 to arrive so I can add touch support to it.

What is the latest? Master branch?
Dowloading master and following the instructions you mentioned before gives me these errors on the attached log
masterlog_200908.txt

if however i comment out the ILI9341 that is set by default on ard-lcdgfx-notouch.h it compiles and uploads but there is no image still. even with the i2c hack on the esp pins file

Was editing the wrong file.. duh
So i managed to build and it shows something on screen for the example 1 but this is not right i think

There were some warning errors during compile, here is the compile full log:
masterlog_ext04_ard_ctrls_200908.txt

Any ideas why the partial pixel scramble?

Hi @X3msnake -- thank you for posting some screenshots as those are helpful.
I assume your display resolution is 128x64. ex04_ard_ctrls was designed for much larger displays, so it is possible that some of the visual issues are due to wrapping in the display driver. ex40_ard_ctrls_small would be closer to what we want, but even that example targets 128x128.
LCDGFX does not currently support rounded rectangles, so that is why your example is not drawing correctly.

Can you try modifying your "hello world" example but disabling the "corners rounded" option in the Builder?

Lastly, it looks like the monochrome SSD1306 driver might need a fix to change the white/black default. I'll look into that next.
thanks!

Awsome.
Will try this tonight and let you know. thank you for the great help Master.

Closing as assumed to be fixed. But if further problems remain, please feel free to open a new issue.

yes it is thanks
No dia terça-feira, 20 de outubro de 2020, Calvin Hass <
<EMAIL_ADDRESS>escreveu:

Closed #248 https://github.com/ImpulseAdventure/GUIslice/issues/248.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/ImpulseAdventure/GUIslice/issues/248#event-3899004034,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ACUR56RTKSD3PSH3EDUP52LSLWL6HANCNFSM4QKDEIBQ
.

--
Com os melhores cumprimentos,
Vinicius Silva


Cannot close object, library is destroyed.

Stumbled upon this project from a reddit thread.
Tried to run the basic example from the quickstart notebook. Installed the library, but when running the example the following error occurs:
-> Cannot close object, library is destroyed. This may cause a memory leak!
-> Cannot close object, library is destroyed. This may cause a memory leak!
-> Cannot close object, library is destroyed. This may cause a memory leak!
Also found this maybe related issue in the nougat repo: https://github.com/facebookresearch/nougat/issues/222 . Downgrading transformers still provides the same output.
Library versions:
transformers-4.42.3 pypdfium2-4.30.0

Sounds like an issue with pypdfium2 with closing documents. For example, if you use a table whose document has been closed, this warning might pop up. In which cell does this issue occur? Also, do no results work at all, or is it a warning?
The fix might be to call PyPDFium2Utils.reload(ct) to use a CroppedTable whose document has been closed.

Indeed it was a warning, and indeed it came close call as you mentioned.
Great work on the lib! It looks promising


Invalid content /en/testnets/cardano/get-started/installing-and-running-the-cardano-node/building-the-node-using-nix/

Where does the issue occur?
https://developers.cardano.org/en/testnets/cardano/get-started/installing-and-running-the-cardano-node/building-the-node-using-nix/
Describe the issue
Instruction number 3 has an extra 's' in the command.nix-extra-conf-files should not be plural
Expected changes
Change ./install-nix.sh --daemon --nix-extra-conf-files nix.conf to ./install-nix.sh --daemon --nix-extra-conf-file nix.conf

thank you for your feedback, will amend this command.

thank you for your feedback, will amend this command.


User Management | Create User |21|

Story:
As a TFRS user, I want to be able to create users so that I can add my colleagues to the system.
IDIR Scenario:
GIVEN that I am an IDIR user
AND I have been assigned the 'TFRS Admin' role
AND I am on the Administration Tab
AND I am on the Users sub-tab
WHEN I click on the 'Add User' button
THEN I am taken to a form that I can fill out to add a new user
AND clicking on Save (Add?) adds the user to the TFRS system
AND I am returned to the Users sub-tab on the Administration tab
BCeID Scenario:
GIVEN that I am an BCeID user
AND I have been assigned the 'Managing Users' role
AND I am on the Company Details page
WHEN I click on the 'Add User' button
THEN I am taken to a form that I can fill out to add a new user
AND clicking on Save (Add?) adds the user to the TFRS system
AND I am returned to the Company Details page
Additional Info:
Required fields: First Name, Last Name, BCeID, Email, Organization, Status, Role
Optional fields: work/mobile phone numbers, Title
NOTE: Screenshot(s) are missing a couple fields
IDIR vs. BCeID:
When creating a new user:

IDIR: we want to allow the TFRS Admin role to assign an organization to that user
BCeID: the Managing users role will not be able to assign an organization to a newly created user; TFRS should automatically choose the Managing users' organization when creating a new user (autocomplete)

Demo:

Show the 'Add User' button on the Users sub-tab on the Administration page (IDIR) and on the Company Details page (BCeID)
Show the ability to add a new user for both IDIR & BCeID

 User Management | Create User |21|


Support extracting strings from Dart code into .arb files for Flutter internationalisation

Moving this from https://github.com/Dart-Code/Dart-Code/issues/3112 since it would need to be implemented in the server.
Localisation strings in Flutter live in .arb files (see https://flutter.dev/docs/development/accessibility-and-localization/internationalization), but often apps are built with hard-coded strings initially and then localisation added later.
There's a pub package that used to help extract things to arb files (https://pub.dev/packages/intl_translation#extracting-and-using-translated-messages) but that appears to not be compatible with the new way for localising, so a request came up to be able to extract strings directly from the code using a code action/assist:

This would likely involve the server having some knowledge about how Flutter's localisation works, and the ability to find/edit these files.

I guess this should be a refactoring, or can we have a fix if we decide the property name on behalf of the user?
The steps needed to implement this could be:

Verify that l10n.yaml exists in the root folder: I don't think we should go into initial steps of modifying pubspec.yaml for the user
Read template-arb-file and arb-dir properties from l10n.yaml
Update (or create) template-arb-file in arb-dir and write the entry specified by the user, with the value of the string in code, ensuring no duplicate properties.
Replace the string in the code with the property name

Another feature is to replace the code string with existing properties from the template file (show suggestions of all properties).

I guess this should be a refactoring, or can we have an assist if we decide the property name on behalf of the user?

Interesting point.. For LSP we can't actually prompt the user for a name right now, so other refactors we just have to generate our own name and rely on the user renaming if it's bad. If we can't easily support renaming on this and we don't think we can generate perfect names (seems like it would be hard), we might need to have add some custom message in the LSP server/VS Code extension until there's a standard way (https://github.com/microsoft/language-server-protocol/issues/1164).

Related: https://github.com/flutter/flutter-intellij/issues/4941

Is there a standard naming scheme for properties?

Sorry, missed this notification. I don't know if there are any conventions but in the examples in these docs the names are things like:

title
backButtonTooltip

So perhaps the fields/named params they're used in would make good suffixes. I'm not sure how well the prefix could be generated/inferred though.

We don't have any examples of editing an .arb file, but there are examples of editing YAML files. See https://github.com/dart-lang/sdk/blob/main/pkg/analysis_server/lib/src/services/correction/dart/update_sdk_constraints.dart#L84. (This example is a bit unfortunate because it hasn't been updated to use addYamlFileEdit, but it still might be useful.)

It's worth noting that linked edits are only supported in the main file for LSP. We can only insert a "snippet" (used to have linked edits) in the current document being edited in VS Code. We can make edits to other files (that will be opened in the background if not already open), but no snippet functionality.

oh, I guess that's the reason then probably. I didn't realize this.. since every "linked edit" includes a path, I didn't think it must all be the same path..

then I guess my problem isn't really a problem, just not supported.. in case you are interested here is the json anyway..

(it contains a bit of experimentation.. for example useless suggestions)
{
  "fixes": [
    {
      "error": {
        "severity": "WARNING",
        "type": "LINT",
        "location": {
          "file": "/Users/herbert/dev/string_literal_finder/packages/string_literal_flutter_example/lib/main.dart",
          "offset": 4698,
          "length": 11,
          "startLine": 118,
          "startColumn": 18,
          "endLine": 118,
          "endColumn": 29
        },
        "message": "Found string literal: Increment",
        "correction": "Externalize string or add nonNls() decorator method, or add // NON-NLS to end of line. (/Users/herbert/dev/string_literal_finder/packages/string_literal_flutter_example/lib/main.dart) (lib/main.dart)",
        "code": "found_string_literal",
        "hasFix": true
      },
      "fixes": [
        {
          "priority": 10,
          "change": {
            "message": "B: Extract String (increment)",
            "edits": [
              {
                "file": "/Users/herbert/dev/string_literal_finder/packages/string_literal_flutter_example/lib/l10n_example/example_app_en.arb",
                "fileStamp": 0,
                "edits": [
                  {
                    "offset": 2,
                    "length": 0,
                    "replacement": "  \"increment\": \"Increment\",\n  \"@increment\": {},\n"
                  }
                ]
              },
              {
                "file": "/Users/herbert/dev/string_literal_finder/packages/string_literal_flutter_example/lib/main.dart",
                "fileStamp": 0,
                "edits": [
                  {
                    "offset": 4698,
                    "length": 11,
                    "replacement": "loc.increment"
                  }
                ]
              }
            ],
            "linkedEditGroups": [
              {
                "positions": [
                  {
                    "file": "/Users/herbert/dev/string_literal_finder/packages/string_literal_flutter_example/lib/l10n_example/example_app_en.arb",
                    "offset": 5
                  },
                  {
                    "file": "/Users/herbert/dev/string_literal_finder/packages/string_literal_flutter_example/lib/l10n_example/example_app_en.arb",
                    "offset": 34
                  },
                  {
                    "file": "/Users/herbert/dev/string_literal_finder/packages/string_literal_flutter_example/lib/main.dart",
                    "offset": 4702
                  }
                ],
                "length": 9,
                "suggestions": [
                  {
                    "value": "increment",
                    "kind": "VARIABLE"
                  },
                  {
                    "value": "secondTestincrement",
                    "kind": "VARIABLE"
                  },
                  {
                    "value": "increment",
                    "kind": "VARIABLE"
                  },
                  {
                    "value": "secondTestincrement",
                    "kind": "VARIABLE"
                  },
                  {
                    "value": "increment",
                    "kind": "VARIABLE"
                  },
                  {
                    "value": "secondTestincrement",
                    "kind": "VARIABLE"
                  }
                ]
              }
            ],
            "selection": {
              "file": "/Users/herbert/dev/string_literal_finder/packages/string_literal_flutter_example/lib/main.dart",
              "offset": 4702
            },
            "selectionLength": 9
          }
        },
        {
          "priority": 1,
          "change": {
            "message": "Add // NON-NLS",
            "edits": [
              {
                "file": "/Users/herbert/dev/string_literal_finder/packages/string_literal_flutter_example/lib/main.dart",
                "fileStamp": 0,
                "edits": [
                  {
                    "offset": 4099,
                    "length": 0,
                    "replacement": " // NON-NLS"
                  }
                ]
              }
            ],
            "linkedEditGroups": []
          }
        }
      ]
    }
  ]
}

I'm basically just using the example in my plugin repo to play around /Users/herbert/dev/string_literal_finder/packages/string_literal_flutter_example
Having linked edit support in multiple files would eliminate the problem of having to generate a semi-useful key since the user could just change it.. Is that a limitation of the analysis protocol/LSP?

Is that a limitation of the analysis protocol/LSP?

It's a limitation of LSP and VS Code. LSP doesn't actually support snippets (required for linked edits) at all in Code Action edits - we use a non-standard extension spec'd by the Rust team: https://github.com/rust-lang/rust-analyzer/blob/911ff38eae53eeba7e94a6b01d44eef568b8c476/docs/dev/lsp-extensions.md#snippet-textedit (the LSP request for this is at https://github.com/microsoft/language-server-protocol/issues/592).
However this needs to be mapped back to a Snippet in VS Code, which only supports "snippet mode" in an open editor (and although this editor could theoretically be one other than that where the code action is invoked, the linked edits couldn't cross the documents, and switching focus to another file when the user invoked a code action would probably not be a good experience).
So for now, via LSP, we only support them in the document the user was editing. This could definitely be revisited if VS Code/LSP gained support for this though.

Just FYI, Project Fluent also has such an extension https://github.com/macabeus/vscode-fluent.

The Flutter Intl plugin does seem to allow the user to manually type in the key name:
https://twitter.com/localizely/status/1255175275454881793


Update RHEL and Fedora test cases

This pull request includes:

[x] adequate testing for the new functionality or fixed issue
[x] adequate documentation informing people about the change

Regenerated manifests for test cases for RHEL 8.3, RHEL 8.4, Fedora 32, and Fedora 33.  Changes in osbuild affect the image info, specifically the output of rpm --verify.  In RHEL images, the /etc/machine-id file no longer appears as modified, but in Fedora images it does.  This has been causing CI failures in recent osbuild builds.
For images that haven't been updated in a while, the RT repo was also added by the test case generator.
Schutzfile changed to use current main for osbuild: https://github.com/osbuild/osbuild/commit/6c68e45dbe6b8e7c7a7c40eed1ff66ee4932b050

Converting to draft until all changes are covered.

This is ready but we'll have to wait for CI to make sure it's all good.  Marking as ready.

Ouch, this now needs a rebase. :(

Not sure what to do with this PR.  It'll be needed if we reintroduce the machine-id truncation, which was reverted, but there might be other changes in the manifests until then.
I'm going to close it and we can reopen it (or remake it) when the time comes.


Change product name to LottieSPM

This pull request addresses the potential naming conflict between the original Lottie package and the forked Lottie-spm package. To prevent conflicts and enable seamless integration of both packages, the product name in the Lottie-spm package has been updated.

I don't think we can do this, because I believe it is a breaking change for consumers.
To test how this would affect consumers, I followed these steps:

Update the Example Xcode project to depend on lottie-spm via the github.com repo, using version 4.4.0.
Verify that the app could build and successfully.
Update the Example Xcode project to depend on the rename-to-LottieSPM branch.

(I pushed a copy of your PR changes to the rename-to-LottieSPM in this repo)

Observe that the build now fails, with 🛑 Missing package product 'Lottie'.

Since this change can cause a build failure for existing consumers, we should leave it as-is.

SPM module aliasing may help resolve any naming conflicts you're encountering: https://github.com/apple/swift-evolution/blob/main/proposals/0339-module-aliasing-for-disambiguation.md

Thanks for your detailed analysis. I agree with your assessment.

Message ID: @.***>


More about the  style of Cezanne paintings！

great work !
I saw the result  of Cezanne paintings style in paper Figure 8.
Can you tell about more detail on it ?

I'm trying to reproduce it, but my model generates black and white output only. Is there a flag to set for color?

The painting results are from running the same method on Cezanne paintings instead of line drawings. The photo dataset is the same as the line drawings and the paintings dataset is from here)
Try adding the flag --output_nc 3 to get color images.


Audit logs / revisions?

Hi everyone,
i was looking for some input as to how you guys are saving audit log / revisions with sequelize-typescript. I have not found any solution but i'm 100% that there must be something out there? I don't want to reinvent the wheel you know?!
I would like to track: created, updated, deleted and optionally be able to revert to a specific revision.
Any tips or pointers are greatly appreciated!

Hi @schealex, I am also looking to do audit logging, did you achieved it?

@hendry91 no sadly I have not. But if you find something please keep me posted in this issue. Would really appreciate it.


Syntax tests

Adds positive and negative syntax tests for the top level nodes.

The failed check seems to be caused by temporarily unavailable servers contacted during the dependency resolution phase.

Another infuriating design decision made for XText:
Syntax errors are regularly reported on completely unrelated syntax nodes, because XText always associates an error with the next token after the error and therefore with the owning syntax node.
In the snippet if false {} for example, the BoolConstant is reported to be missing an opening parenthesis, even though it is the IfStatement parser rule that is being violated.

@jopperm Could you please refrain from squashing my PRs in the future? That makes rebasing very annoying on my end.


Fix unkown nodejs version

When running in react-native, the version property is no available, this
fix will make the library not crash in those scenarios.

 Fixed!

Thank you!

@jdalton Thank you for the quick interaction 👏🏻. Any plans for a new npm release ?

There's a couple other fixes I'd like to land but there should be a new release within the week.

@jdalton Great! Will be waiting for the release then. Thanks again !


Build on nucleo_stm32f429zi

Hello everyone, I'm trying the example "blink_led" for a stm32f429zi I can not perform make returns various errors can you help me to set the various parameters for this board?
Thank you
P.S. this is an online translation, sorry
These are the errors:
[  8%] Building C object CMakeFiles/app.dir/src/main.c.obj
/home/sbsadmin/zephyrproject/zephyr/samples/basic/blink_led/src/main.c:45:2: error: #error "Choose supported PWM driver"
#error "Choose supported PWM driver"
^~~~~
/home/sbsadmin/zephyrproject/zephyr/samples/basic/blink_led/src/main.c: In function ‘main’:
/home/sbsadmin/zephyrproject/zephyr/samples/basic/blink_led/src/main.c:62:31: error: ‘PWM_DRIVER’ undeclared (first use in this function)
pwm_dev = device_get_binding(PWM_DRIVER);
^~~~~~~~~~
/home/sbsadmin/zephyrproject/zephyr/samples/basic/blink_led/src/main.c:62:31: note: each undeclared identifier is reported only once for each function it appears in
/home/sbsadmin/zephyrproject/zephyr/samples/basic/blink_led/src/main.c:69:33: error: ‘PWM_CHANNEL’ undeclared (first use in this function)
if (pwm_pin_set_usec(pwm_dev, PWM_CHANNEL,
^~~~~~~~~~~
CMakeFiles/app.dir/build.make:62: recipe for target 'CMakeFiles/app.dir/src/main.c.obj' failed
make[2]: *** [CMakeFiles/app.dir/src/main.c.obj] Error 1
CMakeFiles/Makefile2:104: recipe for target 'CMakeFiles/app.dir/all' failed
make[1]: *** [CMakeFiles/app.dir/all] Error 2
Makefile:83: recipe for target 'all' failed
make: *** [all] Error 2

Without letting us know which board you are building for, its hard to say.  If its a board in the Zephyr tree we can look at this in more detail.  If its not, than its mostly due to not having PWM configured for that board.

The board is the, NUCLEO STM32F429Zi, and is supported

As you can see, at beginning of samples/basic/blink_led/src/main.c, there is a section of code in which we do the needed tuning to adapt the test case to the board. You need to tune that to make test working on this test.
#if defined(CONFIG_SOC_STM32F401XE) || defined(CONFIG_SOC_STM32F412ZG) || \
	defined(CONFIG_SOC_STM32F413XX) || defined(CONFIG_SOC_STM32L476XG) || \
	defined(CONFIG_SOC_STM32F407XG) || defined(CONFIG_SOC_STM32F302X8)
#define PWM_DRIVER DT_PWM_STM32_2_DEV_NAME
#define PWM_CHANNEL 1
#elif CONFIG_SOC_STM32F103XB
#define PWM_DRIVER DT_PWM_STM32_1_DEV_NAME
#define PWM_CHANNEL 1
...

I saw the definitions, so I asked for help with the configuration of my board, I can not figure out how to configure the main settings.
Thank you
P.S. this is an online translation, sorry

Hello everyone, I managed to run build, with example basic / blinky, on stm32f429zi, now my question is how do I configure a pin different from the default?
In the sense if I want the PB5 as an output pin in this example:
#define LED_PORT LED0_GPIO_CONTROLLER
#define LED LED0_GPIO_PIN
This enables the PB0 which is the led0 on-board, how controller should I write?
I tried with GPIOB, STM_32_GPIOB, but it does not work.
Where do I get this information, in which part of the guide?
Thank you
P.S. this is an online translation, sorry

LED0_GPIO_CONTROLLER/PIN is generated from board .dts file, which is the device tree board description. It is generated from led0 alias defined in this file.
You can modify this alias or add a new one.
For more information on device tree, cf https://www.devicetree.org/

But I do not want to use alias I want to insert port and pin, can you do?
I would like to do this in src / main.c
#define Led_R_Driver GPIOB
#define Led_R_Pin 0
What should I write in place of GPIOB, GPIO ports as they are identified, or in which files are they defined?
Thank you
P.S. this is an online translation, sorry

You can try:
	dev = device_get_binding("GPIOB");

Yes thanks, I understood that the function "device_get_binding" required a string, and I tried, now I tried the same thing for the example "blink_led", but it does not work, what are the correct parameters for PWM controllers?
Thank you.
P.S. this is an online translation, sorry

For PWM_2 it will be "PWM_2".
You should actually use the label defined in dts nodes (cf dts/arm/st).

OK thanks.

It does not work, I'm trying the PB7 pin that corresponds to the TIM4 cahnnel 2, so I use it
in /src/main.c
#elif CONFIG_SOC_STM32F429XI
#define PWM_DRIVER "PWM_4",
#define PWM_LED 7
But it does not work, starting the program on the serial I get this
  ***** Booting Zephyr OS zephyr-v1.13.0-4563-g0e4ff809d7 *****
PWM demo app-blink LED
Can not find PWM_4!
Thank you.
P.S. this is an online translation, sorry

You should also enable PWM_4 instance with Kconfig:
In boards/arm/nucleo_f429zi/nucleo_f429zi_defconfig:
CONFIG_PWM_STM32_4=y

Also, you should configure the right pin in boards/arm/nucleo_f429zi/pinmux.c.

Ok, so for every pin that is not by default, I have to change this file:
"Boards / arm / nucleo_f429zi / nucleo_f429zi_defconfig"
that this:
boards / arm / nucleo_f429zi / pinmux.c
Thank you
P.S. this is an online translation, sorry

@vinny74man , please let us know when you're able to build so we can close this point.
Or you can do it whenever you want.

Ok

Does not work.
I modified the file /src/main.c by adding these lines:
#elif CONFIG_SOC_STM32F429XI
#define PWM_DRIVER "PWM_4"
#define PWM_CHANNEL 2
the file /arm/nucleo_f429zi/nucleo_f429zi_defconfig in this way:
enable PWM_4
CONFIG_PWM_STM32_4 = y
the file boards/arm/nucleo_f429zi/pinmux.c in this way:
#ifdef CONFIG_PWM_STM32_4
         {STM32_PIN_PB7, STM32F4_PINMUX_FUNC_PB7_PWM4_CH2},
          #endif / * CONFIG_PWM_STM32_4 * /

but the serial always prints this:
***** Booting Zephyr OS zephyr-v1.13.0-4563-g0e4ff809d7 *****
PWM demo app-blink LED
Can not find PWM_4!
Thank you
P.S. this is an online translation, sorry

Works fine on my side.
On following branch you'll see the changes required to get the sample working:
https://github.com/erwango/zephyr/tree/blink_led_nucleo_f429zi

@vinny74man, did you manage to get it working?
If yes, can we close this ticket?

Closing ticket since no response and tested ok.


Implement get_or_default and get_or for the Context struct

Attempts to address #70.

Thank you for your detailed feedback, I appreciate it :)

Just wanted to note, to my knowledge, we cannot remove the Clone bound because calling insert  requires that bound

Also do feel free to resolve the review comment/threads in this MR if you think you resolved them :) As you probably can easier see if you resolved something or not.

As a friendly reminder @AlvinKuruvilla is this PR something you want to pursuit further, or you want me to finish of the great work you started? either way fine for me, and do take care :)

Hi @GlenDC I apologize for the radio silence, I got stuck while trying to implement get_or_insert_with 😅
I committed all my other changes which include moving the logic for all the requested functions into Extensions and making it a pass through call on Context. I appreciate your help and patience throughout this PR and I'm excited to continue to hopefully contribute to Rama. I believe the only thing left on the table is fixing the implementation for get_or_insert_with :)


Fix ssh server on dokimion.psonet

Error in ssh server on dokimion.psonet prevents ssh using an user configured port.

Solution on temp-dokimion.psonet -
sudo systemctl enable ssh.service
sudo systemctl restart ssh.service
Use sshd_config from git with Port=32


Broken svg sizing when using inline styles

When exporting a document with inline svg which have inline styles, they are broken in the export
In obsidian:
<svg width="800" height="800" preserveAspectRatio="xMidYMid" version="1.1" viewBox="-38.4 -81.966 221.87 491.8" xmlns="http://www.w3.org/2000/svg" style="width:150px;">

In the export:
<svg height="1024" viewBox="0 0 1024 1024" fill="none" xmlns="http://www.w3.org/2000/svg" style="width:1024px;max-width:100%">

The width is set to 1024 for some reason

Interesting, thanks for the report. I will look into this.

This should be fixed in 1.8.0. Let me know if it still does not work as expected and reopen the issue. If you find any new issues please submit a new issue :)
Thanks!


problem with tinyMCE package button

hi,
when install file manager how to add filemanager toolbar button to MCE?
my code for blade file is:
                         @include('tinymce::tpl')
                        <textarea id="tinymce" cols="30" rows="15"></textarea>

and my config file is:
return [

	'cdn' => config('public.url').'/vendor/js/tinymce/tinymce.min.js',
	'params' => [
		"selector" => "#tinymce",
		"language" => 'en_GB',
		"theme" => "modern",
		"skin" => "lightgray",
		"directionality" => "rtl",
		"plugins" => [
			"advlist autolink link image lists charmap print preview hr anchor pagebreak spellchecker",
			"searchreplace wordcount visualblocks visualchars code fullscreen insertdatetime media nonbreaking",
			"save table contextmenu directionality emoticons template paste textcolor autosave"
		],
		"external_filemanager_path" =>"/filemanager/",
		"filemanager_title" =>"Responsive Filemanager",
		"toolbar" => "insertfile undo redo | styleselect | bold italic | alignleft aligncenter alignright alignjustify | bullist numlist outdent indent | link image | preview media | forecolor backcolor emoticons code",
	]

];

anyone there?

Thank you for reporting this issue. Will check it soon.

See integration document.
https://github.com/UniSharp/laravel-filemanager/blob/master/doc/integration.md#option-2-tinymce4


VSSDK006 fires when validation is in another method

I would like to report telemetry when a service is null, so I'm validating my services with another method rather than calling Assumes.Present, or duplicating bunch of if-null blocks. However, VSSDK006 doesn't detect that.
FXCop's CA1602 addresses this by looking at the [ValidatedNotnull] attribute on the validation method (see https://github.com/dotnet/roslyn-analyzers/issues/2863#issuecomment-534461898). Any chance something similar can be done here?

Another instance of this occurs here, where is not null is used to test a nullable-annotated field where GetService's result is stored.


Service Catalog walkthrough is broken for minikube

After introducing RBAC, Service Catalog walkthrough doesn't work for minikube anymore:
Error: release catalog failed: clusterroles.rbac.authorization.k8s.io "servicecatalog.k8s.io:apiserver" is forbidden: attempt to grant extra privileges: [PolicyRule{Resources:["namespaces"], APIGroups:[""], Verbs:["get"]} PolicyRule{Resources:["namespaces"], APIGroups:[""], Verbs:["list"]} PolicyRule{Resources:["namespaces"], APIGroups:[""], Verbs:["watch"]}] user=&{system:serviceaccount:kube-system:default ff1057e8-721b-11e7-b7bb-a23c9ee63bc7 [system:serviceaccounts system:serviceaccounts:kube-system system:authenticated] map[]} ownerrules=[] ruleResolutionErrors=[]
while installing service catalog chart

My understanding is that now there is a need for preconfiguring some roles in Kubernetes cluster before installing a Service Catalog helm chart.
It might be useful to add a script or separate documentation page describing this.

@MHBauer can you help with this?
My current thinking is:

run kubectl create clusterrolebinding fixDug --clsterrrole=cluster-admin --serviceaccount=kube-system:default
take a look at the other steps in local-up-cluster.sh under ENABLE_RBAC:true option

Possibly related https://github.com/kubernetes/minikube/issues/1734

Strugled with minikube for a while. No result.
Minikube needs to be started with --extra-config=apiserver.Authorization.Mode=RBAC.
Does everything work with fixRBAC binding created or are there more problems?

I'm getting the same result with both local-up-cluster and minikube. After enabling RBAC and making the default service account cluster-admin, I see an authentication prompt when executing kubectl --context=service-catalog get brokers... I'm not sure what I could be doing wrong, but I haven't ruled out user error yet.

@jpeeler In order to get rid of that, I had to set a user/password combo for that context. So the full setup would look like the following:
kubectl config set-credentials service-catalog-creds --username=admin --password=admin
kubectl config set-cluster service-catalog-cluster --server="https://${API_SERVER_HOST}:443" --insecure-skip-tls-verify=true
kubectl config set-context service-catalog --cluster=service-catalog-cluster --user=service-catalog-creds
kubectl config use-context service-catalog

Maybe @MHBauer you can comment on whether that is a true solution, and whether we should add that to the walkthrough and why it works?

Other than that, though, I believe the issue here was addressed in the walkthrough additions in #1076 . Is there more to be done for this @nilebox or are we good to close it?

Okay, I think I was confused. That's with rbac, but without aggregation. Probably with auth. I'm not sure if there's a default that might be getting accidentally exposed here. I definitely didn't set admin:admin credentials for anything intentionally.

@MHBauer do you think this is fixed, then?
On Tue, Aug 1, 2017 at 2:03 PM, Morgan Bauer<EMAIL_ADDRESS>wrote:

Okay, I think I was confused. That's with rbac, but without aggregation.
Probably with auth. I'm not sure if there's a default that might be getting
accidentally exposed here. I definitely didn't set admin:admin
credentials for anything intentionally.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/kubernetes-incubator/service-catalog/issues/1069#issuecomment-319449349,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAWXmN7NC7PPoWvnYmxmE609lE17aEueks5sT2hVgaJpZM4OkqVt
.

I need to check some things, but if the SA needs permissions because of the tiller pod for helm, then

I just tested with minikube again with RBAC enabled and I'm still getting prompted for credentials, but it works when adding them as described in https://github.com/kubernetes-incubator/service-catalog/issues/1069#issuecomment-319444019.

Okay, I didn't even think of the credentials, this sounds like a kubectl bug. As far as I know, we're not setting up credentials, and that user/pass has no effect other than getting you past a prompt.

I can confirm that @kibbles-n-bytes's list of actions (preceded with fixRBAC actions mentioned by me above) worked for me.

whether we should add that to the walkthrough and why it works?

@kibbles-n-bytes  Currently we don't have any guidance for minikube in our docs at all. Do we want to have one?

@nilebox I meant more the credentials issue, which isn't unique to minikube. We have a section (here) that describes setting up the context, so I was thinking we could add the credentials setup there to get rid of the prompt until the issue is fixed.
However, I think also adding a mention of how to enable RBAC on minikube in the Troubleshooting section of the walkthrough would be good.

However, I think also adding a mention of how to enable RBAC on minikube in the Troubleshooting section of the walkthrough would be good.

@kibbles-n-bytes I am partially addressing this in #1163, and will continue to do so in follow-ups. cc/ @jboyd01 who is also doing work in this arena

I've just changed docs for installing on Kube 1.7 (see here) to include the minikube startup command (see here), and install works properly.
As such, I am closing this issue.
Note that there is now a problem running the API server & controller, which I'll open a new issue for.


Crash associated with issue #2400

Hi,
I've used the patched version you've sent me. It crashed during the quantification stage.
please see the attached log.
Thanks!
David.
results_171224.txt

were you doing tmt?

No. did I mark that by any chance?
From: trishorts @.>
Sent: Tuesday, December 17, 2024 7:12 PM
To: smith-chem-wisc/MetaMorpheus @.>
Cc: David Morgenstern @.>; Author @.>
Subject: Re: [smith-chem-wisc/MetaMorpheus] Crash associated with issue #2400 (Issue #2454)
Caution: External Sender. Do not click on links or open attachments unless you recognize the sender.
were you doing tmt?
—
Reply to this email directly, view it on GitHubhttps://github.com/smith-chem-wisc/MetaMorpheus/issues/2454#issuecomment-2549071425, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AIQ5VIP24PGHT5DEQLZM4ID2GBLONAVCNFSM6AAAAABTYIRBYGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDKNBZGA3TCNBSGU.
You are receiving this because you authored the thread.Message ID: @.***>

first line of the error message reference line 209.

can you check the toml?

No. But I will make sure the next attempt won’t have it. Thanks!
D.
From: trishorts @.>
Sent: Tuesday, December 17, 2024 7:17 PM
To: smith-chem-wisc/MetaMorpheus @.>
Cc: David Morgenstern @.>; Author @.>
Subject: Re: [smith-chem-wisc/MetaMorpheus] Crash associated with issue #2400 (Issue #2454)
Caution: External Sender. Do not click on links or open attachments unless you recognize the sender.
first line of the error message reference line 209.
image.png (view on web)https://github.com/user-attachments/assets/e101e6b7-ec54-408c-966f-1d1a6b2a4694
can you check the toml?
—
Reply to this email directly, view it on GitHubhttps://github.com/smith-chem-wisc/MetaMorpheus/issues/2454#issuecomment-2549084115, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AIQ5VINIS5AEUQTLUNQO7HD2GBMCHAVCNFSM6AAAAABTYIRBYGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDKNBZGA4DIMJRGU.
You are receiving this because you authored the thread.Message ID: @.***>

can you post the search toml for me

i ran all your data through to quant on my side w/ no crash.

Thanks! Will try again.
D.
From: trishorts @.>
Sent: Wednesday, December 18, 2024 6:30 PM
To: smith-chem-wisc/MetaMorpheus @.>
Cc: David Morgenstern @.>; Author @.>
Subject: Re: [smith-chem-wisc/MetaMorpheus] Crash associated with issue #2400 (Issue #2454)
Caution: External Sender. Do not click on links or open attachments unless you recognize the sender.
i ran all your data through to quant on my side w/ no crash.
—
Reply to this email directly, view it on GitHubhttps://github.com/smith-chem-wisc/MetaMorpheus/issues/2454#issuecomment-2551772873, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AIQ5VIPBQQ3U4DV4JWS37QL2GGPI7AVCNFSM6AAAAABTYIRBYGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDKNJRG43TEOBXGM.
You are receiving this because you authored the thread.Message ID<EMAIL_ADDRESS>


Write EDF with sample rate < 1

Reading and writing sample rates generally seems to work, however, there is still a bug with writing sample rates below 1, e.g. 0.5
signals = np.random.randint(-2048, 2048, [3, 256*60])
highlevel.write_edf_quick('test.edf', signals.astype(np.int32), sfreq=1/3, digital=True)
signals2, _, _ = highlevel.read_edf('test.edf', digital=True, verbose=True)
np.testing.assert_allclose(signals, signals2)

should be fixed by #159


Added example for using SHE keys up to 90.

Added an example for using keys beyond SHE_KEY_20.

Thank you for your PR. I will merge this.


atom.workspaceView deprecated (no longer available)

Atom editor v 0.176 presents the following warning in the "deprecation cop" view:

atom.workspaceView is no longer available.
In most cases you will not need the view. See the Workspace docs for
alternatives: https://atom.io/docs/api/latest/Workspace.
If you do need the view, please use atom.views.getView(atom.workspace),
which returns an HTMLElement.

Atom.Object.defineProperty.get (/opt/homebrew-cask/Caskroom/atom/latest/Atom.app/Contents/Resources/app/src/atom.js:53:11)
Object.activate (/Users/jesper/.atom/packages/ruby-syntax-replacer/lib/ruby-syntax-replacer.coffee:3:9)

I have not looked into the docs about fixing, just wanted to post here for anybody to work on it :)

@jesperronn :+1: Thanks for the update.
As you can see on the commit history I haven't been updating it for quite a while (Last time was around July 2014).
I have meant to give it an overhaul (and possible write a spec or two) for some time, but haven't really gotten round to it yet.
Any day now... :dancers:


[rust] disable aes/avx2 acceleration of pqcrypto-sphicsplus

This crate is always the limiting factor of Rust builds, and disabling the acceleration making building it twice as fast.

What if we go even further and disable all of the algorithms we don't care about?
Unfortunately, this crate doesn't have an appropriate set of feature selections, but we could apply a patch in //third_party/rust/BUILD and the patch could comment all of the algorithms we don't care about in pqcrypto-sphincsplus/build.rs.

I took a quick look at the way the pqcrypto-sphincsplus crate is structured.  It doesn't look quite as easy as I first thought to disable all of the extra algorithms that we don't care about.  I still think a bit of investigation into disabling them would be time well spent.

I think we can disable unneeded algorithm in addition to remove the acceleration features, right? This PR could be merged without doing that.


Error in if (is.na(idx1))

Hello! When i try to test the parser with my dvw files i get the error (running the line "x <- read_dv(system.file("extdata/myfile.dvw",package="datavolley"),insert_technical_timeouts=FALSE)"):
Error in if (is.na(idx1)) idx1 <- 15 : argument is of length zero
In addition: Warning message:
In file(con, "r") :
file("") only supports open = "w+" and open = "w+b": using the former
which could be the reason?
thank you.
Marco

Hi Marco
The system.file function looks for files that were bundled as part of a package. To read your own files you just want something like:
x <- read_dv("c:/somewhere/myfile.dvw",insert_technical_timeouts=FALSE)
The cryptic error message you are getting is just because it can't find the file. I will fix it so that the error message is more informative. Thanks for reporting it!

Uhm.. but i put myfile in the same directory of the example files. Anyway
i'll try to specify the path and i'll let you know if it works! Thank you
for your answer!!!
Marco
Il giorno sab 22 lug 2017 alle 00:15 Ben Raymond<EMAIL_ADDRESS>ha scritto:

Hi Marco
The system.file function looks for files that were bundled as part of a
package. To read your own files you just want something like:
x <- read_dv("c:/somewhere/myfile.dvw",insert_technical_timeouts=FALSE)
The cryptic error message you are getting is just because it can't find
the file. I will fix it so that the error message is more informative.
Thanks for reporting it!
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/raymondben/datavolley/issues/1#issuecomment-317125177,
or mute the thread
https://github.com/notifications/unsubscribe-auth/Ac8hlYuj9wSGIhaYVMYTADuEmRqBrDw8ks5sQSLqgaJpZM4OfpKB
.

Oh. OK, I'll look further!

Thanks!
Il giorno sab 22 lug 2017 alle 00:19 Ben Raymond<EMAIL_ADDRESS>ha scritto:

Oh. OK, I'll look further!
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/raymondben/datavolley/issues/1#issuecomment-317125943,
or mute the thread
https://github.com/notifications/unsubscribe-auth/Ac8hlVbnVY34vyG3YpcFpzLJEOlO4wNIks5sQSQLgaJpZM4OfpKB
.

Hi again Marco
I'm pretty sure it's not finding that file. If you do:
system.file("extdata/myfile.dvw",package="datavolley")
I think it will return "" (empty string - meaning that it can't find that file).
It should be finding the file if you have copied it in into the library location (which will be system.file("extdata",package="datavolley")) but overall I think you are better to keep your files separate from the library (otherwise, if you upgrade/reinstall the datavolley package, you will lose those files because it will overwrite that folder).
So try putting your file in some other folder and referencing it directly:
x <- read_dv("c:/somewhere/myfile.dvw",insert_technical_timeouts=FALSE)
Let me know how that goes!
(PS I've added some more checking of inputs and updated the error messages, so you might like to reinstall the datavolley package).

ok! i've modified the code as you suggested and it's working! thank you
Ben!!
2017-07-22 11:06 GMT+02:00 Ben Raymond<EMAIL_ADDRESS>
Hi again Marco
I'm pretty sure it's not finding that file. If you do:
system.file("extdata/myfile.dvw",package="datavolley")
I think it will return "" (empty string - meaning that it can't find that
file).
It should be finding the file if you have copied it in into the library
location (which will be system.file("extdata",package="datavolley")) but
overall I think you are better to keep your files separate from the library
(otherwise, if you upgrade/reinstall the datavolley package, you will lose
those files because it will overwrite that folder).
So try putting your file in some other folder and referencing it directly:
x <- read_dv("c:/somewhere/myfile.dvw",insert_technical_timeouts=FALSE)
Let me know how that goes!
(PS I've added some more checking of inputs and updated the error
messages, so you might like to reinstall the datavolley package).
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/raymondben/datavolley/issues/1#issuecomment-317169017,
or mute the thread
https://github.com/notifications/unsubscribe-auth/Ac8hlVE9YSOOMvAAQjrhN18eHZlldp0qks5sQbuKgaJpZM4OfpKB
.

Great! I'll close this issue but feel free to open another or contact me directly if you have others.


Set packet data to be able to write video/audio packet from caller

Closing this PR as you should be using this method instead


Prevent interaction on rest of the page while page transitioning

From https://github.com/flutter/flutter/issues/27334#issuecomment-478822960

Prevent page interactions during transitions in general on Android and iOS.

This bug not been noticed. I think it's a very serious bug.

Interestingly this bug does not appear when using the backbutton on your device. Even though you still do a Navigator Push before the transition has ended.
I have have 'fixed' this problem by using fullscreenDialog: true, (though that changes the animation to a vertical one).
This is indeed a severe bug and should be fixed. Also because the crash caused by it stops further interaction with the app.

This is indeed a severe bug and should be fixed.
Who knows when to fix it?
Thanks to the flutter team.

Reproducible on the latest master 1.22.0-10.0.pre.340.

flutter doctor -v
[√] Flutter (Channel master, 1.22.0-10.0.pre.340, on Microsoft Windows [Version 10.0.19041.508], locale en-US)
    • Flutter version 1.22.0-10.0.pre.340 at C:\Development\flutter_master
    • Framework revision 1fef5912cf (65 minutes ago), 2020-09-23 21:37:08 -0700
    • Engine revision dd35b5b659
    • Dart version 2.10.0 (build 2.10.0-156.0.dev)

[√] Android toolchain - develop for Android devices (Android SDK version 30.0.1)
    • Android SDK at C:\Users\marku\AppData\Local\Android\sdk
    • Platform android-30, build-tools 30.0.1
    • Java binary at: C:\Users\marku\AppData\Local\JetBrains\Toolbox\apps\AndroidStudio\ch-0\193.6626763\jre\bin\java
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)
    • All Android licenses accepted.

[√] Chrome - develop for the web
    • Chrome at C:\Program Files (x86)\Google\Chrome\Application\chrome.exe

[√] Visual Studio - develop for Windows (Visual Studio Community 2019 16.6.5)
    • Visual Studio at C:\Program Files (x86)\Microsoft Visual Studio\2019\Community
    • Visual Studio Community 2019 version 16.6.30320.27
    • Windows 10 SDK version 10.0.18362.0

[√] Android Studio (version 4.0)
    • Android Studio at C:\Users\marku\AppData\Local\JetBrains\Toolbox\apps\AndroidStudio\ch-0\193.6626763
    • Flutter plugin version 47.1.2
    • Dart plugin version 193.7361
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)

[√] Connected device (6 available)
    • SM G950F (mobile)           • ce12171c51cc001c03 • android-arm64  • Android 9 (API 28)
    • sdk gphone x86 arm (mobile) • emulator-5554      • android-x86    • Android 11 (API 30) (emulator)
    • Windows (desktop)           • windows            • windows-x64    • Microsoft Windows [Version 10.0.19041.508]
    • Web Server (web)            • web-server         • web-javascript • Flutter Tools
    • Chrome (web)                • chrome             • web-javascript • Google Chrome 85.0.4183.102
    • Edge (web)                  • edge               • web-javascript • Microsoft Edge 85.0.564.51

• No issues found!

Minimal reproducible code sample
import 'package:flutter/material.dart';
import 'package:flutter/scheduler.dart';

void main() {
  timeDilation = 4.0;
  runApp(MaterialApp(
    title: 'Navigation Basics',
    home: FirstRoute(),
  ));
}

class FirstRoute extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text('First Route'),
      ),
      body: Center(
        child: RaisedButton(
          child: Text('Open route'),
          onPressed: () {
            Navigator.push(
              context,
              MaterialPageRoute(builder: (context) => SecondRoute()),
            );
          },
        ),
      ),
    );
  }
}

class SecondRoute extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text("Second Route"),
      ),
      body: Center(
        child: RaisedButton(
          onPressed: () {
            Navigator.pop(context);
          },
          child: Text('Go back!'),
        ),
      ),
    );
  }
}

Verified this issue on latest versions and observed that tapping on back button in app bar is not recognized. Used physical device for verification. With this I am going ahead and closing as not replicable anymore. If anybody disagrees, please write in comments and I'll reopen it.

 stable, master flutter doctor -v
[✓] Flutter (Channel stable, 3.3.7, on macOS 12.2.1 21D62 darwin-x64, locale
    en-GB)
    • Flutter version 3.3.7 on channel stable at
      /Users/dhs/documents/fluttersdk/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision e99c9c7cd9 (2 days ago), 2022-11-01 16:59:00 -0700
    • Engine revision 857bd6b74c
    • Dart version 2.18.4
    • DevTools version 2.15.0

[!] Xcode - develop for iOS and macOS (Xcode 12.3)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    ! Flutter recommends a minimum Xcode version of 13.
      Download the latest version or update via the Mac App Store.
    • CocoaPods version 1.11.2

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] VS Code (version 1.62.0)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.21.0

[✓] Connected device (5 available)
    • SM G975F (mobile)       • RZ8M802WY0X • android-arm64   • Android 11 (API 30)
    • Darshan's iphone (mobile)  • 21150b119064aecc249dfcfe05e259197461ce23 •
      ios            • iOS 14.4.1 18D61
    • iPhone 12 Pro Max (mobile) • A5473606-0213-4FD8-BA16-553433949729     •
      ios            • com.apple.CoreSimulator.SimRuntime.iOS-14-3 (simulator)
    • macOS (desktop)            • macos                                    •
      darwin-x64     • Mac OS X 10.15.4 19E2269 darwin-x64
    • Chrome (web)               • chrome                                   •
      web-javascript • Google Chrome 98.0.4758.80

[✓] HTTP Host Availability
    • All required HTTP hosts are available

! Doctor found issues in 1 category.

[!] Flutter (Channel master, 3.5.0-12.0.pre.168, on macOS 12.2.1 21D62
    darwin-x64, locale en-GB)
    • Flutter version 3.5.0-12.0.pre.168 on channel master at
      /Users/dhs/documents/fluttersdk/flutter
    ! Warning: `flutter` on your path resolves to
      /Users/dhs/Documents/Fluttersdk/flutter/bin/flutter, which is not inside
      your current Flutter SDK checkout at
      /Users/dhs/documents/fluttersdk/flutter. Consider adding
      /Users/dhs/documents/fluttersdk/flutter/bin to the front of your path.
    ! Warning: `dart` on your path resolves to
      /Users/dhs/Documents/Fluttersdk/flutter/bin/dart, which is not inside your
      current Flutter SDK checkout at /Users/dhs/documents/fluttersdk/flutter.
      Consider adding /Users/dhs/documents/fluttersdk/flutter/bin to the front
      of your path.
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision a1432a9c5d (4 hours ago), 2022-11-07 19:17:03 -0600
    • Engine revision e7d7edab98
    • Dart version 2.19.0 (build 2.19.0-374.0.dev)
    • DevTools version 2.19.0
    • If those were intentional, you can disregard the above warnings; however
      it is recommended to use "git" directly to perform update checks and
      upgrades.

[!] Xcode - develop for iOS and macOS (Xcode 12.3)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    ! Flutter recommends a minimum Xcode version of 13.
      Download the latest version or update via the Mac App Store.
    • CocoaPods version 1.11.2

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] VS Code (version 1.62.0)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.21.0

[✓] Connected device (5 available)
    • SM G975F (mobile)       • RZ8M802WY0X • android-arm64   • Android 11 (API 30)
    • Darshan's iphone (mobile)  • 21150b119064aecc249dfcfe05e259197461ce23 •
      ios            • iOS 14.4.1 18D61
    • iPhone 12 Pro Max (mobile) • A5473606-0213-4FD8-BA16-553433949729     •
      ios            • com.apple.CoreSimulator.SimRuntime.iOS-14-3 (simulator)
    • macOS (desktop)            • macos                                    •
      darwin-x64     • Mac OS X 10.15.4 19E2269 darwin-x64
    • Chrome (web)               • chrome                                   •
      web-javascript • Google Chrome 98.0.4758.80

[✓] HTTP Host Availability
    • All required HTTP hosts are available

! Doctor found issues in 1 category.


new module causes some plugins to try to reinstall, and fails

http://fpaste.org/302874/04637661/
I haven't really found anything that would explain this - for some reason it downloads the plugin (why, I'm not sure -- since the specified version is already installed) and fails because the directory exists.

Hi,
Could you run with --debug flag enabled? This should give some extra output of the provider it self.
thanks!

Closing due to inactivity. If there is still an issue please open a new one. thank you.


Feature/autumn

u/g to autumn latest
note: defer until we get a green travis build

@thgreiner good observation. we have a post-process filter to remove this (see comment). new patch forthcoming.

@thgreiner attribution filter applied, patch pushed
@iizrailevsky your eyes appreciated :)
@jcwuzoegiver thx re the AssignmentImpl changset ... i was just surprised to see that delta show up here.
squirrel me yo :)

@jwtodd 👍 on autumn package and GAV changes! :shipit: given that you resolve the DE code changes question

ok build failed ... looking into that now


Add MailDev - SMTP Server + Web Interface for viewing and testing emails

By submitting this pull request, I promise I have read the contribution guidelines twice and ensured my submission follows it. I realize not doing so wastes the maintainers' time that they could have spent making the world better. 🖖
⬆⬆⬆⬆⬆⬆⬆⬆⬆⬆
Add MailDev - SMTP Server + Web Interface for viewing and testing emails during development
https://github.com/djfarrelly/MailDev

Gonna pass on this as it doesn't seem actively maintained anymore.