text:
Error opening EXIFTO~1.TXT in AppData [set PDF keywords]

Describe the bug
I tried to use your tool as a gui for exiftool to apply pdf-keywords (xmp) to pdf-files, but it failed to do so (see error text below).
To Reproduce
Steps to reproduce the behavior:

Choose one or more PDF-files
Keywords (*): anything
save changes into files
See error message below

Expected behavior
Normally, it should put one or more keywords into xmp pdf metadata like in command line use.
Desktop (please complete the following information):

OS: Windows 11

Additional context
"Issue: Failed write Xtra Atom property to file.
File Name:   D:\Dokumente\Eingang\2017\Schlüsselworte\2017-05-23-11-33-06.pdf
File Status: Failed to write Microsoft's own Xtra Atom Propery on file.: D:\Dokumente\Eingang\2017\Schlüsselworte\2017-05-23-11-33-06.pdf, Error occured
Error message:Failed to write Microsoft's own Xtra Atom Propery on file.: D:\Dokumente\Eingang\2017\Schlüsselworte\2017-05-23-11-33-06.pdf
Issue: EXIFTOOL.EXE failed write to file.
File Name:  D:\Dokumente\Eingang\2017\Schlüsselworte\2017-05-23-11-33-06.pdf
File Status:
File Attributes: Archive
Creation Time: 15.10.2022 15:23:02
Last Write Time: 18.06.2022 20:43:58
Error Message: Error opening arg file C:\Users\danie\AppData\Local\PHOTOT~1\EXIFTO~1.TXT

Issue: Failed write Xtra Atom property to file.
File Name:   D:\Dokumente\Eingang\2017\Schlüsselworte\2017-05-23-11-33-22.pdf
File Status: Failed to write Microsoft's own Xtra Atom Propery on file.: D:\Dokumente\Eingang\2017\Schlüsselworte\2017-05-23-11-33-22.pdf, Error occured
Error message:Failed to write Microsoft's own Xtra Atom Propery on file.: D:\Dokumente\Eingang\2017\Schlüsselworte\2017-05-23-11-33-22.pdf
Issue: EXIFTOOL.EXE failed write to file.
File Name:  D:\Dokumente\Eingang\2017\Schlüsselworte\2017-05-23-11-33-22.pdf
File Status:
File Attributes: Archive
Creation Time: 15.10.2022 15:23:02
Last Write Time: 18.06.2022 20:43:55
Error Message: Error opening arg file C:\Users\danie\AppData\Local\PHOTOT~1\EXIFTO~1.TXT

Issue: Failed write Xtra Atom property to file.
File Name:   D:\Dokumente\Eingang\2017\Schlüsselworte\2017-05-23-11-34-40.pdf
File Status: Failed to write Microsoft's own Xtra Atom Propery on file.: D:\Dokumente\Eingang\2017\Schlüsselworte\2017-05-23-11-34-40.pdf, Error occured
Error message:Failed to write Microsoft's own Xtra Atom Propery on file.: D:\Dokumente\Eingang\2017\Schlüsselworte\2017-05-23-11-34-40.pdf
Issue: EXIFTOOL.EXE failed write to file.
File Name:  D:\Dokumente\Eingang\2017\Schlüsselworte\2017-05-23-11-34-40.pdf
File Status:
File Attributes: Archive
Creation Time: 15.10.2022 15:23:04
Last Write Time: 18.06.2022 20:43:54
Error Message: Error opening arg file C:\Users\danie\AppData\Local\PHOTOT~1\EXIFTO~1.TXT

Issue: Failed write Xtra Atom property to file.
File Name:   D:\Dokumente\Eingang\2017\Schlüsselworte\2017-05-23-11-36-23.pdf
File Status: Failed to write Microsoft's own Xtra Atom Propery on file.: D:\Dokumente\Eingang\2017\Schlüsselworte\2017-05-23-11-36-23.pdf, Error occured
Error message:Failed to write Microsoft's own Xtra Atom Propery on file.: D:\Dokumente\Eingang\2017\Schlüsselworte\2017-05-23-11-36-23.pdf
Issue: EXIFTOOL.EXE failed write to file.
File Name:  D:\Dokumente\Eingang\2017\Schlüsselworte\2017-05-23-11-36-23.pdf
File Status:
File Attributes: Archive
Creation Time: 15.10.2022 15:23:07
Last Write Time: 18.06.2022 20:43:51
Error Message: Error opening arg file C:\Users\danie\AppData\Local\PHOTOT~1\EXIFTO~1.TXT

Issue: Failed write Xtra Atom property to file.
File Name:   D:\Dokumente\Eingang\2017\Schlüsselworte\2017-05-23-11-43-07.pdf
File Status: Failed to write Microsoft's own Xtra Atom Propery on file.: D:\Dokumente\Eingang\2017\Schlüsselworte\2017-05-23-11-43-07.pdf, Error occured
Error message:Failed to write Microsoft's own Xtra Atom Propery on file.: D:\Dokumente\Eingang\2017\Schlüsselworte\2017-05-23-11-43-07.pdf
Issue: EXIFTOOL.EXE failed write to file.
File Name:  D:\Dokumente\Eingang\2017\Schlüsselworte\2017-05-23-11-43-07.pdf
File Status:
File Attributes: Archive
Creation Time: 15.10.2022 15:23:07
Last Write Time: 18.06.2022 20:43:52
Error Message: Error opening arg file C:\Users\danie\AppData\Local\PHOTOT~1\EXIFTO~1.TXT

Issue: Failed write Xtra Atom property to file.
File Name:   D:\Dokumente\Eingang\2017\Schlüsselworte\2017-05-23-11-43-55.pdf
File Status: Failed to write Microsoft's own Xtra Atom Propery on file.: D:\Dokumente\Eingang\2017\Schlüsselworte\2017-05-23-11-43-55.pdf, Error occured
Error message:Failed to write Microsoft's own Xtra Atom Propery on file.: D:\Dokumente\Eingang\2017\Schlüsselworte\2017-05-23-11-43-55.pdf
Issue: EXIFTOOL.EXE failed write to file.
File Name:  D:\Dokumente\Eingang\2017\Schlüsselworte\2017-05-23-11-43-55.pdf
File Status:
File Attributes: Archive
Creation Time: 15.10.2022 15:23:07
Last Write Time: 18.06.2022 20:43:52
Error Message: Error opening arg file C:\Users\danie\AppData\Local\PHOTOT~1\EXIFTO~1.TXT

Issue: Failed write Xtra Atom property to file.
File Name:   D:\Dokumente\Eingang\2017\Schlüsselworte\2017-05-23-11-46-34.pdf
File Status: Failed to write Microsoft's own Xtra Atom Propery on file.: D:\Dokumente\Eingang\2017\Schlüsselworte\2017-05-23-11-46-34.pdf, Error occured
Error message:Failed to write Microsoft's own Xtra Atom Propery on file.: D:\Dokumente\Eingang\2017\Schlüsselworte\2017-05-23-11-46-34.pdf
Issue: EXIFTOOL.EXE failed write to file.
File Name:  D:\Dokumente\Eingang\2017\Schlüsselworte\2017-05-23-11-46-34.pdf
File Status:
File Attributes: Archive
Creation Time: 15.10.2022 15:23:09
Last Write Time: 18.06.2022 20:43:47
Error Message: Error opening arg file C:\Users\danie\AppData\Local\PHOTOT~1\EXIFTO~1.TXT

Issue: Failed write Xtra Atom property to file.
File Name:   D:\Dokumente\Eingang\2017\Schlüsselworte\2017-05-23-13-46-00.pdf
File Status: Failed to write Microsoft's own Xtra Atom Propery on file.: D:\Dokumente\Eingang\2017\Schlüsselworte\2017-05-23-13-46-00.pdf, Error occured
Error message:Failed to write Microsoft's own Xtra Atom Propery on file.: D:\Dokumente\Eingang\2017\Schlüsselworte\2017-05-23-13-46-00.pdf
Issue: EXIFTOOL.EXE failed write to file.
File Name:  D:\Dokumente\Eingang\2017\Schlüsselworte\2017-05-23-13-46-00.pdf
File Status:
File Attributes: Archive
Creation Time: 15.10.2022 15:23:23
Last Write Time: 18.06.2022 20:43:38
Error Message: Error opening arg file C:\Users\danie\AppData\Local\PHOTOT~1\EXIFTO~1.TXT

Issue: Failed write Xtra Atom property to file.
File Name:   D:\Dokumente\Eingang\2017\Schlüsselworte\2017-05-23-13-46-42.pdf
File Status: Failed to write Microsoft's own Xtra Atom Propery on file.: D:\Dokumente\Eingang\2017\Schlüsselworte\2017-05-23-13-46-42.pdf, Error occured, File is locked (RW)
Error message:Failed to write Microsoft's own Xtra Atom Propery on file.: D:\Dokumente\Eingang\2017\Schlüsselworte\2017-05-23-13-46-42.pdf
Issue: EXIFTOOL.EXE failed write to file.
File Name:  D:\Dokumente\Eingang\2017\Schlüsselworte\2017-05-23-13-46-42.pdf
File Status:
File Attributes: Archive
Creation Time: 23.12.2022 10:30:29
Last Write Time: 23.12.2022 11:58:23
Error Message: Error opening arg file C:\Users\danie\AppData\Local\PHOTOT~1\EXIFTO~1.TXT

Issue: Failed write Xtra Atom property to file.
File Name:   D:\Dokumente\Eingang\2017\Schlüsselworte\2017-05-23-13-46-58.pdf
File Status: Failed to write Microsoft's own Xtra Atom Propery on file.: D:\Dokumente\Eingang\2017\Schlüsselworte\2017-05-23-13-46-58.pdf, Error occured
Error message:Failed to write Microsoft's own Xtra Atom Propery on file.: D:\Dokumente\Eingang\2017\Schlüsselworte\2017-05-23-13-46-58.pdf
Issue: EXIFTOOL.EXE failed write to file.
File Name:  D:\Dokumente\Eingang\2017\Schlüsselworte\2017-05-23-13-46-58.pdf
File Status:
File Attributes: Archive
Creation Time: 15.10.2022 15:23:25
Last Write Time: 18.06.2022 20:51:56
Error Message: Error opening arg file C:\Users\danie\AppData\Local\PHOTOT~1\EXIFTO~1.TXT

Issue: Failed write Xtra Atom property to file.
File Name:   D:\Dokumente\Eingang\2017\Schlüsselworte\2017-05-23-13-47-06.pdf
File Status: Failed to write Microsoft's own Xtra Atom Propery on file.: D:\Dokumente\Eingang\2017\Schlüsselworte\2017-05-23-13-47-06.pdf, Error occured
Error message:Failed to write Microsoft's own Xtra Atom Propery on file.: D:\Dokumente\Eingang\2017\Schlüsselworte\2017-05-23-13-47-06.pdf
Issue: EXIFTOOL.EXE failed write to file.
File Name:  D:\Dokumente\Eingang\2017\Schlüsselworte\2017-05-23-13-47-06.pdf
File Status:
File Attributes: Archive
Creation Time: 15.10.2022 15:23:26
Last Write Time: 18.06.2022 20:43:29
Error Message: Error opening arg file C:\Users\danie\AppData\Local\PHOTOT~1\EXIFTO~1.TXT

Issue: Failed write Xtra Atom property to file.
File Name:   D:\Dokumente\Eingang\2017\Schlüsselworte\2017-05-23-13-47-14.pdf
File Status: Failed to write Microsoft's own Xtra Atom Propery on file.: D:\Dokumente\Eingang\2017\Schlüsselworte\2017-05-23-13-47-14.pdf, Error occured
Error message:Failed to write Microsoft's own Xtra Atom Propery on file.: D:\Dokumente\Eingang\2017\Schlüsselworte\2017-05-23-13-47-14.pdf
Issue: EXIFTOOL.EXE failed write to file.
File Name:  D:\Dokumente\Eingang\2017\Schlüsselworte\2017-05-23-13-47-14.pdf
File Status:
File Attributes: Archive
Creation Time: 15.10.2022 15:23:26
Last Write Time: 18.06.2022 20:48:18
Error Message: Error opening arg file C:\Users\danie\AppData\Local\PHOTOT~1\EXIFTO~1.TXT

