build says it failed at imported module, but app is still built and works.

Complete noob in react, this is day 2 of my learning. but basically:

i added tiny-relative-date to the app.
i import like import relativeDate from 'tiny-relative-date';
i run npm run build and then it says it failed, but the app still works in the browser.

output:
Garrett Morris@DESKTOP-U5VCBFV MINGW64 /e/blog
$ npm run build

><EMAIL_ADDRESS>build E:\blog
> react-scripts build

Creating an optimized production build...
Failed to compile.

Failed to minify the code from this file:

        ./node_modules/tiny-relative-date/src/factory.js:1

Read more here: http://bit.ly/2tRViJ9

npm ERR! Windows_NT 10.0.16299
npm ERR! argv "C:\\Program Files\\nodejs\\node.exe" "C:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js" "run" "build"
npm ERR! node v6.9.1
npm ERR! npm  v3.10.8
npm ERR! code ELIFECYCLE
npm ERR<EMAIL_ADDRESS>build: `react-scripts build`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>build script 'react-scripts build'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the blog package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     react-scripts build
npm ERR! You can get information on how to open an issue for this project with:
npm ERR!     npm bugs blog
npm ERR! Or if that isn't available, you can get their info via:
npm ERR!     npm owner ls blog
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR!     E:\blog\npm-debug.log

start and build are separate; try a different library! https://date-fns.org/v1.29.0/docs/distanceInWordsToNow

@Timer I'm not going to try a different library; The library i'm using is fine and most importantly it is quite small. The error message appears to be a false alarm; the app its self is still compiled to the build directory...

Are you sure the whole (& functioning) application is present in the build directory?
The library you are using is not fine, as it ships uncompiled code and points to it under the src/ folder (via the module tag in package.json).
It's doubtful that the app would work if you serve it from the build folder -- is this what you're saying?

@Timer here is what it exported from that package:

/* 109 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
/* harmony export (immutable) */ __webpack_exports__["a"] = relativeDateFactory;
const calculateDelta = (now, date) => Math.round(Math.abs(now - date) / 1000)

function relativeDateFactory (translations) {
  return function relativeDate (date, now = new Date()) {
    if (!(date instanceof Date)) {
      date = new Date(date)
    }

    let delta = null

    const minute = 60
    const hour = minute * 60
    const day = hour * 24
    const week = day * 7
    const month = day * 30
    const year = day * 365

    delta = calculateDelta(now, date)

    if (delta > day && delta < week) {
      date = new Date(date.getFullYear(), date.getMonth(), date.getDate(), 0, 0, 0)
      delta = calculateDelta(now, date)
    }

    const translate = (translatePhrase, timeValue) => {
      let key

      if (translatePhrase === 'justNow') {
        key = translatePhrase
      } else if (now >= date) {
        key = `${translatePhrase}Ago`
      } else {
        key = `${translatePhrase}FromNow`
      }

      const translation = translations[key]

      if (typeof translation === 'function') {
        return translation(timeValue)
      }

      return translation.replace('{{time}}', timeValue)
    }

    switch (false) {
      case !(delta < 30):
        return translate('justNow')

      case !(delta < minute):
        return translate('seconds', delta)

      case !(delta < 2 * minute):
        return translate('aMinute')

      case !(delta < hour):
        return translate('minutes', Math.floor(delta / minute))

      case Math.floor(delta / hour) !== 1:
        return translate('anHour')

      case !(delta < day):
        return translate('hours', Math.floor(delta / hour))

      case !(delta < day * 2):
        return translate('aDay')

      case !(delta < week):
        return translate('days', Math.floor(delta / day))

      case Math.floor(delta / week) !== 1:
        return translate('aWeek')

      case !(delta < month):
        return translate('weeks', Math.floor(delta / week))

      case Math.floor(delta / month) !== 1:
        return translate('aMonth')

      case !(delta < year):
        return translate('months', Math.floor(delta / month))

      case Math.floor(delta / year) !== 1:
        return translate('aYear')

      default:
        return translate('overAYear')
    }
  }
}