"
Thank you for helping!

Hi, thanks for using PhotoTags-Synchronizer
Seems Microsoft don't support writing Xtra Atom to PDF files. Microsoft Xtra Atom is an old windows standard from Microsoft to store information on media files, and is more or less not supported anymore.
When writing to the Media files and also PDF files, the program uses EXIFtool to write standard xmp information to the file, in addition use Windows functions to write Microsoft Xtra Atoms
What I can see, you get a warning that writing Xtra Atoms fails, but that doesn’t mean Exiftool failed to write your data.
I tested with a PDF file adding Keywords, and it worked for me, even though I got the warning.
You can turn off writing Xtra Atoms under config.
Open config, select “Metadata” tab. Turn off: “Write Windows Xtra Atoms on Videos and Picture files”.
If you know Exiftool, you can even change how PhotoTags-Synchronizer should write data back to the PDF files. Open config, select the “Metadata” tab, then select “How to write Metadata”.
I hope this helped.
If you still have issue, please let me know. Maybe you can share files you have issue with.

How to change how Exiftool should write Keywords

Hi, I have uploaded a new version of the app so you will not see the warnings anymore for PDF files.

Wow, thank you!
I will try how it works, tomorrow!
Sent from my mobile.
Am 2. Jan. 2023, 14:12, um 14:12, Nordlien @.***> schrieb:

Hi, I have uploaded a new version of the app so you will not see the
warnings anymore for PDF files.
--
Reply to this email directly or view it on GitHub:
https://github.com/Nordlien/PhotoTags-Synchronizer/issues/4#issuecomment-1368935904
You are receiving this because you authored the thread.
Message ID:
@.***>

You are welcome.It's loaded, and still being processed by Microsoft, I guess the us takes up to 24 hours. 2. jan. 2023 17:03 skrev cao-muc @.***>:
Wow, thank you!
I will try how it works, tomorrow!
Sent from my mobile.
Am 2. Jan. 2023, 14:12, um 14:12, Nordlien @.***> schrieb:

Hi, I have uploaded a new version of the app so you will not see the

warnings anymore for PDF files.

--

Reply to this email directly or view it on GitHub:

https://github.com/Nordlien/PhotoTags-Synchronizer/issues/4#issuecomment-1368935904

You are receiving this because you authored the thread.

Message ID:

@.***>

—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you modified the open/close state.Message ID: @.***>

authors: Nordlien cao-muc

repo: Nordlien/PhotoTags-Synchronizer


text:
setEpoch(): unix time (convert internally to y2k) and no 100-yr offset

Untested in software or hardware.
This should provide the offset required to make the datum for setEpoch() be 01/01/1970 instead of 01/01/2000, as is expected both from its own documentation and from the way much of the rest of this library works (even if the DS3231 itself zeros out at 01/01/2000).
Tagging relevant folks: @hasenradball @IowaDave @bill-ba @leslieadams57
And issue #53
And this PR: https://github.com/NorthernWidget/DS3231/pull/60
I'm still not sure if tm_wday and tm_mon need their +1s. Going to look at the differences between the C++ library and the DS3231 data sheet at some point after this, and add any changes as needed to this PR.

Should we make so defined tests?
Feeding some specific values for the Epoch and check the data?

@awickert you have done every needed change right?

Defined tests would be great.
I am not sure if I have done every needed change; see my notes on tm_wday and tm_mon.
Unfortunately, I will not have any hardware with me for at least one more week, so I cannot perform a hardware test of this code. I have not yet tried to compile, but can.

Hi Andy,
Iam actually not sure was was going wrong with the actual implementation, because I used the actual lib and tried compare the time from ESP8266 and the time from DS3231 and this are the same.
see here:

Or do I anything wrong?

In the ESP8266 it refers to the following time libs:
strftime
Were for example:
Weekday as a decimal number with Sunday as 0 (0-6)

During Testing I missed the following member function:
dayOfTheWeek()
Was this not implemented i the past?

@awickert Hi Andy,
I think I got the issue now correctly:

the ESP8266 uses a time.hwhich refers to the data of 1970.
The AVR Lib refers to a different time.h which uses time of 2000.

Let us make these things clear.
I will try to figure out a optimal solution.
What do you think?
And waht about the missing member function dayOfWeek()?

My idea is to make a simple sketch which runs on ESP8266 and Arduino, feeding a defined UnixTimestamp to the setEpoch function and read out the time from DS3231.
The results schouls be the same then.
Thats wat i would do.

My thoughts, in summary:

There are two platforms that use different epochs, and so we should find a way to accommodate them. We can do this by:

Adding an option that we pass to the function, which should default to the value used on Arduino/AVR
Creating a method to detect the hardware internally

dayOfTheWeek is implemented in the header only, and is fundamentally unimportant here.
We should systematically find out which libraries are 0- or 1- indexed and how this compares to the data sheets.
Then, fix these if needed
In the end, we can write a test sketch

Sound good?

Hi,
just for clarification.
I cannot see the definition of  dayOfTheWeek.

Thus I would check then all data also the output of DayOfTheWeek.

@awickert @hasenradball : I really appreciate the attention being given to this issue. I can help with testing. This morning (in Iowa) I will prepare a short test sketch and run it on both AVR and 8266. Perhaps I'll test it with a SAMD Arduino also. My next post in this PR will provide the sketch and the results.

This thread includes mention of the DateTime::dayOfTheWeek() method also. May I offer an observation? These comments are fresh in mind after drafting documentation for the DateTime object.
DateTime objects have no Century property. I suspect the practical range of dates for DateTime objects may be limited to those between 01 January 2000 and 31 December 2099, for two reasons.

Year is implemented as 00-99 even though it is declared as type uint16_t in the class.

The constructor, DateTime::(uint32_t: t), does indeed expect the parameter to represent time since 01 January 1970 GMT; however, it then adjusts the number of seconds to represent time since 01 January 2000.

The constructor does this by subtracting the constant, #define SECONDS_FROM_1970_TO_2000 946684800, prior to parsing the value into the various different properties of date and time.
Conversely, the DateTime::unixtime() method reverses the process by adding the same constant immediately prior to returning the result.

@IowaDave
Great I am also working on a preparing an sketch.

Thanks, both.
A request: Could we leave the dayOfTheWeek question for another thread, and in general, open new threads for new topics? Feel free to open one and reference the discussion here.

Hi Togheter,
with my gist I can check now the output of:

the DS3231 class itself
the RTC class
the content of the struct tm of the refernced lib time.h

The result using the offset Correction for the ESP8266 shows the following result:

Next Step is to check the output of Arduino Nano.

If I remove the 2000 Correction AND the 100 year offset. I get the following results on the ESP8266.

The Question I have is...
why does the function Serial.print(Clock.getYear(), DEC); returns value >100?

Thanks, both.
A request: Could we leave the dayOfTheWeek question for another thread, and in general, open new threads for new topics? Feel free to open one and reference the discussion here.

@awickert
sure let us first fix the main issue of this PR.
Wen can the dayOfWeek issue in an other topic.

I want to share an additional information:

tm_year -> gives year since 1900 => so the offset by 100 is fine ==> setYear(tmnow.tm_year - 100U);
tm_wday -> gives [0-6] => DS3231 uses [1-7] => so this is also fine ==> setDoW(tmnow.tm_wday + 1U);
tm_mon -> gives [0-11] => DS3231 used [1-12] => so this is also fine ==> setMonth(tmnow.tm_mon + 1U);

So in addition to the point with ESP8266
The function setEpoch is fine with this implementation, as it is in the repo.

Now the question is whats going wrong?
I wil now check this implementation on the Arduino Nano.

...and additionally can the complainers give their sketch what they did?

I feel unsure of where things stand regarding a test sketch.  Begging your pardon for possible redundancy, I have one to offer, along with results from testing on AVR (Arduino Nano ATmega328P). Will post results for 8266 and Arduino Zero soon.
GMT Time and Date:
12:25:00 P.M. 08/07/2022 = 1659875100, according to https://unixtime.org/.
DS3231 Result with AVR:
12:25:0 P.M. 8/6/52
The Century Bit is clear.
DS3231 Epoch: 2606775900 // = RTClib:now().unixtime();
GMT Epoch:    1659875100
The two epoch values do not agree.
Here is the sketch. It's a great big paste job. Sorry I am not up to speed on all things Github. What is a gist?
/* Worked Example
 * Suppose a web site tells you that the "epoch" time
 * at 12:25:00 p.m. GMT on August 7, 2022 was 1659875100.
 */

// import the library
 #include <DS3231.h>

// instantiate a DS3231 object
DS3231 myRTC;

// declre some variables for the various time parameters
byte mySecond, myMinute, myHour, myDoW, myDate, myMonth, myYear;
bool hpm, Century, h12;
DateTime myEpoch;

// Initialize a (unsigned long) variable to contain the epoch time.
time_t epochGMT = 1659875100UL;

void setup() {

  Wire.begin();
  Serial.begin(9600);
  while (!Serial);
  Serial.println();

  // Set the hour mode on the DS3231
  // (best to do this before setting the time)
  myRTC.setClockMode(true); // 12-hour mode

  // Set the time on the DS3231
  myRTC.setEpoch(epochGMT);

  // Retrieve the time parameters
  // from the DS3231
  mySecond = myRTC.getSecond();
  myMinute = myRTC.getMinute();
  myHour = myRTC.getHour( h12, hpm );
  myDoW = myRTC.getDoW();
  myDate = myRTC.getDate();
  myMonth = myRTC.getMonth( Century );
  myYear = myRTC.getYear();
  myEpoch = RTClib::now();

  // Display the GMT time and date
  Serial.println("GMT Time and Date:");
  Serial.println("12:25:00 P.M. 08/07/2022\n");

  // Print the values obtained from DS3231
  Serial.println("DS3231 Result:");
  Serial.print(myHour);
  Serial.print(":");
  Serial.print(myMinute);
  Serial.print(":");
  Serial.print(mySecond);
  Serial.print(" ");
  if (h12) {
    if (hpm) {
      Serial.print("P.M. ");
    } else {
      Serial.print("A.M. ");
    }
  }
  Serial.print(myMonth);
  Serial.print("/");
  Serial.print(myDate);
  Serial.print("/");
  Serial.println(myYear);
  Serial.print("The Century Bit is ");
  if (Century) {
    Serial.println("set.");
  } else {
    Serial.println("clear.");
  }
  Serial.print("DS3231 Epoch: ");
  Serial.println(myEpoch.unixtime(), DEC);
  Serial.print("GMT Epoch:    ");
  Serial.println(epochGMT, DEC);
  Serial.print("The two epoch values ");
  if (myEpoch.unixtime() == epochGMT) {
    Serial.println("agree.");
  } else {
    Serial.println("do not agree.");
  }

}

void loop() {
  // put your main code here, to run repeatedly:

}

@IowaDave see the link for the gist :-)
https://gist.github.com/hasenradball/4d6a9ea9fa596e9d21bcb93658c6fd4c

Hi all,
see here my results for the AVR (Aduino Nano):

@awickert @IowaDave
I could now present a fix for this Issue.
It is a Bugfix for the AVR platform.
See my results:

Remark:
the differences in weekday is fine because the DS3231 has the range [1-7] and the time.h lib ranges from [0-6].
My Proposed Solution:

I will  pull the corrected code, only changes inside the setEpoch()
I will additionally provide a new example for testing this.

Additionally this is the corrected setEpoch function:
// setEpoch function gives the epoch as parameter and feeds the RTC
// epoch = UnixTime and starts at 01.01.1970 00:00:00
// HINT: => the AVR time.h Lib is based on the year 2000
void DS3231::setEpoch(time_t epoch, bool flag_localtime) {
#if defined (__AVR__)
	epoch -= SECONDS_FROM_1970_TO_2000;
#endif
	struct tm tmnow;
	if (flag_localtime) {
		localtime_r(&epoch, &tmnow);
	}
	else {
		gmtime_r(&epoch, &tmnow);
	}
	setSecond(tmnow.tm_sec);
	setMinute(tmnow.tm_min);
	setHour(tmnow.tm_hour);
	setDoW(tmnow.tm_wday + 1U);
	setDate(tmnow.tm_mday);
	setMonth(tmnow.tm_mon + 1U);
	setYear(tmnow.tm_year - 100U);
}

Give me some hint how to proceed.
Thanks for all
:+1

The proposed bugfix obtains a correct result in the DS3231 now, for the test code I offered earlier today, when run on an AVR.
The parameter for "localtime" seems to make no difference in the result of the new function.  This does not surprise me, as the DS3231 makes no provision for time zones. Perhaps we do not need that parameter at all?
We still see a discrepancy between the Epoch uploaded to the DS3231 compared with the unixtime() obtained from a DateTime created with the RTClib::now() method.

GMT Time and Date:
12:25:00 P.M. 08/07/2022
Testing with 'localtime' flag = false.
DS3231 Result:
12:25:0 P.M. 8/7/22
The Century Bit is clear.
DS3231 Epoch: 1660091100
GMT Epoch:    1659875100
The two epoch values do not agree.

GMT Time and Date:
12:25:00 P.M. 08/07/2022
Testing with 'localtime' flag = true.
DS3231 Result:
12:25:0 P.M. 8/7/22
The Century Bit is clear.
DS3231 Epoch: 1660091100
GMT Epoch:    1659875100
The two epoch values do not agree.

To clarify labeling in the previous post, "DS3231 Epoch" refers to a derived value. The settings entered into the DS3231 by the setEpoch() method are immediately retrieved into a DateTime by the RTClib::now() method. Then a value is derived from that DateTime using its unixtime() method. The derived value is labeled "DS3231 Epoch".
It's clear that an Epoch timestamp does not survive the voyage into the DS3231 then back out again through a DateTime.

@IowaDave on which System did you test this?
I assume on the Arduino, right?
The arduino has no timezone information too.
Yes your post about localtime could lead to such a behaviour on the Arduino.
Because the localtime is used to store the „localtime“ directly into the DS3231, which allows you to use your local time on the any device connected to your DS3231.
But this works when the microcontoller has info about the timezone (to be able to use localtime) like the esp8266, IF time was synchronized successfully.
This function was not able before I introduced the setEpoch method.
Please test it on the ESP8266, i used it since many month.
best regards
Frank

The previous test was done with an AVR-based Arduino Nano, having an ATmega328P MPU.
In this post I provide results from testing on an 8266 board, as requested.
The results obtained in the DS3231 appear to be correct.
No difference is seen between the two values of the 'localtime' parameter; (false) and (true) lead to identical results.
The input "GMT Epoch" and the output result of RTClib::now().unixtime(); remain unequal. This difference was  observed with the AVR-based test, also.

Testing with 8266
Lolin Wemos D1 Mini Clone
Arduino IDE 1.8.15
August 16, 2022

GMT Time and Date:
12:25:00 P.M. 08/07/2022
Testing with 'localtime' flag = true.
DS3231 Result:
12:25:0 P.M. 8/7/22
The Century Bit is clear.
DS3231 Epoch: 1660091100
GMT Epoch:    1659875100
The two epoch values do not agree.

GMT Time and Date:
12:25:00 P.M. 08/07/2022
Testing with 'localtime' flag = false.
DS3231 Result:
12:25:0 P.M. 8/7/22
The Century Bit is clear.
DS3231 Epoch: 1660091100
GMT Epoch:    1659875100
The two epoch values do not agree.

I will not in a position to work on this issue the remainder of today. I will come back to it tomorrow (Wednesday) morning, Iowa (USA) time, which is GMT - 5 hours.  In other words, it will be after Noon in Greenwich, England.
Relax. We will figure this out. Thanks to all for contributing thoughts and solutions!
David

Hi David as I tried to mention, the localtime flag will work on the ESp8266 if the internal clock of the ESP8266 was syncronized successfully.
You had to use configTime(...) and all that stuff so that the internal RTC ist synched with the NTPserver,
Then it has the information about the TimeZone and up to now the localtime flag makes a difference.

@IowaDave @awickert
I had a look to your second complain  -> the Epoch does not fit together.
I has to do with the following code.
// UNIX time: IS CORRECT ONLY WHEN SET TO UTC!!!
uint32_t DateTime::unixtime(void) const {
  uint32_t t;
  uint16_t days = date2days(yOff, m, d);
  t = time2long(days, hh, mm, ss);
  t += SECONDS_FROM_1970_TO_2000;  // seconds from 1970 to 2000

  return t;
}

If there is a issue that the epoch does not fit together it must have to do with the following function:
time2long() or date2days.
Because the values stored in the DS3231 are then based on 01.01.2000, in all cases now, right?
And coming back to UnixTime we had to add the constant SECONDS_FROM_1970_TO_2000, so the issue has to come by these functions.

@awickert @IowaDave
Maybe thats the point !!!
// number of days since 2000/01/01, valid for 2001..2099
static uint16_t date2days(uint16_t y, uint8_t m, uint8_t d) {
    if (y >= 2000)
        y -= 2000;
    uint16_t days = d;
    for (uint8_t i = 1; i < m; ++i)
        days += pgm_read_byte(daysInMonth + i - 1);
    if (m > 2 && isleapYear(y))
        ++days;
    return days + 365 * y + (y + 3) / 4 - 1;
}

Here is the calculation of 365 * y, but in general we calculate it as 365.25F * y

You bring good eyes to the aid of our cause. Thank you!
At the very least, it makes sense to reconsider the calculation algorithm
going from date+time to an integer number of seconds.
I have an approach in mind to obtain an accurate result using only integer
arithmetic.
Let us work on this. I'll share a working example within the next day or
two. Will look forward also to seeing what you might choose to share.
With appreciation,
David
On Wed, Aug 17, 2022 at 7:03 AM Hasenradball @.***>
wrote:

@awickert https://github.com/awickert @IowaDave
https://github.com/IowaDave
Maybe thats the point !!!
// number of days since 2000/01/01, valid for 2001..2099
static uint16_t date2days(uint16_t y, uint8_t m, uint8_t d) {
if (y >= 2000)
y -= 2000;
uint16_t days = d;
for (uint8_t i = 1; i < m; ++i)
days += pgm_read_byte(daysInMonth + i - 1);
if (m > 2 && isleapYear(y))
++days;
return days + 365 * y + (y + 3) / 4 - 1;
}
Here is the calculation of 365 * y, but in general we calculate it as 365.25F

y

—
Reply to this email directly, view it on GitHub
https://github.com/NorthernWidget/DS3231/pull/65#issuecomment-1217919576,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AIOVVUDL4DDSAYFMU3CYUO3VZTIK3ANCNFSM56TMML3A
.
You are receiving this because you were mentioned.Message ID:
@.***>

I have a solution for calculating unixtime() correctly. The following code has been tested with success on both AVR and 8266.
Specific date and time values are entered individually, corrresponding to a Unix Timestamp of 1659875100.
A function recombines the individual date and time values into a calculated "unixtime" value.
The result agrees with the Unix Timestamp that we started with.
Comments on the code, offered for discussion:

It uses only integer arithmetic. AVR and ESP8266 CPUs can have very fast and code-efficient integer multiplication opcodes but both of them lack a hardware Floating Point Unit. Using integer math avoids the need to import a software floating-point library into the program flash memory.
The approach is simply to begin with SECONDS_FROM_1970_TO_2000, then progressively add seconds for the years, months, days, hours, minutes and seconds since January 1, 2000.
Comments in the code describe each successive step.
The code uses two arrays of integer constants as lookup tables. One array is for leap years, the other for non-leap years. This approach bypasses calculation of days in months. Instead, the number of days in the year prior to the current month is obtained directly from the relevant array.
I placed the arrays in program (flash) memory. They occupy 52 bytes. My hunch is that the code to implement floating-point calculations, including
Determining leap year is a simple integer division. This is appropriate for "year" values stored in a DateTime because that value is actually a two-digit offset from 2000, that is, 00 to 99, only. Understanding this allows the code to omit a call to the isleapYear() function.
IMHO the DateTime class should be modified as follows:

Add a uint32_t property for unixtime to the protected list
Implement the calculation of that unixtime property in the constructors. It probably should be defined as a private function that returns a uint32_t, then call it from the constructor.
Redefine the DateTime::unixtime() method. Have it simply return the protected unixtime property. Doing this should not break existing code because both the parameter list (empty) and the return value (uint32_t, or time_t) would remain the same.

The code listing follows:

#define SECONDS_FROM_1970_TO_2000 946684800UL
#define SECONDS_IN_YEAR 31536000UL
#define SECONDS_IN_DAY 86400UL

const PROGMEM uint16_t normalYear[] =
  // days in the year prior to the current month
  {
      0, // to be ignored
      0, // January
     31, // February
     59, // March
     90, // April
    120, // May
    151, // June
    181, // July
    212, // August
    243, // September
    273, // October
    304, // November
    334, // December
  };

const PROGMEM uint16_t leapYear[] =
  // days in the year prior to the current month
  {
      0, // to be ignored
      0, // January
     31, // February
     60, // March
     91, // April
    121, // May
    152, // June
    182, // July
    213, // August
    244, // September
    274, // October
    305, // November
    335, // December
  };

// set up a struct to mimic a DateTime
struct DateLike{
  uint16_t year;
  uint8_t month;
  uint8_t day;
  uint8_t hour;
  uint8_t minute;
  uint8_t second;
  uint32_t epochTime;
  void calculateEpoch();
};

/* Define a function to Calculate the epoch timestamp.
 * Note: found it necessary to cast all interim calculations
 * to be type uiint32_t in order to ensure the compiler
 * does not use 16-bit arithmetic.
 */

void DateLike::calculateEpoch() {
  // begin with seconds prior to January 1, 2000
  epochTime = SECONDS_FROM_1970_TO_2000;
  // add seconds for whole years since 2000
  // will add leap days after this
  epochTime += (uint32_t) year * SECONDS_IN_YEAR;
  // Leap days = (year / 4) + 1
  // because 2000 was a leap year
  // add seconds for leap days
  epochTime += (( (uint32_t) year / 4) + 1) * SECONDS_IN_DAY;

  /* The procedure to add seconds for whole months
   *  prior to the current month is as follows:
   *   - ascertain whether current year is a leap year
   *   - fetch number of days from relevant array
   *   - multiply by SECONDS_IN_DAY
   */

   if ( (year % 4) == 0 ) {
     // it is a leap year
     epochTime += (uint32_t)
       pgm_read_word_near(leapYear + (uint32_t) month)
       * SECONDS_IN_DAY;
   } else {
    // it is not a leap year
     epochTime += (uint32_t)
       pgm_read_word_near(normalYear + (uint32_t) month)
       * SECONDS_IN_DAY;
   }

   // add seconds for whole days in month
   epochTime += ( (uint32_t) day - 1) * SECONDS_IN_DAY;

   // add seconds for hour, minute and second
   epochTime +=
      (uint32_t) hour * 3600
     + (uint32_t) minute * 60
     + (uint32_t) second;
}

// declare a datelike container
DateLike myDate;