/***/ }),
/* 110 */
/***/ (function(module, exports) {

module.exports = {
  justNow: "just now",
  secondsAgo: "{{time}} seconds ago",
  aMinuteAgo: "a minute ago",
  minutesAgo: "{{time}} minutes ago",
  anHourAgo: "an hour ago",
  hoursAgo: "{{time}} hours ago",
  aDayAgo: "yesterday",
  daysAgo: "{{time}} days ago",
  aWeekAgo: "a week ago",
  weeksAgo: "{{time}} weeks ago",
  aMonthAgo: "a month ago",
  monthsAgo: "{{time}} months ago",
  aYearAgo: "a year ago",
  yearsAgo: "{{time}} years ago",
  overAYearAgo: "over a year ago",
  secondsFromNow: "{{time}} seconds from now",
  aMinuteFromNow: "a minute from now",
  minutesFromNow: "{{time}} minutes from now",
  anHourFromNow: "an hour from now",
  hoursFromNow: "{{time}} hours from now",
  aDayFromNow: "tomorrow",
  daysFromNow: "{{time}} days from now",
  aWeekFromNow: "a week from now",
  weeksFromNow: "{{time}} weeks from now",
  aMonthFromNow: "a month from now",
  monthsFromNow: "{{time}} months from now",
  aYearFromNow: "a year from now",
  yearsFromNow: "{{time}} years from now",
  overAYearFromNow: "over a year from now"
}

And herein lies the problem; this is the ES6 feature the bit.ly link mentions is not supported:
/* harmony export (immutable) */ __webpack_exports__["a"] = relativeDateFactory;
const calculateDelta = (now, date) => Math.round(Math.abs(now - date) / 1000)

@Timer thank you i take up with package owner. sadly, i was under impression create-react-app would do the transpiling. sadly i guess not.

@wildlyinaccurate the module entry is only supposed to contain ES-Modules; all other language features must still be compiled to the lowest target support platform of your package.
Including new language features not present in your main files is considered extremely poor practice (as-in, main and module should be identical except for ES Modules; no disparity between arrow functions, etc).

I was more referring to the fact that ES modules (or rather the import and export statements) are defined in the same spec as arrow functions. I would be loath to include features from ES>2015 in the module entry, but I find it baffling that any tooling or workflow would cherry-pick support for ES modules without supporting any of the other features defined in the ES2015 spec.


Error In downloading SWIN transformer

Describe the bug
timm.create_model('swin_base_patch4_window7_224', pretrained=True) results in
RuntimeError: PytorchStreamReader failed reading zip archive: failed finding central directory

To Reproduce
The error appears while downloading the SWIN-Base transformer
----> 1 timm.create_model('swin_base_patch4_window7_224', pretrained=True)

7 frames
[/usr/local/lib/python3.7/dist-packages/torch/serialization.py](https://localhost:8080/#) in __init__(self, name_or_buffer)
    241 class _open_zipfile_reader(_opener):
    242     def __init__(self, name_or_buffer) -> None:
--> 243         super(_open_zipfile_reader, self).__init__(torch._C.PyTorchFileReader(name_or_buffer))
    244
    245

RuntimeError: PytorchStreamReader failed reading zip archive: failed finding central directory

@amro-kamal you'll have to provide more info than that as per issue template, this all works fine for me. Looks like maybe an issue on your machine with default cache folder location for the checkpoints? Corrupt pth / bad net connection?

Thanks, Ross. It is working now. Looks like something was wrong with the machine.


A11y_Azure Tools for VS Code [BM]_Subscriptions_Screen Reader: NVDA/Narrator is not reading name for "Select All Subscriptions" check box.

Check out Accessibility Insights! - Identify accessibility bugs before check-in and make bug fixing faster and easier.”
Actual Result:
NVDA/Narrator is not reading name for "Select All Subscriptions" check box.
Expected Result:
NVDA/Narrator should read "Select All Subscriptions" check box when focus lands on it.
GitHubTags:
#Azure Tools for VS Code; #A11ySev1; #A11yTCS; #BM-Azure Tools for VS Code-Win-Feb2021; #AILimited; #DesktopApp; #Screen Reader; #WCAG1.3.1; #NVDA; #Win10; #Element:Checkbox; #Narrator;
OS Details:
Windows 10 Version 20H2 (OS Build 19042.685)
Environment Details:
Application Name: Azure Tools for VS Code
Version: 1.53.1
Commit: 5d424b828ada08e1eb9f95d6cb41120234ef57c7
Date: 2021-02-08T23:29:42.785Z
Electron: 11.2.1
Chrome: 87.0.4280.141
Node.js: 12.18.3
V8: <IP_ADDRESS>-electron.0
OS: Windows_NT x64 10.0.19042
Azure Function Version: 1.2.1
Repro Steps:

Open Visual studio code
Turn on NVDA/Narrator
Tab till extension button and press enter on it.
Search for "Azure Functions" and select it.
Tab till "Install" button and press enter on it.
Tab till "Azure" button from left side pane and press enter on it.
Default screen will get open.
Tab to Tree view and use down arrow to navigate to tree items.
Tab to "filter" and press enter on it.
Navigate to "Select All Subscriptions" and verify how NVDA/Narrator is reading it.

User Impact:
Screen Reader users will not know the functionality of controls if screen reader is not reading the name of control complete information
Attachment for Reference:

2678_NVDA issue.zip

This should be filed directly on VS Code as I can repro with a simple quick pick like this:
await vscode.window.showQuickPick(['hello', 'world'], { canPickMany: true, ignoreFocusOut: true });


fetch hook with optionMergeStrategies

Is your feature request related to a problem? Please describe.

The main goal of mine is creating the way we (i mean, our team)  async load the store.
I've already design the best strategies to do that in Nuxt,
BUT, I need to have the feature which
makes fetch's optionMergeStrategies just like created's optionMergeStrategies
So, now i need to describe why this feature is very important for me
( or for everyone, cuz i have seen other guys requested about this feature before )
The whole concept of strategies i've mentioned is too big
So to make things easier to understand, below i'll only point out the stuffs
which directly related to this Feature request.
first of all, i have a mixin like
//  ~/components/mixins/store/dynamic-registration/index.js
const loadStore = (...params) =>
{
  const [pathToStore, strategy] = params

  const strategies =
  {
    CSR: {
      async fetch () {
        await register.call(this, pathToStore)
      }
    },
    ... // ignore other strategies
  }
  return strategies[strategy]
}

export { loadStore }

Where register will do something relate to registerModule
( i.e. async load store )
we don't need to know its implementation now
And the usage of "CSR" strategy above is like,
for example, when user open up the modal,
and that modal have corresponding store.
So i think u already understand why such store no need to be static registered
( i.e. manually put it into store/ folder )
Then,
let me show you the pseudo code of "modal" component :
// ~/components/path/to/certain/modal/container.vue
<template lang="pug">
  data-presenter(:loading='$fetchState', :data='someData')
</template>

<script>
import { mapState } from 'vuex'
import { loadStore } from '~/components/mixins/store/dynamic-registration/index.js'
// this is a presentation component(i.e. no dependencies such as store, route... )
import DataPresenter from '~/components/path/to/certain/modal/index.vue'

export default {
  mixins: [
    // "system" is a special folder which stands for something like a "blueprint" for
    //  our store development ( i.e. open a new store file, put some code into it ... )
    // and assuming that the modal corresponding store is in the certain page (i.e. route)
    loadStore('~/system/pages/path/to/modal/index.js', 'CSR')
  ],
  async fetch() {
    // what `loadStore` will do is like it will dynamic register the store
    // into nuxt store/ folder
    // so after the registration, the modal store will be located at
    // "pages/path/to/modal/"
    // As i just mentioned that the stores putted into system/ folder are all
    // like a blueprint; We need to use them, otherwise they're useless
    await this.$store.dispatch(`pages/path/to/modal/fetchSomeData`)
  },
  computed: {
    ...mapState({
      // after doing the action of `fetchSomeData`, we then get `someData`
      someData: state => state.pages?.path?.to?.modal?.someData
    }),
  },
  components: {
    DataPresenter
  }
}
</script>

BUT❗
The fetch defined in mixin will be overlapped by container.vue above
And this'll break my design ❗
Describe the solution you'd like

Just the same as merging strategy of normal life cycle hook ( e.g. created )
So, it'll work like below
// certainMixin.js
export default {
   fetch() {
       console.log('fetching in mixin')
   }
}

// CompA.vue
import certainMixin from 'path/to/certainMixin.js'
export default {
    mixins: [certainMixin],
    fetch() {
       console.log('fetching in component')
    }
}

// the log order will be like...
fetching in mixin     // this go first
fetching in component // then this one

Above solution is making sense because fetch is also a lifecycle hook just like created, mounted, ...
I have no idea why it can't have the same optionMergeStrategies just like other hooks
Describe alternatives you've considered

noon
Additional context

I think the description of this Feature request is very long,
So forgive me that i then ignored my design decision＊ and other stuffs
＊how the strategies i've mentioned fits into some design principles ( e.g. SOLID )

We are approaching the Nuxt 2 EOL date (June 30, 2024) - see this article for more information. I'm closing this issue as it's marked as a Nuxt 2 related enhancement and it's not a critical issue.
That doesn't mean it might not be relevant for Nuxt 3. If it is, please feel free to open a new issue (or just comment, and I can reopen it). 🙏
Thank you for your understanding and for your contribution to Nuxt! 🎉


Confusing future references - magic strings

What's your CLI version?
n/a
Description & steps to reproduce
The use of magical strings is rather confusing.
I wanted to return a tuple
    value = plan.run_python(
        run="""
        import yaml
        with open("/network-configs/config.yaml", "r") as f:
            yaml_data = yaml.safe_load(f)

        min_genesis_time = int(yaml_data.get("MIN_GENESIS_TIME", 0))
        genesis_delay = int(yaml_data.get("GENESIS_DELAY", 0))
        network_id = int(yaml_data.get("DEPOSIT_NETWORK_ID", 0))

        return((min_genesis_time + genesis_delay), network_id)
                """,
    )
     return value.output

however the returned value is a magic string instead of a tuple.
So when I try to unpack the tuple I get the following error:
Evaluation error: got string in sequence assignment
Another issue that I had is with this:
# Prysm and Nimbus needs to have the enrs in a list format
# Can't figure out how to pass each item as a list, as I can't return an array from the starlark function
# So for now I'm just returning the last item in the list
 def get_devnet_enr(plan, filename):
     enr_items = plan.run_python(
         files={constants.GENESIS_DATA_MOUNTPOINT_ON_CLIENTS: filename},
         wait=None,
         run="""
 with open("/network-configs/network-configs/bootstrap_nodes.txt") as bootnode_file:
     last_enr = bootnode_file.read().splitlines()[-1]
     print(last_enr, end="")
             """,
     )
     return enr_items.output

Desired behavior
It would be good if returned values would be treated as python objects instead of magic strings.
e.g:
final_genesis_timestamp, network_id = shared_utils.read_genesis_info_from_config(plan, el_cl_genesis_uuid)

this should be able to unpack the tuple that is returned by the above mentioned function.
For the second example I wanted to return multiple elements independently, so I could have referenced each one by one:
--bootnode_enr: value1
--bootnode_enr: value2
But I couldn't figure it out, as the returned string was a magic string. Since then it was fixed by: https://github.com/kurtosis-tech/ethereum-package/pull/456/files, but this still does not fix the underlying issue where you can't return any python element in a function call.
What is the severity of this bug?
Painful; this is causing significant friction in my workflow.
What area of the product does this pertain to?
CLI: the Command Line Interface

I have the same issue, would make it easier to have access to the actual values specially as a beginner

Hey @barnabasbusa @franjoespejo , thanks for filing! The actual values won't exist until runtime (after your Starlark has run), which is why we return the future reference string.
However, I definitely hear you on this being confusing. There's basically two approaches we could take:

We return actual values. This requires actually running the plan.XXXX step. PRO: much clearer and straightforward; no concept of futures. CON: Kurtosis can't do certain types of pre-validation; have to wait for the entire thing to run before later steps can be validated (e.g. if a package takes 3 minutes to run and you're adding new steps at the end, you have to wait 3 minutes each time to get to the end).
We return futures to the value, like currently. PRO: Kurtosis can build an abstract model of what's going to happen and run validations on it before anything actually runs (so no waiting for 3 minutes). CON: it's way less intuitive and obvious how things are working; steeper onboarding curve as you mentioned @franjoespejo .

I'd be curious to hear your opinions on which you'd prefer?

I'd go for 2 yep, futures is not a hard concept to learn. moving operations elsewhere helps me

Thanks @franjoespejo ! If you have any ideas for ways we can help with learning the concept, that'd be very valuable for us to know so we can incorporate it!


Camera view change in 3D marking

My actions before raising this issue

[ ] Read/searched the docs
[ ] Searched past issues

Context

When marking the 3D box with cloud points, the SIDE view  and  the FRONT view , can not see the car's shape clear as follow picture:

The better view to see, the cuboid need to move to the car's left:

How can i move the camera view to the left side instead of using the right side to view the cloud points?
Thanks for giving some advices~

Hi,
3D views are constant for now, but your request is relevant. Let me mark it as a feature for the future.


Learner cannot see class video or topic - just a blank page with title on top.

Observed behavior
Learner cannot see the class topic or video - just sees a blank page with the topic title on top.  The quiz section worked though.

The coach and admin however can see the class topic or video.

Expected behavior
Learner should see the class topic.
User-facing consequences
Learner is confused whether to wait for the page
Errors and logs
Took this from the Android VM at sdcard/Android/data/org.learningequality.Kolibri/files/KOLIBRI_DATA/logs/ folder.  The debug.txt file has no content.
kolibri.txt
Steps to reproduce

Use the "Radina test channel" and TESSA for sample channels.
Create a coach, plan a class, then assign contents.
Create a learner, assign to a class, then access the class content.

Context
Tell us about your environment, including:

Kolibri version: 0.13.3a0.dev0+git.18....205f downloaded the build 144 of Android .apk from BuildKite
Operating system: Android 7.1.2 on BlueStacks emulator
Browser: n/a

Confirm, that this issue is also exist in Android devices OS version 7 and 9.

This issue is on the Kolibri apps itself because I try it to use to my android device to serve as a server. I used a laptop to check if this bug exists and followed the step to reproduce. It seems it's working on my laptop. All the content is well displayed.


Set default value draw_ids to True in the draw_boxes function

TBD:
The draw_points function has a default value of True for the draw_ids argument. However, the draw_boxes function has a default value of False for the same argument. It may be useful to draw the IDs assigned by the tracker for debugging purposes. Therefore, it is expected that the draw_boxes function should draw the IDs in the same way as the draw_points function.

Good catch @DiegoFernandezC! Seems reasonable to set the default value to True. Did you try it out? I don't expect it to raise any issues, but just in case 😂


Support zeroed allocations (e.g reserve_zeroed, with_capacity_zeroed)

Looking at instances of unsafe in reqwest, there are two places (1, 2) where uninitialized memory is passed to a Read implementation. This is a bad idea (as per https://github.com/rust-lang/rust/pull/62102/files, https://gankro.github.io/blah/initialize-me-maybe/) and can be fixed by just zeroing the memory beforehand.
Unfortunately bytes doesn't provide a good way of doing this. I imagine the ideal solution would involve something that lowers to alloc_zeroed / calloc internally.

FYI vec![0; len]; lowers into alloc_zeroed() which just requests zeroed memory from the OS, so the allocating it is exactly as fast as requesting an uninitialized slice.
See https://github.com/rust-lang/rust/issues/54628 for more details.

The zeroing takes about twice as long, but you should still do it to avoid UB because this is Rust.

I love how BytesMut works and would appreciate an initialized flavor as well. Or an interface to fill it from Read / AsyncRead safely.

+1 For these methods. This would make creating a big zeroed BytesMut significantly faster.


United Kingdom (uk): no vp files

United Kingdom has pvol files on BALTRAD, but vp files have never been created. @leijnse @adokter Any idea what the issue might be?
ukcas
ukche
ukcle
ukcob
ukcyg
ukdea
ukdud
ukham
ukhhd
ukhmy
uking
ukjer
uklew
ukmun
ukpre
ukthu

radial velocity data is missing in the pvol, therefore no vp is being generated.

Ok, that answers the why. Closing issue.

Ok, that answers the why. Closing issue.

One note of caution: the fact that radial velocity data is missing in the pvol can be a Baltrad issue with the merging. I would say for all countries with this issue it needs to be checked whether the data really are not being sent, or that they simply do not end up in the final pvol file.

Question regarding the merging: it looks like I can detect merging is happening when there are multiple files for a single timestamp:
behel_pvol_20180226T125003Z.h5 -> contains merged data
behel_pvol_20180226T125003Z_0x1.h5
behel_pvol_20180226T125003Z_0x1_15196497864.h5
behel_pvol_20180226T125003Z_0x2.h5
behel_pvol_20180226T125003Z_0x2_151964975286.h5

Can I assume no BALTRAD merging is happening if there is only a single file per timestamp?

The UK has no additional files per timestamp for any of the pvol files, so I assume no merging is going on. The missing radial velocity (VRADH) is therefore not a result of merging (i.e. an issue with BALTRAD), but an issue at the source.


IConfigurationBuilder is now an IList

Fixes https://github.com/aspnet/Configuration/issues/680
@ajcvickers @davidfowl @divega

Do you think being able to index is useful? Should this just be an ICollection?

Yeah that was my original idea for addressing this issue. Just change sources to IList and we are done.

Again, get rid of all these additions here and and just change the type of Sources to expose the underlying List that it already returns.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.

Do you think being able to index is useful? Should this just be an ICollection?

We care a lot about the order of the sources, and ICollection wouldn't convey that. IMO the indexer is not less useful than the rest of what this change enables, but as I have suggested I would do it by just changing the type of Sources to be an IList<IConfigurationSource>. It should be a super simple change.

Replaced by https://github.com/aspnet/Configuration/pull/683


Editor. Stages

What is your Quests version / build number (do not say "latest")?
4.2.1-b300
Describe the problem and how to replicate it.
In Russian, the word "Clear" is used not as a list cleanup, but as a replacement word

Any console errors to share?
[14:06:53] [Server thread/INFO]: Zelef issued server command: /quests info
[14:09:50] [Server thread/INFO]: [Quests] Player 6f04dd27-5570-3a67-8e62-d459fd8f51b6 saved quest rus
[14:09:53] [Server thread/INFO]: Zelef issued server command: /qa reload
[14:09:53] [Craft Scheduler Thread - 25 - Quests/INFO]: [Quests] Loaded language ru-RU. Translations via Crowdin
[14:09:53] [Thread-74/WARN]: java.util.concurrent.ExecutionException: java.lang.IndexOutOfBoundsException: Index: 0, Size: 0
[14:09:53] [Thread-74/WARN]: 	at java.base/java.util.concurrent.CompletableFuture.reportGet(CompletableFuture.java:396)
[14:09:53] [Thread-74/WARN]: 	at java.base/java.util.concurrent.CompletableFuture.get(CompletableFuture.java:2073)
[14:09:53] [Thread-74/WARN]: 	at Quests-4.2.1.jar//me.blackvein.quests.Quests.lambda$null$3(Quests.java:1691)
[14:09:53] [Thread-74/WARN]: 	at java.base/java.util.concurrent.CompletableFuture$UniRun.tryFire(CompletableFuture.java:787)
[14:09:53] [Thread-74/WARN]: 	at java.base/java.util.concurrent.CompletableFuture$Completion.run(CompletableFuture.java:482)
[14:09:53] [Thread-74/WARN]: 	at java.base/java.lang.Thread.run(Thread.java:833)
[14:09:53] [Thread-74/WARN]: Caused by: java.lang.IndexOutOfBoundsException: Index: 0, Size: 0
[14:09:53] [Thread-74/WARN]: 	at java.base/java.util.LinkedList.checkElementIndex(LinkedList.java:559)
[14:09:53] [Thread-74/WARN]: 	at java.base/java.util.LinkedList.get(LinkedList.java:480)
[14:09:53] [Thread-74/WARN]: 	at Quests-4.2.1.jar//me.blackvein.quests.storage.implementation.file.SeparatedYamlStorage.loadQuester(SeparatedYamlStorage.java:203)
[14:09:53] [Thread-74/WARN]: 	at Quests-4.2.1.jar//me.blackvein.quests.storage.Storage.lambda$loadQuester$2(Storage.java:89)
[14:09:53] [Thread-74/WARN]: 	at Quests-4.2.1.jar//me.blackvein.quests.storage.Storage.lambda$makeFuture$0(Storage.java:46)
[14:09:53] [Thread-74/WARN]: 	at java.base/java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1768)
[14:09:53] [Thread-74/WARN]: 	... 1 more

If applicable, can you provide an example quest from quests.yml?
No response

Try https://ci.codemc.io/job/PikaMug/job/Quests/301/

@PikaMug Same problem. Word "Очищено" doesn't work

The same problem with the word "Выйти(Cancel)"

Try https://ci.codemc.io/job/PikaMug/job/Quests/302/

Try https://ci.codemc.io/job/PikaMug/job/Quests/302/

Yes, it worked, but other problems appeared and the old ones did not go away.


Add Changelog UI

There's no good way to announce new features in explorer aside from Discord announcements and the occasional tweet. To serve our users better, we should add the ability to communicate features and bug fixes within the product itself.
We can start using GitHub releases and write release notes for each update that will automatically populate a changelog. This new change log can be accessed via some UI on explorer.helium.com.
https://www.figma.com/file/hYR3Ozk3gGoSNI8GkC9ZZ8/?node-id=6164%3A3895

Can start mocking up this feature based on https://api.github.com/repos/helium/miner/releases

what we've got is good enough for me. closing as done.


Changed Azure Container Service names and doc link

Changed Azure Container Service names and to Azure Kubernetes Service
Changed docs link
Service link redirects to aks link and remains unchanged.

Great job!!! I verified that all updated links work correctly.
/lgtm
/approve


[feature/postcss-sass] CSS Modules Hot Reload not working

I just enabled css modules and they do not get reloaded with HMR. it seems that all styles get cleared when a SCSS file is changed
This is my configFactory diff:
--- a/tools/webpack/configFactory.js
+++ b/tools/webpack/configFactory.js
@@ -321,7 +321,12 @@ export default function webpackConfigFactory(buildOptions: BuildOptions) {
             {
               path: 'css-loader',
               // Include sourcemaps for dev experience++.
-              query: { sourceMap: true },
+              query: {
+                sourceMap: true,
+                modules: true,
+                localIdentName: '[name]__[local]__[path]',
+                importLoaders: 1,
+              },
             },
             { path: 'postcss-loader' },
             {
@@ -329,6 +334,7 @@ export default function webpackConfigFactory(buildOptions: BuildOptions) {
               options: {
                 outputStyle: 'expanded',
                 sourceMap: true,
+                // modules: true,
               },
             },
           ],
@@ -506,7 +512,11 @@ export default function webpackConfigFactory(buildOptions: BuildOptions) {
             ifProdClient(() => ({
               loader: ExtractTextPlugin.extract({
                 fallbackLoader: 'style-loader',
-                loader: 'css-loader?sourceMap&importLoaders=2!postcss-loader!sass-loader?outputStyle=expanded&sourceMap&sourceMapContents',
+                loader: [
+                  'css-loader?sourceMap&importLoaders=1',
+                  'postcss-loader',
+                  'sass-loader?outputStyle=expanded&sourceMap&sourceMapContents',
+                ].join('!'),
               }),
             })),
             // When targetting the server we use the "/locals" version of the

actually, the underlying cause of this was HMR, it had nothing to do with CSS modules.
Opened a relevant issue: https://github.com/ctrlplusb/react-universally/issues/252


Feature Request: Replication group & precision in MDReplicator

This is another thing I plan on adding eventually but will mention here in case someone else want to do it or have a better idea.
As it currently stands the [MDReplicated] property is great when you want to just synchronize properties that are not changed often. Or a single property that is changed often.
However in cases for things like a player where a lot of data might be sent at regular intervals (say 10 times a second or so). Having one MDReplicated member for each value is highly inefficient as such I would like to suggest a new class that allows for compression of multiple values easily.
My initial idea for this was to simpl add something like MDNetworkCompressor then have functions like:
AddString(int key, MemberInfo member)
AddVector2(int key, MemberInfo member, int precision)
AddFloat(int key, MemberInfo member, int precision)
GetNetworkString()
SetNetworkString(String value)
GetFloatValue(int key)
etc..
Then the user would simply instance this class, add all their values to it with the compression level they want and finally introduce a MDReplicated string property where they just update with the GetNetworkString and then do SetNetworkString in the setter for this property.
However after looking at the code I think it might be possible to do this automatically, but I am not so sure. Adding a class that can do something like this would probably offer more control as it could be hard for the Replicator to know how often each replicated property is changed. The precision could be easily extended into the [MDReplicated] attribute.
Anyway this was just a passing idea I had that I know I will have to do at some point in the future. This is in no way urgent for my game so I probably won't put any work into this for quite a while. I just wanted to suggest this here to start a discussion on how this could be done.

After more consideration it might be possible to do all this with properties on [MDReplicated].

Precision -> Decides how to compress floats, doubles and vectors. Removing excess decimals
Group-> Name of the group this is in (converted to int inside replicator for faster compare)

A new type of MDReplicatedType should be added.

Interval -> Updates at regular intervals, configurable with UpdateInterval setting on MDReplicated and MDGroup

Then add another attribute [MDGroup] that goes on class level and would be something like

Name -> Name of the group
Type -> The MDReplicatedType for this entire group
UpdateInterval -> How often to update this in msec

I think with this it would be possible to figure out everything else inside the replicator, at the very least I would be very much in favour of Precision being added for floats, doubles and vectors

I'm wondering if Precision could be accomplished by creating a custom type instead and replicating that. eg. a float16 type, not sure how Godot would handle that in a Rset call though, might have to be stored as a ushort or something.

The only problem I see with a custom type is you are unable to decide the precision level in that case, unless you want to add one type for every precision level up until a set point. In addition this setting could apply to Vector2, Vector3, Float, Decimal and Double.
Even though one could argue Decimal and Double may not be neeeded.

Yeah I meant one type for every set precision: float8, float16, Vector2_8, Vector2_16, etc

Either way, for the framework I want it to be built on top of Godot's Rpc/Rset (high level networking) system rather than replacing it which I think will limit us from setting a tunable precision which is why I recommend type-based precision. That will depend on Godot's ability to handle custom types which I haven't tested yet.

Closing this as this issue has been solved in scope of other issues. It was simply forgotten about and not closed.


xp parameter for down helper should be optional

A number of the paper-radio-button tests call the down helper to click the button without the xy parameter.  Making it optional and just passing null to the js method doesn't appear to work (the button doesn't get clicked), so creating this issue for now.

@ErikGrimes hi, have you tried modifying down method to:
void down(Node node, {Point xy: null}) {
  _MockInteractionsJs.callMethod('down', [node, xy == null ? null : xy.toJsObject()]);
}

Actually it didn't work for me neither.
It's interesting that down method is used but not tap.
None of elements (paper-radio, paper-toggle-button) seems to switch state after clicking down...

Imo, if tap works its worth just changing the dart test to use that. You could add a comment like:
// **Dart Note**: Using `tap` instead of `down` to get test to pass.

Confirmed, at least for paper-radio-button that tap is the correct action. It does not change state on a press down.
I am making xy optional for both down and up though anyways.

fixed in https://github.com/dart-lang/polymer_elements/commit/37e2c8daea9018cb5e8b18d2b048b6683d08e39d


how to stream local file?

use NSBundle's pathForResource
https://developer.apple.com/library/mac/documentation/Cocoa/Reference/Foundation/Classes/NSBundle_Class/#//apple_ref/occ/instm/NSBundle/pathForResource:ofType:

Do it

like this right ?
let path = NSBundle.mainBundle().pathForResource("2514", ofType:"mp3")
    var juk =   JukeboxItem(URL: NSURL(string: path!)!)

    let  jukebox = Jukebox(delegate: self, items: [
  juk
        ])

    jukebox?.play()

its not working

https://developer.apple.com/reference/foundation/bundle/1411540-url


Pool creation fee

Codecov Report

Merging #386 (28e8cda) into main (4ced5c3) will decrease coverage by 0.12%.
The diff coverage is 8.85%.

@@            Coverage Diff             @@
##             main     #386      +/-   ##
==========================================
- Coverage   18.54%   18.41%   -0.13%
==========================================
  Files         138      141       +3
  Lines       21824    22010     +186
==========================================
+ Hits         4047     4054       +7
- Misses      17105    17280     +175
- Partials      672      676       +4

Impacted Files
Coverage Δ

x/gamm/types/genesis.go
0.00% <0.00%> (ø)

x/gamm/types/params.go
0.00% <0.00%> (ø)

x/gamm/types/genesis.pb.go
0.89% <0.68%> (-0.15%)
:arrow_down:

x/gamm/module.go
63.88% <20.00%> (-5.81%)
:arrow_down:

x/gamm/genesis.go
64.28% <100.00%> (+2.74%)
:arrow_up:

x/gamm/keeper/keeper.go
81.25% <100.00%> (+1.70%)
:arrow_up:

x/gamm/keeper/params.go
100.00% <100.00%> (ø)

x/gamm/keeper/pool_service.go
61.44% <100.00%> (-0.79%)
:arrow_down:

x/gamm/keeper/pool.go
74.32% <0.00%> (-4.06%)
:arrow_down:

... and 3 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 4ced5c3...28e8cda. Read the comment docs.


Add support for ConvBERT models

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint. The docs are available until 30 days after the last update.


path tracer metallicpaint material not working?

I can't seem to get any effects out of the shadecolor, glittercolor or glitter spread controls. All I seem to get are black objects that are more or less shiny and reflective based on eta. Is this broken?

With 4cfe8916 it's not black anymore. But there are still some more issues (it looks too bright now).

Remaining issues fixed in 6d1cf9c54938fac64ef1909b9025441cf2d6fb45.


Additional Splatoon Patches

The "Better Squid Sisters Lighting" patch just removes the normal news lighting so it's set to what it would normally look like in that position in the plaza, making it look "somewhat" better. This also includes a patch the removal of the 2D news layer, and a special swapper, all made by me.

Out of curiosity, what does the special swapper do? Does it swap the model?

Essentially, yes, when I swapped the Killer Wail with the Rainmaker it looked like this:

The special swapper patch is pretty unstable atm, it's better to keep it out of the repo for now so I can test everything on it.

Can you at least make it clear that it swaps the model, and make sure it doesn't cause any issues with online play?

It just swaps the model, and I've tested it online and I haven't had any issues, but it seems that it only lets you swap the Rainmaker over something which makes it pretty useless :/

Although it still could be useful, I will add a note and make some little changes to adapt it to this


Icons come out broken

http://cl.ly/image/383J1K1o2G1r
Are there certain SVG features iconizr doesn't support? Some of my exports come out fine and some are broken (bounding box wrong; or subtract shapes is not applied)
Thank you

Hi @Wolfr,
iconizr itself doesn't "support" any SVG feature — it just compiles a sprite and renders PNG fallbacks out of your SVG source files. What is more likely to cause your troubles is SVGO, which is probably what you implicitly use for optimizing (and thus altering) your SVGs? SVGO is known for having some pretty aggressive plugins, which are not compatible with particular SVGs. There is no way of predicting which plugin is safe to use with which SVG. You should try to disable some of these plugins to find out which one is evil in your situation.
Unfortunately, the PHP version of iconizr doesn't support configuring the SVGO plugins being enabled. If you have the chance, switch to the Node.js based iconizr or it's Grunt plugin, which both allow configuring SVGO via the cleanconfig option (please see the available options for some hints).
At the time of this writing, a completely rewritten version of iconizr is on it's way, based on the latest release of svg-sprite, and there will be a Gulp plugin soon as well.
Hope this helps! Cheers,
Joschi


[CP] Allow select cases to be numbers

issue_link
https://github.com/flutter/flutter/issues/116459
Commit Hash
583a812
Target
stable
pr_link
https://github.com/flutter/flutter/pull/120847
Impacted Users
Using localizations and have string numbers in their ARB files
Impact Description
See https://github.com/flutter/flutter/issues/116459 and https://github.com/flutter/flutter/pull/120678#issuecomment-1432016460.
Workaround
No
Risk
low
Test Coverage
yes
Validation Steps
No response

This request should be addressed before landing #120679. @thkim1011 @itsjustkevin

CP LGTM

Thank you @thkim1011 and @AlexV525 for all of the contributions!  @christopherfujino could you weigh in on this cherry-pick as well?


Vasil branch: Unable to use signData with StakeAddress

Using vasil branch, I'm not able to use the signData endpoint with a Stake address. Error received is:
{
    "code": 1,
    "info": "Wallet could not sign the data (e.g. does not have the secret key associated with the address)."
}

Which is related to: DataSignError.ProofGeneration
Is it necessary to change something when calling this endpoint? Using the current version (3.2.5) works fine.

Talk to Cardano Support on the Live support page so that your issue can be looked into.

Talk to Cardano Support on the Live support page so that your issue can be looked into.

What?

@georgeos Ignore the message from @AdorchaDev, it’s a phishing scam they’ve been running on here for ages, they reply to every issue with it.

Using vasil branch, I'm not able to use the signData endpoint with a Stake address. Error received is:
{
    "code": 1,
    "info": "Wallet could not sign the data (e.g. does not have the secret key associated with the address)."
}

Which is related to: DataSignError.ProofGeneration
Is it necessary to change something when calling this endpoint? Using the current version (3.2.5) works fine.

Hey @georgeos it looks like you use an address that is not associated with the wallet/account. Do you try this on mainnet, or what network are you using?

Hey @georgeos it looks like you use an address that is not associated with the wallet/account. Do you try this on mainnet, or what network are you using?

Thanks for your answer. I already tried in mainnet, preprod and preview networks. To sign the data, I'm using the same process that we've in production now, using Nami 3.2.5.

Hey @georgeos it looks like you use an address that is not associated with the wallet/account. Do you try this on mainnet, or what network are you using?

Thanks for your answer. I already tried in mainnet, preprod and preview networks. To sign the data, I'm using the same process that we've in production now, using Nami 3.2.5.

There was indeed a little issue. I hope it is resolved now, let me know how it goes. Note I have everything in the main branch now. There is also the link to the current custom build in the readme.

Retested with the new build against the Preview network, the signing issue is resolved on my end :)

There was indeed a little issue. I hope it is resolved now, let me know how it goes. Note I have everything in the main branch now. There is also the link to the current custom build in the readme.

Confirmed, it's working now! Thanks for your help!


control flow graph to structured control flow

Motivation
See title, before this PR, the YUL codes follow a state-machine style, which can run on EVM while is not efficient, this PR tries to implement algorithm in this article
https://medium.com/leaningtech/solving-the-structured-control-flow-problem-once-and-for-all-5123117b1ee2
to convert CFG to structured control flow.
Have you read the Contributing Guidelines on pull requests?
Yes
Test Plan
UPBL=1 cargo test
make sure that the generated YUL codes compile
!! Succeeded compiling Yul

the if-else logic is now emitted, per Wolfgang's suggestion, will leave the handling of loops with new bytecodes for now.

Hi @wrwg I followed the idea and was able to generate "block_kind" for each block depending on its trailing goto label, but looking at the emitted codes, it's still not about right.
One issue I saw was, now the loop_header is still a basic, which is not able to handle either ifBlock or forBlock, the same thing for the if_t and if_f of IfBlock, I will need to think of ways to recursively generate the inner Block there.
Publishing the latest version now and will try to fix it, any wisdom is more than welcome.


Possible false CI check failure for vendoring

See https://github.com/lowRISC/opentitan/pull/11810/checks?check_run_id=5764658340
The failure is caused by the change in util/lowrisc_misc-linters/licence-checker/licence-checker.py in https://github.com/lowRISC/opentitan/pull/11810, but I am not sure this path should be included in git diff.
cc @rswarbrick

The check that's failing is one that ensures vendored directories match their sources and the CI check is correct to fail on that PR :-D.
If you want to change vendored-in code, you have to do it in two stages:

File a PR to update the source repository (the misc-linters repo, in this case)
Once it's merged, use the vendor tool to grab the changes (something like ../opentitan/util/vendor.py -U -c -v util/lowrisc_misc-linters.vendor.hjson)


reduce addition and subtraction overloads

Change-Id: I77fd8bf622a9352d1bc913dfa72ae8fefebf08c6

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Comparison is base (e6d0684) 97.29% compared to head (2d00092) 97.12%.

Additional details and impacted files
@@                              Coverage Diff                              @@
##           Ibf976a9f478a4791c344c637852f0e4ca00d925d      #31      +/-   ##
=============================================================================
- Coverage                                      97.29%   97.12%   -0.18%
=============================================================================
  Files                                              9       10       +1
  Lines                                            148      139       -9
  Branches                                           4        4
=============================================================================
- Hits                                             144      135       -9
  Partials                                           4        4

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


[Feature Request] Add Atari difficulty level and a game mode option.

Motivation
In the realm of reinforcement learning and game simulation, the ability to adjust difficulty levels and game modes significantly enhances the flexibility and applicability of models. This feature request is motivated by the need for a more nuanced and customizable training environment in Atari games. Currently, while using the Arcade Learning Environment (ALE), I often find myself limited by the lack of options to adjust game difficulty and mode. This limitation is particularly noticeable when trying to simulate different scenarios or train models under varying conditions. This feature request is not directly related to an existing issue but is inspired by the concepts presented in Machado et al.'s paper [1] and the existing functionalities outlined in [2].
Solution
The ALE API for the gymnasium supports the adjustment of the 'mode' and 'difficulty' parameters on Atari games. If possible, you can add the corresponding parameters when using 'envpool.make'.
Alternatives
An alternative solution could be the development of separate game environments for each combination of difficulty level and mode. However, this approach will lead to unnecessary redundancy and could be less efficient compared to having a unified environment with selectable options.
Additional context
[1] Machado et al. “Revisiting the Arcade Learning Environment: Evaluation Protocols and Open Problems for General Agents” Journal of Artificial Intelligence Research (2018) URL: https://jair.org/index.php/jair/article/view/11182
[2] https://gymnasium.farama.org/environments/atari/
Checklist

[x] I have checked that there is no similar issue in the repo (required)

Should be relatively straight forward (less than 30 lines of code), would you like to submit a PR?

Should be relatively straight forward (less than 30 lines of code), would you like to submit a PR?

Yes, the modification does seem quite straightforward. Unfortunately, I'm not well-versed in C++ and thus unable to submit a PR. Thank you very much for your understanding and assistance!

Is there an update on this?


OCPQE-24207 correct logic of getting build from result filename

fix issue when getting arm64 nightly build info from test result filename
details can be found here
https://issues.redhat.com/browse/OCPQE-24207?focusedId=25197905&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-25197905

/cc @wangke19


Speed for AirConditioner

I think that adding the possibility of regulating the speed of the air conditioner would be useful and appreciated.
As far as I understood the speed setting is not supported natively by HomeKit, as a workaround I was thinking that a fan accessory could be created together with the AC accessory to set the speed.

I like the idea of combining the two accessory types but the problem is that you'd end up needing so many variations of the IR codes

Closing for now as it seems impractical to learn all of these codes. Happy to be persuaded otherwise.


Update edge site chart values to camel case

Camel case seems to be the more popular approach to values in helm charts and this aligns edge sites with primary sites chart values

Needs a sibling docs update for the website


Correct DateTime Component timezone

Additional Context

When saving a date we save a date without time (eg. 25-01-1990)
When feeding the form we send just the string
When formio renders the form for the end-user the component offsets/converts the date based off the users local time
Example scenario. Saving a PIR custom offering with a date of 01-01-2022. When viewing the PIR the form will display 31-12-2021

Acceptance Criteria

[ ] Review all forms for date component and add user localtime offset. Get enduser local timezone offset and append midnight to the date
[ ] Determine course of action to resolve date issues (timezone)
[ ] List all relevant forms affected in this ticket

related to #1290

completed in #1290

completed in #1290


Handle \ca, \cp, \va, \vp; add succinct JSON schema

This PR does two main things:

adds support for alternative versification markup as marks in both PERF and SOFRIA in v0.3.0 of the schema
adds the proskomma succinct JSON schema previously in proskomma-utils.

All tests pass.

@mvahowe Is it possible to add a "roundtrip test" ?
Like so : perf=>sofria then sofria=>perf and check if the files are equivalent.

I'll do it in another pull request after the update with pipeline-handler


Report comparison - excessive number of digits

Describe the bug
When doing test report comparison, the app reads excessive numbers of digits.
Expected behavior
Limit the decimal numbers to two.

Done.


Feature/coverage

Codecov Report

:exclamation: No coverage uploaded for pull request base (main@e40d461). Click here to learn what that means.
The diff coverage is n/a.

@@           Coverage Diff            @@
##             main        #5   +/-   ##
========================================
  Coverage        ?   100.00%
========================================
  Files           ?         5
  Lines           ?       188
  Branches        ?        19
========================================
  Hits            ?       188
  Misses          ?         0
  Partials        ?         0

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update e40d461...2ef6d98. Read the comment docs.

Codecov Report

:exclamation: No coverage uploaded for pull request base (main@e40d461). Click here to learn what that means.
The diff coverage is n/a.

@@           Coverage Diff            @@
##             main        #5   +/-   ##
========================================
  Coverage        ?   100.00%
========================================
  Files           ?         5
  Lines           ?       188
  Branches        ?        19
========================================
  Hits            ?       188
  Misses          ?         0
  Partials        ?         0

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update e40d461...2ef6d98. Read the comment docs.


pip-436

added back button
added search option page
added unit test for search option  page
Before creating a pull request make sure that:

[ ] commit messages are meaningful and follow good commit message guidelines
[ ] README and other documentation has been updated / added (if needed)
[ ] tests have been updated / new tests has been added (if needed)

Please remove this line and everything above and fill the following sections:
JIRA link
https://tools.hmcts.net/jira/browse/PUB-436
Change description
Does this PR introduce a breaking change? (check one with "x")
[ ] Yes
[ ] No

@marcogagliardi on front end pull requests, try include screen shots of what you have done, the front end is mostly visual so looking at the code doesnt need to be the only thing we look at, if you could take a few screenshots of what the changes youve made looks like and add them as comments to the PR that would be useful


SIMSBIOHUB-494

…ntenance
Links to Jira Tickets

{Include a link to all applicable Jira tickets}

Description of Changes

{List all relevant code changes. Include any changes to the business workflow that might not be obvious to the reviewers of this PR.}

Testing Notes

{List any relevant testing considerations, necessary pre-reqs, and areas of the app to focus on. Specifically, include anything that will help the reviewers of this PR verify the code is functioning as expected.}

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 76.68%. Comparing base (acab56e) to head (87feaa7).
Report is 1 commits behind head on dev.

Additional details and impacted files
@@             Coverage Diff             @@
##              dev    #1226       +/-   ##
===========================================
+ Coverage   56.36%   76.68%   +20.31%
===========================================
  Files         576      232      -344
  Lines       17615     9503     -8112
  Branches     2746     1344     -1402
===========================================
- Hits         9929     7287     -2642
+ Misses       7024     1803     -5221
+ Partials      662      413      -249

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


nng compatibility

Hi,
Have you ever tested it with nng version? As stated in the documentation, nng is wire compatible with nanomsg. I am just curious about using Connect method instead of Dial to connect to a nng socket.
Afshin

No i never tested this myself.
But if you do i would be glad to here what you find out.

It seems to work with nng using publish subscribe just fine

i can confirm that NNG works, BUT there are some little things, like nanomsg supported string messages aswell, NNG only takes ArrayBuffer.
But since i could confirm that it works, i will close this ticket now.


feat: add support for pre-copy and post-copy messages

I've added support for pre-copy and post-copy messages that can be written in plain text or markdown. Messages can be written inline or included via Jinja includes, and messages are rendered.
I'll work on pre-update and post-update messages in a separate PR once we've clarified whether the implementation in this PR is good.
Closes #723.

Is that possible? The help text is printed through Questionary. It would be great though!

I don't know :smile:

If we print these messages through Rich, I think we should do it for questions description/help too, for consistency.

Yikes, yet another method of printing stuff... 🤦🏼♂ #368 gets bigger.

Oh, good catch about the printing after the question. It should be before the question, of course. Strange, I'll look into it. It seems I'll need to change the tests to use a tui, was hoping to avoid that.

I think this could be made more general by replacing the message_before_copy with just message and allowing messages mixed with questions (and vars when we get when: false back). Of cause a message may only refer context already resolved. That way grouping of questions with message will be possible.
Is message_after_copy only for the copy operation or will be printed after all operations? I think the default should be always, and if necessary a when: operation=update/copy/... could be added (later). In that case a more generic name, like post_message would be better.

I'm afraid I don't understand your proposal. Could you provide an example of how you think copier.yml would look?

I'm afraid I don't understand your proposal. Could you provide an example of how you think copier.yml would look?

Something like:
_tasks:
  - exec: "./doit.sh"
    message: "We did it!"

_message: "Overall template intro."

_message: "Your Personal info"

name: "Your full name"
email: "Your email"

_message: "Family info"

mother: "Your mother's name"
father: "Your father's name"

_message:
  text: "Ouch, your name is 'dummy'?"
  when: "{{ name == 'dummy' }}"

_message:
  text: "Before tasks first task"
  when: has_tasks

# Here we run tasks, so there may be task message output, or output printed from tasks.
# A `message` method could also be made available to take advantage of standardized formatting of messages printed from task.

_message:
  text: "Yeah"
  when: "{{ copier_finished and copier_success copier_action == 'update' }}"

_message:
  text: "Congratulation"
  when: "{{ copier_finished and copier_success }}"

_message:
  text: "Oops!"
  when: "{{ copier_finished and copier_error }}"

I think that a single _message with a when condition is both more flexible and more user friendly.
The example is just some ideas, don't take it literally.
Task messages are just an extra feature.

This isn't valid YAML according to the spec (https://yaml.org/spec/1.2.2/#mapping):

The content of a mapping node is an unordered set of key/value node pairs, with the restriction that each of the keys is unique.

PyYAML overwrites the result with the last key.

This isn't valid YAML according to the spec (https://yaml.org/spec/1.2.2/#mapping):

You are right.
I guess the only way to make a generic messaging mechanism similar to my suggestion would be to handle _message_X where X can be anything.

Apart from being invalid yaml, you already have the question help text to print whatever you want, so that proposal doesn't add much value IMHO.

It is still not clear to me if this only before "copy", or also before
"update", ...
ons. 19. jul. 2023 06.05 skrev Jairo Llopis @.***>:

@.**** approved this pull request.
Really good, thanks!
Just one minor suggestion for the docs part. Non blocking.
In docs/configuring.md
https://github.com/copier-org/copier/pull/1194#discussion_r1267537556:

+### message_before_copy
+
+-   Format: str
+-   CLI flags: N/A
+-   Default value: ""
+
+A message to be printed before project creation.
+
+If the message contains Jinja code, it will be rendered with the initial context which
+does not yet contain any answers to questions. A
+Jinja include expression may be used to import
+a message from a file.
+
+The message is suppressed when Copier is run in quiet mode.
I think you could refer to one section from the other, to DRY.
—
Reply to this email directly, view it on GitHub
https://github.com/copier-org/copier/pull/1194#pullrequestreview-1536253959,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAMCZSNA2PEXOIE6TTSFEBLXQ5TIDANCNFSM6AAAAAAZHY54XQ
.
You are receiving this because you commented.Message ID:
@.***>

@lhupfeldt Only before copy, not before update. But you got me thinking and it turns out this message is printed also for _re_copy. I'll extend the docs and add some tests.

I've extended the tests to check the message printing also for recopying and edited the docs accordingly.
Since those changes don't alter the PR in general, I'll take the liberty of merging now without further review. I hope that's okay, @copier-org/maintainers.

I know this already merged, but I still think that it would be better to
have a 'when' condition to limit which action you want it printed before.
It seems more natural to me the the default should be before all actions,
including 'update'.
ons. 19. jul. 2023 12.13 skrev Sigurd Spieckermann @.***

:

Merged #1194 https://github.com/copier-org/copier/pull/1194 into master.
—
Reply to this email directly, view it on GitHub
https://github.com/copier-org/copier/pull/1194#event-9861237264, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AAMCZSOCE3TDP6JREL7KIO3XQ66MPANCNFSM6AAAAAAZHY54XQ
.
You are receiving this because you were mentioned.Message ID:
@.***>

To avoid repetition, you could rely on YAML anchors and aliases to print the same message before copy and update (assuming _message_before_update was already available):
_message_before_copy: &message_before |-
  Hello, thanks for using our template!

_message_before_update: *message_before

This way, it's explicit when the message will be printed.

Correct, but it would still be more verbose, and if new actions are added
it will become even more verbose. Having a 'when' clause with the
possibility to ask which action was requested seems to fit well with the
existing design.
The possibility to query the action is something I would really like for
questions as well.
tor. 20. jul. 2023 13.47 skrev Sigurd Spieckermann @.***

:

To avoid repetition, you could rely on YAML anchors and aliases to print
the same message before copy and update (assuming _message_before_update
was already available):
_message_before_copy: &message_before |-
Hello, thanks for using our template!
_message_before_update: *message_before
This way, it's explicit when the message will be printed.
—
Reply to this email directly, view it on GitHub
https://github.com/copier-org/copier/pull/1194#issuecomment-1643864404,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAMCZSOKDRZYDMTQF4LWE6DXRESHBANCNFSM6AAAAAAZHY54XQ
.
You are receiving this because you were mentioned.Message ID:
@.***>

The benefit of having dedicated keys is that it's easier to compose with
!include
El jue., 20 jul. 2023 22:15, Lars Hupfeldt Nielsen @.***>
escribió:

Correct, but it would still be more verbose, and if new actions are added
it will become even more verbose. Having a 'when' clause with the
possibility to ask which action was requested seems to fit well with the
existing design.
The possibility to query the action is something I would really like for
questions as well.
tor. 20. jul. 2023 13.47 skrev Sigurd Spieckermann @.***

:

To avoid repetition, you could rely on YAML anchors and aliases to print
the same message before copy and update (assuming _message_before_update
was already available):
_message_before_copy: &message_before |-
Hello, thanks for using our template!
_message_before_update: *message_before
This way, it's explicit when the message will be printed.
—
Reply to this email directly, view it on GitHub
https://github.com/copier-org/copier/pull/1194#issuecomment-1643864404,

or unsubscribe
<
https://github.com/notifications/unsubscribe-auth/AAMCZSOKDRZYDMTQF4LWE6DXRESHBANCNFSM6AAAAAAZHY54XQ>

.
You are receiving this because you were mentioned.Message ID:
@.***>

—
Reply to this email directly, view it on GitHub
https://github.com/copier-org/copier/pull/1194#issuecomment-1644618726,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAHNXDKB5MTRTABQ7Z5ZY5DXRGNV7ANCNFSM6AAAAAAZHY54XQ
.
You are receiving this because you commented.Message ID:
@.***>


setMaxCharCount not function well

xcode Version 7.2 (7C68)
ios 8.0
[_messageToolBar setMaxCharCount:140];

but when char count come to 15, keyboard scroll back

Sorry，it's my own problem.


compressor option missing for parquetMetadataAsync

Is there a way to call parquetMetadataAsync for GZIP codecs?
It seems the option to pass compressors from hyparquet-compressors is missing.

The metadata is not compressed, so there should be no need to pass a compressors object if you just want the metadata.

Thanks @platypii!
Maybe I'm doing something but how can I call parquetMetadataAsync for GZIP compressed parquet file? I am getting this error thrown.
When the file is compressed with Snappy, I am able to successfully use parquetMetadataAsync.

@platypii any update here?

I can't really help much without an example parquet file. I assure you that the metadata is not compressed, so there should be no difference in gzip vs snappy files on the metadata. If you're getting that error, it's either an invalid parquet file, or you are not passing in a buffer with the full file data?
Can you either share an example parquet file, or drop your file here and see if the same thing happens?
https://hyparam.github.io/hyparquet/

Thank you @platypii  Might be another issue then.
I get the same error on https://hyparam.github.io/hyparquet/ , the error is being thrown from [here]
(https://github.com/hyparam/hyparquet/blob/3ea58cb0b907a0834e9ae1a24c96d9ad7d74bb08/demo/demo.js#L93).
Here's the parquet file from which I create a link before dragging / dropping.
test_file.parquet.zip

It looks like you're trying to open a zipped parquet file, which is different than the parquet file itself. See screen share:
https://github.com/hyparam/hyparquet/assets/1766297/5256b946-b05f-47ba-876d-590726e3e9b5

Ah, I forgot to mention I zipped the file because GitHub doesn't allow .parquet uploads.
Albeit, during testing I had not zipped the file.
Also, here's code that shows exactly what I meant by the GZIP / Snappy difference I'm seeing
import { parquetMetadataAsync } from 'hyparquet';
import * as fs from 'fs';

class Foo{

    async foo(filepath){
        let file = await this.createFileConfiguration(filepath);
        let metadata = await parquetMetadataAsync(file); // this errors
        return metadata;
    }

    async createFileConfiguration(filepath) {
        let fileStats = await fs.promises.stat(filepath);
        //asyncBuffer
        return {
            byteLength: fileStats.size,
            slice: async (start, end) => {
                let parquetStream = fs.createReadStream(filepath, {start, end});
                return this.readStreamToArrayBuffer(parquetStream);
            },
        };
    }

    readStreamToArrayBuffer(stream) {
        return new Promise((resolve, reject) => {
            let chunks = [];
            stream.on('data', chunk => chunks.push(chunk));
            stream.on('end', () => resolve(Buffer.concat(chunks).buffer));
            stream.on('error', reject);
        });
    }

}

new Foo().foo('*Insert file* - GZIP Parquet file fails, Snappy parquet file succeeds')
    .then((metadata) => console.log('metadata: ', metadata))
    .catch((error) => console.log(error));

@platypii

Ah okay I found the problem. There was a bug in readStreamToArrayBuffer which was defined in benchmark.js. The problem was that it wasn't properly slicing the returned ArrayBuffer, so it was returning an over-sized ArrayBuffer with length 8092 instead of 1249. I don't think it had anything to do with gzip vs snappy, just the file size. If you make the following change your example should work:
    input.on('end', () => {
      const buffer = Buffer.concat(chunks)
      resolve(buffer.buffer.slice(buffer.byteOffset, buffer.byteOffset + buffer.byteLength))
    })

See commit https://github.com/hyparam/hyparquet/commit/1885c96c
Thanks @Sirach99 for raising this issue and sticking with it!

Awesome! Thank you very much for your help looking into that @platypii


Provide starter version when interacting with the account management API

This commit provides an additional "starterVersion" request parameter
when interacting with the account management API. If no version is
available, the attribute is not set.

Here is a proposal for the feature we've discussed earlier this week. I think we probably want to make starterVersion (or whatever attribute we end up choosing) mandatory for account provision.
If an api token is provided and the token is legit, I think it's fair to keep supporting that use case, even if the user is still using an older version of the starter.


nebula graph dashboard can not work for domain url like http://xxx.xxx.com/

Describe the bug (must be provided)
nebula dashboard only support http://ip:port pattern for work
A clear and concise description of what the bug is.
Your Environments (must be provided)

OS: Linux
Node-version: node v16.9.1
Dashboard-version: v2.5.0

How To Reproduce(must be provided)
step1:
bind a domain like dashboard.xxx.com to ip:port
step2:
view dashboard.xxx.com/ would report
nodejs.ECONNRESETError:
read ECONNRESET
at TCP.onStreamRead (node:internal/stream_base_commons:220:20)
errno: -104
code: "ECONNRESET"
step3:
because this proxy file produce some route problem when view by domain url

xxx/nebula-graph-dashboard/nebula-graph-dashboard/app/middleware/proxy.js

this proxy

Additional context
Provide logs and configs, or any other context to trace the problem.

This will be fixed next version, thanks for your suggestion🤝

@learn2Pro ECONNRESET means the host not exists, I reproduced this issue, you should startup the nebula-http-gateway service(by checking the doc in README.md) before using dashboard.


borderTopLeftRadius not working on android

Awesome component guys! it's amazing how fast it is!
I do have a problem where borderRadius: 10 works and all sides are rounded but using border radius on single corner is ignored.
e.g. borderTopLeftRadius: 10 doesn't work.
I'm using:
RNFI: 4.0.14
RN 0.50.0

I think<EMAIL_ADDRESS>must not support it.

same here,
"react-native": "0.55.4"

Is it possible that you're use case falls back to Image? Is it a local image or a remote image?
If it's a local Image then the version of RNFI you're using falls back to Image, which I don't think supports multiple border radii properly.
I'm hoping to do a new major release this weekend which will fix this.

Hii Dylan,
I used a remote image.
<FastImage borderTopRightRadius={9} .../>
I did not get to test using this property in the style of the object.
I'll check on Monday the tests on Android and IOS and return, okay?

I'm pretty sure I know exactly what you're issue is. If I manage to finish the update then it will fix it.
You can workaround your issue by using a wrapping View with overflow=hidden if you need something quickly.

overflow: 'hidden' is working for me but use in outer view of image
<View style={{ width: '100%', height: hp(7), backgroundColor: '#CACAF9', borderTopLeftRadius: 20, borderTopRightRadius: 20, alignItems: 'center', justifyContent: 'center',overflow: 'hidden' }} >
{!item.image ?
                                                <Image style={styles.cellViewNoImage} source={imageName} ></Image>
                                                :
                                                <Image style={styles.cellViewImage} source={{ uri: item.image }} ></Image>
                                            }
                                        </View>

` <View style={{ width: '100%', height: hp(7), backgroundColor: '#CACAF9', borderTopLeftRadius: 20, borderTopRightRadius: 20, alignItems: 'center', justifyContent: 'center',overflow: 'hidden' }} >
{!item.image ?
                                                <Image style={styles.cellViewNoImage} source={imageName} ></Image>
                                                :
                                                <Image style={styles.cellViewImage} source={{ uri: item.image }} ></Image>
                                            }
                                        </View>`

<View style={{ width: '100%', height: hp(7), backgroundColor: '#CACAF9', borderTopLeftRadius: 20, borderTopRightRadius: 20, alignItems: 'center', justifyContent: 'center',overflow: 'hidden' }} >
                                                <Image style={styles.cellViewImage} source={{ uri: item.image }} ></Image>

                                        </View>

i get issue too!
I use RN 0.63.2, it work fine on ios but not work on android


Documentation should recommend testing with pragma legacy_alter_table=on

See here:

https://github.com/simonw/llm/issues/162#issuecomment-1685096919

The resolution of this bug was protected by this test:
def test_migrations_with_legacy_alter_table():
    db = sqlite_utils.Database(memory=True)
    db.execute("pragma legacy_alter_table=on")
    migrate(db)

When I write testing documentation for this package I should include that as a recommendation - or maybe even suggest a pattern like this:
@pytest.mark.parametrize("legacy_alter_table", (True, False))
def test_migrations_with_legacy_alter_table(legacy_alter_table):
    db = sqlite_utils.Database(memory=True)
    db.execute("pragma legacy_alter_table={}".format("on" if legacy_alter_table else "off")
    migrate(db)

Another pattern that could work here: build a sqlite-utils plugin that turns that mode on for all connections, then show people how to use a GitHub Actions matrix build to run their tests twice, once with and once without that plugin.


Statamic v4 Support

I'm unable to upgrade to v4 because of the requirement in the composer.json file. A new release is needed.

Hi @heywhy, thanks for opening this issue!
Unfortunately, it isn't as simple as bumping the version in composer.json, some actual UI fixes need to be made before an upgrade can be released. I'll try and get to it asap but can't promise a timeline atm. Will update here once it is ready!

Just released v2.0.0 of Splash which adds Statamic 4 support. Please open a new issue if you encounter any issues, thanks!


[Bug] event disabled after updateSpec

Version
1.1.0
Link to Minimal Reproduction
n/a
Steps to Reproduce

new a chart
bind event
updateSpec

Current Behavior
event out of work
Expected Behavior
event enable after updateSpec
Environment
- OS:
- Browser:
- Framework:

Any additional comments?
No response

done


Update config.toml (#587)

Issue #, if available:
Description of changes:
Update config.toml (#587)
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: mitalipaygude
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

docs/OWNERS [mitalipaygude]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

/lgtm


BASH-18 Add configs to show/hide server management and multiteam settings

Description
This PR add values enableMultiTeams and enableServerManagement to show/hide server management and multiteam settings.

[x] read and understood our Contributing Guidelines
[x] completed Mattermost Contributor Agreement
[x] executed npm run lint:js for proper code formatting

Test Cases
Add override values like this to override.json (src/common/config/override.json)
After entering the a fist server no others are accepted
//override.js
{
  "1": {
    "enableMultiTeams": false,
    "enableServerManagement": false
  }
}

Notes
Includes bash-20

@yuya-oc Same as in #587, can you help share a link for the test build from circle-ci? I'll test this out.

https://circleci.com/gh/mattermost/desktop/1020#artifacts

@csduarte @dmeza What is the purpose of the enableMultiTeams setting?

@jasonblais @yuya-oc enableMultiTeams=false hides the Add new server link if there's already a server added. enableServerManagement=false hides the whole server management, it will not allow you to edit or remove, if there's already a server added.

@dmeza Thanks! I can definitely see the use case for enableServerManagement (e.g. use #594 to pre-configure the server URL and don't allow the end user to change it).
Couple of more questions:

can the user configure it via the config.json file? E.g. could they modify it and add more than one server?
would you have an example use case for when enableMultiTeams is false but enableServerManagement is true?

@jasonblais @csduarte:

Yes, the user can configure it via the config.json file. Yes, they could add more than one server.
an example use case for when enableMultiTeams is false but enableServerManagement is true, is when the client can connect to only one server. User could remove or edit the server but never add more than one thru the config screen.

@yuya-oc Once rebased, would you be able to help with a test build for the four cases

enableMultiTeams = false / enableServerManagement - false
enableMultiTeams = false / enableServerManagement - true
enableMultiTeams = true / enableServerManagement - false
enableMultiTeams = true / enableServerManagement - true

@yuya-oc rebased and tested.

@dmeza Probably you haven't pushed the branch yet.

@yuya-oc I think it was new conflicts from the merge of bash-11. It's rebased and green.

@jasonblais

enableMultiTeams = false / enableServerManagement - false
https://circleci.com/gh/yuya-oc/desktop/424#artifacts
enableMultiTeams = false / enableServerManagement - true
https://circleci.com/gh/yuya-oc/desktop/425#artifacts
enableMultiTeams = true / enableServerManagement - false
https://circleci.com/gh/yuya-oc/desktop/427#artifacts
enableMultiTeams = true / enableServerManagement - true
https://circleci.com/gh/yuya-oc/desktop/428#artifacts

@dmeza Tested all the different cases. Left a few test notes below, but overall it works as expected.
I'm a bit hesitant on how useful enableMultiTeams actually is for admins? Is there a compliance regulation where the user would not be allowed to sign into more than one server at a time?
I can see admins wanting to flip enableServerManagement on/off especially combined with defaultTeam setting added with https://github.com/mattermost/desktop/pull/594

Test cases:

enableMultiTeams = false / enableServerManagement = false

You can still successfully add a new server via

File > Sign in to Another Server (Mattermost > Sign in to Another Server on MacOS)
Clicking the "+" icon in the server tab bar, if you've added more than one server via config.json (see attached)

If enableServerManagement is set to false, propose

Hiding the menu bar option for Sign in to Another Server
Hiding the "+" icon

enableMultiTeams = false / enableServerManagement = true

Same issues as in the first test case. However, the Sign in to Another Server should only be hidden in this case if you've already added a server.
Another issue I found is that the Server Management section was still missing from the Settings page. So you couldn't actually edit the existing server (or servers if you had added multiple servers directly via config.json).

enableMultiTeams = true / enableServerManagement = false

Same issues as in the first test case, given server management is disabled.

enableMultiTeams = true / enableServerManagement = true

Default case. No issues.

@yuya-oc Once we work on #618, would it be possible to not allow users define teams via config.json if enableServerManagement is set to false?

@yuya-oc @dmeza enableServerManagement should really be an Enterprise setting given it limits user freedom, but I realize we don't have such a thing on the desktop app. I'm not sure if there's much we can do about that?
All the other settings are a benefit for the end user or make the initial administration easier, including settings like defaultTeam.

@jasonblais Yes. Once we decide, I think enableServerManagement: false can prevent teams which are written at user's config.json.
This feature is never used for us because we must use enableServerManagement: true. I feel the feature would be useful when creating fully-customized enterprise app which uses only specific server though. But we need to continue to maintain unused feature in future, so it might be not suitable for our code base.

@yuya-oc

Yes. Once we decide, I think enableServerManagement: false can prevent teams which are written at user's config.json.

Would this be easy to implement already for this PR?

This feature is never used for us because we must use enableServerManagement: true.

That's true, but I think that particular setting is fine to support. I can see that some Enterprise admins would find this feature useful. However, the setting I'm less certain about is enableMultiTeams.

@yuya-oc rebased to latest from master. Made changes for comments from @jasonblais https://github.com/mattermost/desktop/pull/600#issuecomment-337612398:

Hide Sign in to Another Server and "+" icon when enableMultiTeams = false

Jason the problem you saw with:
Another issue I found is that the Server Management section was still missing from the Settings page. So you couldn't actually edit the existing server (or servers if you had added multiple servers directly via config.json).
It's because the values are set in: config.json in the user directory ~/Library/Application Support/Mattermost on OS X
Let me know if you have any other questions.

@dmeza To make sure, would you tell us the purpose of enableServerManagement and enableMultiTeams?
I feel enableServerManagement=false is good to prevent adding/editing servers. But I could not imagine the situation: users can edit server settings but it's limited up to one (enableServerManagement=true, enableMultiTeams=false).
When do admins want to limit the number of servers? If the admin can use build-time config, I feel they uses defaultTeams of #633 and enableServerManagement=false.

@yuya-oc @jasonblais how it was originally thought was:

enableMultiTeams=false restricts the user from adding more teams. if one doesn't exist, it allows to add one.
enableServerManagement=false disables the ability to edit or delete teams, so the user can not change them once added.
Is this correct @csduarte?

@dmeza Thanks for the reply. How are these settings used at Shift?

@jasonblais both would be set to false since there is not option to add new servers or edit/delete the existing one. The changes are not exactly the same right now for shift/desktop since there's burnt logic to have a default Team, to not allow add more Teams and to not allow to edit Teams.

@dmeza If enableServerManagement is set to false, then enableMultiTeams is obsolete given you can't edit (or add) servers?
I'd lean towards removing enableMultiTeams for now unless it's needed by Shift. I agree with @yuya-oc that the use case for this setting is limited.

@jasonblais @yuya-oc: discussed yesterday with @csduarte that two configs where added in case they needed to be handled as separate options. Shift will just be disabling all options to edit or add servers. I removed config enableMultiTeams and all of it's logic so this ticket can move forward.
Let me know if you need any other changes.

Thanks @dmeza!
@yuya-oc Can you help share a test build with "enableServerManagement": false. I can grab "enableServerManagement": true from the Circle CI.

#600: https://circleci.com/gh/mattermost/desktop/1099
"enableServerManagement": false: https://circleci.com/gh/yuya-oc/desktop/468

When enableServerManagement is set to false, I unfortunately still see the following issues

You can still successfully add a new server via

File > Sign in to Another Server (Mattermost > Sign in to Another Server on MacOS)
Clicking the "+" icon in the server tab bar, if you've added more than one server via config.json (see attached)

If enableServerManagement is set to false, propose

Hiding the menu bar option for Sign in to Another Server
Hiding the "+" icon

@dmeza When enableServerManagement is set to false, I unfortunately still see the following issues

You can still successfully add a new server via

File > Sign in to Another Server (Mattermost > Sign in to Another Server on MacOS)
Clicking the "+" icon in the server tab bar, if you've added more than one server via config.json (see attached)

If enableServerManagement is set to false, propose

Hiding the menu bar option for Sign in to Another Server
Hiding the "+" icon

It would also be good if we prevented users from editing/adding servers via config.json if enableServerManagement is set to false. But this I can create a separate ticket for in order to merge this one and not let it sit much longer.

@jasonblais I believe it's because you have the value "enableServerManagement": true in ~/Library/Application Support/Mattermost/config.json (on OS X). Tested locally and it's working properly. Please help me test again.

@dmeza hm, I tested again and it seems to be working. Thanks!
@yuya-oc this one is good to merge.

I could confirmed, too. Thanks!


feat: offline export with attachments

Continues #734

Can #734 be merged without this one?

yes


Can we add sub view as this image?

No. Is this a static image? if so, maybe I can add header view option for that case.


Labels in RUV tab

The labels should be DVID=1 rather than DV=1. Optionally "1st DV" or "DV#1" or similar

Changed in 23c04b9


Unable to use "pack build --publish" to local registry with Docker Desktop edge channel

I'm running a registry at localhost:80 which is also exposed as registry.dev.svc.cluster.local via my /etc/hosts file
$ docker run -d -p 80:5000 --restart=always --name registry -v /Users/$USER/registry:/var/lib/registry registry:2
c5d546e87e3be31f7824f5621567aaed5ade2ad9ec400c17648ef69201fe296e
$ curl -X GET http://registry.dev.svc.cluster.local/v2/_catalog
{"repositories":["fun/node-square","fun/pipeline","fun/pipeline-jib","fun/square","fun/square-test","test/node-app"]}

I'm using Docker Desktop edge version <IP_ADDRESS> (31778) on macOS
$ docker version
Client: Docker Engine - Community
 Version:           18.09.3
 API version:       1.39
 Go version:        go1.10.8
 Git commit:        774a1f4
 Built:             Thu Feb 28 06:32:50 2019
 OS/Arch:           darwin/amd64
 Experimental:      false

Server: Docker Engine - Community
 Engine:
  Version:          18.09.3
  API version:      1.39 (minimum version 1.12)
  Go version:       go1.10.8
  Git commit:       774a1f4
  Built:            Thu Feb 28 06:40:58 2019
  OS/Arch:          linux/amd64
  Experimental:     true

This is the build that fails:
$ ./pack build --path ~/workspace/sample-java-app --builder cloudfoundry/cnb:bionic --publish registry.dev.svc.cluster.local/test/myapp
Using user-provided builder image cloudfoundry/cnb:bionic
Pulling builder image cloudfoundry/cnb:bionic (use --no-pull flag to skip this step)
bionic: Pulling from cloudfoundry/cnb
Digest: sha256:175798db658a45eb6b4e707a8fde2779567650dc93544a4322036762ee463d78
Status: Image is up to date for cloudfoundry/cnb:bionic
Selected run image packs/run:0.1.0 from builder cloudfoundry/cnb:bionic
Using cache image pack-cache-fb7163e1842f
===> DETECTING
[detector] Trying group of 8...
[detector] ======== Results ========
[detector] Cloud Foundry OpenJDK Buildpack: pass
[detector] Cloud Foundry Build System Buildpack: pass
[detector] Cloud Foundry JVM Application Buildpack: pass
[detector] Cloud Foundry Azure Application Insights Buildpack: skip
[detector] Cloud Foundry Debug Buildpack: skip
[detector] Cloud Foundry Google Stackdriver Buildpack: skip
[detector] Cloud Foundry JMX Buildpack: skip
[detector] Cloud Foundry Procfile Buildpack: skip
===> RESTORING
[restorer] cache image 'pack-cache-fb7163e1842f' not found, nothing to restore
===> ANALYZING
[analyzer] Error: connect to repo store 'registry.dev.svc.cluster.local/test/myapp': Get http://registry.dev.svc.cluster.local/v2/: dial tcp [::1]:80: connect: connection refused
ERROR: failed with status code: 1

I can build the image to the local daemon and then push it fine:
$ docker push registry.dev.svc.cluster.local/test/myapp
The push refers to repository [registry.dev.svc.cluster.local/test/myapp]
c71074e6642f: Pushed
7417c05f2e27: Pushed
d65df98532f6: Pushed
d27ebdeba5fa: Pushed
3637529cafb6: Pushed
642a4b118a74: Pushed
af30b1163c3a: Pushed
b57c79f4a9f3: Mounted from fun/square-test
d60e01b37e74: Mounted from fun/square-test
e45cfbc98a50: Mounted from fun/square-test
762d8e1a6054: Mounted from fun/square-test
latest: digest: sha256:a60c7bbf99c0281f91ba48e108d036d9a87432d57377c90d1dea53c53c2d5bf7 size: 2622

I built pack from recent commit e1793ab9fc3d172a416183ef3df20daf089eba19
I can use the stable version of Docker Desktop and all seems to work fine there.

see also https://github.com/docker/for-mac/issues/3611

should be fixed with docker edge release <IP_ADDRESS> from June 11. 2019

@jromero Think we can close this.

@Zanadar Agreed.
Note to all:
Please open a new issue if you are expiriencing similar issues.


[Bug] Challenge & org pages jump to the top when selecting a section ⭐

Is there an existing issue for this?

[X] I have searched the existing issues

What product(s) are you seeing the problem on?
OpenChallenges
Current behavior
Challenge & org pages jump to the top when selecting a section
Expected behavior
The scrolling position should not be reset when selecting a section.
Anything else?
We should be able to fix this bug using Location as we do on the search pages.
Commit ID
7ae8482caa921c479f38b5cc0f871baf5334d2e4
Are you developing inside the dev container?

[X] I am using the dev container

Code of Conduct

[X] I agree to follow this project's Code of Conduct

@rrchai Related to this issue, clicking on one of the tabs of a challenge page will update the URL with a query parameters that points to the section. However, reloading this URL won't restore the tab.
Example:

Go to http://localhost:8000/challenge/280/stanford-ribonanza-rna-folding
Click on the tab Contributors.

The URL becomes: http://localhost:8000/challenge/280?tab=contributors
Notice that the challenge slug disappeared from the URL

Reload the page with the url http://localhost:8000/challenge/280?tab=contributors

Actual: the Overview tab is active http://localhost:8000/challenge/280/stanford-ribonanza-rna-folding
Expected: the Contributors tab should be active

We can track this issue in a separate ticket if you prefer.


Include className prop for FormFileUpload

Thanks for you contribution @migueliriano! Can you please post the following:

Link to documentation showing this attribute is available.

Perhaps you meant to extend the definition with the ButtonParams?

@lipemat - Actually, it doesn't have that attribute directly for FormFileUpload.
FormFileUpload is rendering a button that we can't add a custom className: https://github.com/WordPress/gutenberg/blob/3da717b8d0ac7d7821fc6d0475695ccf3ae2829f/packages/components/src/form-file-upload/index.js#L27
So, if we want to add a custom style we have to use the render method, example:
<FormFileUpload
	render={( { openFileDialog }  ) => (
		<Button onClick={openFileDialog} isPrimary={true} >
			<Dashicon icon={'admin-media'} />
			  Select Files
		</Button>
	)}
/>

I thought that may we can add the className to the FormFileUpload as an attribute, but I realized that this is not in the documentation so this not going to be correct, any suggestion about how we can apply an extension for button and use it like this:
<FormFileUpload className={'btn-primary'}/>

Based on this paragraph in the docs, all attributes supported by <Button> may be passed to the <FormFileUpload> component.

The component accepts the following props. Props not included in this set will be passed to the Button component.

You can see this happening on the line you linked to via {...props}.
For full inclusion of the available props, I suggest extending the FormFileUpload interface with the ButtonParams interface like so.
export interface FormFileUpload extends ButtonParams {

@lipemat - I just addressed your comment, thanks!


Starting broker and using MQTT and WS connection at the same time

I am trying to use my broker via mqtt and ws connection. By using the setting below I can connect via ws but it does not work for mqtt connection (port 1883). Here is my code:
Startup
public class Startup
    {
        public void ConfigureServices(IServiceCollection services)
        {
            services.AddMqttHandler();
        }

        public void Configure(IApplicationBuilder app, IHostingEnvironment env)
        {
            app.UseConnections(c => c.MapConnectionHandler<MqttConnectionHandler>("", options =>
            {
                options.WebSockets.SubProtocolSelector = MQTTnet.AspNetCore.ApplicationBuilderExtensions.SelectSubProtocol;

            }));

            app.UseStaticFiles();
        }
    }

 Extension method
public static IServiceCollection AddMqttHandler(this IServiceCollection services)
        {
            services.AddSingleton<IMyService, MyService>();
            services.AddSingleton<IMqttServerOptions, MyMqttServerOptions>();

            //services.AddSingleton<IMqttServerOptions>(s =>
            //{
            //    var mqttservice = s.GetService<IMyService>();
            //    return new MyMqttServerOptions(mqttservice);
            //});

            var logger = new MqttNetLogger();
            var childLogger = logger.CreateChildLogger();

            services.AddSingleton<IMqttNetLogger>(logger);
            services.AddSingleton(childLogger);
            services.AddSingleton<MqttHostedServer>();

            services.AddSingleton<IHostedService>(s => s.GetService<MqttHostedServer>());
            services.AddSingleton<IMqttServer>(s => s.GetService<MqttHostedServer>());
            services.AddMqttConnectionHandler();
            services.AddMqttWebSocketServerAdapter();
            services.AddConnections();

            return services;
        }

Option builder
private readonly IMyService _service;
        public MyMqttServerOptions(IMyService service)
        {
            _service = service;
            DefaultEndpointOptions.IsEnabled = true;
            DefaultEndpointOptions.Port = 1883;
            DefaultEndpointOptions.NoDelay = true;
            ApplicationMessageInterceptor = new MqttServerApplicationMessageInterceptorDelegate(ctx => OnApplicationMessageInterceptor(ctx));
            ConnectionValidator = new MqttServerConnectionValidatorDelegate(async (validator) => { await OnConnectionValidator(validator); });
            SubscriptionInterceptor = new MqttServerSubscriptionInterceptorDelegate(ctx => OnSubscriptionInterceptor(ctx));
        }

        private async Task OnApplicationMessageInterceptor(MqttApplicationMessageInterceptorContext ctx)
        {
            ctx.AcceptPublish = true;
            ctx.CloseConnection = false;
        }

        private async Task OnConnectionValidator(MqttConnectionValidatorContext validator)
        {
            if (string.IsNullOrEmpty(validator.ClientId))
                return;
            _service.AuthenticateAsync();
        }

        private void OnSubscriptionInterceptor(MqttSubscriptionInterceptorContext ctx)
        {
            ctx.AcceptSubscription = true;
            ctx.CloseConnection = false;
        }
    }

Service
public class MyService : IMyService
    {
        public bool AuthenticateAsync()
        {
            return true;
        }
    }

Port 1883 is open on the server and if I run a simple mqtt project I can connect to that but here I just can connect over ws.
Which project is your bug related to?

MQTTnet.Server standalone
Server

@chkr1011 Do you have any suggestion?

Where is this running? On a local PC?

@chkr1011  Yes, and port 1883 is open on firewall.

@TaherianuBeac How did you resolve the issue?

First I removed services.AddMqttConnectionHandler() and services.AddConnections() from extension method (or ConfigureServices) and added services.AddMqttTcpServerAdapter() to that. Then replaced
app.UseConnections(c => c.MapConnectionHandler<MqttConnectionHandler>("", options =>
            {
                options.WebSockets.SubProtocolSelector = MQTTnet.AspNetCore.ApplicationBuilderExtensions.SelectSubProtocol;

            }));

in Configure with app.UseMqttEndpoint()

@SeppPenner Is that possible to connect to the mqttServer over websocket without using /mqtt path (using ws://mydomain.com instead of ws://mydomain.com/mqtt)?

Have you tried to specify this in https://github.com/chkr1011/MQTTnet/blob/master/Source/MQTTnet.Server/appsettings.json?
E.g.
"WebSocketEndPoint": {
    "Enabled": true,
    "Path": "/mqtt",
    "KeepAliveInterval": 120, // In seconds.
    "ReceiveBufferSize": 4096,
    "AllowedOrigins": [] // List of strings with URLs.
},

I haven't tried this yet, but maybe setting this option in your appsettings.json file to "Path": "/", might work?

Thank you for your answer. In source of server in ConfigureWebSocketEndpoint there is this condition
if (string.IsNullOrEmpty(mqttSettings.WebSocketEndPoint.Path))
{
      return;
}

I think this is the reason that I can't use empty path but I can use any other paths.

@TaherianuBeac If you want this to be available, you should create another issue as a feature request or provide a pull request and wait for @chkr1011's answer here.

OK. Thank you for your help. I will create another issue.

Are you talking about MQTTnet.Server or a custom server implementation? The code you posted is from the MQTTnet.Server.

@chkr1011 I'm talking about MQTTnet.Server.

The reason is that MQTTnet.Server also comes with other endpoints like /api/ for the API docs. Also static files can be hosted. That is why MQTT endpoint is moved to another path (/mqtt) by default.

I got it. Thank you Christian for details.
Cheers.


Content Missing for glusterfs.

This is a Bug Report
Problem:
Under Volumes concept page, content for glusterfs volume type is missing. In code it is mentioned like:

Due to  this, content(Kubernetes {{< skew currentVersion >}} does not include a glusterfs volume type.) is missing from the page:

Instead of that it should be like the below screenshot:

Proposed Solution:
Above missing content Content for glusterfs should be there.
Page to Update:
https://kubernetes.io/docs/concepts/storage/volumes/

/assign

/sig docs

Fixed it here: #38969

/triage accepted
/retitle Formatting problem for glusterfs volume details in Volumes concept
/language en


Client Allocation Request for: Genesis

Client Allocation Questions
Core Information

Name: Genesis
Website / Social Media: https://www.ipfs6.com/
Region: Greater China
DataCap Requested: 50TiB
Addresses to be Notarized: f3wwiudiv2vjdswtc4aab5o3qs6ygeujrrixyv6a2z4o6aoma34rjayapsmwvqxxgn7aavmzomfquzwd2dn3fa
Notary Requested: neogeweb3

@1ane-1 Please subscribe to notifications for this Issue to be aware of updates. Notaries may request additional information on the Issue.

close due to duplicate #1688

This user’s identity has been verified through filplus.storage