void setup() {

  Serial.begin(9600);
  while (!Serial);
  Serial.println();

  // initialize the values of myDate
  // corresponding to Unix Timestamp 1659875100
  myDate.year = 22;
  myDate.month = 8;
  myDate.day = 7;
  myDate.hour = 12;
  myDate.minute = 25;
  myDate.second = 0;
  // calculate the unix timestamp
  myDate.calculateEpoch();

  // print the result
  Serial.println(myDate.epochTime, DEC);

  // Correct output would equal 1659875100

}

void loop() {
  // nothing to see here; move along...

}

Dear Frank,
Thank you for your kind words.
To your questions:

Did I examine the existing functions? Not much. Your investigation gave us a good clue.
uint64_t? I am not smart enough to address that question.
Yes I studied the leap year rules. For DateTime we are concerned with years 2000 through 2099, only. "Evenly-divisible-by-four" is the only relevant rule during this range of years. 2000 was a leap year because evenly divisible by 400. The next time the "400" rule will apply is in the year 2400.
I work with Arduino IDE, only, and almost exclusively with AVR microcontrollers.

I shall work toward a PR proposing changes to the DateTime object.
Appreciatively,
David

@awickert , @hasenradball   I will soon submit a PR for DateTime addressing a few issues (unsuitable types, possible mis-counting of leap days) that could have bugged results under certain circumstances. Then we can continue discussion of DateTime in that PR. But for now, please allow me to address a question here. Is the design goal for DateTime to focus exclusively on the years 2000 through 2099?
Thanks

@IowaDave @awickert
Hi Dave,
for the Issue with the difference between ESP8266 and AVR Platform I made a PR regarding the setEpoch() function.
To answer your question, I am 48 years old now and I don't know if I will reach the year 2099 so devil-may-care.
But if we wil spent mor time in this topic I have to dig more in detail into the HW of the DS3231.
Have a nice weekend.
best regards
frank

@awickert @IowaDave
Hi both, I would appreciate if the PR #66 could be accepted and merged, to fix the issue with platform AVR.
It was tested on ESP8266 and AVR.

Resuming work on this library as of 05 Sept 2022. It is a holiday in the U.S., so I can devote the whole day. Intend to evaluate both this PR #65 by @awickert and PR #66 by @hasenradball with the intent to resolve both PRs today.

Oops, closed before recording the reason why. Reopening to do that.

Closing this PR #65 because PR #66 incorporates #65 while adding an architecture check to make it work with both AVR and ESP8266. Issues addressed by this #65 are resolved by #66.

source: gharchive/pull-request

authors: IowaDave awickert hasenradball

license: unlicense

license_type: permissive

license_source: bigquery


text:
Subscriber html tag discovery

I am not really happy with the html parsing tbh, but I haven't found a cleaner way so far.
TODO:
- [ ] Check if html parsing is spec compliant
Too lazy to check if its spec compliant, it works and can be adjusted if something comes up :+1:

Refactored the discoverXYZ methods to just intake an HTTP response and body, rather than each one making their own duplicate request. Other than that (which I fixed), LGTM!

repo: NotNotQuinn/go-websub

license: MIT

license_source: github-api


text:
Quick Capture Plugin - Callback URL for Quick Add Task Under Heading not adding text as markdown task

Describe the bug
When I use the callback url for quick add task under heading: noteplan://x-callback-url/runPlugin?pluginID=jgclark.QuickCapture&command=quick%20add%20task%20under%20heading
WITHOUT arg0 and arg1  then my text doesn't get added with a markdown checkbox. The plain text just gets added.
To Reproduce
Steps to reproduce the behavior:
Create a shortcut with the callback url and run it.
Expected behavior
My url encoded text has a leading - [ ]
Screenshots
If applicable, add screenshots to help explain your problem.
System

Device: iPhone 15
OS: iOS 17
NotePlan Version: 3.9.11
Plugin Name & Version [e.g. "Templates" v0.2]

Additional context
Add any other context about the problem here.
Plugin Console Log
To provide us with more clues about where the bug/error is occurring...

Open the Plugin's Preferences by going to NotePlan's menu > Preferences > Plugins and clicking the settings "cog" icon next to the plugin in question. Scroll to the bottom and set the logging level to "DEBUG" and click "Save & Close"
Now open the Plugin Console by going to Noteplan > Help > Plugin Console
Run the plugin command you're reporting
Copy the output from the Plugin Console and paste it below
Delete any output that has personal information you don't want in there

    PASTE_PLUGIN_CONSOLE_OUTPUT_HERE

Please specify the actual URL you're using, rather than just the first part. I need to see how you aren't specifying arg0 and arg1.

That example works for me when selecting today's note, and "bottom of note", or other existing headings.
But I see that it doesn't work properly when selecting "top of note".
Is that what you're experiencing?

Yes, that's correct. I can confirm that the issue with the markdown checkbox not being added occurs when I select "Top of Note" in NotePlan.

Thanks for confirming. I will get that fixed.

Fixed in 0.15.2

source: gharchive/issue

repo: NotePlan/plugins


text:
Sizes

After moving all requests to a custom transport, we no longer need the libraries to return sizes:

deluge
qbit
nzbget

And NzbGet needs to expose the http.Client.

https://github.com/golift/deluge/pull/4
https://github.com/golift/qbit/pull/1
https://github.com/golift/nzbget/pull/2

repo: Notifiarr/notifiarr


text:
Segment downloadSpeed

Добрый день, у меня вопрос по этому показателю, учитывается ли pending (время отклика) при подсчете загрузки сегмента, или скорость считается со старта загрузки?
Если учитывается скорость только со старта загрузки без учета пендинга, то это может дать ошибочное представление о скорости загрузки файла.
При сильных нагрузках у сервера видео может быть очень долгое время отклика.

P2P Media Loade способен загружать несколько сегментов одновременно, некоторые в случайном порядке. Что и как грузить решает алгоритм, исходя из текущей ситуации, что бы проигрование было без буферизаций и при этом по-больше загрузить по P2P.
Hls.js и Shaka Player движки расчитаны только на последовательную загрузку сегментов.
По этому мы рапортуем им расчетное время загрузки сегмментов, исходя из статистики полученых байт от P2P и HTTP загрузок за небольшой промежуток времени.
При таком подходе понятие время отклика теряется, но в общем оно учитывается в этой статистике.

@mrlika а это касается ситуации когда нет p2p пиров и загрузка идет полностью с http?

Да

Я провел анализ данных и нашел расхождение.
Возмем 1(2) сегмент

Он закачался за 1.85s

Его размер 2.7mb или 2814000 байт

Ваша система определила что он загрузился со скоростью 2457,6 байт в миллесекунду

Переводим все в миллесекунды и в байты
size 2814000
bweHls 18014752613
bwspeedP2Pengine 2457,6
timeallChrome 1850
timeafterpendChrome 1700
Сразу видно что Bwestimate ошибочен, а файл по вашей версии загрузился за 1145мс

Ваши суждения ошибочны, потому что основываются на мнении, что грузился всего один сегмент (собственно плееры так и думают). А на самом деле вместе с этим сегментом грузились другие сегменты одновременно.
И вполне логично, что надо сообщать скорость загрузки не одного сегмента, а всех сегментов одновременно (скорость гибридной P2P + HTTP сети).
Иначе скорость будет занижена и проигрование будет на более низком качестве.

Прошу прощение, не уточнил
стояла настройка simultaneousHttpDownloads:1

P2P загрузки тоже надо учитывать?

@mrlika их не было, я специально тестировал на файле где нет пиров. И в статистике не было p2p загрузок. Я бы не стал писать эту тему если бы сам все не проверил. Смысл лишний раз вас отвлекать?

Понятно. Такое действительно может быть, когда один пир на стриме, а учета задержки ответа нет. Я подумаю, что можно сделать. Здесь сложность в том, что алгоритм должен работать и для нескольких одновременных загрузок сегмента тоже.

@mrlika спасибо. Будем ждать обновлений.

@mrlika как оказалось для онлайна больше 5к как то тяжело оказалось 2 потока по http, наверно это всетаки больше подходит для live где меньше запросов к дисковой подсистеме. Пришлось отключить. Еще увидел странную закономерность, при включении настройки httpDownloadProbabilitySkipIfNoPeers загрузка происходит только 1-2 сегмента вперед, вместо 10 как если бы значение стояло на false.

1-2 сегмента вперед

Да. В этом случае грузятся только required сегменты. Нужно увеличить requiredSegmentsPriority. Я подумаю, как можно будет улучшить алгоритм в такой ситуации.

Всетаки в таком случае лучше увеличить requiredSegmentsPriority. Это обязательный буфер который поддерживается для стабильного проигрования.

@mrlika а возможность начально предзагрузки есть, если предположим перед запуском плеера я хочу загрузить только 1 сегмент. Это делается для экономии лишнего трафика, когда пользователи отрывают страницу и не запускают плеер, что бы почитать описание или пообщатся в комментах.

requiredSegmentsPriority поставьте тогда 1

@Vladislavik
Уже пробовал, при загрузке страницы, он его игнорирует.

Если не важен мгновенный запуск видео попробуйте использовать httpDownloadInitialTimeout, httpDownloadInitialTimeoutPerSegment.
P. S.
В других темах будем переходить на английский, так как обсуждаемая информация должна быть доступна сообществу для понимания и обсуждения.

У меня загружает до httpDownloadMaxPriority и останавливается preload=“auto” в плеере

@mrlika Спасибо попробую.
PS.
хорошо, тогда давайте оставим этот тред для русскоговорящих.

@Vladislavik спасибо, попробую.

@mrlika Привет.
Можете сказать, есть возможность как то ограничить кол одновременным подключений p2p? После 100 пользователей, процессор начинает ощутимо нагружатся.

Такой возможности нет. Подумаю, как это  правильно сделать в ближайшее время. Просто ограничивать не вариант. Если лимит, например, в 9 пиров, то есть большая вероятность, что 11й пир просто нискем не соединится со старта, так как 10 предыдущих уже соединились между собой (1 к 9ти) и больше в свой рой никого не пустят.

authors: Vladislavik mrlika supersh86


text:
Add test commands for version

Problem: Version is very configurable, down to how you output the changelog lines, but the only way to test changelog line output (among other things) is just to run it.
Solution: From the command line, run your version command against a series of test changesets and see how your formatted changelogs would look, allowing you to test out this generation in a non-awful way

Probably not doing this. The status command is more useful for more use-cases

repo: Noviny/changesets


text:
Functional and E2E should have HTTP retry logic

Functional and E2E tests occasionally fail due to an intermittently failing web request. By adding HTTP request retry logic, we can avoid these test failures.

Reassigning to @agr in case he has time this week

Downloading nuget.exe in build.ps1 can fail transiently, too, causing failures.

Looks like Registration polling can fail too:
https://nuget.visualstudio.com/NuGetBuild/NuGetBuild Team/_build/results?buildId=38257&view=logs

authors: agr chenriksson joelverhagen scottbommarito

repo: NuGet/NuGetGallery


text:
Nuget.org search results page and API stats are not updating for about 6 days.

This happened before and you reset something after I notified you on twitter. Tried this time but no reply.
Its for everything but as an example currently:
https://www.nuget.org/packages/FsCheck gives 2,937,052 total downloads
https://www.nuget.org/packages?q=FsCheck gives 2,925,061 total downloads
same for the API.

Generally, the download counts displayed on the search page and the package details page might not align as they come from two different sources (compare https://azuresearch-usnc.nuget.org/query?q=packageid:FsCheck and https://www.nuget.org/packages?q=packageid%3Afscheck) and the cadence of updates does not always match, this is a known issue and we'll look into it while working on the statistics pipeline updates.
In this case though, the search service is not having its version of download counts updated. We are looking into it.

Seems to be working again now. Thanks.

authors: AnthonyLloyd agr


text:
kalibrate cannot set gain

Hello,
First issue, and new to bladeRF and the radio frequency world. Just received my bladeRF and enjoying it.
I am trying ./kal -Dv -s GSM850, but I get the following error : error: bladeRF_source::set_gain
Full Output

debug: FPGA Master Clock Freq:	52000000
debug: decimation            :	192
debug: RX Subdev Spec        :	B
debug: Antenna               :	RX2
debug: Gain                  :	0.450000
Actual filter bandwidth = 1500 kHz
rxvga1 = 0 dB
rxvga2 = 0 dB
error: bladeRF_source::set_gain

I am using factory calibration settings
bladeRF-cli version : 1.9.0-git-c123d839
kalibrate-bladeRF version : kalibrate v0.4.1 (compiled from source at 13bd3ab154ba4193245526463f8460a60656dc67)
Operating System : Arch Linux
Fresh install
Note:
I am able to change gain in bladeRF-cli when automatic gain control is disabled

I get this error also.
I am using the pybombs recipe for the bladeRF driver
bladeRF-cli version: 1.9.0-git-624994d65c
kalibrate v0.4.1

Same here - having problems with the ./kal must be a bug or something

authors: acochrane jeffolivieri rfenthusiast

repo: Nuand/kalibrate-bladeRF


text:
Question: Regarding VTK compilation behaviour

Hello!
I am compiling a program in standalone mode. when running the program after compilation, I get an error regarding vtk:
ModuleNotFoundError: No module named 'vtk.util'
It's odd, because I have tried specifically to get nuitka to add those directories with the import flags:
--include-package=vtkmodules.util or
--include-module=vtkmodules.util
and the console output indicates that it can find these directories but the final .dist/ folder never contains vtk files from this directory. It contains files in the main folder but not from the subfolders.
Before I submit a full report, I just wanted to make sure that vtk is supported, or rather, that there isn't some specific reason
why vtk itself doesn't work regarding nuitka compilation..? Or am I missing something obvious?
Thanks
j

No issue template no fun.

haha, thats fair. I will formulate things in a better way and come back.
Thanks.

authors: jkissi kayhayen

repo: Nuitka/Nuitka


text:
ModuleNotFoundError: No module named 'win32com.shell' when importing winshell

Nuitka version

1.6rc7
Commercial: None
Python: 3.10.9 (tags/v3.10.9:1dd9be6, Dec  6 2022, 19:43:38) [MSC v.1934 32 bit (Intel)]
Flavor: CPython Official
Executable: C:\Users\sw2719\AppData\Local\Programs\Python\Python310-32\python.exe
OS: Windows
Arch: x86
WindowsRelease: 10
Version C compiler: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.32.31326\bin\Hostx64\x86\cl.exe (cl 14.3)

Used following command to install dev version: pip install -U "https://github.com/Nuitka/Nuitka/archive/develop.zip"
Python is installed with Windows installer.
Note that I tried stable and dev version but results were the same.

PyPI packages Involved

pywin32==306
winshell==0.6

Test code and Nuitka options used

import winshell

if __name__ == "__main__":
    desktop = winshell.desktop()
    print(f"Desktop directory is {desktop}")

python -m nuitka --standalone main.py
Also tried --include-package=win32com but didn't make any difference.
Compilation goes without issues but following error occurs when running the compiled executable:
Traceback (most recent call last):
  File "C:\Users\sw2719\Desktop\TESTGR~1\MAIN~1.DIS\main.py", line 1, in <module>
  File "C:\Users\sw2719\Desktop\TESTGR~1\MAIN~1.DIS\winshell.py", line 32, in <module winshell>
ModuleNotFoundError: No module named 'win32com.shell'

Please let me know if I did anything wrong, more info is needed or this is just unsupported. Thanks.

For some reason this is not effective (anymore):
- module-name: 'win32com'
  import-hacks:
    # This package adds another directory to the search path of itself,
    # which we will not find packages in unless added.
    - package-dirs:
        - 'win32comext'
      when: 'win32'

Yep it does work on factory branch.


text:
Enhancement: Add support to PEP 540 -- Add a new UTF-8 Mode

Consider adding support to PEP 540 -- Add a new UTF-8 Mode.
https://www.python.org/dev/peps/pep-0540/

How do I pass the -X utf8 python flag to nuitka?
I know python's -O and -OO can be used in nuitka with --python-flag=-O or --python-flag=-OO but I tried --python-fag=-X utf8 and --python-flag=-Xutf8 and both don't work.

I'm testing with the command
python -m nuitka --run test.py

Use python -X utf8 -m nuitka --run test.py  or set PYTHONUTF8 environment variable.

ok, thanks.

authors: jcrmatos kayhayen


text:
Should the model exist before calling allowed in an operation?

I think this makes the least sense on #create.
We could verify permissions from parameters before even creating the model object.
This would only work if we had some way to guarantee that the parameters were there... thought that might be at the strong_paremeters level.
Example:
valid:
module IntegrationOperations
  class Create < SkinnyControllers::Operation::Base
    def run
      build_integration
      # calling allowed is dependent on the @model existing
      return unless allowed?
      @model.save
      @model
    end

invalid:
module IntegrationOperations
  class Create < SkinnyControllers::Operation::Base
    def run
      return unless allowed?
      build_integration
      @model.save
      @model
    end

I guess allowed? could be overridden for the Create class - but either way, it should at least be documented.

Fixed in 0.9

license: mit


text:
Account theme switcher (WIP)

As mentioned in #721.
I've implemented the theme switching in the same way that the languages are, (reads first from account settings, reads cookie if that's not available) so actually having this in the account settings is unnecessary since it works for visiting users as well.
*WIP*
This needs "a little" cleanup before getting merged, and probably a better integration into the interface.

I feel like this should be on the same page as /language and could be renamed /settings for local settings. Also should probably be added to the user setting page.

I agree, that would make a lot of sense.

I'm calling this ready for merge. These features are not integrated into the account settings yet but it's mostly because that page is in a bit of a disarray right now and this PR is already large enough.

Might need @kipukun approval before merging =)

All good!

authors: akuma06 kipukun steindornatorinn tomleb

repo: NyaaPantsu/nyaa


text:
Embargo date field is hard to use

Add to the help text of "Embargo End Date" field in italic bold: "If this publication is not under embargo, please this field blank"
Calendar doesn't pop up unless click on the arrow in the FAR right of the field. The scroll bar for increasing the month/day/year is downright mysterious. Does not support typing in (which I think is the intention?)
Can we make the calendar popup when user click on the input box. and get rid of the scrolling bar?

Talked with Hanh about this ticket, updated requirements: make input field smaller due to not being able to make date picker open on click. remove the scroll bar for increasing the month/day/year. add the updated helper text

authors: Rytiggy htpvu

repo: OA-PASS/pass-ember


text:
Available Actions in graphql queries

It would be really useful to mirror the permissions in the backend, on the frontend. By this I mean stating them via the graphQL API.
For instance, on the Channel query, it could have a property called availableActions, that returns an array of the available items, UPDATE,CREATE_MEMBERSHIP, JOIN, and LEAVE. On individual memberships, it would have a similar availableActions attribute, for things like, DELETE and UPDATE_ROLE.
These would be customized to the logged in user.

The first story would just be to try this out for the simplest actions on Channel. Later we may want a similar implementation for all the mutation actions.

@OAGr
Can we add just another query to get permissions, for instance:
permissions (channelId: "" measurableId: "") {}
where channelId or measurableId are optionals, and which will return possible mutations and queries
?

That would also work.

For now, I have implemented first way for instance:
{
	permissions (
		channelId: "7150c437-b91c-436c-8fb2-33c65bb028e9"
		measurableId: "7cbf22cb-3fdf-48fd-8f59-5b99512c234d"
	) {
		queries {
			allow
			deny
		}

		mutations {
			allow
			deny
		}
	}
}

The response will be
{
    "data": {
        "permissions": {
            "queries": {
                "allow": [
                    "*"
                ],
                "deny": []
            },
            "mutations": {
                "allow": [
                    "*",
                    "measurementCreate",
                    "seriesCreate",
                    "channelMembershipCreate",
                    "channelMembershipDelete",
                    "channelMembershipRoleUpdate",
                    "channelUpdate",
                    "leaveChannel",
                    "measurableCreate"
                ],
                "deny": [
                    "joinChannel",
                    "measurableArchive",
                    "measurableUnarchive",
                    "measurableUpdate"
                ]
            }
        }
    }
}

It is scalable
Many systems do like this (for instance Kubernetes)

Do not be afraid of many queries it is ok for web systems

But I want to try to add files into entity definitions

Oh, I see what you mean. The example is useful, and knowing that Kubernetes and similar did this is quite useful (I wasn't aware).
Still though, eventually doing it in entity definitions would be convenient.
For example, say I want to look at every measurable in a channel. I'm the owner of some of these, and for these specific ones I could edit or archive them.
The client would perform a measurables query to get all the measurables, but it would be pretty awkward if we had to do one permissions query for every single measurable. Like, we would first have to get a list of all measurables, then create a new query that would basically be
{
	permissions (
		channelId: "7150c437-b91c-436c-8fb2-33c65bb028e9"
		measurableId: "measurabbe1Id"
	) {
		queries {
			allow
			deny
		}

		mutations {
			allow
			deny
		}
	}
}
{
	permissions (
		channelId: "7150c437-b91c-436c-8fb2-33c65bb028e9"
		measurableId: "measurabbe2Id"
	) {
		queries {
			allow
			deny
		}

		mutations {
			allow
			deny
		}
	}
}
{
	permissions (
		channelId: "7150c437-b91c-436c-8fb2-33c65bb028e9"
		measurableId: "measurabbe3Id"
	) {
		queries {
			allow
			deny
		}

		mutations {
			allow
			deny
		}
	}
}
(repeat for 20 measurables on one page)

In the client I'm using, the only straightforward way of doing that would be in the React components, which is pretty awkward. The preferred way is to do everything in one big query, somehow.

One way of doing it in the resources, would just be to follow the same structure of permissions you mentioned, but having permissions as a common query on most resources.

Yes, thanks, got you, doing

authors: GalochkinKirov OAGr

repo: OAGr/foretold


text:
Add Help Text to Forms

Users need to know what to enter into each of the fields on the input forms and so some hover text would be helpful so users know what to enter into each one.  @horsburgh will write text and @jcaraballo17 will implement.

@mauriel133 - Here is some help text for the elements on the forms. These could replace what is in the text boxes now, or could be added as hover text of some kind.
On the register a site page:
Site Code: Enter a brief and unique text string to identify your site (e.g., "Del_Phil").
Site Name: Enter a brief but descriptive name for your site (e.g., "Delaware River near Phillipsburg").
Site Type: Select the type of site you are deploying (e.g., "Stream").
Latitude: Enter the latitude of your site in decimal degrees (e.g., 40.6893).
Longitude: Enter the longitude of your site in decimal degrees (e.g., -75.2033).
Elevation: Enter the elevation of your site in meters.
Elevation datum: Choose the elevation datum for your site's elevation. If you don't know it, choose "MSL".

I have also received the suggestion that we add help text for the Sign Up page, specifically for Organization.
Organization: Begin to enter the common name of your organization to choose from the list. If "No results found", then clear your entry, click on the drop-down-list to select "Add New Organization".
For the "New Organization" pop-up, we need guidance for the Organization Code. Does it need to be unique? If so, is there a system we can recommend? The idea I received was to link to six-character Federal School Code (also known as a Title IV Institution Code), but those won't serve many users, and are not understandable on their own.

Implemented on production. Closing.

authors: aufdenkampe horsburgh


text:
Import_match Create Part error.

Key Error occurs when load_match function is called with create_part = True. Issue resolved when old_part_generator=True.

There seems to be an issue with some files in which the position of the notes in the score (from the cells with bar:beat_in_bar and beat_offset) seems to not match with the position of the notes using the onset_in_beats cell. part_from_matchfile_old uses the onset_in_beats information from the Matchfile, whereas part_from_matchfile uses the other (redundant) information.
It seems that bar_times does not have an element starting at 0, which means that either the position of that bar is incorrectly coded in the match file, or there is something else going on.

Using current partitura develop branch

KeyError                                  Traceback (most recent call last)

<ipython-input-16-079fc90cb3e0> in <module>
      1 from basismixer.performance_codec import to_matched_score
      2
----> 3 ppart, alignment, spart = partitura.load_match( match_file_path)

~\AppData\Local\Programs\Python\Python38\lib\site-packages\partitura\io\importmatch.py in load_match(fn, create_part, pedal_threshold, first_note_at_zero, old_part_generator)
   1131             spart = part_from_matchfile_old(mf)
   1132         else:
-> 1133             spart = part_from_matchfile(mf)
   1134     ###### Alignment ########
   1135     alignment = alignment_from_matchfile(mf)

~\AppData\Local\Programs\Python\Python38\lib\site-packages\partitura\io\importmatch.py in part_from_matchfile(mf)
   1329     for (ts_beat_time, ts_bar, (ts_beats, ts_beat_type)) in ts:
   1330         #import pdb; pdb.set_trace()
-> 1331         bar_start_divs = int(divs * (bar_times[ts_bar] - offset))  # in quarters
   1332         bar_start_divs = max(0,bar_start_divs)
   1333         part.add(score.TimeSignature(ts_beats, ts_beat_type), bar_start_divs)

KeyError: 0

Thanks for reporting this issue. Would you care to share the match file that is causing the problem with us?

The match file belongs to the match_zei alignments aligned_performance_data dataset:

alignments_match_zei_beethoven_op002_no2_mv1.match

I cannot upload the file as it isn't supported. Nevertheless, to any future encounter of any error on partitura I keep a history of all files that caused the error.

Thanks for reporting, I will look into this.

authors: melkisedeath mgrachten sildater

repo: OFAI/partitura


text:
use DICOM PDF extension with OHIF embedded

Hello,
Any possiblity to use DICOM PDF Extension with the OHIF embedded viewer?
Tried adding the script:

But it didn't execute.
Please advise.
Thanks!

Similar issue for me.  I have some encapsulated PDF's that I created using Orthanc as part of a study.  The modality type is 'DOC' and:
0042,0012 (MIMETypeOfEncapsulatedDocument): application/pdf
OHIF recognizes it as a "DOC", but maybe not as a PDF.
I've got this for CDN files:

When I try to load the PDF's, it looks like it actually tries to load 1.index.umd.js, 2.index.umd.js from a different url, and a stack trace is thrown.
I am using the Docker Version of OHIF also.  The Docker version does display my PDF's, same study.  However, some of my PDF's are multi-page, and the viewer only displays page 1 of many.

Please review the latest code in the master branch. This issue might have been resolved. If it persists, kindly reopen the issue with updated details.
Try viewer-dev.ohif.org instead of viewer.ohif.org
Our viewer.ohif.org is deployed from release branch while viewer-dev.ohif.org is our master  branch
Read more about branch explanations here https://docs.ohif.org/development/getting-started#developing

authors: mokbelt sedghi sscotti

repo: OHIF/Viewers


text:
threshold: adds test for threshold.config with by_rule

#820 rebased now that suricata PR was merged

Merged. Thanks!

authors: catenacyber jasonish

repo: OISF/suricata-verify


text:
ONLYOFFICE run from visual studio 2012 goes into Redirection Loop

Hello Team,
I was able to compile and trying to run ONLYOFFICE Community Edition from VS2012
it goes into redirection loop as there is ONLYOFFICE installation already on Windows Machine under Program Files
Can you please let me know how to fix this issue
Thanks,
Sameer

Do you run the project directly from VS or configure IIS for already builded version. Probably, the issues are caused by the IIS Settings.

I ran project from VS Directly

Please specify how do you build the solution and what project do you open in VS
You should create an empty solution in VS and configure dependences listed in build/msbuild/build.proj.
The dependences should be built in the same sequence as in build/msbuild/build.proj
You also can build the solution using the file build/Build.bat and running the project web\studio\ASC.Web.Studio\ASC.Web.Studio.csproj

authors: AnaMih samdubey

repo: ONLYOFFICE/CommunityServer


text:
Moved macro options to own tab in examples

What is the context of this PR?

To increase visibility of macro options, they've been moved to their own tab in each example.
Changed style of examples tabs to closer align to tabs component
Tidied up some examples and macro options tables
Updated patternlib table styles to match component

How to review
Check all example tabs render correctly

 Put macro options in its own tab on example component

repo: ONSdigital/design-system


text:
Building CCS Version 3

What is the context of this PR?
We have updated the CCS branch with the requested changes listed on Trello.
*Note: We have not added highlighting to Titles on interstitial pages.
How to review
Build the schema and check that the the requested changes have been implemented for this version of CCS.

 CCS v3

repo: ONSdigital/eq-survey-runner


text:
Stop empty Submissions

What is the context of this PR?
Fixes #384
Adding a check to ensure you can only visit the summary page if that's where the questionnaire manager thinks you should be. This should stop the user submitting an empty survey (i.e. by clicking change your answers and then the back button)
How to review

Complete the RSI survey (1_0102)
On the summary page click change your answers
Now click back
Confirm you remain on the first page

[ ] Do all commits have sensible commit messages?
[ ] Is all new code unit tested?
[ ] Are there integration tests if needed?
[ ] Is there sufficient logging?
[ ] Is there documentation or is the code self-describing?

Who worked on the PR
@warrenbailey

LGTM :+1: Will merge once travis finishes

authors: warrenbailey weapdiv-david


text:
377 main script

Summary
Add your summary here - keep it brief, to the point, and in plain English.
Checklists

This pull request meets the following requirements:

[ ] installable with all dependencies recorded
[ ] runs without error
[ ] follows PEP8 and project specific conventions
[ ] appropriate use of comments, for example no descriptive comments
[ ] functions documented using Numpy style docstings
[ ] assumptions and decisions log considered and updated if appropriate
[ ] unit tests have been updated to cover essential functionality for a reasonable range of inputs and conditions
[ ] other forms of testing such as end-to-end and user-interface testing have been considered and updated as required
[ ] tests suite passes (locally as a minimum)
[ ] peer reviewed with review recorded

If you feel some of these conditions do not apply for this pull request, please
add a comment to explain why.

Branch has been reviewed and passes all tests and could be merged. Not merging into main until 374 and 376 branches are merged to check for conflicts


text:
Jwt authenication

What and why?
This add a authentication header to all the endpoints (bar info). It also implements the UAA check, although that needs further work and expanding on another card as requirements are limited on this story.
How to test?
With UAA up  start this application, now with something like postman call an endpoint which has the decorator on. and provide an Authorization header

Try the following and see the results
Standard token eyJhbGciOiJIUzI1NiIsInR5cCI6Imp3dCJ9.eyJwYXJ0eV9pZCI6ImNlMTJiOTU4LTJhNWYtNDRmNC1hNmRhLTg2MWU1OTA3MGEzMSIsInJvbGUiOiJpbnRlcm5hbCJ9.ULiRp2GGO94Ax1S4r6vjU3ryBCa_VX6FyXZHIKWSt5E
Missing JWT claims missing role
eyJhbGciOiJIUzI1NiIsInR5cCI6Imp3dCJ9.eyJwYXJ0eV9pZCI6ImNlMTJiOTU4LTJhNWYtNDRmNC1hNmRhLTg2MWU1OTA3MGEzMSJ9.pREGeyWz7xbCBpYNJ8uakDYWQh7sL2MYUy9mIDY2dUQ
JWT claims missing party_id
eyJhbGciOiJIUzI1NiIsInR5cCI6Imp3dCJ9.eyJyb2xlIjoiaW50ZXJuYWwifQ.iH-5qNb4z_4Y7mB2QrlzHxC3o37DzH4_BSotKKiWXww
The JWT token could not be decoded (wrong key)
eyJhbGciOiJIUzI1NiIsInR5cCI6Imp3dCJ9.eyJwYXJ0eV9pZCI6ImNlMTJiOTU4LTJhNWYtNDRmNC1hNmRhLTg2MWU1OTA3MGEzMSIsInJvbGUiOiJpbnRlcm5hbCJ9.xQ3fzB55Dev3B3oPJsCnre-5-hIsL9HCZOqZRGrvypw
You can also try it with no Authorization header to get "Authorization header is missing" and give it a token that is gibberish that will give a "The JWT token could not be decoded" error

/deploy pricem

/deploy scorfs

RAS-1211 has been created to complete the work on UAA integration delivered so far in this PR 👍

Signed commits removed just for this pr due to the auto increment, it will be put back on afterwards

authors: LJBabbage SteveScorfield pricem14pc


text:
One contract with the same tenderer for different lots - problem with totals of contracts values at notice level (BT-118-NoticeResult)

Hello,
We have many situations where contracting authorities conclude one contract for more than one lot if the winner is the same. These situations are mainly in the procurement of pharmaceutical products. There are a lot of lots, usually one per product, but few suppliers.
They make one contract per supplier and not per lot either for framework agreements or for regular contracts.
For example:
See section V:
https://www.e-licitatie.ro/pub/notices/ca-notices/view-c/100374617
or published on TED, for example contract  Contract nr.: 42307
https://ted.europa.eu/udl?uri=TED:NOTICE:294221-2023:TEXT:RO:HTML&src=0#id3-V.
In this case the ”results of lots” in the eForms award goes something like this:
result 1, lot 31:
Contract 42307
estimated value of framework agreement: 1 178 791.20 RON (BT-660-LotResult)
maxim value of framework agreement: 1 078 826.40 RON (BT-709-LotResult)
result 2, lot 8
Contract 42307
estimated value of framework agreement: 1 178 791.20 RON
maxim value of framework agreement: 1 078 826.40 RON
result 3, lot 13:
Contract 42307
estimated value of framework agreement: 1 178 791.20 RON
maxim value of framework agreement: 1 078 826.40 RON
result 4, lot 16
Contract 42307
estimated value of framework agreement: 1 178 791.20 RON
maxim value of framework agreement: 1 078 826.40 RON
In this case there is a problem with the total value of the contracts BT-118-NoticeResult, BT-1118-NoticeResult (framework agreements) because the CVS validator expect the total to be something like: 1 178 791.20 RON+1 178 791.20 RON+1 178 791.20 RON+1 178 791.20 RON. This is not correct because we don't want to sum the same contract many times.
Please give us some ideas how to proceed in this case!
Thank you
Alex Mohora

See the situation in this example

repo: OP-TED/eForms-SDK


text:
I am trying to use SPARQL query to get the procurement URL or etenders Resource ID from TED

Hello,
I am trying to use SPARQL query to get the procurement URL or etenders Resource ID from TED.
Would you have any pointers how I can do this with Python?
Kind regards
Chris

Any help would be appreciated
https://stackoverflow.com/questions/79320253/extract-the-procurement-url-from-ted-using-sparql-query

repo: OP-TED/ted-rdf-docs


text:
fpgabist fails to pass the proper device enumeration for fpgadiag

When running

fpgabist  /opt/intelrtestack/a10_gx_pac_ias_1_2_pv/hw/samples/nlb_mode_3/bin/nlb_mode_3.gbs

fpgadiag will fail read/write/trput tests with

Error: device enumeration failed.

This is because of an improperly formatted command line for fpgadiag.  The current mode is trying to run with '-B 86', but fpgadiag requires '-B 0x86'.
Example:
fpgabist generated command:
fpgadiag -B 86 --mode=read --read-vc=vh0 --write-vc=vh0 --multi-cl=4 --begin=1024, --end=1024 --timeout-sec=5 --cont
Proper command:
fpgadiag -B 0x86 --mode=read --read-vc=vh0 --write-vc=vh0 --multi-cl=4 --begin=1024, --end=1024 --timeout-sec=5 --cont

Closed as fixed.

authors: GrueMaster tswhison

repo: OPAE/opae-sdk


text:
fix fpgainfo security help and update doc

Signed-off-by: anandaravuri ananda.ravuri@intel.com

Coverage decreased (-0.07%) to 77.907% when pulling f98cb4ae11c5bc4a94b4c37bbdfc125163137c31 on aravuri/fix_sec into a55c3fdba5182e1458a3e85b8b22e837e3348934 on master.

authors: anandaravuri coveralls


text:
DocsArchive-15.0.0.0Auto archive content

Please don't merge this PR until target archive repo PR https://github.com/OPS-E2E-PPE/docs-archive-test-target/pull/682 is merged into live branch.
Auto archive content to https://github.com/VSC-Service-Account/docs-archive-test-target.git

Docs Build status updates of commit 4243ed6:
:x: Validation status: errors
Please follow instructions here which may help to resolve issue.

File
Status
Preview URL
Details

:x:Error

Details

[Error-GitBranchDeletedOrForcePushed] Cannot sync git repo to specified commit because branch Release_Archive_master_2021-01-19-03-59-06 has been deleted or has been force pushed

For more details, please refer to the build report.
If you see build warnings/errors with permission issues, it might be due to single sign-on (SSO) enabled on Microsoft's GitHub organizations. Please follow instructions here to re-authorize your GitHub account to Docs Build.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel

Docs Build status updates of commit 4243ed6:
:x: Validation status: errors
Please follow instructions here which may help to resolve issue.

File
Status
Preview URL
Details

:x:Error

Details

[Error-GitBranchDeletedOrForcePushed] Cannot sync git repo to specified commit because branch Release_Archive_master_2021-01-19-03-59-06 has been deleted or has been force pushed

For more details, please refer to the build report.
If you see build warnings/errors with permission issues, it might be due to single sign-on (SSO) enabled on Microsoft's GitHub organizations. Please follow instructions here to re-authorize your GitHub account to Docs Build.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel

authors: VSC-Service-Account v-alji


text:
DocsArchive-1.0.0.0Auto archive content

Auto archive content from https://github.com/OPS-E2E-PPE/docs-archive-test

Docs Build status updates of commit d1f34db:
:x: Validation status: errors
Please follow instructions here which may help to resolve issue.

File
Status
Preview URL
Details

:x:Error

Details

[Error]

Cannot sync git repo to specified commit because branch Archive_master_2019-09-25-12-40-16 has been deleted or has been force pushed: fatal: Couldn't find remote ref Archive_master_2019-09-25-12-40-16

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


text:
Changing Subroutine name for BlueCrab Integration #132

This is the proposed solution for Blue_crab integration identified in issue #132.

Looks good to me. @markuspiro @maxposchmann @nikolasscuro, can anyone think of any potential conflicts in other applications (perhaps non-NEAMS codes)? If not, I will merge this.

authors: mtnwalker parikshitbajpai

repo: ORNL-CEES/thermochimica


text:
feat: revamp social icons container ✨

Close #1137
Description

Revamped the social icons container on Contact us section

Screenshots

BEFORE

AFTER

Checklist:

[x] I have linked the PR to the correct issue.
[x] I have read the Contribution Guidelines
[x] I have built and tested the changes, and they do not break or show any errors.

Hey there @Vaishnavi-Patil2211, @akshathar-navada 👋🏻,
Please make sure to review this PR.
Thank you!

@Vaishnavi-Patil2211 Please merge this PR.

repo: OSCode-Community/OSCodeCommunitySite


text:
Add Google EE dataset constructor

Google EE dataset constructor is planned to be a program element which will allow you to add your own GEE datasets in GAIA which weren't added by the developer

Basic functions of GEE custom datasets mode will be added in 0.33b. More improvements will be added later

repo: OSINT-TECHNOLOGIES/gaia


text:
Multiple Cameras(Surfaces?) for one eye

Hello,
I have large space scene, that should have very long viewing distance.
I would like to use 2 cameras for each eye, one for a short view distance and second for longer one, so I can expand total near to far plane distance. For example my first camera would have parameters:
near: 0.3, far: 1000
Second camera:
near: 1000, far: 100000.
Could you please guide me how to do that? I guess I would need to modify VREye code to make it possible to use multiple VRSurfaces?
Any suggestions will be greatle appreciated!
Best Regards,
Marcin

Hi @MarcinRNowak,
OSVR-RenderManager currently only handles one RenderTexture per eye. It might work if you can render both cameras to the same RenderTexture that is shared with RenderManager. Use the OSVR surfaces as your near cameras, and create your far cameras the same way somewhere around here: https://github.com/OSVR/OSVR-Unity/blob/master/OSVR-Unity/Assets/OSVRUnity/src/VREye.cs#L167
I don't know if this works in Unity but I would try something like:
cameraFar.renderTexture = cameraNear.RenderTexture;
and then rendering the far camera before the OSVR surfaces
https://github.com/OSVR/OSVR-Unity/blob/master/OSVR-Unity/Assets/OSVRUnity/src/VRViewer.cs#L221
Again, I don't know if it will work with the shared renderTexture. If not, you can try blending them together.

Hi,
Thanks a lot for your reply. I actually started working on exactly what you wrote just day before and it worked!
Cheers,
Marcin

repo: OSVR/OSVR-Unity


text:
Upgrade dependency

Upgrade jsonwebtoken@8.5.1 to version 9.0.2

Please ignore this PR and close it. Generated by TestIM


text:
Nested list items with indent size of 4

Describe the bug
Nested list items are rendered at the same level of the parent if the indent size is 4. Perhaps the levels are calculated assuming an indent size of 2 spaces.
Are you using a distro?
No

[!NOTE]
Distros can sometimes cause unusual behavior due to changing various options.

To Reproduce
Steps to reproduce the behavior:

Install markview.nvim.
Open a markdown document.
Write a list item, followed by a child list item nested with 4 spaces.

Expected behavior
The child list items should be rendered with a deeper level (i.e., starting on a higher column number) than the parent.
Actual behavior
The parent and child list items are displayed on the same level. Additional child items are indented more than necessary.
Screenshots

Neovim version
0.10.0
Additional context
N/A.

Trees-sitter was responsible for this bug(due to showing different ranges for different list items).
Hopefully, now this issue shouldn't occur anymore.


text:
Create a mesh plane

Because the cylinder is not working with interaction mouse enter, mouse leave
Could you add a default mesh plane to the 3d scene. The popup for aframe-roassal should work for aframe

I check the problem and I modify the PopUp, because the problem was in the position, so the problem with the cylinder entity frame are OK.

Is not need it now

authors: ThisIsAntonio akevalion


text:
Consider using KMeans from scipy instead of sklearn

Following also #1616 where we moved to using the KDTree implementation from Scipy, we could also consider using kmeans from Scipy, thereby removing dependency on sklearn in  particle data.py
https://github.com/OceanParcels/Parcels/blob/997e3f86399cf319341a3d3f4fb1c5dc339e2580/parcels/particledata.py#L15
We need to check/investigate though whether the behaviour of scipy.cluster.vq.kmeans is the same as that of sklearn.cluster.KMeans

Ooo, didn't know scipy also did kmeans.
Briefly looking into it, it seems we'd get a performance hit by moving to scipy's implementation. This is noted in the notes section of their API on this, and there's a dedicated comparison here.

authors: VeckoTheGecko erikvansebille

repo: OceanParcels/Parcels


text:
open a Wiki

just want to ask if it is possible to open a wiki for numpy.
So we could start give examples for using in F#,C#.Powershell :D

I've set the readthedocs online docs.
$ pip install sphinx
$ pip install recommonmark
$ cd docs
$ make html


text:
Language list

Go to :
Edit upload
Language
Open the drop down list
Ελληνικά (Greek) is missing.
Please add it to the list.
Version 0.0.69 (latest on F-Droid)

This repo is for the native app, not the web app in the wild.
To add languages, typically we need to have translations for the site. You can help us at: https://explore.transifex.com/lbry/lbry-desktop/

Thanks for the answer, I'm talking about the android app.
I see "Slovencina" in the list although it's only translated at 4% according to your link.
Greek is translated 13% but unlisted.
Why is that?

authors: beatnickgr tzarebczan

repo: OdyseeTeam/odysee-android


text:
fail2ban_ignoreips as vars

Hi, folks,
I'm sorry for asking via issues. Unfortunately, I don't have enough expertise to figure out how to add fail2ban_ignoreips as vars in the playbook. I would be very grateful if you could add this option to the readme.md. Thank you :)
Currently, it's put together in this way:
#################################################
# DO Community Playbooks: Initial Server Setup
#################################################
---
- hosts: all
  become: true
  vars_files:
    - vars/default.yml
  roles:
    - oefenweb.fail2ban
  vars:
    fail2ban_services:
      # In older versions of Fail2Ban this is called ssh
      - name: sshd
        port: 22
        maxretry: 5
        bantime: -1

    # Default jail settings for all jails (can be overridden by individual jails)
    fail2ban_ignoreips:
      - name: ignoreips
        ignoreip: '127.0.0.1/8'
        bantime: 600
        findtime: 600
        maxretry: 5
        banaction: firewallcmd-ipset

...

GitLab repository

fail2ban_ignoreips is a (simple) list variable. I should be used like this:
#################################################
# DO Community Playbooks: Initial Server Setup
#################################################
---
- hosts: all
  become: true
  vars_files:
    - vars/default.yml
  roles:
    - oefenweb.fail2ban
  vars:
fail2ban_ignoreips:
 - "{{ ansible_lo['ipv4']['address'] }}/8"
 - "{{ ansible_default_ipv4['address'] }}"
fail2ban_bantime: 3600
fail2ban_services:
  # TODO: In Ubuntu 16.04 this is sshd
  - name: "{{ fail2ban_ssh_service_name }}"
    maxretry: 5
  # TODO: In Ubuntu 16.04 this is sshd-ddos
  - name: "{{ fail2ban_ssh_service_name }}-ddos"
    maxretry: 5

Thank you very much for your help, mate :)

authors: organicnz tersmitten


text:
Metrics, Healthcheck, and Config Updates

Add proper ready check to node
Add healthcheck to determine whether node is synced
Add more internal metrics
Refactor config to make updates easier

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

authors: CLAassistant hkalodner

repo: OffchainLabs/arbitrum-classic


text:
[Bug] Can't upload files to chat

Describe the bug
The APIs used to upload files to a chat are not fully implemented by this library. In particular, the FileConsentCardResponse and FileUploadInfo classes are not provided, and FileConsentCard is missing some functionality.
SDK Version
4.0.0-beta1
.Net Version
.NET Core 2.2
Expected behavior
When I call the ToAttachment extension method for FileConsentCard, the resulting attachment must have Name set. See here for reference. Failure to set this property results in cards that do not render on the client.
When a user consents to a FileConsentCard, a response is sent to the bot in the form of an "invoke" activity. I should be able to retrieve FileConsentCardResponse and FileUploadInfo instances from this response and use them to carry out the file upload.
Additional context
These types were provided by the previous (pre-v4) version of this library. In this version, it appears that FileConsentCardResponse and FileUploadInfo are simply missing from the Swagger API definition.
For reference, here is the section of TeamsAPI.json from the old version of this library where these types are defined.

This should be fixed in the latest release.

authors: RamjotSingh reynoldsbd


text:
Animation class names are confusing

It was pointed out to me that the numbers in the animation class names don't seem to have any relation to the speeds of the animations. For example, .ms-u-slideDownIn10 lasts 0.167s, while .ms-u-slideDownIn20 lasts 0.367s (how do the 10 and 20 factor in here?) and worse yet, .ms-u-slideLeftIn40 also lasts 0.367s. What's going on here?

Nevermind, the 40 here refers to the distance, not time.

repo: OfficeDev/Office-UI-Fabric


text:
.NET Standard 2.0 support

I notice that @twsouthwick is already working on it, but I wanted to create a stub issue.

Yeah, I've got a branch with the changes. Waiting for AppVeyor to upgrade to Visual Studio 15.3

I saw that branch and already made a PR on it to enable 15.3.

Before I submit a PR for this, we should determine if we need it. Since it support .NET Standard 1.3 there is no real value that I can see in supporting .NET Standard 2.0. You should be able to reference this library against from a .NET Standard 2.0 (or .NET Core 2.0) assembly without any special changes. Since each cross-compiled assembly in the package adds about 5mb, we should try to keep it as minimal as possible.

Using a lower .NET Standard version should result in a broader adoption. In case of the full .NET framework 2.0 requires .NET Framework 4.6.1, which is quite high.
Whats the reason to support .NET Standard 2.0 if it runs just fine with .NET Standard 1.3?

Yeah, I wasn't aware that you can cross-reference between different .NET versions. I found @twsouthwick 's .NET Standard 2.0 prerelease in his MyGet feed and assumed that it had already been decided that a .NET Standard 2.0 build would eventually be included. If that's not the case, you can close this issue.
For ClosedXML, I need to build on .NET Standard 2.0 (to use System.Drawing and other stuff), but I'll try to reference the .NET Standard 1.3 version.

We can go ahead and close this issue then. I had started a branch with .NET Standard 2.0 to play around with some preview tooling with a multi-targeting library. Since It doesn't appear to be necessary, I'll close this issue. If you find a reason why you'd need it, we can readdress it then.

authors: igitur robertmuehsig twsouthwick

repo: OfficeDev/Open-XML-SDK


text:
Readd taxpicker examples from sample

When the sample and component got merged the code showing how do to dependant/filterable taxpicker selections was deleted. This PR reintroduces them.

Thx Patrik!

authors: jansenbe pbjorklund

repo: OfficeDev/PnP


text:
[Outlook] (1.12) Mailbox 1.12 support on new Mac UI

Related reference PR: https://github.com/OfficeDev/office-js-docs-reference/pull/1435

Learn Build status updates of commit 98a5e60:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs/outlook/autolaunch.md
:white_check_mark:Succeeded
View

docs/outlook/smart-alerts-onmessagesend-walkthrough.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the learn.microsoft.com contributor guidesPost your question in the Learn support channel

Learn Build status updates of commit 8427b21:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs/outlook/autolaunch.md
:white_check_mark:Succeeded
View

docs/outlook/smart-alerts-onmessagesend-walkthrough.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the learn.microsoft.com contributor guidesPost your question in the Learn support channel

repo: OfficeDev/office-js-docs-pr


text:
Скласти додаткові інформаційні блоки

Можна зробити резюме менш формальним, додавши додаткові блоки, які містять корисну інформацію, але подають її в "розважальній" формі. Наприклад, що подобається і не подобається, сильні і слабкі сторони, перелік навиків чи хобі, інфографіка або ж інтерактивні модулі, тощо. Варто написати контент такого блоку раніше, ніж починати верстку, бо його розміри впливатимуть на розміщення елементів на сторінці.

Два списка:
LIKES
Learning something new
Responsible people
Spring
Good jokes
Exciting book
Walks with friends
DISLIKES
Advertisement
Rude people
To lose
Anxiety
Prolonged rains
Irresponsible parents

repo: Oleksandra-Mas/homepage


text:
🛑 Helix Biogen Institute - Backend - Test Staging is down

In 6d8e601, Helix Biogen Institute - Backend - Test Staging (https://hbi-web.vercel.app/status) was down:

HTTP code: 404
Response time: 1220 ms

Resolved: Helix Biogen Institute - Backend - Test Staging is back up in 85cc65b after 1 hour, 53 minutes.

repo: OluwaninsolaAO/uptime-monitoring


text:
Deposit generation

Figured out how to peg MSC to BTC and BTC to USD and various other instruments backed by short leveraged contracts. This proposal eclipses the intended functionality of the earlier escrow-backed funds and user currency proposal.

Hi,
in an attempt to clean up the current specification, I'm going to close old and outstanding pull requests. Please note, it's tagged as "old idea", so the work is not wasted and we can potentially review it at some point later.
Please feel free to resubmit it as new pull request, if you still think it's a good idea.

repo: OmniLayer/spec


text:
[Alpha] Language Server Protocol

Epic: #968
This is the first step in getting LSP support integrated into OmniSharp.
Lsp packages have been pushed to nuget here and here.
This starts consuming them, the branch lsp may be long lived, or we may merge into master a few times, we haven't discussed this yet.
For testing I was using the test extension from the csharp-lsp repository, and simplying making sure that OmniSharp.exe was invoked with -lsp or --languageserver and it will negotiate with language server mode automatically. It would be great to get others feedback using this against language server 2.0 vs 3.0 (that vscode implements).
Note: not all endpoints currently map 1:1 to LSP, more information on lsp can be found here and the C# implementation here
Parts done:

[x] Wired in language server protocol to the default host
Endpoints configured so far :

[x] /gotodefinition
[ ] /findsymbols
[x] /updatebuffer
[x] /changebuffer
[x] /codecheck
[ ] /filesChanged
[ ] /formatAfterKeystroke
[ ] /formatRange
[ ] /codeformat
[ ] /highlight
[ ] /autocomplete
[ ] /findimplementations
[ ] /findusages
[ ] /gotofile
[ ] /gotoregion
[ ] /navigateup
[ ] /navigatedown
[x] /typelookup
[ ] /getcodeactions
[ ] /runcodeaction
[ ] /rename
[ ] /signatureHelp
[ ] /currentfilemembersastree
[ ] /currentfilemembersasflat
[ ] /gettestcontext
[ ] /metadata
[ ] /packagesource
[ ] /packagesearch
[ ] /packageversion
[ ] /projects
[ ] /project
[ ] /fixusings
[ ] /checkalivestatus
[ ] /checkreadystatus
[ ] /stopserver
[x] /open
[x] /close
[x] /diagnostics
[ ] /v2/getcodeactions
[ ] /v2/runcodeaction
[ ] /v2/getteststartinfo
[ ] /v2/runtest
[ ] /v2/debugtest/getstartinfo
[ ] /v2/debugtest/launch
[ ] /v2/debugtest/stop

cc @mickaelistria

Also a reference implementation of the current working mappings can be found in the existing OmniSharp-node-client repo by looking at /languageserver/server.ts

@david-driscoll, EPIC! Do you accept PRs to this branch if I could find some time for helping out with endpoint mapping?

@mholo65 absolutely, please feel free to branch from there and create a pull request into it.  I'm going to look at testing cake support if I get a chance here.

@mholo65 I've made a temporary branch that integrates things https://github.com/david-driscoll/Omnisharp-roslyn/tree/temp/cake

Thanks @david-driscoll. What client do you use to test LSP? Could you provide some steps on how to get it up and running?

I was using https://github.com/OmniSharp/csharp-language-server-protocol/tree/master/vscode-testextension . Again this was just an informal test to ensure things were working as expected.  I did encounter a few bugs in the lsp server so I fixed those.
To get it running, the only changes you need to make are to point it at a version of OmniSharp that has lsp support, like temp/cake above. reference point

@david-driscoll ok, I'm working on the CompletionHandler now.

@david-driscoll: you'll want to merge the latest master changes into lsp in order to get fixes for the OSX build.

Going to put this through as is tomorrow, if there aren't any objections.  We'll continue to iterate and add handlers over the next few weeks.

Going to put this through as is tomorrow, if there aren't any objections. We'll continue to iterate and add handlers over the next few weeks.

Could you wait until Monday? I'd like to get a new OmniSharp build out with a couple of bug fixes before Monday so we can use it in a C# for VS Code release.

Yeah that's fine. 👍

FYI: All is good. This can be merged now to simplify development.

Hello, I am interested in testing this with https://github.com/autozimu/LanguageClient-neovim as an alternative to https://github.com/OmniSharp/omnisharp-vim. I am using ArchLinux and I am having trouble building it, but I had great success using the precompiled binaries via the AUR package.
What is the status of this?

authors: DustinCampbell aignas david-driscoll mholo65

repo: OmniSharp/omnisharp-roslyn


text:
Jump to define(F12) failed on Funtoo

Sample code as below:
public IActionResult Error()
{
return View(new ErrorViewModel { RequestId = Activity.Current?.Id ?? HttpContext.TraceIdentifier });
}

Highlight ErrorViewModel and press F12, nothing happens. It should jump to definition of ErrorViewModel.

dotnet --info

.NET Core SDK (reflecting any global.json):
Version:   3.0.100
Commit:    04339c3a26
Runtime Environment:
OS Name:     funtoo
OS Version:
OS Platform: Linux
RID:         linux-x64
Base Path:   /home/buzz.lu/dotnet/sdk/3.0.100/
Host (useful for support):
Version: 3.0.0
Commit:  7d57652f33
.NET Core SDKs installed:
2.2.402 [/home/buzz.lu/dotnet/sdk]
3.0.100 [/home/buzz.lu/dotnet/sdk]
.NET Core runtimes installed:
Microsoft.AspNetCore.All 2.2.7 [/home/buzz.lu/dotnet/shared/Microsoft.AspNetCore.All]
Microsoft.AspNetCore.App 2.2.7 [/home/buzz.lu/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 3.0.0 [/home/buzz.lu/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.NETCore.App 2.2.7 [/home/buzz.lu/dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 3.0.0 [/home/buzz.lu/dotnet/shared/Microsoft.NETCore.App]

OminiSharp Log

Starting OmniSharp server at 10/20/2019, 8:52:57 PM
Target: /home/buzz.lu/repos/f12Test
Razor dev mode active. Suppressing built-in OmniSharp Razor support.
OmniSharp server started with Mono 6.4.0.
Path: /home/buzz.lu/.vscode/extensions/ms-vscode.csharp-1.21.5/.omnisharp/1.34.5/omnisharp/OmniSharp.exe
PID: 25263

please post the full OmniSharp log (also, please set  "omnisharp.loggingLevel": "debug", thanks

This is also happening to me on Ubuntu 18.04. Omnisharp is not able to recognize any package or classes from other projects, even though all the references are added on the .csproj

OmniSharp Log :
    ************ Request ************

{
"Type": "request",
"Seq": 134,
"Command": "/typelookup",
"Arguments": {
"FileName": "/home/buzz.lu/repos/f12Test/Controllers/HomeController.cs",
"Line": 34,
"Column": 34,
"IncludeDocumentation": true
}
}
dbug: OmniSharp.Stdio.Host
************  Response ************
{
"Request_seq": 134,
"Command": "/typelookup",
"Running": true,
"Success": true,
"Message": null,
"Body": {
"Type": null,
"Documentation": null,
"StructuredDocumentation": null
},
"Seq": 448,
"Type": "response"
}
dbug: OmniSharp.Stdio.Host
************ Request ************
{
"Type": "request",
"Seq": 135,
"Command": "/gotoDefinition",
"Arguments": {
"FileName": "/home/buzz.lu/repos/f12Test/Controllers/HomeController.cs",
"Line": 34,
"Column": 37,
"WantMetadata": true
}
}
dbug: OmniSharp.Stdio.Host
************  Response ************
{
"Request_seq": 135,
"Command": "/gotoDefinition",
"Running": true,
"Success": true,
"Message": null,
"Body": null,
"Seq": 451,
"Type": "response"
}

@buzzlu you should uninstall the mono you have or install the newest mono (6.4.0) to solve the problem

F12 is function now after upgrade to the latest mono.

authors: buzzlu caiocsgomes filipw

repo: OmniSharp/omnisharp-vscode